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

Solve a M*psi=chi linear system by EigCG with eigenvectors. More...

#include <syssolver_linop_eigcg.h>

Inheritance diagram for Chroma::LinOpSysSolverEigCG< T >:
Chroma::LinOpSystemSolver< T > Chroma::SystemSolver< T >

Public Member Functions

 LinOpSysSolverEigCG (Handle< LinearOperator< T > > A_, Handle< MdagMSystemSolver< T > > sysSolver_)
 Constructor. More...
 
 ~LinOpSysSolverEigCG ()
 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...
 
- Public Member Functions inherited from Chroma::SystemSolver< T >
virtual ~SystemSolver ()
 Virtual destructor to help with cleanup;. More...
 

Private Attributes

Handle< LinearOperator< T > > A
 
Handle< MdagMSystemSolver< T > > sysSolver
 

Detailed Description

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

Solve a M*psi=chi linear system by EigCG with eigenvectors.

Definition at line 27 of file syssolver_linop_eigcg.h.

Constructor & Destructor Documentation

◆ LinOpSysSolverEigCG()

template<typename T >
Chroma::LinOpSysSolverEigCG< T >::LinOpSysSolverEigCG ( Handle< LinearOperator< T > >  A_,
Handle< MdagMSystemSolver< T > >  sysSolver_ 
)
inline

Constructor.

Parameters
A_Linear operator ( Read )
sysSolver_MdagM system solver ( Read )

Definition at line 35 of file syssolver_linop_eigcg.h.

◆ ~LinOpSysSolverEigCG()

template<typename T >
Chroma::LinOpSysSolverEigCG< T >::~LinOpSysSolverEigCG ( )
inline

Destructor is automatic.

Definition at line 40 of file syssolver_linop_eigcg.h.

Member Function Documentation

◆ operator()()

template<typename T >
SystemSolverResults_t Chroma::LinOpSysSolverEigCG< T >::operator() ( T psi,
const T chi 
) const
inlinevirtual

Solver the linear system.

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

Implements Chroma::SystemSolver< T >.

Definition at line 51 of file syssolver_linop_eigcg.h.

References Chroma::chi(), Chroma::MINUS, Chroma::psi, and Chroma::LinOpSysSolverEigCG< T >::sysSolver.

◆ subset()

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

Return the subset on which the operator acts.

Implements Chroma::SystemSolver< T >.

Definition at line 43 of file syssolver_linop_eigcg.h.

References Chroma::LinOpSysSolverEigCG< T >::A.

Member Data Documentation

◆ A

template<typename T >
Handle< LinearOperator<T> > Chroma::LinOpSysSolverEigCG< T >::A
private

Definition at line 62 of file syssolver_linop_eigcg.h.

Referenced by Chroma::LinOpSysSolverEigCG< T >::subset().

◆ sysSolver

template<typename T >
Handle< MdagMSystemSolver<T> > Chroma::LinOpSysSolverEigCG< T >::sysSolver
private

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