00001
00003 class _dgematrix
00004 {
00005 public:
00007 mutable long M;
00008 mutable long N;
00009 mutable double* Array;
00010 mutable double** Darray;
00011
00013 inline _dgematrix();
00014 inline _dgematrix(const _dgematrix&);
00015 inline ~_dgematrix();
00016
00018 inline operator _zgematrix();
00019
00021 inline double& operator()(const long&, const long&) const;
00022 inline friend std::ostream& operator<<(std::ostream&, const dgematrix&);
00023 inline void write(const char *) const;
00024
00026 inline void destroy() const;
00027
00029 inline friend _dgematrix t(const _dgematrix&);
00030 inline friend _dgematrix i(const _dgematrix&);
00031 inline friend void idamax(long&, long&, const _dgematrix&);
00032 inline friend double damax(const _dgematrix&);
00033
00035 inline friend const _dgematrix& operator+(const _dgematrix&);
00036 inline friend _dgematrix operator-(const _dgematrix&);
00037
00039 inline friend _dgematrix operator+(const dgematrix&, const dgematrix&);
00040 inline friend _dgematrix operator+(const dgematrix&, const _dgematrix&);
00041 inline friend _dgematrix operator+(const _dgematrix&, const dgematrix&);
00042 inline friend _dgematrix operator+(const _dgematrix&, const _dgematrix&);
00043
00044 inline friend _dgematrix operator+(const dgematrix&, const dgbmatrix&);
00045 inline friend _dgematrix operator+(const dgematrix&, const _dgbmatrix&);
00046 inline friend _dgematrix operator+(const _dgematrix&, const dgbmatrix&);
00047 inline friend _dgematrix operator+(const _dgematrix&, const _dgbmatrix&);
00048
00049 inline friend _dgematrix operator+(const dgbmatrix&, const dgematrix&);
00050 inline friend _dgematrix operator+(const dgbmatrix&, const _dgematrix&);
00051 inline friend _dgematrix operator+(const _dgbmatrix&, const dgematrix&);
00052 inline friend _dgematrix operator+(const _dgbmatrix&, const _dgematrix&);
00053
00055 inline friend _dgematrix operator-(const dgematrix&);
00056
00057 inline friend _dgematrix operator-(const dgematrix&, const dgematrix&);
00058 inline friend _dgematrix operator-(const dgematrix&, const _dgematrix&);
00059 inline friend _dgematrix operator-(const _dgematrix&, const dgematrix&);
00060 inline friend _dgematrix operator-(const _dgematrix&, const _dgematrix&);
00061
00062 inline friend _dgematrix operator-(const dgematrix&, const dgbmatrix&);
00063 inline friend _dgematrix operator-(const dgematrix&, const _dgbmatrix&);
00064 inline friend _dgematrix operator-(const _dgematrix&, const dgbmatrix&);
00065 inline friend _dgematrix operator-(const _dgematrix&, const _dgbmatrix&);
00066
00067 inline friend _dgematrix operator-(const dgbmatrix&, const dgematrix&);
00068 inline friend _dgematrix operator-(const dgbmatrix&, const _dgematrix&);
00069 inline friend _dgematrix operator-(const _dgbmatrix&, const dgematrix&);
00070 inline friend _dgematrix operator-(const _dgbmatrix&, const _dgematrix&);
00071
00073 inline friend _dgematrix operator*(const dgematrix&, const dgematrix&);
00074 inline friend _dgematrix operator*(const dgematrix&, const _dgematrix&);
00075 inline friend _dgematrix operator*(const _dgematrix&, const dgematrix&);
00076 inline friend _dgematrix operator*(const _dgematrix&, const _dgematrix&);
00077
00078 inline friend _dgematrix operator*(const dgematrix&, const dgbmatrix&);
00079 inline friend _dgematrix operator*(const dgematrix&, const _dgbmatrix&);
00080 inline friend _dgematrix operator*(const _dgematrix&, const dgbmatrix&);
00081 inline friend _dgematrix operator*(const _dgematrix&, const _dgbmatrix&);
00082
00083 inline friend _dgematrix operator*(const dgematrix&, const double&);
00084 inline friend _dgematrix operator*(const _dgematrix&, const double&);
00085 inline friend _dgematrix operator*(const double&, const _dgematrix&);
00086 inline friend _dgematrix operator*(const double&, const dgematrix&);
00087
00088 inline friend _dgematrix operator*(const dgbmatrix&, const dgematrix&);
00089 inline friend _dgematrix operator*(const dgbmatrix&, const _dgematrix&);
00090 inline friend _dgematrix operator*(const _dgbmatrix&, const dgematrix&);
00091 inline friend _dgematrix operator*(const _dgbmatrix&, const _dgematrix&);
00092
00093 inline friend _dgematrix operator*(const dcovector&, const drovector&);
00094 inline friend _dgematrix operator*(const dcovector&, const _drovector&);
00095 inline friend _dgematrix operator*(const _dcovector&, const drovector&);
00096 inline friend _dgematrix operator*(const _dcovector&, const _drovector&);
00097
00098 inline friend _drovector operator*(const drovector&, const _dgematrix&);
00099 inline friend _drovector operator*(const _drovector&, const _dgematrix&);
00100 inline friend _dcovector operator*(const _dgematrix&, const dcovector&);
00101 inline friend _dcovector operator*(const _dgematrix&, const _dcovector&);
00102
00104 inline friend _dgematrix operator/(const dgematrix&, const double&);
00105 inline friend _dgematrix operator/(const _dgematrix&, const double&);
00106
00108 friend class dgematrix;
00109 friend class dgbmatrix;
00110 friend class _dgbmatrix;
00111 friend class dcovector;
00112 friend class _dcovector;
00113 friend class drovector;
00114 friend class _drovector;
00115 };