|
CHROMA
|
Solve a M*psi=chi linear system by CG2 with eigenvectors. More...
#include <syssolver_linop_eigcg_array.h>
Public Member Functions | |
| LinOpSysSolverEigCGArray (Handle< LinearOperatorArray< T > > A_, const SysSolverEigCGParams &invParam_) | |
| Constructor. More... | |
| ~LinOpSysSolverEigCGArray () | |
| Destructor is automatic. More... | |
| const Subset & | subset (void) const |
| Return the subset on which the operator acts. More... | |
| int | size (void) const |
| Expected length of array index. More... | |
| SystemSolverResults_t | operator() (multi1d< T > &psi, const multi1d< T > &chi) const |
| Solver the linear system. More... | |
| SystemSolverResults_t | operator() (multi1d< LatticeFermionF > &psi, const multi1d< LatticeFermionF > &chi) const |
| SystemSolverResults_t | operator() (multi1d< LatticeFermionD > &psi, const multi1d< LatticeFermionD > &chi) const |
Public Member Functions inherited from Chroma::SystemSolverArray< T > | |
| virtual | ~SystemSolverArray () |
| Virtual destructor to help with cleanup;. More... | |
Private Member Functions | |
| LinOpSysSolverEigCGArray () | |
Private Attributes | |
| Handle< LinearOperatorArray< T > > | MdagM |
| Handle< LinearOperatorArray< T > > | A |
| SysSolverEigCGParams | invParam |
Solve a M*psi=chi linear system by CG2 with eigenvectors.
Definition at line 35 of file syssolver_linop_eigcg_array.h.
|
inline |
Constructor.
| M_ | Linear operator ( Read ) |
| invParam_ | inverter parameters ( Read ) |
Definition at line 43 of file syssolver_linop_eigcg_array.h.
References Chroma::SysSolverEigCGParams::eigen_id, Chroma::LinAlg::RitzPairsArray< T >::init(), Chroma::SingletonHolder< T, CreationPolicy, LifetimePolicy, ThreadingModel >::Instance(), Chroma::LinOpSysSolverEigCGArray< T >::invParam, Chroma::LinOpSysSolverEigCGArray< T >::MdagM, Chroma::SysSolverEigCGParams::Neig, and Chroma::SysSolverEigCGParams::Neig_max.
|
inline |
Destructor is automatic.
Definition at line 64 of file syssolver_linop_eigcg_array.h.
References Chroma::SysSolverEigCGParams::cleanUpEvecs, Chroma::SysSolverEigCGParams::eigen_id, Chroma::SingletonHolder< T, CreationPolicy, LifetimePolicy, ThreadingModel >::Instance(), and Chroma::LinOpSysSolverEigCGArray< T >::invParam.
|
inlineprivate |
Definition at line 90 of file syssolver_linop_eigcg_array.h.
| SystemSolverResults_t Chroma::LinOpSysSolverEigCGArray< LatticeFermionD >::operator() | ( | multi1d< LatticeFermionD > & | psi, |
| const multi1d< LatticeFermionD > & | chi | ||
| ) | const |
Definition at line 242 of file syssolver_linop_eigcg_array.cc.
References Chroma::A(), Chroma::chi(), MdagM, and Chroma::psi.
| SystemSolverResults_t Chroma::LinOpSysSolverEigCGArray< LatticeFermionF >::operator() | ( | multi1d< LatticeFermionF > & | psi, |
| const multi1d< LatticeFermionF > & | chi | ||
| ) | const |
Definition at line 234 of file syssolver_linop_eigcg_array.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::SystemSolverArray< T >.
|
inlinevirtual |
Expected length of array index.
Implements Chroma::SystemSolverArray< T >.
Definition at line 76 of file syssolver_linop_eigcg_array.h.
References Chroma::LinOpSysSolverEigCGArray< T >::A.
|
inlinevirtual |
Return the subset on which the operator acts.
Implements Chroma::SystemSolverArray< T >.
Definition at line 73 of file syssolver_linop_eigcg_array.h.
References Chroma::LinOpSysSolverEigCGArray< T >::A.
|
private |
Definition at line 93 of file syssolver_linop_eigcg_array.h.
Referenced by Chroma::LinOpSysSolverEigCGArray< T >::size(), and Chroma::LinOpSysSolverEigCGArray< T >::subset().
|
private |
Definition at line 94 of file syssolver_linop_eigcg_array.h.
Referenced by Chroma::LinOpSysSolverEigCGArray< T >::LinOpSysSolverEigCGArray(), and Chroma::LinOpSysSolverEigCGArray< T >::~LinOpSysSolverEigCGArray().
|
private |
Definition at line 92 of file syssolver_linop_eigcg_array.h.
Referenced by Chroma::LinOpSysSolverEigCGArray< T >::LinOpSysSolverEigCGArray().