mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-03 21:44:33 +00:00 
			
		
		
		
	First compile OK through nvcc on host
This commit is contained in:
		@@ -28,9 +28,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
 | 
			
		||||
    /*  END LEGAL */
 | 
			
		||||
#include <Grid/Grid.h>
 | 
			
		||||
 | 
			
		||||
using namespace std;
 | 
			
		||||
using namespace Grid;
 | 
			
		||||
 ;
 | 
			
		||||
 | 
			
		||||
class funcPlus {
 | 
			
		||||
public:
 | 
			
		||||
 
 | 
			
		||||
@@ -29,9 +29,7 @@ See the full license in the file "LICENSE" in the top level distribution directo
 | 
			
		||||
    /*  END LEGAL */
 | 
			
		||||
#include <Grid/Grid.h>
 | 
			
		||||
 | 
			
		||||
using namespace std;
 | 
			
		||||
using namespace Grid;
 | 
			
		||||
using namespace QCD;
 | 
			
		||||
 | 
			
		||||
static constexpr double                      tolerance = 1.0e-6;
 | 
			
		||||
static std::array<SpinMatrix, Gamma::nGamma> testAlgebra;
 | 
			
		||||
 
 | 
			
		||||
@@ -29,7 +29,7 @@ Author: Peter Boyle <paboyle@ph.ed.ac.uk>
 | 
			
		||||
 | 
			
		||||
using namespace std;
 | 
			
		||||
using namespace Grid;
 | 
			
		||||
 ;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
int main (int argc, char ** argv)
 | 
			
		||||
{
 | 
			
		||||
@@ -110,7 +110,9 @@ int main (int argc, char ** argv)
 | 
			
		||||
    PokeIndex<LorentzIndex>(mom,mommu,mu);
 | 
			
		||||
 | 
			
		||||
    // fourth order exponential approx
 | 
			
		||||
    parallel_for(auto i=mom.begin();i<mom.end();i++){
 | 
			
		||||
 | 
			
		||||
#if 0
 | 
			
		||||
    thread_loop( (auto i=mom.begin();i<mom.end();i++),{
 | 
			
		||||
      Uprime[i](mu) =
 | 
			
		||||
	  U[i](mu)
 | 
			
		||||
	+ mom[i](mu)*U[i](mu)*dt 
 | 
			
		||||
@@ -120,8 +122,20 @@ int main (int argc, char ** argv)
 | 
			
		||||
	+ mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *U[i](mu)*(dt*dt*dt*dt*dt/120.0)
 | 
			
		||||
	+ mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *U[i](mu)*(dt*dt*dt*dt*dt*dt/720.0)
 | 
			
		||||
	;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
      });
 | 
			
		||||
#else
 | 
			
		||||
    accelerator_loop( i, mom, {
 | 
			
		||||
      Uprime[i](mu) =
 | 
			
		||||
	  U[i](mu)
 | 
			
		||||
	+ mom[i](mu)*U[i](mu)*dt 
 | 
			
		||||
	+ mom[i](mu) *mom[i](mu) *U[i](mu)*(dt*dt/2.0)
 | 
			
		||||
	+ mom[i](mu) *mom[i](mu) *mom[i](mu) *U[i](mu)*(dt*dt*dt/6.0)
 | 
			
		||||
	+ mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *U[i](mu)*(dt*dt*dt*dt/24.0)
 | 
			
		||||
	+ mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *U[i](mu)*(dt*dt*dt*dt*dt/120.0)
 | 
			
		||||
	+ mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *mom[i](mu) *U[i](mu)*(dt*dt*dt*dt*dt*dt/720.0)
 | 
			
		||||
	;
 | 
			
		||||
      });
 | 
			
		||||
#endif
 | 
			
		||||
  }
 | 
			
		||||
  
 | 
			
		||||
  Ddwf.ImportGauge(Uprime);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user