mirror of
https://github.com/paboyle/Grid.git
synced 2025-06-18 15:57:05 +01:00
Debugging Smearing routines (set_fj)
This commit is contained in:
@ -25,7 +25,7 @@ namespace Grid {
|
||||
}
|
||||
|
||||
/*! Default constructor */
|
||||
Smear_Stout():SmearBase(new Smear_APE < Gimpl > ()){
|
||||
Smear_Stout(double rho = 1.0):SmearBase(new Smear_APE < Gimpl > (rho)){
|
||||
static_assert(Nc==3, "Stout smearing currently implemented only for Nc==3");
|
||||
}
|
||||
|
||||
@ -68,6 +68,7 @@ namespace Grid {
|
||||
|
||||
// only one Lorentz direction at a time
|
||||
|
||||
std::cout<< GridLogDebug << "Stout smearing exponentiate iQ\n";
|
||||
GridBase *grid = iQ._grid;
|
||||
GaugeLinkField unity(grid);
|
||||
unity=1.0;
|
||||
@ -92,7 +93,8 @@ namespace Grid {
|
||||
|
||||
GridBase *grid = u._grid;
|
||||
LatticeReal c0(grid), c1(grid), tmp(grid), c0max(grid), theta(grid);
|
||||
|
||||
|
||||
std::cout<< GridLogDebug << "Stout smearing set uw\n";
|
||||
|
||||
c0 = - toReal(imag(trace(iQ3))) * one_over_three;
|
||||
c1 = - toReal(real(trace(iQ2))) * one_over_two;
|
||||
@ -107,6 +109,7 @@ namespace Grid {
|
||||
void set_fj(LatticeComplex& f0, LatticeComplex& f1, LatticeComplex& f2,
|
||||
const LatticeReal& u, const LatticeReal& w) const{
|
||||
|
||||
std::cout<< GridLogDebug << "Stout smearing set fj\n";
|
||||
GridBase *grid = u._grid;
|
||||
LatticeReal xi0(grid), u2(grid), w2(grid), cosw(grid), tmp(grid);
|
||||
LatticeComplex fden(grid);
|
||||
@ -117,8 +120,10 @@ namespace Grid {
|
||||
u2 = u * u;
|
||||
w2 = w * w;
|
||||
cosw = cos(w);
|
||||
|
||||
|
||||
std::cout<< GridLogDebug << "Stout smearing first toComplex\n";
|
||||
ixi0 = timesI(toComplex(xi0));
|
||||
std::cout<< GridLogDebug << "Stout smearing others toComplex\n";
|
||||
emiu = toComplex(cos(u)) - timesI(toComplex(u));
|
||||
e2iu = toComplex(cos(2.0*u)) + timesI(toComplex(2.0*u));
|
||||
|
||||
|
Reference in New Issue
Block a user