CHROMA
Public Member Functions | Private Member Functions | Private Attributes | List of all members
Chroma::MdagMMultiSysSolverCGAccumulateArray< T > Class Template Reference

Solve a CG system. Here, the operator is NOT assumed to be hermitian. More...

#include <multi_syssolver_mdagm_cg_accumulate_array.h>

Inheritance diagram for Chroma::MdagMMultiSysSolverCGAccumulateArray< T >:
Chroma::MdagMMultiSystemSolverAccumulateArray< T > Chroma::MultiSystemSolverAccumulateArray< T >

Public Member Functions

 MdagMMultiSysSolverCGAccumulateArray (Handle< LinearOperatorArray< T > > A_, const MultiSysSolverCGParams &invParam_)
 Constructor. More...
 
 ~MdagMMultiSysSolverCGAccumulateArray ()
 Destructor is automatic. More...
 
int size () const
 Expected length of array index. More...
 
const Subset & subset () const
 Return the subset on which the operator acts. More...
 
SystemSolverResults_t operator() (multi1d< T > &psi, const Real &norm, const multi1d< Real > &residues, const multi1d< Real > &poles, const multi1d< T > &chi) const
 Solver the linear system. More...
 
- Public Member Functions inherited from Chroma::MultiSystemSolverAccumulateArray< T >
virtual ~MultiSystemSolverAccumulateArray ()
 Virtual destructor to help with cleanup;. More...
 

Private Member Functions

 MdagMMultiSysSolverCGAccumulateArray ()
 

Private Attributes

Handle< LinearOperatorArray< T > > A
 
MultiSysSolverCGParams invParam
 

Detailed Description

template<typename T>
class Chroma::MdagMMultiSysSolverCGAccumulateArray< T >

Solve a CG system. Here, the operator is NOT assumed to be hermitian.

Definition at line 34 of file multi_syssolver_mdagm_cg_accumulate_array.h.

Constructor & Destructor Documentation

◆ MdagMMultiSysSolverCGAccumulateArray() [1/2]

Constructor.

Parameters
M_Linear operator ( Read )
invParaminverter parameters ( Read )

Definition at line 42 of file multi_syssolver_mdagm_cg_accumulate_array.h.

◆ ~MdagMMultiSysSolverCGAccumulateArray()

Destructor is automatic.

Definition at line 48 of file multi_syssolver_mdagm_cg_accumulate_array.h.

◆ MdagMMultiSysSolverCGAccumulateArray() [2/2]

Definition at line 84 of file multi_syssolver_mdagm_cg_accumulate_array.h.

Member Function Documentation

◆ operator()()

template<typename T >
SystemSolverResults_t Chroma::MdagMMultiSysSolverCGAccumulateArray< T >::operator() ( multi1d< T > &  psi,
const Real &  norm,
const multi1d< Real > &  residues,
const multi1d< Real > &  poles,
const multi1d< T > &  chi 
) const
inlinevirtual

Solver the linear system.

Parameters
psisolution ( Modify )
chisource ( Read )
Returns
syssolver results

Implements Chroma::MultiSystemSolverAccumulateArray< T >.

Definition at line 62 of file multi_syssolver_mdagm_cg_accumulate_array.h.

References Chroma::A(), chi, END_CODE, Chroma::MInvCGAccum(), Chroma::SystemSolverResults_t::n_count, norm, psi, Chroma::RsdCG, and START_CODE.

◆ size()

template<typename T >
int Chroma::MdagMMultiSysSolverCGAccumulateArray< T >::size ( void  ) const
inline

Expected length of array index.

Definition at line 51 of file multi_syssolver_mdagm_cg_accumulate_array.h.

References Chroma::A().

◆ subset()

template<typename T >
const Subset& Chroma::MdagMMultiSysSolverCGAccumulateArray< T >::subset ( void  ) const
inlinevirtual

Return the subset on which the operator acts.

Implements Chroma::MultiSystemSolverAccumulateArray< T >.

Definition at line 54 of file multi_syssolver_mdagm_cg_accumulate_array.h.

References Chroma::A().

Member Data Documentation

◆ A

Definition at line 86 of file multi_syssolver_mdagm_cg_accumulate_array.h.

◆ invParam

template<typename T >
MultiSysSolverCGParams Chroma::MdagMMultiSysSolverCGAccumulateArray< T >::invParam
private

Definition at line 87 of file multi_syssolver_mdagm_cg_accumulate_array.h.


The documentation for this class was generated from the following file: