Revision 1107 trunk/src/df1b2separable/f1b2vc5.cpp
f1b2vc5.cpp (revision 1107)  

2  2 
* $Id$ 
3  3 
* 
4  4 
* Author: David Fournier 
5 
* Copyright (c) 20082012 Regents of the University of California


5 
* Copyright (c) 20082012 Regents of the University of California 

6  6 
*/ 
7  7 
/** 
8  8 
* \file 
...  ...  
63  63 
{ 
64  64 
ADUNCONST(df1b2vector,x) 
65  65 
ADUNCONST(df1b2matrix,y) 
66 
if (x.indexmin() != y(y.indexmin()).indexmin() 


66 
if (x.indexmin() != y(y.indexmin()).indexmin()  

67  67 
x.indexmax() != y(y.indexmin()).indexmax()) 
68  68 
{ 
69  69 
cerr << "Incompatible shapes in df1b2vector function" << s << endl; 
...  ...  
80  80 
if (allocated()) 
81  81 
{ 
82  82 
ADUNCONST(df1b2vector,x) 
83 
check_shape(*this,x,"df1b2vector& df1b2vector::operator =");


83 
check_shape(*this,x,"df1b2vector& df1b2vector::operator ="); 

84  84 
int mmin=x.indexmin(); 
85  85 
int mmax=x.indexmax(); 
86 
for (int i=mmin;i<=mmax;i++)


86 
for (int i=mmin;i<=mmax;i++) 

87  87 
{ 
88  88 
(*this)(i)=x(i); 
89 
}


89 
} 

90  90 
} 
91  91 
else 
92  92 
{ 
...  ...  
102  102 
df1b2vector& df1b2vector::operator = (const dvector& _x) 
103  103 
{ 
104  104 
ADUNCONST(dvector,x) 
105 
check_shape(*this,x,"df1b2vector& df1b2vector::operator =");


105 
check_shape(*this,x,"df1b2vector& df1b2vector::operator ="); 

106  106 
int mmin=x.indexmin(); 
107  107 
int mmax=x.indexmax(); 
108  108 
for (int i=mmin;i<=mmax;i++) (*this)(i)=x(i); 
...  ...  
149  149 
//int mmax=x.indexmax(); 
150  150 
df1b2vector tmp(rmin,rmax); 
151  151 
tmp.initialize(); 
152 
for (int i=rmin;i<=rmax;i++)


152 
for (int i=rmin;i<=rmax;i++) 

153  153 
{ 
154  154 
tmp(i)=M(i)*x; 
155  155 
} 
...  ...  
171  171 
//int mmax=x.indexmax(); 
172  172 
df1b2vector tmp(rmin,rmax); 
173  173 
tmp.initialize(); 
174 
for (int i=rmin;i<=rmax;i++)


174 
for (int i=rmin;i<=rmax;i++) 

175  175 
{ 
176  176 
tmp(i)=M(i)*x; 
177  177 
} 
...  ...  
193  193 
int mmax=x.indexmax(); 
194  194 
df1b2vector tmp(rmin,rmax); 
195  195 
tmp.initialize(); 
196 
for (int i=rmin;i<=rmax;i++)


196 
for (int i=rmin;i<=rmax;i++) 

197  197 
{ 
198 
for (int j=mmin;j<=mmax;j++)


198 
for (int j=mmin;j<=mmax;j++) 

199  199 
tmp(i)+=M(j,i)*x(j); 
200  200 
} 
201  201 
return tmp; 
...  ...  
216  216 
int mmax=x.indexmax(); 
217  217 
df1b2vector tmp(rmin,rmax); 
218  218 
tmp.initialize(); 
219 
for (int i=rmin;i<=rmax;i++)


219 
for (int i=rmin;i<=rmax;i++) 

220  220 
{ 
221 
for (int j=mmin;j<=mmax;j++)


221 
for (int j=mmin;j<=mmax;j++) 

222  222 
tmp(i)+=M(j,i)*x(j); 
223  223 
} 
224  224 
return tmp; 
...  ...  
239  239 
int mmax=x.indexmax(); 
240  240 
df1b2vector tmp(rmin,rmax); 
241  241 
tmp.initialize(); 
242 
for (int i=rmin;i<=rmax;i++)


242 
for (int i=rmin;i<=rmax;i++) 

243  243 
{ 
244 
for (int j=mmin;j<=mmax;j++)


244 
for (int j=mmin;j<=mmax;j++) 

245  245 
tmp(i)+=M(j,i)*x(j); 
246  246 
} 
Also available in: Unified diff