1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-07-27 01:37:07 +01:00

Approx tests and lanczos improvement

This commit is contained in:
paboyle
2017-10-13 11:30:50 +01:00
parent 9fe6ac71ea
commit cb9ff20249
9 changed files with 823 additions and 712 deletions

View File

@@ -48,7 +48,7 @@ class BasisFieldVector {
}
}
void rotate(std::vector<RealD>& Qt,int j0, int j1, int k0,int k1,int Nm) {
void rotate(Eigen::MatrixXd& Qt,int j0, int j1, int k0,int k1,int Nm) {
GridBase* grid = _v[0]._grid;
@@ -62,7 +62,7 @@ class BasisFieldVector {
for(int j=j0; j<j1; ++j){
for(int k=k0; k<k1; ++k){
B[j] +=Qt[k+Nm*j] * _v[k]._odata[ss];
B[j] +=Qt(j,k) * _v[k]._odata[ss];
}
}
for(int j=j0; j<j1; ++j){
@@ -70,7 +70,6 @@ class BasisFieldVector {
}
}
}
}
size_t size() const {

View File

@@ -244,6 +244,7 @@ until convergence
// Implicitly shifted QR transformations
Qt = Eigen::MatrixXd::Identity(Nm,Nm);
for(int ip=k2; ip<Nm; ++ip){
// Eigen replacement for qr_decomp ???
qr_decomp(eval,lme,Nm,Nm,Qt,eval2[ip],k1,Nm);
@@ -319,7 +320,7 @@ until convergence
} // end of iter loop
std::cout << GridLogMessage <<"**************************************************************************"<< std::endl;
std::cout<< GridLogError <<" ImplicitlyRestartedLanczos::calc() NOT converged.";
std::cout << GridLogError <<" ImplicitlyRestartedLanczos::calc() NOT converged.";
std::cout << GridLogMessage <<"**************************************************************************"<< std::endl;
abort();