mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-04 14:04:32 +00:00 
			
		
		
		
	Elemental force term for Wilson dslash added and tests thereof passing.
Now need to construct pseudofermion two flavour, ratio, one flavour, ratio action fragments.
This commit is contained in:
		@@ -28,11 +28,13 @@ auto outerProduct (const iScalar<l>& lhs,const iScalar<r>& rhs) -> iScalar<declt
 | 
			
		||||
 | 
			
		||||
inline ComplexF outerProduct(const ComplexF &l, const ComplexF& r)
 | 
			
		||||
{
 | 
			
		||||
  return l*r;
 | 
			
		||||
  std::cout << "outer product taking conj "<<r<<" "<<conj(r)<<std::endl;
 | 
			
		||||
  return l*conj(r);
 | 
			
		||||
}
 | 
			
		||||
inline ComplexD outerProduct(const ComplexD &l, const ComplexD& r)
 | 
			
		||||
{
 | 
			
		||||
  return l*r;
 | 
			
		||||
  std::cout << "outer product taking conj "<<r<<" "<<conj(r)<<std::endl;
 | 
			
		||||
  return l*conj(r);
 | 
			
		||||
}
 | 
			
		||||
inline RealF outerProduct(const RealF &l, const RealF& r)
 | 
			
		||||
{
 | 
			
		||||
 
 | 
			
		||||
@@ -31,6 +31,16 @@ inline auto trace(const iScalar<vtype> &arg) -> iScalar<decltype(trace(arg._inte
 | 
			
		||||
    return ret;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
template<class vtype,int N>
 | 
			
		||||
  inline auto trace(const iVector<vtype,N> &arg) -> iVector<decltype(trace(arg._internal[0])),N>
 | 
			
		||||
{
 | 
			
		||||
  iVector<decltype(trace(arg._internal[0])),N> ret;
 | 
			
		||||
  for(int i=0;i<N;i++){
 | 
			
		||||
    ret._internal[i]=trace(arg._internal[i]);
 | 
			
		||||
  }
 | 
			
		||||
  return ret;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
#endif
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user