9 #ifndef __asqtad_linop_s_h__
10 #define __asqtad_linop_s_h__
19 multi1d<LatticeColorMatrix>, multi1d<LatticeColorMatrix> >
23 typedef LatticeStaggeredFermion
T;
24 typedef multi1d<LatticeColorMatrix>
P;
25 typedef multi1d<LatticeColorMatrix>
Q;
75 unsigned long nFlops()
const;
Include possibly optimized Asqtad dslash.
void evenEvenLinOp(LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const
Apply the the even-even block onto a source std::vector.
~AsqtadLinOp()
Destructor is automatic.
void create(Handle< AsqtadConnectStateBase > state_, const Real &Mass_)
Creation routine.
unsigned long nFlops() const
Return flops performed by the operator()
LatticeStaggeredFermion T
void oddEvenLinOp(LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const
Apply the the odd-even block onto a source std::vector.
AsqtadLinOp(Handle< AsqtadConnectStateBase > state_, const Real &Mass_)
Full constructor.
multi1d< LatticeColorMatrix > Q
AsqtadLinOp()
Partial constructor - Must use create later.
void oddOddLinOp(LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const
Apply the the odd-odd block onto a source std::vector.
void evenOddLinOp(LatticeStaggeredFermion &chi, const LatticeStaggeredFermion &psi, enum PlusMinus isign) const
Apply the the even-odd block onto a source std::vector.
multi1d< LatticeColorMatrix > P
const FermBC< T, P, Q > & getFermBC() const
Even odd Linear Operator (for staggered like things )
Base class for all fermion action boundary conditions.
Class for counted reference semantics.
The "asq" or "asqtad" dslash operator D'.
const FermBC< T, P, Q > & getFermBC() const
Return the fermion BC object for this linear operator.
void create(Handle< AsqtadConnectStateBase > state_)
Creation routine
Asqtad Staggered-Dirac operator.
multi1d< LatticeFermion > chi(Ncb)