Go to the documentation of this file.00001
00002
00003 template<long l>
00004 inline zcovector_small<l> operator*(const comple& v, const zcovector_small<l>& A)
00005 {VERBOSE_REPORT;
00006 zcovector_small<l> X;
00007 for(long i=0; i<l; i++){
00008 X(i) =v*A(i);
00009 }
00010 return X;
00011 }
00012
00013
00014
00015 template<long l>
00016 inline zrovector_small<l> operator*(const comple& v, const zrovector_small<l>& A)
00017 {VERBOSE_REPORT;
00018 zrovector_small<l> X;
00019 for(long i=0; i<l; i++){
00020 X(i) =v*A(i);
00021 }
00022 return X;
00023 }
00024
00025
00026
00027 template<long m, long n>
00028 inline zgematrix_small<m,n> operator*(const comple& v, const zgematrix_small<m,n>& A)
00029 {VERBOSE_REPORT;
00030 zgematrix_small<m,n> C;
00031 for(long i=0; i<m; i++){
00032 for(long j=0; j<n; j++){
00033 C(i,j) =v*A(i,j);
00034 }
00035 }
00036 return C;
00037 }
00038
00039
00040
00041 template<long n>
00042 inline zhematrix_small<n> operator*(const comple& v, const zhematrix_small<n>& A)
00043 {VERBOSE_REPORT;
00044 zhematrix_small<n> X;
00045 for(long k=0; k<(n*(n+1))/2; k++){
00046 X.array[k] =v*A.array[k];
00047 }
00048 return X;
00049 }