Go to the documentation of this file.00001
00002
00003 class _dgsmatrix
00004 {
00005 public:
00006
00007
00008
00009 mutable long m;
00010 mutable long n;
00011 mutable std::vector<dcomponent> data;
00012 mutable std::vector< std::vector<uint32_t> > rows;
00013 mutable std::vector< std::vector<uint32_t> > cols;
00014
00015
00016
00017
00018 inline _dgsmatrix();
00019 inline _dgsmatrix(const _dgsmatrix&);
00020 inline ~_dgsmatrix();
00021
00022
00023
00024
00025
00026 inline _zgsmatrix to_zgsmatrix() const;
00027 inline _dgematrix to_dgematrix() const;
00028
00029
00030 inline double operator()(const long&, const long&) const;
00031 inline friend std::ostream& operator<<(std::ostream&, const _dgsmatrix&);
00032 inline void write(const char*) const;
00033
00034
00035 inline void nullify() const;
00036 inline void destroy() const;
00037
00038
00039 inline friend _dgsmatrix t(const dgsmatrix&);
00040 inline friend void idamax(long&, long&, const dgsmatrix&);
00041 inline friend double damax(const dgsmatrix&);
00042
00043
00044
00045
00046
00047 inline friend const _dgsmatrix& operator+(const _dgsmatrix&);
00048 inline friend _dgsmatrix operator-(const _dgsmatrix&);
00049
00050
00051 inline friend _dgematrix operator+(const _dgsmatrix&, const dgematrix&);
00052 inline friend _dgematrix operator+(const _dgsmatrix&, const _dgematrix&);
00053 inline friend _dgematrix operator+(const _dgsmatrix&, const dsymatrix&);
00054 inline friend _dgematrix operator+(const _dgsmatrix&, const _dsymatrix&);
00055 inline friend _dgematrix operator+(const _dgsmatrix&, const dgbmatrix&);
00056 inline friend _dgematrix operator+(const _dgsmatrix&, const _dgbmatrix&);
00057 inline friend _dgsmatrix operator+(const _dgsmatrix&, const dgsmatrix&);
00058 inline friend _dgsmatrix operator+(const _dgsmatrix&, const _dgsmatrix&);
00059 inline friend _dgsmatrix operator+(const _dgsmatrix&, const dssmatrix&);
00060 inline friend _dgsmatrix operator+(const _dgsmatrix&, const _dssmatrix&);
00061
00062
00063 inline friend _dgematrix operator-(const _dgsmatrix&, const dgematrix&);
00064 inline friend _dgematrix operator-(const _dgsmatrix&, const _dgematrix&);
00065 inline friend _dgematrix operator-(const _dgsmatrix&, const dsymatrix&);
00066 inline friend _dgematrix operator-(const _dgsmatrix&, const _dsymatrix&);
00067 inline friend _dgematrix operator-(const _dgsmatrix&, const dgbmatrix&);
00068 inline friend _dgematrix operator-(const _dgsmatrix&, const _dgbmatrix&);
00069 inline friend _dgsmatrix operator-(const _dgsmatrix&, const dgsmatrix&);
00070 inline friend _dgsmatrix operator-(const _dgsmatrix&, const _dgsmatrix&);
00071 inline friend _dgsmatrix operator-(const _dgsmatrix&, const dssmatrix&);
00072 inline friend _dgsmatrix operator-(const _dgsmatrix&, const _dssmatrix&);
00073
00074
00075 inline friend _dcovector operator*(const _dgsmatrix&, const dcovector&);
00076 inline friend _dcovector operator*(const _dgsmatrix&, const _dcovector&);
00077 inline friend _dgematrix operator*(const _dgsmatrix&, const dgematrix&);
00078 inline friend _dgematrix operator*(const _dgsmatrix&, const _dgematrix&);
00079 inline friend _dgematrix operator*(const _dgsmatrix&, const dsymatrix&);
00080 inline friend _dgematrix operator*(const _dgsmatrix&, const _dsymatrix&);
00081 inline friend _dgematrix operator*(const _dgsmatrix&, const dgbmatrix&);
00082 inline friend _dgematrix operator*(const _dgsmatrix&, const _dgbmatrix&);
00083 inline friend _dgsmatrix operator*(const _dgsmatrix&, const dgsmatrix&);
00084 inline friend _dgsmatrix operator*(const _dgsmatrix&, const _dgsmatrix&);
00085 inline friend _dgsmatrix operator*(const _dgsmatrix&, const dssmatrix&);
00086 inline friend _dgsmatrix operator*(const _dgsmatrix&, const _dssmatrix&);
00087 inline friend _dgsmatrix operator*(const _dgsmatrix&, const double&);
00088
00089
00090 inline friend _dgsmatrix operator/(const _dgsmatrix&, const double&);
00091
00092
00093 inline friend _dgsmatrix operator*(const double&, const _dgsmatrix&);
00094 };