Go to the documentation of this file.00001
00002
00003 class drovector
00004 {
00005 public:
00006
00007
00008
00009 long l;
00010 long cap;
00011 double* array;
00012
00013
00014
00015
00016 inline drovector();
00017 inline drovector(const drovector&);
00018 inline drovector(const _drovector&);
00019 inline drovector(const long&, const long=0);
00020 inline drovector(const char*);
00021 inline ~drovector();
00022
00023
00024
00025
00026
00027 inline _zrovector to_zrovector() const;
00028
00029
00030 inline double& operator()(const long&);
00031 inline double operator()(const long&) const;
00032 inline drovector& set(const long&, const double&);
00033 inline friend std::ostream& operator<<(std::ostream&, const drovector&);
00034 inline void write(const char*) const;
00035 inline void read(const char*);
00036
00037
00038 inline friend _dcovector t(const drovector&);
00039 inline friend double nrm2(const drovector&);
00040 inline friend long idamax(const drovector&);
00041 inline friend double damax(const drovector&);
00042
00043
00044 inline void clear();
00045 inline drovector& zero();
00046 inline void chsign();
00047 inline void copy(const drovector&);
00048 inline void shallow_copy(const _drovector&);
00049 inline void alias(const drovector&);
00050 inline void unalias();
00051 inline drovector& resize(const long&, const long=0);
00052 inline void stretch(const long&);
00053 inline friend void swap(drovector&, drovector&);
00054 inline friend _drovector _(drovector&);
00055
00056
00057
00058
00059
00060 inline drovector& operator=(const drovector&);
00061 inline drovector& operator=(const _drovector&);
00062
00063
00064 inline drovector& operator+=(const drovector&);
00065 inline drovector& operator+=(const _drovector&);
00066
00067
00068 inline drovector& operator-=(const drovector&);
00069 inline drovector& operator-=(const _drovector&);
00070
00071
00072 inline drovector& operator*=(const double&);
00073
00074
00075 inline drovector& operator/=(const double&);
00076
00077
00078 inline friend const drovector& operator+(const drovector&);
00079 inline friend _drovector operator-(const drovector&);
00080
00081
00082 inline friend _drovector operator+(const drovector&, const drovector&);
00083 inline friend _drovector operator+(const drovector&, const _drovector&);
00084
00085
00086 inline friend _drovector operator-(const drovector&, const drovector&);
00087 inline friend _drovector operator-(const drovector&, const _drovector&);
00088
00089
00090 inline friend double operator*(const drovector&, const dcovector&);
00091 inline friend double operator*(const drovector&, const _dcovector&);
00092 inline friend _drovector operator*(const drovector&, const dgematrix&);
00093 inline friend _drovector operator*(const drovector&, const _dgematrix&);
00094 inline friend _drovector operator*(const drovector&, const dsymatrix&);
00095 inline friend _drovector operator*(const drovector&, const _dsymatrix&);
00096 inline friend _drovector operator*(const drovector&, const dgbmatrix&);
00097 inline friend _drovector operator*(const drovector&, const _dgbmatrix&);
00098 inline friend _drovector operator*(const drovector&, const dgsmatrix&);
00099 inline friend _drovector operator*(const drovector&, const _dgsmatrix&);
00100 inline friend _drovector operator*(const drovector&, const dssmatrix&);
00101 inline friend _drovector operator*(const drovector&, const _dssmatrix&);
00102 inline friend _drovector operator*(const drovector&, const double&);
00103
00104
00105 inline friend _drovector operator/(const drovector&, const double&);
00106
00107
00108 inline friend double operator%(const drovector&, const drovector&);
00109 inline friend double operator%(const drovector&, const _drovector&);
00110
00111
00112 inline friend _drovector operator*(const double&, const drovector&);
00113 };