mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-10-31 12:04:33 +00:00 
			
		
		
		
	Hadrons: remove make_5D/4D functions and FreeProp fix
This commit is contained in:
		| @@ -34,8 +34,6 @@ See the full license in the file "LICENSE" in the top level distribution directo | |||||||
| #include <Grid/Hadrons/Module.hpp> | #include <Grid/Hadrons/Module.hpp> | ||||||
| #include <Grid/Hadrons/ModuleFactory.hpp> | #include <Grid/Hadrons/ModuleFactory.hpp> | ||||||
|  |  | ||||||
| #include <Grid/Hadrons/Modules/MFermion/GaugeProp.hpp> |  | ||||||
|  |  | ||||||
| BEGIN_HADRONS_NAMESPACE | BEGIN_HADRONS_NAMESPACE | ||||||
|  |  | ||||||
| /****************************************************************************** | /****************************************************************************** | ||||||
| @@ -152,7 +150,7 @@ void TFreeProp<FImpl>::execute(void) | |||||||
|             else |             else | ||||||
|             { |             { | ||||||
|                 PropToFerm<FImpl>(tmp, fullSrc, s, c); |                 PropToFerm<FImpl>(tmp, fullSrc, s, c); | ||||||
|                 make_5D(tmp, source, Ls_); |                 mat.ImportPhysicalFermionSource(tmp, source); | ||||||
|             } |             } | ||||||
|         } |         } | ||||||
|         // source conversion for 5D sources |         // source conversion for 5D sources | ||||||
| @@ -176,7 +174,7 @@ void TFreeProp<FImpl>::execute(void) | |||||||
|         if (Ls_ > 1) |         if (Ls_ > 1) | ||||||
|         { |         { | ||||||
|             PropagatorField &p4d = envGet(PropagatorField, getName()); |             PropagatorField &p4d = envGet(PropagatorField, getName()); | ||||||
|             make_4D(sol, tmp, Ls_); |             mat.ExportPhysicalFermionSolution(sol, tmp); | ||||||
|             FermToProp<FImpl>(p4d, tmp, s, c); |             FermToProp<FImpl>(p4d, tmp, s, c); | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|   | |||||||
| @@ -39,27 +39,6 @@ See the full license in the file "LICENSE" in the top level distribution directo | |||||||
|  |  | ||||||
| BEGIN_HADRONS_NAMESPACE | BEGIN_HADRONS_NAMESPACE | ||||||
|  |  | ||||||
| /****************************************************************************** |  | ||||||
|  * 5D -> 4D and 4D -> 5D conversions.                                         * |  | ||||||
|  ******************************************************************************/ |  | ||||||
| template<class vobj> // Note that 5D object is modified. |  | ||||||
| inline void make_4D(Lattice<vobj> &in_5d, Lattice<vobj> &out_4d, int Ls) |  | ||||||
| { |  | ||||||
|     axpby_ssp_pminus(in_5d, 0., in_5d, 1., in_5d, 0, 0); |  | ||||||
|     axpby_ssp_pplus(in_5d, 1., in_5d, 1., in_5d, 0, Ls-1); |  | ||||||
|     ExtractSlice(out_4d, in_5d, 0, 0); |  | ||||||
| } |  | ||||||
|  |  | ||||||
| template<class vobj> |  | ||||||
| inline void make_5D(Lattice<vobj> &in_4d, Lattice<vobj> &out_5d, int Ls) |  | ||||||
| { |  | ||||||
|     out_5d = zero; |  | ||||||
|     InsertSlice(in_4d, out_5d, 0, 0); |  | ||||||
|     InsertSlice(in_4d, out_5d, Ls-1, 0); |  | ||||||
|     axpby_ssp_pplus(out_5d, 0., out_5d, 1., out_5d, 0, 0); |  | ||||||
|     axpby_ssp_pminus(out_5d, 0., out_5d, 1., out_5d, Ls-1, Ls-1); |  | ||||||
| } |  | ||||||
|  |  | ||||||
| /****************************************************************************** | /****************************************************************************** | ||||||
|  *                                GaugeProp                                   * |  *                                GaugeProp                                   * | ||||||
|  ******************************************************************************/ |  ******************************************************************************/ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user