1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-06-12 20:27:06 +01:00

Wilson TM tests and compiles in

This commit is contained in:
paboyle
2015-12-17 23:06:33 +00:00
parent 6f0198d4d9
commit e108e708a3
7 changed files with 225 additions and 13 deletions

View File

@ -61,6 +61,7 @@ typedef WilsonGaugeAction<LatticeGaugeFieldD> WilsonGaugeActionD;
////////////////////////////////////////////
#include <qcd/action/fermion/WilsonFermion.h> // 4d wilson like
#include <qcd/action/fermion/WilsonTMFermion.h> // 4d wilson like
#include <qcd/action/fermion/WilsonFermion5D.h> // 5d base used by all 5d overlap types
//#include <qcd/action/fermion/CloverFermion.h>
@ -97,6 +98,10 @@ typedef WilsonFermion<WilsonImplR> WilsonFermionR;
typedef WilsonFermion<WilsonImplF> WilsonFermionF;
typedef WilsonFermion<WilsonImplD> WilsonFermionD;
typedef WilsonTMFermion<WilsonImplR> WilsonTMFermionR;
typedef WilsonTMFermion<WilsonImplF> WilsonTMFermionF;
typedef WilsonTMFermion<WilsonImplD> WilsonTMFermionD;
typedef DomainWallFermion<WilsonImplR> DomainWallFermionR;
typedef DomainWallFermion<WilsonImplF> DomainWallFermionF;
typedef DomainWallFermion<WilsonImplD> DomainWallFermionD;

View File

@ -11,9 +11,8 @@ namespace Grid {
class WilsonTMFermion : public WilsonFermion<Impl>
{
public:
INHERIT_IMPL_TYPES(Impl);
INHERIT_IMPL_TYPES(Impl);
public:
RealD mu; // TwistedMass parameter
virtual void Instantiatable(void) {};
// Constructors
@ -33,15 +32,18 @@ namespace Grid {
mu = _mu;
}
};
// allow override for twisted mass and clover
virtual void Mooee(const FermionField &in, FermionField &out) ;
virtual void MooeeDag(const FermionField &in, FermionField &out) ;
virtual void MooeeInv(const FermionField &in, FermionField &out) ;
virtual void MooeeInvDag(const FermionField &in, FermionField &out) ;
}
}
private:
RealD mu; // TwistedMass parameter
};
}}
#endif

View File

@ -11,7 +11,7 @@ namespace QCD{
////////////////////////////////////////////////////////////////////////
template<class vobj>
void axibg5x(Lattice<vobj> &z,const Lattice<vobj> &x,RealD a,RealD b)
void axpibg5x(Lattice<vobj> &z,const Lattice<vobj> &x,RealD a,RealD b)
{
z.checkerboard = x.checkerboard;
conformable(x,z);