6 #ifndef __prec_dwf_fermact_array_w_h__
7 #define __prec_dwf_fermact_array_w_h__
15 namespace EvenOddPrecDWFermActArrayEnv
52 multi1d<LatticeColorMatrix>, multi1d<LatticeColorMatrix> >
56 typedef LatticeFermion
T;
57 typedef multi1d<LatticeColorMatrix>
P;
58 typedef multi1d<LatticeColorMatrix>
Q;
62 const Real& OverMass_,
const Real& Mass_,
int N5_) :
69 QDPIO::cout <<
"Construct EvenOddPrecDWFermActArray: OverMass = " <<
param.
OverMass
93 const Real& m_q)
const;
97 const Real& m_q)
const;
Create a fermion connection state.
4D style even-odd preconditioned domain-wall fermion action
EvenOddPrecDWLikeLinOpBaseArray< T, P, Q > * precLinOp(Handle< FermState< T, P, Q > > state, const Real &m_q) const
Produce an even-odd preconditioned linear operator for this action with arbitrary quark mass.
~EvenOddPrecDWFermActArray()
Destructor is automatic.
const CreateFermState< T, P, Q > & getCreateState() const
Return the fermion create state for this action.
Real getQuarkMass() const
Return the quark mass.
multi1d< LatticeColorMatrix > P
Handle< CreateFermState< T, P, Q > > cfs
multi1d< LatticeColorMatrix > Q
UnprecDWLikeLinOpBaseArray< T, P, Q > * unprecLinOp(Handle< FermState< T, P, Q > > state, const Real &m_q) const
Produce an unpreconditioned linear operator for this action with arbitrary quark mass.
EvenOddPrecDWFermActArray & operator=(const EvenOddPrecDWFermActArray &a)
SystemSolverArray< T > * qpropT(Handle< FermState< T, P, Q > > state, const GroupXML_t &invParam) const
Return possibly optimized quark prop solver, solution of preconditioned system.
EvenOddPrecDWFermActArray(const EvenOddPrecDWFermActArray &a)
Copy constructor.
EvenOddPrecDWFermActArrayParams param
EvenOddPrecDWFermActArray(Handle< CreateFermState< T, P, Q > > cfs_, const EvenOddPrecDWFermActArrayParams &p)
General FermBC.
int size() const
Length of DW flavor index/space.
EvenOddPrecDWFermActArray()
EvenOddPrecDWFermActArray(Handle< CreateFermState< T, P, Q > > cfs_, const Real &OverMass_, const Real &Mass_, int N5_)
General FermBC.
void quarkProp(PropTypeTraits< T >::Type_t &q_sol, XMLWriter &xml_out, const 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.
Base class for unpreconditioned domain-wall-like fermion actions.
4D Even Odd preconditioned domain-wall Dirac operator
Support class for fermion actions and linear operators.
Class for counted reference semantics.
Linear system solvers of arrays.
Unpreconditioned domain-wall Dirac operator.
Base class for even-odd preconditioned domain-wall-like fermion actions.
void read(XMLReader &xml, const std::string &path, AsqtadFermActParams ¶m)
Read parameters.
void write(XMLWriter &xml, const std::string &path, const AsqtadFermActParams ¶m)
Writer parameters.
QuarkSpinType
Quark spin type.
bool registerAll()
Register all the factories.
const std::string name
Name to be used.
Asqtad Staggered-Dirac operator.
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > state
static QDP_ColorVector * in
Parameters for anisotropy.
EvenOddPrecDWFermActArrayParams()
Hold group xml and type id.