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

Base class of quadratic matter actions (e.g., fermions) living in an extra dimension. More...

#include <fermact.h>

Inheritance diagram for Chroma::FermAct5D< T, P, Q >:
Chroma::FermionAction< T, P, Q > Chroma::FermionAction< T, P, Q > Chroma::DiffFermAct5D< T, P, Q > Chroma::DiffFermAct5D< T, P, Q > Chroma::WilsonTypeFermAct5D< T, P, Q > Chroma::WilsonTypeFermAct5D< T, P, Q > Chroma::WilsonTypeFermAct5D< T, P, Q > Chroma::WilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q > Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q > Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q > Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q > Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< T, P, Q > Chroma::UnprecWilsonTypeFermAct5D< T, P, Q >

Public Member Functions

virtual ~FermAct5D ()
 Virtual destructor to help with cleanup;. More...
 
virtual Real getQuarkMass () const =0
 Return the quark mass. More...
 
virtual int size () const =0
 Expected length of array index. More...
 
virtual LinearOperatorArray< T > * linOp (Handle< FermState< T, P, Q > > state) const =0
 Produce a linear operator for this action. More...
 
virtual LinearOperatorArray< T > * lMdagM (Handle< FermState< T, P, Q > > state) const =0
 Produce a linear operator M^dag.M for this action. More...
 
virtual LinearOperatorArray< T > * linOpPV (Handle< FermState< T, P, Q > > state) const =0
 Produce a Pauli-Villars linear operator for this action. More...
 
virtual LinOpSystemSolverArray< T > * invLinOp (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a linear operator solver for this action to solve M*psi=chi. More...
 
virtual MdagMSystemSolverArray< T > * invMdagM (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a linear operator solver for this action to solve MdagM*psi=chi. More...
 
virtual LinOpSystemSolverArray< T > * invLinOpPV (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a linear operator solver for this action to solve PV*psi=chi. More...
 
virtual MdagMSystemSolverArray< T > * invMdagMPV (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a linear operator solver for this action to solve PV^dag*PV*psi=chi. More...
 
virtual MdagMMultiSystemSolverArray< T > * mInvMdagM (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a multi-shift linear operator solver for this action to solve (MdagM+shift)*psi=chi. More...
 
virtual MdagMMultiSystemSolverAccumulateArray< T > * mInvMdagMAcc (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a multi-shift accumulate solver. More...
 
virtual MdagMMultiSystemSolverArray< T > * mInvMdagMPV (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a multi-shift linear operator solver for this action to solve (PV^dag*PV+shift)*psi=chi. More...
 
virtual MdagMMultiSystemSolverAccumulateArray< T > * mInvMdagMPVAcc (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a multi-shift accumulate solver. More...
 
virtual SystemSolverArray< T > * qpropT (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return quark prop solver, solution of unpreconditioned system. More...
 
virtual ~FermAct5D ()
 Virtual destructor to help with cleanup;. More...
 
virtual Real getQuarkMass () const =0
 Return the quark mass. More...
 
virtual int size () const =0
 Expected length of array index. More...
 
virtual LinearOperatorArray< T > * linOp (Handle< FermState< T, P, Q > > state) const =0
 Produce a linear operator for this action. More...
 
virtual LinearOperatorArray< T > * lMdagM (Handle< FermState< T, P, Q > > state) const =0
 Produce a linear operator M^dag.M for this action. More...
 
virtual LinearOperatorArray< T > * linOpPV (Handle< FermState< T, P, Q > > state) const =0
 Produce a Pauli-Villars linear operator for this action. More...
 
virtual LinOpSystemSolverArray< T > * invLinOp (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a linear operator solver for this action to solve M*psi=chi. More...
 
virtual MdagMSystemSolverArray< T > * invMdagM (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a linear operator solver for this action to solve MdagM*psi=chi. More...
 
virtual LinOpSystemSolverArray< T > * invLinOpPV (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a linear operator solver for this action to solve PV*psi=chi. More...
 
virtual MdagMSystemSolverArray< T > * invMdagMPV (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a linear operator solver for this action to solve PV^dag*PV*psi=chi. More...
 
virtual MdagMMultiSystemSolverArray< T > * mInvMdagM (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a multi-shift linear operator solver for this action to solve (MdagM+shift)*psi=chi. More...
 
virtual MdagMMultiSystemSolverArray< T > * mInvMdagMPV (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return a multi-shift linear operator solver for this action to solve (PV^dag*PV+shift)*psi=chi. More...
 
virtual SystemSolverArray< T > * qpropT (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
 Return quark prop solver, solution of unpreconditioned system. More...
 
SystemSolverArray< LatticeFermion > * qpropT (Handle< FermState< LatticeFermion, 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 SystemSolver< T > * qprop (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return quark prop solver, solution of unpreconditioned system. 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 =0
 Given a complete propagator as a source, this does all the inversions needed. 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 SystemSolver< T > * qprop (Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const =0
 Return quark prop solver, solution of unpreconditioned system. 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 =0
 Given a complete propagator as a source, this does all the inversions needed. 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::FermAct5D< T, P, Q >

Base class of quadratic matter actions (e.g., fermions) living in an extra dimension.

Supports creation and application for quadratic actions, specialized to support arrays of matter fields

The class holds info on the particulars of a bi-local action, but it DOES NOT hold gauge fields. A specific dirac-operator is a functional of the gauge fields, hence when a dirac-operator is needed, it is created.

The FermState holds gauge fields and whatever auxilliary info is needed to create a specific dirac operator (linear operator) on some background gauge field.

The FermBC is the type of boundary conditions used for this action

The linop and lmdagm functions create a linear operator on a fixed FermState

The qprop solves for the full linear system undoing all preconditioning. No direct functions are provided (or needed) to call a linear system solver - that is a stand-alone function in the generic programming sense.

Definition at line 264 of file fermact.h.

Constructor & Destructor Documentation

◆ ~FermAct5D() [1/2]

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

Virtual destructor to help with cleanup;.

Definition at line 268 of file fermact.h.

◆ ~FermAct5D() [2/2]

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

Virtual destructor to help with cleanup;.

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

Member Function Documentation

◆ getQuarkMass() [1/2]

template<typename T , typename P , typename Q >
virtual Real Chroma::FermAct5D< T, P, Q >::getQuarkMass ( ) const
pure virtual

◆ getQuarkMass() [2/2]

template<typename T , typename P , typename Q >
virtual Real Chroma::FermAct5D< T, P, Q >::getQuarkMass ( ) const
pure virtual

◆ invLinOp() [1/2]

template<typename T , typename P , typename Q >
virtual LinOpSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::invLinOp ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

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

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ invLinOp() [2/2]

template<typename T , typename P , typename Q >
virtual LinOpSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::invLinOp ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

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

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ invLinOpPV() [1/2]

template<typename T , typename P , typename Q >
virtual LinOpSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::invLinOpPV ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

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

Do we need this critter?

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ invLinOpPV() [2/2]

template<typename T , typename P , typename Q >
virtual LinOpSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::invLinOpPV ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

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

Do we need this critter?

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ invMdagM() [1/2]

template<typename T , typename P , typename Q >
virtual MdagMSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::invMdagM ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

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

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ invMdagM() [2/2]

template<typename T , typename P , typename Q >
virtual MdagMSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::invMdagM ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

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

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ invMdagMPV() [1/2]

template<typename T , typename P , typename Q >
virtual MdagMSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::invMdagMPV ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

Return a linear operator solver for this action to solve PV^dag*PV*psi=chi.

This is used in two-flavor molecdyn monomials

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ invMdagMPV() [2/2]

template<typename T , typename P , typename Q >
virtual MdagMSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::invMdagMPV ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

Return a linear operator solver for this action to solve PV^dag*PV*psi=chi.

This is used in two-flavor molecdyn monomials

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ linOp() [1/2]

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

Produce a linear operator for this action.

Implemented in Chroma::UnprecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::UnprecWilsonTypeFermAct5D< T, P, Q >, Chroma::DiffFermAct5D< T, P, Q >, Chroma::DiffFermAct5D< T, P, Q >, Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< T, P, Q >, Chroma::UnprecOvlapContFrac5DFermActArray, Chroma::UnprecOvExtFermActArray, Chroma::UnprecHTContFrac5DFermActArray, Chroma::UnprecDWFermActBaseArray< T, P, Q >, Chroma::EvenOddPrecTwmFermActArray, Chroma::EvenOddPrecOvlapContFrac5DFermActArray, Chroma::EvenOddPrecOvExtFermActArray, Chroma::EvenOddPrecHtContFrac5DFermActArray, Chroma::EvenOddPrecDWFermActBaseArray< T, P, Q >, Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::UnprecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, and Chroma::EvenOddPrecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.

◆ linOp() [2/2]

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

Produce a linear operator for this action.

Implemented in Chroma::UnprecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::UnprecWilsonTypeFermAct5D< T, P, Q >, Chroma::DiffFermAct5D< T, P, Q >, Chroma::DiffFermAct5D< T, P, Q >, Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< T, P, Q >, Chroma::UnprecOvlapContFrac5DFermActArray, Chroma::UnprecOvExtFermActArray, Chroma::UnprecHTContFrac5DFermActArray, Chroma::UnprecDWFermActBaseArray< T, P, Q >, Chroma::EvenOddPrecTwmFermActArray, Chroma::EvenOddPrecOvlapContFrac5DFermActArray, Chroma::EvenOddPrecOvExtFermActArray, Chroma::EvenOddPrecHtContFrac5DFermActArray, Chroma::EvenOddPrecDWFermActBaseArray< T, P, Q >, Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::UnprecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, and Chroma::EvenOddPrecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.

◆ linOpPV() [1/2]

template<typename T , typename P , typename Q >
virtual LinearOperatorArray<T >* Chroma::FermAct5D< T, P, Q >::linOpPV ( Handle< FermState< T, P, Q > >  state) const
pure virtual

Produce a Pauli-Villars linear operator for this action.

Implemented in Chroma::UnprecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::UnprecWilsonTypeFermAct5D< T, P, Q >, Chroma::DiffFermAct5D< T, P, Q >, Chroma::DiffFermAct5D< T, P, Q >, Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< T, P, Q >, Chroma::UnprecOvlapContFrac5DFermActArray, Chroma::UnprecOvExtFermActArray, Chroma::UnprecHTContFrac5DFermActArray, Chroma::UnprecDWFermActBaseArray< T, P, Q >, Chroma::EvenOddPrecTwmFermActArray, Chroma::EvenOddPrecOvlapContFrac5DFermActArray, Chroma::EvenOddPrecOvExtFermActArray, Chroma::EvenOddPrecHtContFrac5DFermActArray, Chroma::EvenOddPrecDWFermActBaseArray< T, P, Q >, Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::UnprecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, and Chroma::EvenOddPrecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.

◆ linOpPV() [2/2]

template<typename T , typename P , typename Q >
virtual LinearOperatorArray<T >* Chroma::FermAct5D< T, P, Q >::linOpPV ( Handle< FermState< T, P, Q > >  state) const
pure virtual

Produce a Pauli-Villars linear operator for this action.

Implemented in Chroma::UnprecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::UnprecWilsonTypeFermAct5D< T, P, Q >, Chroma::DiffFermAct5D< T, P, Q >, Chroma::DiffFermAct5D< T, P, Q >, Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< T, P, Q >, Chroma::UnprecOvlapContFrac5DFermActArray, Chroma::UnprecOvExtFermActArray, Chroma::UnprecHTContFrac5DFermActArray, Chroma::UnprecDWFermActBaseArray< T, P, Q >, Chroma::EvenOddPrecTwmFermActArray, Chroma::EvenOddPrecOvlapContFrac5DFermActArray, Chroma::EvenOddPrecOvExtFermActArray, Chroma::EvenOddPrecHtContFrac5DFermActArray, Chroma::EvenOddPrecDWFermActBaseArray< T, P, Q >, Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::UnprecWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::EvenOddPrecConstDetWilsonTypeFermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, Chroma::UnprecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >, and Chroma::EvenOddPrecDWFermActBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >.

◆ lMdagM() [1/2]

template<typename T , typename P , typename Q >
virtual LinearOperatorArray<T >* Chroma::FermAct5D< T, P, Q >::lMdagM ( Handle< FermState< T, P, Q > >  state) const
pure virtual

◆ lMdagM() [2/2]

template<typename T , typename P , typename Q >
virtual LinearOperatorArray<T >* Chroma::FermAct5D< T, P, Q >::lMdagM ( Handle< FermState< T, P, Q > >  state) const
pure virtual

◆ mInvMdagM() [1/2]

template<typename T , typename P , typename Q >
virtual MdagMMultiSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::mInvMdagM ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

Return a multi-shift linear operator solver for this action to solve (MdagM+shift)*psi=chi.

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ mInvMdagM() [2/2]

template<typename T , typename P , typename Q >
virtual MdagMMultiSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::mInvMdagM ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

Return a multi-shift linear operator solver for this action to solve (MdagM+shift)*psi=chi.

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ mInvMdagMAcc()

template<typename T , typename P , typename Q >
virtual MdagMMultiSystemSolverAccumulateArray<T>* Chroma::FermAct5D< T, P, Q >::mInvMdagMAcc ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

Return a multi-shift accumulate solver.

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ mInvMdagMPV() [1/2]

template<typename T , typename P , typename Q >
virtual MdagMMultiSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::mInvMdagMPV ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

Return a multi-shift linear operator solver for this action to solve (PV^dag*PV+shift)*psi=chi.

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ mInvMdagMPV() [2/2]

template<typename T , typename P , typename Q >
virtual MdagMMultiSystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::mInvMdagMPV ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

Return a multi-shift linear operator solver for this action to solve (PV^dag*PV+shift)*psi=chi.

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >, and Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ mInvMdagMPVAcc()

template<typename T , typename P , typename Q >
virtual MdagMMultiSystemSolverAccumulateArray<T>* Chroma::FermAct5D< T, P, Q >::mInvMdagMPVAcc ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
pure virtual

Return a multi-shift accumulate solver.

Implemented in Chroma::WilsonTypeFermAct5D< T, P, Q >.

◆ qpropT() [1/3]

SystemSolverArray< LatticeFermion > * Chroma::FermAct5D< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > >::qpropT ( Handle< FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > >  state,
const GroupXML_t invParam 
) const

Definition at line 85 of file fermact_qprop_array.cc.

References Chroma::state.

◆ qpropT() [2/3]

template<typename T , typename P , typename Q >
virtual SystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::qpropT ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
virtual

Return quark prop solver, solution of unpreconditioned system.

Default implementation provided

Reimplemented in Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecTwmFermActArray, and Chroma::EvenOddPrecDWFermActArray.

Referenced by Chroma::UnprecDWFermActArray::quarkProp().

◆ qpropT() [3/3]

template<typename T , typename P , typename Q >
virtual SystemSolverArray<T>* Chroma::FermAct5D< T, P, Q >::qpropT ( Handle< FermState< T, P, Q > >  state,
const GroupXML_t invParam 
) const
virtual

Return quark prop solver, solution of unpreconditioned system.

Default implementation provided

Reimplemented in Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecWilsonTypeFermAct5D< T, P, Q >, Chroma::EvenOddPrecTwmFermActArray, and Chroma::EvenOddPrecDWFermActArray.

◆ size() [1/2]

template<typename T , typename P , typename Q >
virtual int Chroma::FermAct5D< T, P, Q >::size ( ) const
pure virtual

Expected length of array index.

Implemented in Chroma::UnprecOvlapContFrac5DFermActArray, Chroma::UnprecHTContFrac5DFermActArray, Chroma::EvenOddPrecOvlapContFrac5DFermActArray, Chroma::EvenOddPrecHtContFrac5DFermActArray, Chroma::UnprecZoloNEFFermActArray, Chroma::UnprecDWFermActArray, Chroma::UnprecOvExtFermActArray, Chroma::UnprecOvDWFermActArray, Chroma::UnprecNEFFermActArray, Chroma::UnprecDWFermActArray, Chroma::EvenOddPrecZoloNEFFermActArray, Chroma::EvenOddPrecTwmFermActArray, Chroma::EvenOddPrecOvExtFermActArray, Chroma::EvenOddPrecOvDWFermActArray, Chroma::EvenOddPrecNEFFermActArray, Chroma::EvenOddPrecKNOFermActArray, and Chroma::EvenOddPrecDWFermActArray.

Referenced by Chroma::TwoFlavorExactWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq(), Chroma::TwoFlavorExactRatioConvConvWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq(), Chroma::TwoFlavorExactRatioConvRatWilsonTypeFermMonomial5D< P, Q, Phi >::dsdq(), Chroma::TwoFlavorExactRatioConvConvWilsonTypeFermMonomial5D< P, Q, Phi >::getX(), Chroma::TwoFlavorExactRatioConvRatWilsonTypeFermMonomial5D< P, Q, Phi >::getX(), Chroma::TwoFlavorExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), Chroma::TwoFlavorExactRatioConvConvWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), Chroma::TwoFlavorExactRatioConvRatWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), Chroma::OneFlavorRatioRatConvExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::refreshInternalFields(), Chroma::TwoFlavorExactUnprecWilsonTypeFermMonomial5D< P, Q, Phi >::S(), Chroma::TwoFlavorExactUnprecRatioConvConvWilsonTypeFermMonomial5D< P, Q, Phi >::S(), Chroma::TwoFlavorExactUnprecRatioConvRatWilsonTypeFermMonomial5D< P, Q, Phi >::S(), Chroma::TwoFlavorExactEvenOddPrecWilsonTypeFermMonomial5D< P, Q, Phi >::S_odd_odd(), Chroma::TwoFlavorExactEvenOddPrecRatioConvConvWilsonTypeFermMonomial5D< P, Q, Phi >::S_odd_odd(), Chroma::TwoFlavorExactEvenOddPrecRatioConvRatWilsonTypeFermMonomial5D< P, Q, Phi >::S_odd_odd(), Chroma::OneFlavorRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset(), Chroma::OneFlavorRatioRatConvExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset(), and Chroma::OneFlavorRatioRatRatExactWilsonTypeFermMonomial5D< P, Q, Phi >::S_subset().

◆ size() [2/2]

template<typename T , typename P , typename Q >
virtual int Chroma::FermAct5D< T, P, Q >::size ( ) const
pure virtual

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