CHROMA
Public Member Functions | List of all members
Chroma::EvenOddStaggeredTypeFermAct< T, P, Q > Class Template Referenceabstract

Even-odd preconditioned Staggered-like fermion actions. More...

#include <fermact.orig.h>

Inheritance diagram for Chroma::EvenOddStaggeredTypeFermAct< T, P, Q >:
Chroma::StaggeredTypeFermAct< T, P, Q > Chroma::StaggeredTypeFermAct< T, P, Q > Chroma::DiffFermAct4D< T, P, Q > Chroma::DiffFermAct4D< T, P, Q > Chroma::DiffFermAct4D< T, P, Q > Chroma::DiffFermAct4D< T, P, Q > Chroma::FermAct4D< T, P, Q > Chroma::FermAct4D< T, P, Q > Chroma::FermAct4D< T, P, Q > Chroma::FermAct4D< T, P, Q > Chroma::FermAct4D< T, P, Q > Chroma::FermAct4D< T, P, Q > Chroma::FermAct4D< T, P, Q > Chroma::FermAct4D< T, P, Q >

Public Member Functions

virtual ~EvenOddStaggeredTypeFermAct ()
 Virtual destructor to help with cleanup;. More...
 
virtual EvenOddLinearOperator< T, P, Q > * linOp (Handle< FermState< T, P, Q > > state) const =0
 Override to produce an even-odd prec. linear operator for this action. More...
 
virtual SystemSolver< T > * qprop (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return quark prop solver, solution of unpreconditioned system. More...
 
virtual ~EvenOddStaggeredTypeFermAct ()
 Virtual destructor to help with cleanup;. More...
 
virtual EvenOddLinearOperator< T, P, Q > * linOp (Handle< FermState< T, P, Q > > state) const =0
 Override to produce an even-odd prec. linear operator for this action. More...
 
virtual SystemSolver< T > * qprop (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return quark prop solver, solution of unpreconditioned system. More...
 
SystemSolver< LF > * qprop (Handle< FermState< LF, LCM, LCM > > state, const GroupXML_t &invParam) const
 Return a linear operator solver for this action to solve MdagM*psi=chi. More...
 
- Public Member Functions inherited from Chroma::StaggeredTypeFermAct< T, P, Q >
virtual ~StaggeredTypeFermAct ()
 Virtual destructor to help with cleanup;. More...
 
virtual const Real getQuarkMass () const =0
 Return the quark mass. More...
 
virtual LinOpSystemSolver< T > * invLinOp (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return a linear operator solver for this action to solve M*psi=chi. More...
 
virtual MdagMSystemSolver< T > * invMdagM (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return a linear operator solver for this action to solve MdagM*psi=chi. More...
 
virtual MdagMMultiSystemSolver< T > * mInvMdagM (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return a multi-shift linear operator solver for this action to solve (MdagM+shift)*psi=chi. More...
 
virtual void quarkProp (typename PropTypeTraits< T >::Type_t &q_sol, XMLWriter &xml_out, const typename PropTypeTraits< T >::Type_t &q_src, Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam, QuarkSpinType quarkSpinType, int &ncg_had) const
 Given a complete propagator as a source, this does all the inversions needed. More...
 
virtual ~StaggeredTypeFermAct ()
 Virtual destructor to help with cleanup;. More...
 
virtual const Real getQuarkMass () const =0
 Return the quark mass. More...
 
virtual LinOpSystemSolver< T > * invLinOp (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return a linear operator solver for this action to solve M*psi=chi. More...
 
virtual MdagMSystemSolver< T > * invMdagM (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return a linear operator solver for this action to solve MdagM*psi=chi. More...
 
virtual LinOpMultiSystemSolver< T > * mInvLinOp (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return a multi-shift linear operator solver for this action to solve (M+shift)*psi=chi. More...
 
virtual MdagMMultiSystemSolver< T > * mInvMdagM (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return a multi-shift linear operator solver for this action to solve (MdagM+shift)*psi=chi. More...
 
virtual MdagMMultiSystemSolverAccumulate< T > * mInvMdagMAcc (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return a multi-shift linear operator solver for this action to solve (MdagM+shift)*psi=chi. More...
 
virtual void quarkProp (typename PropTypeTraits< T >::Type_t &q_sol, XMLWriter &xml_out, const typename PropTypeTraits< T >::Type_t &q_src, Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam, QuarkSpinType quarkSpinType, int &ncg_had) const
 Given a complete propagator as a source, this does all the inversions needed. More...
 
void quarkProp (LatticeStaggeredPropagator &q_sol, XMLWriter &xml_out, const LatticeStaggeredPropagator &q_src, Handle< FermState< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > state, const GroupXML_t &invParam, QuarkSpinType quarkSpinType, int &ncg_had) const
 Given a complete propagator as a source, this does all the inversions needed. More...
 
LinOpSystemSolver< LF > * invLinOp (Handle< FermState< LF, LCM, LCM > > state, const GroupXML_t &invParam) const
 
MdagMSystemSolver< LF > * invMdagM (Handle< FermState< LF, LCM, LCM > > state, const GroupXML_t &invParam) const
 Return a linear operator solver for this action to solve MdagM*psi=chi. More...
 
LinOpMultiSystemSolver< LF > * mInvLinOp (Handle< FermState< LF, LCM, LCM > > state, const GroupXML_t &invParam) const
 Return a linear operator solver for this action to solve (M+shift_i)*psi_i = chi. More...
 
MdagMMultiSystemSolver< LF > * mInvMdagM (Handle< FermState< LF, LCM, LCM > > state, const GroupXML_t &invParam) const
 Return a linear operator solver for this action to solve (MdagM+shift_i)*psi_i = chi. More...
 
MdagMMultiSystemSolverAccumulate< LF > * mInvMdagMAcc (Handle< FermState< LF, LCM, LCM > > state, const GroupXML_t &invParam) const
 Return a linear operator solver for this action to solve (MdagM+shift_i)*psi_i = chi. More...
 
- Public Member Functions inherited from Chroma::DiffFermAct4D< T, P, Q >
virtual ~DiffFermAct4D ()
 Virtual destructor to help with cleanup;. More...
 
virtual DiffLinearOperator< T, Q, P > * lMdagM (Handle< FermState< T, P, Q > > state) const =0
 Produce a linear operator M^dag.M for this action. More...
 
virtual ~DiffFermAct4D ()
 Virtual destructor to help with cleanup;. More...
 
virtual DiffLinearOperator< T, Q, P > * lMdagM (Handle< FermState< T, P, Q > > state) const =0
 Produce a linear operator M^dag.M for this action. More...
 
- Public Member Functions inherited from Chroma::FermAct4D< T, P, Q >
virtual ~FermAct4D ()
 Virtual destructor to help with cleanup;. More...
 
virtual ~FermAct4D ()
 Virtual destructor to help with cleanup;. More...
 
SystemSolver< LatticeFermion > * qprop (Handle< FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > state, const GroupXML_t &invParam) const
 Return quark prop solver, solution of unpreconditioned system. More...
 
SystemSolver< LatticeStaggeredFermion > * qprop (Handle< FermState< LatticeStaggeredFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > state, const GroupXML_t &invParam) const
 
- Public Member Functions inherited from Chroma::FermionAction< T, P, Q >
virtual ~FermionAction ()
 Virtual destructor to help with cleanup;. More...
 
virtual FermState< T, P, Q > * createState (const Q &q) const
 Given links (coordinates Q) create the state needed for the linear operators. More...
 
virtual FermState< T, P, Q > * createState (const Q &q, XMLReader &reader, const std::string &path) const
 Given links (coordinates Q) create a state with additional info held by the XMLReader. More...
 
virtual const FermBC< T, P, Q > & getFermBC () const
 Return the fermion BC object for this action. More...
 
virtual const CreateFermState< T, P, Q > & getCreateState () const =0
 Return the factory object that produces a state. More...
 
virtual void quarkProp (typename PropTypeTraits< T >::Type_t &q_sol, XMLWriter &xml_out, const typename PropTypeTraits< T >::Type_t &q_src, int t_src, int j_decay, Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam, QuarkSpinType quarkSpinType, bool obsvP, int &ncg_had) const
 Given a complete propagator as a source, this does all the inversions needed. More...
 
virtual ~FermionAction ()
 Virtual destructor to help with cleanup;. More...
 
virtual FermState< T, P, Q > * createState (const Q &q) const
 Given links (coordinates Q) create the state needed for the linear operators. More...
 
virtual FermState< T, P, Q > * createState (const Q &q, XMLReader &reader, const std::string &path) const
 Given links (coordinates Q) create a state with additional info held by the XMLReader. More...
 
virtual const FermBC< T, P, Q > & getFermBC () const
 Return the fermion BC object for this action. More...
 
virtual const CreateFermState< T, P, Q > & getCreateState () const =0
 Return the factory object that produces a state. More...
 
virtual void quarkProp (typename PropTypeTraits< T >::Type_t &q_sol, XMLWriter &xml_out, const typename PropTypeTraits< T >::Type_t &q_src, int t_src, int j_decay, Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam, QuarkSpinType quarkSpinType, bool obsvP, int &ncg_had) const
 Given a complete propagator as a source, this does all the inversions needed. More...
 

Detailed Description

template<typename T, typename P, typename Q>
class Chroma::EvenOddStaggeredTypeFermAct< T, P, Q >

Even-odd preconditioned Staggered-like fermion actions.

Even-odd preconditioned like Staggered-like fermion actions

Definition at line 713 of file fermact.orig.h.

Constructor & Destructor Documentation

◆ ~EvenOddStaggeredTypeFermAct() [1/2]

template<typename T , typename P , typename Q >
virtual Chroma::EvenOddStaggeredTypeFermAct< T, P, Q >::~EvenOddStaggeredTypeFermAct ( )
inlinevirtual

Virtual destructor to help with cleanup;.

Definition at line 717 of file fermact.orig.h.

◆ ~EvenOddStaggeredTypeFermAct() [2/2]

template<typename T , typename P , typename Q >
virtual Chroma::EvenOddStaggeredTypeFermAct< T, P, Q >::~EvenOddStaggeredTypeFermAct ( )
inlinevirtual

Virtual destructor to help with cleanup;.

Definition at line 108 of file stagtype_fermact_s.h.

Member Function Documentation

◆ linOp() [1/2]

template<typename T , typename P , typename Q >
virtual EvenOddLinearOperator<T,P,Q>* Chroma::EvenOddStaggeredTypeFermAct< T, P, Q >::linOp ( Handle< FermState< T, P, Q > >  state) const
pure virtual

Override to produce an even-odd prec. linear operator for this action.

Covariant return rule - override base class function

Implements Chroma::DiffFermAct4D< T, P, Q >.

Implemented in Chroma::HisqFermAct, Chroma::AsqtadFermAct, and Chroma::StagFermAct.

◆ linOp() [2/2]

template<typename T , typename P , typename Q >
virtual EvenOddLinearOperator<T,P,Q>* Chroma::EvenOddStaggeredTypeFermAct< T, P, Q >::linOp ( Handle< FermState< T, P, Q > >  state) const
pure virtual

Override to produce an even-odd prec. linear operator for this action.

Covariant return rule - override base class function

Implements Chroma::DiffFermAct4D< T, P, Q >.

Implemented in Chroma::HisqFermAct, Chroma::AsqtadFermAct, and Chroma::StagFermAct.

◆ qprop() [1/3]

SystemSolver< LF > * Chroma::EvenOddStaggeredTypeFermAct< LF, LCM, LCM >::qprop ( Handle< FermState< LF, LCM, LCM > >  state,
const GroupXML_t invParam 
) const

Return a linear operator solver for this action to solve MdagM*psi=chi.

Definition at line 35 of file staggered_qprop.cc.

References params, Chroma::GroupXML_t::path, Chroma::state, and Chroma::GroupXML_t::xml.

◆ qprop() [2/3]

template<typename T , typename P , typename Q >
virtual SystemSolver<T>* Chroma::EvenOddStaggeredTypeFermAct< T, P, Q >::qprop ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
virtual

Return quark prop solver, solution of unpreconditioned system.

Default implementation provided

Reimplemented from Chroma::FermAct4D< T, P, Q >.

Reimplemented in Chroma::HisqFermAct, and Chroma::AsqtadFermAct.

◆ qprop() [3/3]

template<typename T , typename P , typename Q >
virtual SystemSolver<T>* Chroma::EvenOddStaggeredTypeFermAct< T, P, Q >::qprop ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
virtual

Return quark prop solver, solution of unpreconditioned system.

Default implementation provided

Reimplemented from Chroma::FermAct4D< T, P, Q >.

Reimplemented in Chroma::HisqFermAct, and Chroma::AsqtadFermAct.


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