1
0
mirror of https://github.com/paboyle/Grid.git synced 2025-04-27 22:25:56 +01:00

Temporary size depends on checkerboard/uncheckerboard. The Mdir cares

This commit is contained in:
Peter Boyle 2019-12-09 02:58:24 -05:00
parent e43fce1083
commit 3d2fe80780

View File

@ -382,11 +382,22 @@ void CayleyFermion5D<Impl>::MeooeDag (const FermionField &psi, FermionField &
MeooeDag5D(this->tmp(),chi); MeooeDag5D(this->tmp(),chi);
} }
template<class Impl> -void CayleyFermion5D<Impl>::Mdir (const FermionField &psi, FermionField &chi,int dir,int disp){
void CayleyFermion5D<Impl>::Mdir (const FermionField &psi, FermionField &chi,int dir,int disp){ - Meo5D(psi,this->tmp());
Meo5D(psi,this->tmp()); +void CayleyFermion5D<Impl>::Mdir (const FermionField &psi, FermionField &chi,int dir,int disp)
+{
// Apply 4d dslash fragment // Apply 4d dslash fragment
this->DhopDir(this->tmp(),chi,dir,disp); - this->DhopDir(this->tmp(),chi,dir,disp);
+ this->DhopDir(tmp,chi,dir,disp);
}
template<class Impl>
void CayleyFermion5D<Impl>::Mdir (const FermionField &psi, FermionField &chi,int dir,int disp)
{
FermionField tmp(psi.Grid());
Meo5D(psi,tmp);
this->DhopDir(tmp,chi,dir,disp);
} }
// force terms; five routines; default to Dhop on diagonal // force terms; five routines; default to Dhop on diagonal
template<class Impl> template<class Impl>