mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-02 21:14:32 +00:00 
			
		
		
		
	Merge branch 'feature/gammas' into feature/hadrons
# Conflicts: # .gitignore # lib/qcd/spin/Dirac.cc # scripts/filelist
This commit is contained in:
		@@ -1,95 +1,72 @@
 | 
			
		||||
    /*************************************************************************************
 | 
			
		||||
/*************************************************************************************
 | 
			
		||||
 | 
			
		||||
    Grid physics library, www.github.com/paboyle/Grid 
 | 
			
		||||
Grid physics library, www.github.com/paboyle/Grid 
 | 
			
		||||
 | 
			
		||||
    Source file: ./lib/qcd/spin/Dirac.cc
 | 
			
		||||
Source file: lib/qcd/spin/Dirac.cc
 | 
			
		||||
 | 
			
		||||
    Copyright (C) 2015
 | 
			
		||||
Copyright (C) 2015
 | 
			
		||||
Copyright (C) 2016
 | 
			
		||||
 | 
			
		||||
Author: Antonin Portelli <antonin.portelli@me.com>
 | 
			
		||||
Author: Peter Boyle <paboyle@ph.ed.ac.uk>
 | 
			
		||||
Author: paboyle <paboyle@ph.ed.ac.uk>
 | 
			
		||||
 | 
			
		||||
    This program is free software; you can redistribute it and/or modify
 | 
			
		||||
    it under the terms of the GNU General Public License as published by
 | 
			
		||||
    the Free Software Foundation; either version 2 of the License, or
 | 
			
		||||
    (at your option) any later version.
 | 
			
		||||
This program is free software; you can redistribute it and/or modify
 | 
			
		||||
it under the terms of the GNU General Public License as published by
 | 
			
		||||
the Free Software Foundation; either version 2 of the License, or
 | 
			
		||||
(at your option) any later version.
 | 
			
		||||
 | 
			
		||||
    This program is distributed in the hope that it will be useful,
 | 
			
		||||
    but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
    GNU General Public License for more details.
 | 
			
		||||
This program is distributed in the hope that it will be useful,
 | 
			
		||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
 | 
			
		||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | 
			
		||||
GNU General Public License for more details.
 | 
			
		||||
 | 
			
		||||
    You should have received a copy of the GNU General Public License along
 | 
			
		||||
    with this program; if not, write to the Free Software Foundation, Inc.,
 | 
			
		||||
    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 | 
			
		||||
You should have received a copy of the GNU General Public License along
 | 
			
		||||
with this program; if not, write to the Free Software Foundation, Inc.,
 | 
			
		||||
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
 | 
			
		||||
 | 
			
		||||
    See the full license in the file "LICENSE" in the top level distribution directory
 | 
			
		||||
    *************************************************************************************/
 | 
			
		||||
    /*  END LEGAL */
 | 
			
		||||
See the full license in the file "LICENSE" in the top level distribution directory
 | 
			
		||||
*************************************************************************************/
 | 
			
		||||
/*  END LEGAL */
 | 
			
		||||
#include <Grid/Grid.h>
 | 
			
		||||
 | 
			
		||||
namespace Grid {
 | 
			
		||||
namespace QCD {
 | 
			
		||||
 | 
			
		||||
  namespace QCD {
 | 
			
		||||
#include "GammaMulTable.h"
 | 
			
		||||
 | 
			
		||||
    Gamma::GammaMatrix  Gamma::GammaMatrices [] = {
 | 
			
		||||
      Gamma::Identity,
 | 
			
		||||
      Gamma::GammaX,
 | 
			
		||||
      Gamma::GammaY,
 | 
			
		||||
      Gamma::GammaZ,
 | 
			
		||||
      Gamma::GammaT,
 | 
			
		||||
      Gamma::Gamma5,
 | 
			
		||||
      Gamma::MinusIdentity,
 | 
			
		||||
      Gamma::MinusGammaX,
 | 
			
		||||
      Gamma::MinusGammaY,
 | 
			
		||||
      Gamma::MinusGammaZ,
 | 
			
		||||
      Gamma::MinusGammaT,
 | 
			
		||||
      Gamma::MinusGamma5
 | 
			
		||||
    };
 | 
			
		||||
    const char *Gamma::GammaMatrixNames[] = { 
 | 
			
		||||
      "Identity ",
 | 
			
		||||
      "GammaX   ",
 | 
			
		||||
      "GammaY   ",
 | 
			
		||||
      "GammaZ   ",
 | 
			
		||||
      "GammaT   ",
 | 
			
		||||
      "Gamma5   ",
 | 
			
		||||
      "-Identity",
 | 
			
		||||
      "-GammaX  ",
 | 
			
		||||
      "-GammaY  ",
 | 
			
		||||
      "-GammaZ  ",
 | 
			
		||||
      "-GammaT  ",
 | 
			
		||||
      "-Gamma5  ",
 | 
			
		||||
      "         "
 | 
			
		||||
    };
 | 
			
		||||
    
 | 
			
		||||
    SpinMatrix makeGammaProd(const unsigned int i)
 | 
			
		||||
    {
 | 
			
		||||
      SpinMatrix g;
 | 
			
		||||
      
 | 
			
		||||
      g = 1.;
 | 
			
		||||
      if (i & 0x1)
 | 
			
		||||
      {
 | 
			
		||||
        g = g*Gamma(Gamma::GammaMatrix::GammaX);
 | 
			
		||||
      }
 | 
			
		||||
      if (i & 0x2)
 | 
			
		||||
      {
 | 
			
		||||
        g = g*Gamma(Gamma::GammaMatrix::GammaY);
 | 
			
		||||
      }
 | 
			
		||||
      if (i & 0x4)
 | 
			
		||||
      {
 | 
			
		||||
        g = g*Gamma(Gamma::GammaMatrix::GammaZ);
 | 
			
		||||
      }
 | 
			
		||||
      if (i & 0x8)
 | 
			
		||||
      {
 | 
			
		||||
        g = g*Gamma(Gamma::GammaMatrix::GammaT);
 | 
			
		||||
      }
 | 
			
		||||
      
 | 
			
		||||
      return g;
 | 
			
		||||
    }
 | 
			
		||||
const std::array<const char *, Gamma::nGamma> Gamma::name = {{
 | 
			
		||||
  "-Gamma5      ",
 | 
			
		||||
  "Gamma5       ",
 | 
			
		||||
  "-GammaT      ",
 | 
			
		||||
  "GammaT       ",
 | 
			
		||||
  "-GammaTGamma5",
 | 
			
		||||
  "GammaTGamma5 ",
 | 
			
		||||
  "-GammaX      ",
 | 
			
		||||
  "GammaX       ",
 | 
			
		||||
  "-GammaXGamma5",
 | 
			
		||||
  "GammaXGamma5 ",
 | 
			
		||||
  "-GammaY      ",
 | 
			
		||||
  "GammaY       ",
 | 
			
		||||
  "-GammaYGamma5",
 | 
			
		||||
  "GammaYGamma5 ",
 | 
			
		||||
  "-GammaZ      ",
 | 
			
		||||
  "GammaZ       ",
 | 
			
		||||
  "-GammaZGamma5",
 | 
			
		||||
  "GammaZGamma5 ",
 | 
			
		||||
  "-Identity    ",
 | 
			
		||||
  "Identity     ",
 | 
			
		||||
  "-SigmaXT     ",
 | 
			
		||||
  "SigmaXT      ",
 | 
			
		||||
  "-SigmaXY     ",
 | 
			
		||||
  "SigmaXY      ",
 | 
			
		||||
  "-SigmaXZ     ",
 | 
			
		||||
  "SigmaXZ      ",
 | 
			
		||||
  "-SigmaYT     ",
 | 
			
		||||
  "SigmaYT      ",
 | 
			
		||||
  "-SigmaYZ     ",
 | 
			
		||||
  "SigmaYZ      ",
 | 
			
		||||
  "-SigmaZT     ",
 | 
			
		||||
  "SigmaZT      "}};
 | 
			
		||||
 | 
			
		||||
    //    void sprojMul( vHalfSpinColourVector &out,vColourMatrix &u, vSpinColourVector &in){
 | 
			
		||||
    //      vHalfSpinColourVector hspin;
 | 
			
		||||
    //      spProjXp(hspin,in);
 | 
			
		||||
    //      mult(&out,&u,&hspin);
 | 
			
		||||
    //    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
}}
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										2023
									
								
								lib/qcd/spin/Dirac.h
									
									
									
									
									
								
							
							
						
						
									
										2023
									
								
								lib/qcd/spin/Dirac.h
									
									
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1121
									
								
								lib/qcd/spin/GammaMulTable.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1121
									
								
								lib/qcd/spin/GammaMulTable.h
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										1520
									
								
								lib/qcd/spin/gamma-gen/gamma-gen.nb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1520
									
								
								lib/qcd/spin/gamma-gen/gamma-gen.nb
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Reference in New Issue
	
	Block a user