14 #ifndef EIGENSOLVER_IRLANCZOS_INCLUDED
15 #define EIGENSOLVER_IRLANCZOS_INCLUDED
66 void set_parameters(
int Nk,
int Np,
int Niter_eigen,
double Enorm_eigen,
69 int Nk,
int Np,
int Niter_eigen,
double Enorm_eigen,
72 void solve(std::vector<double>& TDa, std::vector<Field>& vk,
73 int& Nsbt,
int& Nconv,
const Field& b);
77 void step(
int Nm,
int k,
78 std::vector<double>& TDa,
79 std::vector<double>& TDb,
80 std::vector<Field>& vk,
Field& f);
82 void qrtrf(std::vector<double>& TDa, std::vector<double>& TDb,
83 int Nk,
int Nm, std::vector<double>& Qt,
84 double Dsh,
int kmin,
int kmax);
86 void tqri(std::vector<double>& TDa, std::vector<double>& TDb,
87 int Nk,
int Nm, std::vector<double>& Qt);
89 void setUnit_Qt(
int Nm, std::vector<double>& Qt);
void qrtrf(std::vector< double > &TDa, std::vector< double > &TDb, int Nk, int Nm, std::vector< double > &Qt, double Dsh, int kmin, int kmax)
Eigenvalue solver with Implicitly Restarted Lanczos algorithm.
Container of Field-type object.
void solve(std::vector< double > &TDa, std::vector< Field > &vk, int &Nsbt, int &Nconv, const Field &b)
void tqri(std::vector< double > &TDa, std::vector< double > &TDb, int Nk, int Nm, std::vector< double > &Qt)
Eigensolver_IRLanczos(Fopr *fopr)
void setUnit_Qt(int Nm, std::vector< double > &Qt)
static const std::string class_name
void set_parameters(const Parameters ¶ms)
Eigensolver_IRLanczos(unique_ptr< Fopr > &fopr)
void step(int Nm, int k, std::vector< double > &TDa, std::vector< double > &TDb, std::vector< Field > &vk, Field &f)
void schmidt_orthogonalization(Field &w, std::vector< Field > &vk, int k)
Eigensolver class for abstract base class of eigen solvers.
Base class of fermion operator family.