6 #ifndef __lwldslash_3d_sse_h__
7 #define __lwldslash_3d_sse_h__
9 #include "qdp_config.h"
16 #include "sse_dslash_qdp_packer_3d.h"
50 class SSEWilsonDslash3D :
public WilsonDslash3DBase
54 typedef LatticeFermion
T;
55 typedef multi1d<LatticeColorMatrix>
P;
56 typedef multi1d<LatticeColorMatrix>
Q;
62 SSEWilsonDslash3D(Handle< FermState<T,P,Q> >
state);
65 SSEWilsonDslash3D(Handle< FermState<T,P,Q> >
state,
66 const AnisoParam_t& aniso_);
69 void create(Handle< FermState<T,P,Q> >
state);
72 void create(Handle< FermState<T,P,Q> >
state,
73 const AnisoParam_t& aniso_);
76 void create(Handle< FermState<T,P,Q> >
state,
77 const multi1d<Real>& coeffs_);
92 void apply(LatticeFermion&
chi,
const LatticeFermion&
psi,
96 const FermBC<T,P,Q>& getFermBC()
const {
return *fbc;}
100 const multi1d<Real>& getCoeffs()
const {
return coeffs;}
106 multi1d<Real> coeffs;
107 multi1d<SSEDslash3D::PrimitiveSU3Matrix> packed_gauge;
108 Handle< FermBC<T,P,Q> > fbc;
3D Wilson Dslash linear operator
multi1d< LatticeColorMatrix > P
void init(MesonSpecData_t &data, XMLWriter &xml, const std::string &path, const std::string &id_tag, const Params ¶ms)
Do some initialization.
Asqtad Staggered-Dirac operator.
LinOpSysSolverMGProtoClover::Q Q
LinOpSysSolverMGProtoClover::T T
multi1d< LatticeFermion > chi(Ncb)
const WilsonTypeFermAct< multi1d< LatticeFermion > > Handle< const ConnectState > state
Support class for fermion actions and linear operators.