50 const std::vector<RealD> _mass,
51 const std::vector<RealD> _mu,
52 const ImplParams &p= ImplParams()
65 virtual void Meooe(
const FermionField &in, FermionField &out) {
66 if (in.Checkerboard() ==
Odd) {
73 virtual void MeooeDag(
const FermionField &in, FermionField &out) {
74 if (in.Checkerboard() ==
Odd) {
82 virtual void Mooee(
const FermionField &in, FermionField &out) {
83 out.Checkerboard() = in.Checkerboard();
85 for (
int s=0;s<(int)this->
mass.size();s++) {
92 virtual void MooeeDag(
const FermionField &in, FermionField &out) {
93 out.Checkerboard() = in.Checkerboard();
94 for (
int s=0;s<(int)this->
mass.size();s++) {
100 virtual void MooeeInv(
const FermionField &in, FermionField &out) {
101 for (
int s=0;s<(int)this->
mass.size();s++) {
105 RealD sq = mtil*mtil+tm*tm;
111 virtual void MooeeInvDag(
const FermionField &in, FermionField &out) {
112 for (
int s=0;s<(int)this->
mass.size();s++) {
116 RealD sq = mtil*mtil+tm*tm;
123 virtual void M(
const FermionField &in, FermionField &out)
125 out.Checkerboard() = in.Checkerboard();
127 FermionField
tmp(out.Grid());
128 for (
int s=0;s<(int)this->
mass.size();s++) {
137 void update(
const std::vector<RealD>& _mass,
const std::vector<RealD>& _mu)
139 assert(_mass.size() == _mu.size());
140 assert(_mass.size() == this->FermionGrid()->_fdimensions[0]);
146 std::vector<RealD>
mu;
void axpy(Lattice< vobj > &ret, sobj a, const Lattice< vobj > &x, const Lattice< vobj > &y)
void axpbg5y_ssp(Lattice< vobj > &z, Coeff a, const Lattice< vobj > &x, Coeff b, const Lattice< vobj > &y, int s, int sp)
#define NAMESPACE_BEGIN(A)
static constexpr int DaggerYes
static constexpr int DaggerNo
std::complex< RealD > ComplexD
WilsonTMFermion5D< WilsonImplD > WilsonTMFermion5DD
WilsonTMFermion5D< WilsonImplF > WilsonTMFermion5DF
WilsonFermion5D(GaugeField &_Umu, GridCartesian &FiveDimGrid, GridRedBlackCartesian &FiveDimRedBlackGrid, GridCartesian &FourDimGrid, GridRedBlackCartesian &FourDimRedBlackGrid, double _M5, const ImplParams &p=ImplParams())
void DhopEO(const FermionField &in, FermionField &out, int dag)
void Dhop(const FermionField &in, FermionField &out, int dag)
void DhopOE(const FermionField &in, FermionField &out, int dag)
std::vector< RealD > mass
virtual void Mooee(const FermionField &in, FermionField &out)
virtual void Meooe(const FermionField &in, FermionField &out)
virtual void MooeeInvDag(const FermionField &in, FermionField &out)
virtual void MooeeInv(const FermionField &in, FermionField &out)
void update(const std::vector< RealD > &_mass, const std::vector< RealD > &_mu)
WilsonTMFermion5D(GaugeField &_Umu, GridCartesian &Fgrid, GridRedBlackCartesian &Frbgrid, GridCartesian &Ugrid, GridRedBlackCartesian &Urbgrid, const std::vector< RealD > _mass, const std::vector< RealD > _mu, const ImplParams &p=ImplParams())
virtual void MeooeDag(const FermionField &in, FermionField &out)
virtual void MooeeDag(const FermionField &in, FermionField &out)
virtual void Instantiatable(void)
virtual void M(const FermionField &in, FermionField &out)