6 #ifndef __unprec_ovdwf_linop_array_w_h__
7 #define __unprec_ovdwf_linop_array_w_h__
23 multi1d<LatticeColorMatrix>, multi1d<LatticeColorMatrix> >
27 typedef LatticeFermion
T;
28 typedef multi1d<LatticeColorMatrix>
P;
29 typedef multi1d<LatticeColorMatrix>
Q;
33 const Real& WilsonMass_,
const Real&
m_q,
int N5_)
38 const Real& WilsonMass_,
const Real& m_q_,
int N5_);
50 const Subset&
subset()
const {
return all;}
53 void operator() (multi1d<LatticeFermion>&
chi,
const multi1d<LatticeFermion>&
psi,
58 const LatticeFermion&
psi,
Base class for all fermion action boundary conditions.
Support class for fermion actions and linear operators.
Class for counted reference semantics.
General Wilson-Dirac dslash.
Unpreconditioned domain-wall Dirac operator.
Unpreconditioned Overlap-DWF (Borici) linear operator.
void operator=(const UnprecOvDWLinOpArray &)
Hide =.
void Dminus(LatticeFermion &chi, const LatticeFermion &psi, enum PlusMinus isign, int s5) const
Apply the Dminus operator on a lattice fermion. See my notes ;-)
void operator()(multi1d< LatticeFermion > &chi, const multi1d< LatticeFermion > &psi, enum PlusMinus isign) const
Apply the operator onto a source std::vector.
const FermBC< T, P, Q > & getFermBC() const
Return the fermion BC object for this linear operator.
~UnprecOvDWLinOpArray()
Destructor is automatic.
UnprecOvDWLinOpArray()
Partial constructor.
multi1d< LatticeColorMatrix > P
multi1d< LatticeColorMatrix > Q
const Subset & subset() const
Only defined on the entire lattice.
Handle< FermBC< T, P, Q > > fbc
UnprecOvDWLinOpArray(Handle< FermState< T, P, Q > > fs, const Real &WilsonMass_, const Real &m_q, int N5_)
Full constructor.
int size() const
Length of DW flavor index/space.
Include possibly optimized Wilson dslash.
void create(Handle< FermState< T, P, Q > > fs, const Real &WilsonMass_, const Real &m_q_, int N5_)
Creation routine.
Asqtad Staggered-Dirac operator.
multi1d< LatticeFermion > chi(Ncb)
Base class for unpreconditioned domain-wall-like fermion linear operator.