mirror of
				https://github.com/paboyle/Grid.git
				synced 2025-11-04 05:54:32 +00:00 
			
		
		
		
	Namespce, indent
This commit is contained in:
		@@ -1,4 +1,4 @@
 | 
			
		||||
    /*************************************************************************************
 | 
			
		||||
/*************************************************************************************
 | 
			
		||||
 | 
			
		||||
    Grid physics library, www.github.com/paboyle/Grid 
 | 
			
		||||
 | 
			
		||||
@@ -24,51 +24,49 @@ Author: Peter Boyle <paboyle@ph.ed.ac.uk>
 | 
			
		||||
    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 */
 | 
			
		||||
*************************************************************************************/
 | 
			
		||||
/*  END LEGAL */
 | 
			
		||||
#ifndef OVERLAP_WILSON_CONTFRAC_ZOLOTAREV_FERMION_H
 | 
			
		||||
#define OVERLAP_WILSON_CONTFRAC_ZOLOTAREV_FERMION_H
 | 
			
		||||
 | 
			
		||||
#include <Grid/qcd/action/fermion/FermionCore.h>
 | 
			
		||||
 | 
			
		||||
namespace Grid {
 | 
			
		||||
NAMESPACE_BEGIN(Grid);
 | 
			
		||||
 | 
			
		||||
  namespace QCD {
 | 
			
		||||
template<class Impl>
 | 
			
		||||
class OverlapWilsonContFracZolotarevFermion : public ContinuedFractionFermion5D<Impl>
 | 
			
		||||
{
 | 
			
		||||
public:
 | 
			
		||||
  INHERIT_IMPL_TYPES(Impl);
 | 
			
		||||
 | 
			
		||||
    template<class Impl>
 | 
			
		||||
    class OverlapWilsonContFracZolotarevFermion : public ContinuedFractionFermion5D<Impl>
 | 
			
		||||
    {
 | 
			
		||||
    public:
 | 
			
		||||
     INHERIT_IMPL_TYPES(Impl);
 | 
			
		||||
 | 
			
		||||
      virtual void   Instantiatable(void){};
 | 
			
		||||
      // Constructors
 | 
			
		||||
    OverlapWilsonContFracZolotarevFermion(GaugeField &_Umu,
 | 
			
		||||
					  GridCartesian         &FiveDimGrid,
 | 
			
		||||
					  GridRedBlackCartesian &FiveDimRedBlackGrid,
 | 
			
		||||
					  GridCartesian         &FourDimGrid,
 | 
			
		||||
					  GridRedBlackCartesian &FourDimRedBlackGrid,
 | 
			
		||||
					  RealD _mass,RealD _M5,
 | 
			
		||||
					  RealD lo,RealD hi,const ImplParams &p= ImplParams()):
 | 
			
		||||
  virtual void   Instantiatable(void){};
 | 
			
		||||
  // Constructors
 | 
			
		||||
  OverlapWilsonContFracZolotarevFermion(GaugeField &_Umu,
 | 
			
		||||
					GridCartesian         &FiveDimGrid,
 | 
			
		||||
					GridRedBlackCartesian &FiveDimRedBlackGrid,
 | 
			
		||||
					GridCartesian         &FourDimGrid,
 | 
			
		||||
					GridRedBlackCartesian &FourDimRedBlackGrid,
 | 
			
		||||
					RealD _mass,RealD _M5,
 | 
			
		||||
					RealD lo,RealD hi,const ImplParams &p= ImplParams()):
 | 
			
		||||
      
 | 
			
		||||
      // b+c=scale, b-c = 0 <=> b =c = scale/2
 | 
			
		||||
      ContinuedFractionFermion5D<Impl>(_Umu,
 | 
			
		||||
				       FiveDimGrid,
 | 
			
		||||
				       FiveDimRedBlackGrid,
 | 
			
		||||
				       FourDimGrid,
 | 
			
		||||
				       FourDimRedBlackGrid,_mass,_M5,p)
 | 
			
		||||
	{
 | 
			
		||||
	  assert((this->Ls&0x1)==1); // Odd Ls required
 | 
			
		||||
    // b+c=scale, b-c = 0 <=> b =c = scale/2
 | 
			
		||||
    ContinuedFractionFermion5D<Impl>(_Umu,
 | 
			
		||||
				     FiveDimGrid,
 | 
			
		||||
				     FiveDimRedBlackGrid,
 | 
			
		||||
				     FourDimGrid,
 | 
			
		||||
				     FourDimRedBlackGrid,_mass,_M5,p)
 | 
			
		||||
  {
 | 
			
		||||
    assert((this->Ls&0x1)==1); // Odd Ls required
 | 
			
		||||
 | 
			
		||||
	  int nrational=this->Ls;// Odd rational order
 | 
			
		||||
	  RealD eps = lo/hi;
 | 
			
		||||
    int nrational=this->Ls;// Odd rational order
 | 
			
		||||
    RealD eps = lo/hi;
 | 
			
		||||
 | 
			
		||||
	  Approx::zolotarev_data *zdata = Approx::zolotarev(eps,nrational,0);
 | 
			
		||||
	  this->SetCoefficientsZolotarev(hi,zdata);
 | 
			
		||||
	  Approx::zolotarev_free(zdata);
 | 
			
		||||
    Approx::zolotarev_data *zdata = Approx::zolotarev(eps,nrational,0);
 | 
			
		||||
    this->SetCoefficientsZolotarev(hi,zdata);
 | 
			
		||||
    Approx::zolotarev_free(zdata);
 | 
			
		||||
 | 
			
		||||
	}
 | 
			
		||||
    };
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
NAMESPACE_END(Grid);
 | 
			
		||||
#endif
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user