14 #ifndef FORCESMEAR_HYP_INCLUDED
15 #define FORCESMEAR_HYP_INCLUDED
44 std::vector<Field_G>
m_U;
66 void set_parameters(
const double alpha1,
const double alpha2,
const double alpha3);
84 const int mu,
const int nu);
86 int idx1(
const int mu,
const int nu,
const int rho)
88 int sig = 6 - mu - nu - rho;
94 int idx1b(
const int mu,
int nu,
int rho)
131 static bool register_factory()
133 return ForceSmear::Factory::Register(
"HYP", create_object);
void set_parameters(const Parameters ¶ms)
ForceSmear_HYP(unique_ptr< Projection > &proj)
std::vector< Field_G > m_U
void force_step3(Field_G &, const Field_G &)
void force_each(Field_G &, const Field_G &, const Field_G &, const Field_G &, const Field_G &, const int mu, const int nu)
std::vector< Field_G > m_iTheta2
std::vector< Field_G > m_v2
Base class for force calculation of smeared operators.
static const std::string class_name
int idx2(const int mu, int nu)
Recursive calculation of HYP smeared fermion force.
int idx1b(const int mu, int nu, int rho)
void force_udiv(Field_G &Sigma, const Field_G &Sigma_p, const Field_G &U)
base class for projection operator into gauge group.
std::vector< Field_G > m_iTheta1
ForceSmear_HYP(Projection *proj)
int idx1(const int mu, const int nu, const int rho)
Methods to shift a field in the lexical site index.
std::vector< Field_G > m_v1
std::vector< Field_G > m_Sigma2
void force_step1(Field_G &)
void force_step2(Field_G &)
std::vector< Field_G > m_iTheta3
void staple(Field_G &, const Field_G &, const Field_G &, const int mu, const int nu)
std::vector< Field_G > m_Sigma3