mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-03 21:44:33 +00:00 
			
		
		
		
	Compiles now
This commit is contained in:
		@@ -574,20 +574,20 @@ PARALLEL_FOR_LOOP
 | 
			
		||||
      for (int mu = 0; mu < Nd; mu++) {
 | 
			
		||||
 | 
			
		||||
	// Staggered Phase.
 | 
			
		||||
	ComplexField coor(GaugeGrid);
 | 
			
		||||
	ComplexField phases(GaugeGrid);
 | 
			
		||||
	ComplexField x(GaugeGrid); LatticeCoordinate(x,0);
 | 
			
		||||
	ComplexField y(GaugeGrid); LatticeCoordinate(y,1);
 | 
			
		||||
	ComplexField z(GaugeGrid); LatticeCoordinate(z,2);
 | 
			
		||||
	ComplexField t(GaugeGrid); LatticeCoordinate(t,3);
 | 
			
		||||
	Lattice<iScalar<vInteger> > coor(GaugeGrid);
 | 
			
		||||
	Lattice<iScalar<vInteger> > x(GaugeGrid); LatticeCoordinate(x,0);
 | 
			
		||||
	Lattice<iScalar<vInteger> > y(GaugeGrid); LatticeCoordinate(y,1);
 | 
			
		||||
	Lattice<iScalar<vInteger> > z(GaugeGrid); LatticeCoordinate(z,2);
 | 
			
		||||
	Lattice<iScalar<vInteger> > t(GaugeGrid); LatticeCoordinate(t,3);
 | 
			
		||||
 | 
			
		||||
	SiteComplex zz(0.0,0.0);
 | 
			
		||||
	SiteComplex one(1.0,0.0);
 | 
			
		||||
	Lattice<iScalar<vInteger> > lin_z(GaugeGrid); lin_z=x+y;
 | 
			
		||||
	Lattice<iScalar<vInteger> > lin_t(GaugeGrid); lin_t=x+y+z;
 | 
			
		||||
 | 
			
		||||
	phases = one;
 | 
			
		||||
	if ( mu == 1 ) phases = where( mod(x    ,2)== zz, phases,-phases);
 | 
			
		||||
	if ( mu == 2 ) phases = where( mod(x+y  ,2)== zz, phases,-phases);
 | 
			
		||||
	if ( mu == 3 ) phases = where( mod(x+y+z,2)== zz, phases,-phases);
 | 
			
		||||
	ComplexField phases(GaugeGrid);	phases=1.0;
 | 
			
		||||
 | 
			
		||||
	if ( mu == 1 ) phases = where( mod(x    ,2)==(Integer)0, phases,-phases);
 | 
			
		||||
	if ( mu == 2 ) phases = where( mod(lin_z,2)==(Integer)0, phases,-phases);
 | 
			
		||||
	if ( mu == 3 ) phases = where( mod(lin_t,2)==(Integer)0, phases,-phases);
 | 
			
		||||
 | 
			
		||||
	U  = PeekIndex<LorentzIndex>(Umu, mu);
 | 
			
		||||
	UU = Gimpl::CovShiftForward(U,mu,U);
 | 
			
		||||
 
 | 
			
		||||
@@ -81,7 +81,7 @@ ImprovedStaggeredFermion<Impl>::ImprovedStaggeredFermion(GaugeField &_Umu, GridC
 | 
			
		||||
template <class Impl>
 | 
			
		||||
void ImprovedStaggeredFermion<Impl>::ImportGauge(const GaugeField &_Umu) {
 | 
			
		||||
 | 
			
		||||
  GaugeLinkField U(GaugeGrid);
 | 
			
		||||
  GaugeLinkField U(GaugeGrid());
 | 
			
		||||
 | 
			
		||||
  ////////////////////////////////////////////////////////
 | 
			
		||||
  // Double Store should take two fields for Naik and one hop separately.
 | 
			
		||||
 
 | 
			
		||||
@@ -108,7 +108,7 @@ class ImprovedStaggeredFermion : public StaggeredKernels<Impl>, public ImprovedS
 | 
			
		||||
  // Constructor
 | 
			
		||||
  ImprovedStaggeredFermion(GaugeField &_Umu, GridCartesian &Fgrid,
 | 
			
		||||
			   GridRedBlackCartesian &Hgrid, RealD _mass,
 | 
			
		||||
			   RealD _c1=9.0/8.0, RealD _c2=-1.0/24.0,RealD _u0,
 | 
			
		||||
			   RealD _c1=9.0/8.0, RealD _c2=-1.0/24.0,RealD _u0=1.0,
 | 
			
		||||
			   const ImplParams &p = ImplParams());
 | 
			
		||||
 | 
			
		||||
  // DoubleStore impl dependent
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user