|
CHROMA
|
Solve a M*psi=chi linear system by CG2 with eigenvectors. More...
#include <syssolver_mdagm_eigcg_qdp.h>
Public Member Functions | |
| MdagMSysSolverQDPEigCG (Handle< LinearOperator< T > > A_, const SysSolverEigCGParams &invParam_) | |
| Constructor. More... | |
| ~MdagMSysSolverQDPEigCG () | |
| Destructor is automatic. More... | |
| const Subset & | subset () const |
| Return the subset on which the operator acts. More... | |
| SystemSolverResults_t | operator() (T &psi, const T &chi) const |
| Solver the linear system. More... | |
| SystemSolverResults_t | operator() (T &psi, const T &chi, AbsChronologicalPredictor4D< T > &predictor) const |
| Solve the linear system starting with a chrono guess. More... | |
| SystemSolverResults_t | operator() (LatticeFermionF &psi, const LatticeFermionF &chi) const |
| SystemSolverResults_t | operator() (LatticeFermionD &psi, const LatticeFermionD &chi) const |
Public Member Functions inherited from Chroma::SystemSolver< T > | |
| virtual | ~SystemSolver () |
| Virtual destructor to help with cleanup;. More... | |
Private Member Functions | |
| MdagMSysSolverQDPEigCG () | |
Private Attributes | |
| Handle< LinearOperator< T > > | MdagM |
| Handle< LinearOperator< T > > | A |
| SysSolverEigCGParams | invParam |
Solve a M*psi=chi linear system by CG2 with eigenvectors.
Definition at line 35 of file syssolver_mdagm_eigcg_qdp.h.
|
inline |
Constructor.
| M_ | Linear operator ( Read ) |
| invParam_ | inverter parameters ( Read ) |
Definition at line 43 of file syssolver_mdagm_eigcg_qdp.h.
References Chroma::SysSolverEigCGParams::eigen_id, Chroma::LinAlg::RitzPairs< T >::init(), Chroma::SingletonHolder< T, CreationPolicy, LifetimePolicy, ThreadingModel >::Instance(), Chroma::MdagMSysSolverQDPEigCG< T >::invParam, Chroma::SysSolverEigCGParams::Neig, and Chroma::SysSolverEigCGParams::Neig_max.
|
inline |
Destructor is automatic.
Definition at line 64 of file syssolver_mdagm_eigcg_qdp.h.
References Chroma::SysSolverEigCGParams::cleanUpEvecs, Chroma::SysSolverEigCGParams::eigen_id, Chroma::SingletonHolder< T, CreationPolicy, LifetimePolicy, ThreadingModel >::Instance(), and Chroma::MdagMSysSolverQDPEigCG< T >::invParam.
|
inlineprivate |
Definition at line 117 of file syssolver_mdagm_eigcg_qdp.h.
| SystemSolverResults_t Chroma::MdagMSysSolverQDPEigCG< LatticeFermionD >::operator() | ( | LatticeFermionD & | psi, |
| const LatticeFermionD & | chi | ||
| ) | const |
Definition at line 250 of file syssolver_mdagm_eigcg_qdp.cc.
References Chroma::A(), Chroma::chi(), MdagM, and Chroma::psi.
| SystemSolverResults_t Chroma::MdagMSysSolverQDPEigCG< LatticeFermionF >::operator() | ( | LatticeFermionF & | psi, |
| const LatticeFermionF & | chi | ||
| ) | const |
Definition at line 242 of file syssolver_mdagm_eigcg_qdp.cc.
References Chroma::A(), Chroma::chi(), MdagM, and Chroma::psi.
|
virtual |
Solver the linear system.
| psi | solution ( Modify ) |
| chi | source ( Read ) |
Definitions supplied in the correspond .cc file
Implements Chroma::MdagMSystemSolver< T >.
|
inlinevirtual |
Solve the linear system starting with a chrono guess.
| psi | solution (Write) |
| chi | source (Read) |
| predictor | a chronological predictor (Read) |
Implements Chroma::MdagMSystemSolver< T >.
Definition at line 94 of file syssolver_mdagm_eigcg_qdp.h.
References Chroma::MdagMSysSolverQDPEigCG< T >::A, Chroma::chi(), Chroma::END_CODE(), Chroma::MdagMSysSolverQDPEigCG< T >::MdagM, Chroma::AbsChronologicalPredictor4D< T >::newVector(), Chroma::psi, and Chroma::START_CODE().
|
inlinevirtual |
Return the subset on which the operator acts.
Implements Chroma::MdagMSystemSolver< T >.
Definition at line 73 of file syssolver_mdagm_eigcg_qdp.h.
References Chroma::MdagMSysSolverQDPEigCG< T >::A.
|
private |
Definition at line 120 of file syssolver_mdagm_eigcg_qdp.h.
Referenced by Chroma::MdagMSysSolverQDPEigCG< T >::operator()(), and Chroma::MdagMSysSolverQDPEigCG< T >::subset().
|
private |
Definition at line 121 of file syssolver_mdagm_eigcg_qdp.h.
Referenced by Chroma::MdagMSysSolverQDPEigCG< T >::MdagMSysSolverQDPEigCG(), and Chroma::MdagMSysSolverQDPEigCG< T >::~MdagMSysSolverQDPEigCG().
|
private |
Definition at line 119 of file syssolver_mdagm_eigcg_qdp.h.
Referenced by Chroma::MdagMSysSolverQDPEigCG< T >::operator()().