mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-04 05:54:32 +00:00 
			
		
		
		
	Debugged HMC for Creutz relation
This commit is contained in:
		@@ -48,7 +48,7 @@ class SU {
 | 
			
		||||
  using iSU2Matrix = iScalar<iScalar<iMatrix<vtype, 2> > >;
 | 
			
		||||
  template <typename vtype>
 | 
			
		||||
  using iSUnAlgebraVector =
 | 
			
		||||
      iScalar<iScalar<iVector<vtype, (ncolour * ncolour - 1)> > >;
 | 
			
		||||
      iScalar<iScalar<iVector<vtype, AdjointDimension> > >;
 | 
			
		||||
 | 
			
		||||
  //////////////////////////////////////////////////////////////////////////////////////////////////
 | 
			
		||||
  // Types can be accessed as SU<2>::Matrix , SU<2>::vSUnMatrix,
 | 
			
		||||
@@ -656,7 +656,7 @@ class SU {
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  static void FundamentalLieAlgebraMatrix(LatticeAlgebraVector &h,
 | 
			
		||||
  static void FundamentalLieAlgebraMatrix(const LatticeAlgebraVector &h,
 | 
			
		||||
                                          LatticeMatrix &out,
 | 
			
		||||
                                          Real scale = 1.0) {
 | 
			
		||||
    conformable(h, out);
 | 
			
		||||
@@ -667,7 +667,7 @@ class SU {
 | 
			
		||||
    out = zero;
 | 
			
		||||
    for (int a = 0; a < AdjointDimension; a++) {
 | 
			
		||||
      generator(a, ta);
 | 
			
		||||
      la = peekColour(h, a) * scale * ta;
 | 
			
		||||
      la = peekColour(h, a) * timesI(ta) * scale;
 | 
			
		||||
      out += la;
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 
 | 
			
		||||
@@ -118,7 +118,7 @@ class SU_Adjoint : public SU<ncolour> {
 | 
			
		||||
 | 
			
		||||
    for (int a = 0; a < Dimension; a++) {
 | 
			
		||||
      generator(a, iTa);
 | 
			
		||||
      auto tmp = real(trace(iTa * in)) * scale; 
 | 
			
		||||
      auto tmp = - 2.0 * real(trace(iTa * in)) * scale; 
 | 
			
		||||
      pokeColour(h_out, tmp, a);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
@@ -135,7 +135,7 @@ class SU_Adjoint : public SU<ncolour> {
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    for (int a = 0; a < Dimension; a++) {
 | 
			
		||||
      auto tmp = real(trace(iTa[a] * in)) * scale; 
 | 
			
		||||
      auto tmp = - 2.0*real(trace(iTa[a] * in)) * scale; 
 | 
			
		||||
      pokeColour(h_out, tmp, a);
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user