6 #ifndef __multi_syssolver_mdagm_cg_accumulate_h__
7 #define __multi_syssolver_mdagm_cg_accumulate_h__
21 namespace MdagMMultiSysSolverAccumulateCGEnv
49 const Subset&
subset()
const {
return A->subset();}
58 const multi1d<Real>& poles,
const T&
chi)
const
Class for counted reference semantics.
Solve a CG2 system. Here, the operator is NOT assumed to be hermitian.
MdagMMultiSysSolverCGAccumulate(Handle< LinearOperator< T > > A_, const SysSolverCGParams &invParam_)
Constructor.
~MdagMMultiSysSolverCGAccumulate()
Destructor is automatic.
SystemSolverResults_t operator()(T &psi, const Real &norm, const multi1d< Real > &residua, const multi1d< Real > &poles, const T &chi) const
Solver the linear system.
SysSolverCGParams invParam
MdagMMultiSysSolverCGAccumulate()
const Subset & subset() const
Return the subset on which the operator acts.
Handle< LinearOperator< T > > A
void MInvCG2Accum(const LinearOperator< LatticeFermion > &M, const LatticeFermion &chi, LatticeFermion &psi, const Real &norm, const multi1d< Real > &residues, const multi1d< Real > &poles, const Real &RsdCG, int MaxCG, int &n_count)
Class for counted reference semantics.
Multishift Conjugate-Gradient algorithm for a Linear Operator.
Disambiguator for multi-shift MdagM system solvers.
bool registerAll()
Register all the factories.
Asqtad Staggered-Dirac operator.
LinOpSysSolverMGProtoClover::T T
multi1d< LatticeFermion > chi(Ncb)
SystemSolver disambiguator.
Holds return info from SystemSolver call.