6 #ifndef __unprec_dwf_fermact_array_w_h__
7 #define __unprec_dwf_fermact_array_w_h__
16 namespace UnprecDWFermActArrayEnv
51 multi1d<LatticeColorMatrix>, multi1d<LatticeColorMatrix> >
55 typedef LatticeFermion
T;
56 typedef multi1d<LatticeColorMatrix>
P;
57 typedef multi1d<LatticeColorMatrix>
Q;
61 const Real& OverMass_,
const Real& Mass_,
int N5_) :
87 const Real& m_q)
const;
107 const LatticePropagator& q_src,
Create a fermion connection state.
Support class for fermion actions and linear operators.
Class for counted reference semantics.
Linear Operator to arrays.
Unpreconditioned domain-wall fermion action.
Real getQuarkMass() const
Return the quark mass.
void operator=(const UnprecDWFermActArray &a)
Hide =.
UnprecDWFermActArray()
Partial constructor.
Handle< CreateFermState< T, P, Q > > cfs
const CreateFermState< T, P, Q > & getCreateState() const
Return the fermion BC object for this action.
UnprecDWFermActArray(const UnprecDWFermActArray &a)
Copy constructor.
LinearOperatorArray< T > * hermitianLinOp(Handle< FermState< T, P, Q > > state) const
Produce a hermitian version of the linear operator.
multi1d< LatticeColorMatrix > P
~UnprecDWFermActArray()
Destructor is automatic.
void quarkProp(LatticePropagator &q_sol, XMLWriter &xml_out, const LatticePropagator &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.
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.
UnprecDWFermActArray(Handle< CreateFermState< T, P, Q > > cfs_, const Real &OverMass_, const Real &Mass_, int N5_)
General FermBC.
int size() const
Length of DW flavor index/space.
UnprecDWFermActArrayParams param
multi1d< LatticeColorMatrix > Q
UnprecDWFermActArray(Handle< CreateFermState< T, P, Q > > cfs_, const UnprecDWFermActArrayParams &p)
General FermBC.
Base class for unpreconditioned domain-wall-like fermion actions.
virtual UnprecDWLikeLinOpBaseArray< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > * linOp(Handle< FermState< LatticeFermion, multi1d< LatticeColorMatrix >, multi1d< LatticeColorMatrix > > > state) const
Override to produce a DWF-link unprec. linear operator for this action.
Unpreconditioned domain-wall Dirac operator.
Gamma(5) R hermitian linear operator.
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.
Hold group xml and type id.
UnprecDWFermActArrayParams()
Base class for unpreconditioned domain-wall-like fermion actions.