00001 //============================================================================= 00002 /*! drovector*=double operator */ 00003 inline drovector& drovector::operator*=(const double& d) 00004 { 00005 dscal_(Ll, d, Array, 1); 00006 return *this; 00007 } 00008 00009 //============================================================================= 00010 /*! drovector/=double operator */ 00011 inline drovector& drovector::operator/=(const double& d) 00012 { 00013 dscal_(Ll, 1./d, Array, 1); 00014 return *this; 00015 } 00016 00017 /////////////////////////////////////////////////////////////////////////////// 00018 /////////////////////////////////////////////////////////////////////////////// 00019 /////////////////////////////////////////////////////////////////////////////// 00020 00021 //============================================================================= 00022 /*! drovector*double operator */ 00023 inline _drovector operator*(const drovector& vec, const double& d) 00024 { 00025 _drovector newvec(vec.L); 00026 for(int i=0; i<vec.Ll; i++){ newvec.Array[i] =vec.Array[i]*d; } 00027 00028 return newvec; 00029 } 00030 00031 //============================================================================= 00032 /*! drovector/double operator */ 00033 inline _drovector operator/(const drovector& vec, const double& d) 00034 { 00035 double inv_d(1./d); 00036 00037 _drovector newvec(vec.L); 00038 for(int i=0; i<vec.Ll; i++){ newvec.Array[i] =vec.Array[i]*inv_d; } 00039 00040 return newvec; 00041 }