7 using namespace QDP::Hints;
20 create(fs, Mass_, cf);
50 const multi1d<Real>& coeffs_)
57 if (coeffs.size() !=
Nd)
59 QDPIO::cerr <<
"EvenOddPrecWilsonLinOp::create : coeffs not size Nd" << std::endl;
86 EvenOddPrecWilsonLinOp::evenOddLinOp(LatticeFermion&
chi,
87 const LatticeFermion&
psi,
109 EvenOddPrecWilsonLinOp::oddEvenLinOp(LatticeFermion&
chi,
110 const LatticeFermion&
psi,
127 const LatticeFermion&
psi,
134 moveToFastMemoryHint(tmp1);
135 moveToFastMemoryHint(
tmp2);
136 moveToFastMemoryHint(
tmp3);
139 Real mquarterinvfact = -0.25*invfact;
164 getFermBC().modifyF(
chi, rb[1]);
172 EvenOddPrecWilsonLinOp::derivEvenOddLinOp(multi1d<LatticeColorMatrix>& ds_u,
173 const LatticeFermion&
chi,
174 const LatticeFermion&
psi,
183 ds_u[
mu] *= Real(-0.5);
192 EvenOddPrecWilsonLinOp::derivOddEvenLinOp(multi1d<LatticeColorMatrix>& ds_u,
193 const LatticeFermion&
chi,
194 const LatticeFermion&
psi,
203 ds_u[
mu] *= Real(-0.5);
211 EvenOddPrecWilsonLinOp::derivEvenOddLinOpMP(multi1d<LatticeColorMatrix>& ds_u,
212 const LatticeFermion&
chi,
213 const LatticeFermion&
psi,
222 ds_u[
mu] *= Real(-0.5);
231 EvenOddPrecWilsonLinOp::derivOddEvenLinOpMP(multi1d<LatticeColorMatrix>& ds_u,
232 const LatticeFermion&
chi,
233 const LatticeFermion&
psi,
242 ds_u[
mu] *= Real(-0.5);
249 unsigned long EvenOddPrecWilsonLinOp::nFlops()
const
251 unsigned long cbsite_flops = 2*D.nFlops()+6*Nc*Ns;
252 return cbsite_flops*(Layout::sitesOnNode()/2);
Support class for fermion actions and linear operators.
Class for counted reference semantics.
Even-odd preconditioned Wilson fermion linear operator.
multi1d< Hadron2PtContraction_t > operator()(const multi1d< LatticeColorMatrix > &u)
Asqtad Staggered-Dirac operator.
multi1d< Real > makeFermCoeffs(const AnisoParam_t &aniso)
Make fermion coefficients.
Parameters for anisotropy.