Main Page | Class List | File List | Class Members | File Members | Related Pages

_drovector.hpp

Go to the documentation of this file.
00001 //=============================================================================
00002 //! Smart-Temporary double-precision row vector class (DO NOT USE)
00003 class _drovector
00004 {
00005 public:
00006   //// objects ////
00007   mutable long L; //!< global vector size
00008   mutable long Ll; //!< local vector size
00009   mutable long Desc[9]; //!< vector description
00010   mutable double* Array; //!< 1D array to store vector data
00011 
00012   //// constructor ////
00013   inline _drovector();
00014   inline _drovector(const _drovector&);
00015   inline _drovector(const drovector&);
00016   inline _drovector(const long&);
00017   inline ~_drovector(); //destructor
00018   
00019   //// io ////
00020   inline CPPSL_double operator()(const long&) const;
00021   inline friend std::ostream& operator<<(std::ostream&, const _drovector&);
00022   
00023   //// calc ////
00024   //inline friend drovector t(const _drovector&);
00025   //inline friend double nrm2(const _drovector&);
00026   
00027   //// misc ////
00028   inline void destroy() const;
00029   
00030   //// unary ////
00031   inline friend const _drovector& operator+(const _drovector&);
00032   inline friend _drovector operator-(const _drovector&);
00033   
00034   //// + ////
00035   inline friend _drovector operator+(const  drovector&, const  drovector&);
00036   inline friend _drovector operator+(const  drovector&, const _drovector&);
00037   inline friend _drovector operator+(const _drovector&, const  drovector&);
00038   inline friend _drovector operator+(const _drovector&, const _drovector&);
00039   
00040   //// - ////
00041   inline friend _drovector operator-(const  drovector&, const  drovector&);
00042   inline friend _drovector operator-(const  drovector&, const _drovector&);
00043   inline friend _drovector operator-(const _drovector&, const  drovector&);
00044   inline friend _drovector operator-(const _drovector&, const _drovector&);
00045   
00046   //// * ////
00047   inline friend _drovector operator*(const  drovector&, const  dgematrix&);
00048   inline friend _drovector operator*(const  drovector&, const _dgematrix&);
00049   inline friend _drovector operator*(const _drovector&, const  dgematrix&);
00050   inline friend _drovector operator*(const _drovector&, const _dgematrix&);
00051   
00052   //inline friend _drovector operator*(const  drovector&, const  dgbmatrix&);
00053   //inline friend _drovector operator*(const  drovector&, const _dgbmatrix&);
00054   //inline friend _drovector operator*(const _drovector&, const  dgbmatrix&);
00055   //inline friend _drovector operator*(const _drovector&, const _dgbmatrix&);
00056   
00057   inline friend _drovector operator*(const     double&, const  drovector&);
00058   inline friend _drovector operator*(const     double&, const _drovector&);
00059   inline friend _drovector operator*(const  drovector&, const     double&);
00060   inline friend _drovector operator*(const _drovector&, const     double&);
00061   
00062   inline friend _dgematrix operator*(const  dcovector&, const _drovector&);
00063   inline friend _dgematrix operator*(const _dcovector&, const _drovector&);
00064   inline friend     double operator*(const _drovector&, const  dcovector&);
00065   inline friend     double operator*(const _drovector&, const _dcovector&);
00066   
00067   //// / ////
00068   inline friend _drovector operator/(const  drovector&, const     double&);
00069   inline friend _drovector operator/(const _drovector&, const     double&);
00070   
00071   //// % ////
00072   inline friend     double operator%(const  drovector&, const _drovector&);
00073   inline friend     double operator%(const _drovector&, const  drovector&);
00074   inline friend     double operator%(const _drovector&, const _drovector&);
00075   
00076   //// friend classes ////
00077   friend class  dgematrix;
00078   friend class _dgematrix;
00079   //friend class  dgbmatrix;
00080   //friend class _dgbmatrix;
00081   friend class  dcovector;
00082   friend class _dcovector;
00083   friend class  drovector;
00084 };

Generated on Sat Jan 31 19:25:43 2004 for CPPScaLapack by doxygen 1.3.5