CHROMA
Public Types | Public Member Functions | Private Types | Private Attributes | List of all members
Chroma::LinOpSysSolverMGProtoQPhiXEOClover Class Reference

#include <syssolver_linop_clover_mg_proto_qphix_eo.h>

Inheritance diagram for Chroma::LinOpSysSolverMGProtoQPhiXEOClover:
Chroma::LinOpSystemSolver< LatticeFermion > Chroma::SystemSolver< LatticeFermion >

Public Types

using T = LatticeFermion
 
using Q = multi1d< LatticeColorMatrix >
 

Public Member Functions

 LinOpSysSolverMGProtoQPhiXEOClover (Handle< LinearOperator< T > > A_, Handle< FermState< T, Q, Q > > state_, const MGProtoSolverParams &invParam_)
 
 ~LinOpSysSolverMGProtoQPhiXEOClover ()
 
const Subset & subset () const
 Return the subset on which the operator acts. More...
 
SystemSolverResults_t operator() (T &psi, const T &chi) const
 Solve It! More...
 
- Public Member Functions inherited from Chroma::SystemSolver< LatticeFermion >
virtual ~SystemSolver ()
 Virtual destructor to help with cleanup;. More...
 

Private Types

using UnprecFGMRES = MG::UnprecFGMRESSolverQPhiXWrapper
 

Private Attributes

Handle< LinearOperator< T > > A
 
Handle< FermState< T, Q, Q > > state
 
MGProtoSolverParams invParam
 
const std::string & subspaceId
 
std::shared_ptr< MGProtoHelpersQPhiX::MGPreconditionerEOmg_pointer
 
std::shared_ptr< MG::QPhiXWilsonCloverEOLinearOperator > M_ptr
 
std::shared_ptr< UnprecFGMRESwrapped
 
std::shared_ptr< EoFGMRESeo_solver
 

Detailed Description

Definition at line 43 of file syssolver_linop_clover_mg_proto_qphix_eo.h.

Member Typedef Documentation

◆ Q

using Chroma::LinOpSysSolverMGProtoQPhiXEOClover::Q = multi1d<LatticeColorMatrix>

Definition at line 47 of file syssolver_linop_clover_mg_proto_qphix_eo.h.

◆ T

Definition at line 46 of file syssolver_linop_clover_mg_proto_qphix_eo.h.

◆ UnprecFGMRES

using Chroma::LinOpSysSolverMGProtoQPhiXEOClover::UnprecFGMRES = MG::UnprecFGMRESSolverQPhiXWrapper
private

Definition at line 71 of file syssolver_linop_clover_mg_proto_qphix_eo.h.

Constructor & Destructor Documentation

◆ LinOpSysSolverMGProtoQPhiXEOClover()

Chroma::LinOpSysSolverMGProtoQPhiXEOClover::LinOpSysSolverMGProtoQPhiXEOClover ( Handle< LinearOperator< T > >  A_,
Handle< FermState< T, Q, Q > >  state_,
const MGProtoSolverParams invParam_ 
)

◆ ~LinOpSysSolverMGProtoQPhiXEOClover()

Chroma::LinOpSysSolverMGProtoQPhiXEOClover::~LinOpSysSolverMGProtoQPhiXEOClover ( )

Definition at line 102 of file syssolver_linop_clover_mg_proto_qphix_eo.cc.

Member Function Documentation

◆ operator()()

SystemSolverResults_t Chroma::LinOpSysSolverMGProtoQPhiXEOClover::operator() ( T psi,
const T chi 
) const
virtual

◆ subset()

const Subset & Chroma::LinOpSysSolverMGProtoQPhiXEOClover::subset ( void  ) const
virtual

Return the subset on which the operator acts.

Implements Chroma::SystemSolver< LatticeFermion >.

Definition at line 106 of file syssolver_linop_clover_mg_proto_qphix_eo.cc.

References A.

Member Data Documentation

◆ A

Handle< LinearOperator< T > > Chroma::LinOpSysSolverMGProtoQPhiXEOClover::A
private

Definition at line 63 of file syssolver_linop_clover_mg_proto_qphix_eo.h.

Referenced by operator()(), and subset().

◆ eo_solver

std::shared_ptr<EoFGMRES> Chroma::LinOpSysSolverMGProtoQPhiXEOClover::eo_solver
private

◆ invParam

MGProtoSolverParams Chroma::LinOpSysSolverMGProtoQPhiXEOClover::invParam
private

◆ M_ptr

std::shared_ptr<MG::QPhiXWilsonCloverEOLinearOperator > Chroma::LinOpSysSolverMGProtoQPhiXEOClover::M_ptr
private

◆ mg_pointer

std::shared_ptr<MGProtoHelpersQPhiX::MGPreconditionerEO> Chroma::LinOpSysSolverMGProtoQPhiXEOClover::mg_pointer
private

◆ state

Handle< FermState<T,Q,Q> > Chroma::LinOpSysSolverMGProtoQPhiXEOClover::state
private

◆ subspaceId

const std::string& Chroma::LinOpSysSolverMGProtoQPhiXEOClover::subspaceId
private

◆ wrapped

std::shared_ptr<UnprecFGMRES> Chroma::LinOpSysSolverMGProtoQPhiXEOClover::wrapped
private

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