33 #ifdef USE_PARAMETERS_FACTORY
46 const std::string str_vlevel = params.
get_string(
"verbose_level");
51 double kappa_s, kappa_t, cSW_s, cSW_t;
55 err += params.
fetch_double(
"hopping_parameter_spatial", kappa_s);
56 err += params.
fetch_double(
"hopping_parameter_temporal", kappa_t);
57 err += params.
fetch_double(
"clover_coefficient_spatial", cSW_s);
58 err += params.
fetch_double(
"clover_coefficient_temporal", cSW_t);
73 double cSW_s,
double cSW_t,
82 for (
int mu = 0; mu <
m_Ndim; ++mu) {
88 assert(bc.size() ==
m_Ndim);
97 for (
int mu = 0; mu <
m_Ndim; ++mu) {
125 m_SG.resize(m_Ndim * m_Ndim);
129 m_GM5 = gmset->get_GM(gmset->GAMMA5);
164 assert(v.
nex() == f.
nex());
165 assert(v.
nin() == f.
nin());
176 const int mu,
const int nu)
195 const int Nvol = w.
nvol();
197 const double kappa_cSW_s = m_kappa_s *
m_cSW_s;
200 Field_F wt(Nvol, 1), vt(Nvol, 1);
240 const int mu,
const int nu)
246 Field_G Cup(Nvol, 1), Cdn(Nvol, 1);
248 Field_G v(Nvol, 1), v2(Nvol, 1);
252 Umu.setpart_ex(0, *
m_U, mu);
279 =
static_cast<double>(
m_Nc * m_Nd * (2 + 12 + 48 *
m_Nc));
280 double flop = flop_site *
static_cast<double>(Lvol);
void Register_int_vector(const string &, const std::vector< int > &)
void scal(Field &x, const double a)
scal(x, a): x = a * x
double flop_count()
this returns the number of floating point operations.
void Register_string(const string &, const string &)
void mult_Field_Gdn(Field_G &w, const int ex, const Field_G &u1, const int ex1, const Field_G &u2, const int ex2)
Parameters_Fopr_CloverTerm_General()
void general(const char *format,...)
Container of Field-type object.
void init(std::string repr)
void set_fieldstrength(Field_G &, const int, const int)
void multadd_Field_Gn(Field_F &y, const int ex, const Field_G &u, int ex1, const Field_F &x, int ex2, const double a)
Wilson-type fermion field.
void ah_Field_G(Field_G &w, const int ex)
std::vector< GammaMatrix > m_SG
void multadd_Field_Gdn(Field_G &w, const int ex, const Field_G &u1, const int ex1, const Field_G &u2, const int ex2, const double ff)
void mult_Field_Gnd(Field_G &w, const int ex, const Field_G &u1, const int ex1, const Field_G &u2, const int ex2)
void mult_iGM(Field_F &y, const GammaMatrix &gm, const Field_F &x)
gamma matrix multiplication (i is multiplied)
void mult_gm5(Field &v, const Field &w)
Bridge::VerboseLevel m_vl
void set_config(Field *U)
setting pointer to the gauge configuration.
void mult_isigma(Field_F &, const Field_F &, const int mu, const int nu)
void mult_csw(Field &, const Field &)
void set_parameters(const Parameters ¶ms)
void multadd_Field_Gnd(Field_G &w, const int ex, const Field_G &u1, const int ex1, const Field_G &u2, const int ex2, const double ff)
void axpy(Field &y, const double a, const Field &x)
axpy(y, a, x): y := a * x + y
void crucial(const char *format,...)
const Field_G * m_U
pointer to gauge configuration.
void mult_sigmaF(Field &, const Field &)
void mult_GM(Field_F &y, const GammaMatrix &gm, const Field_F &x)
gamma matrix multiplication
void lower(Field_G &, const Field_G &, const int mu, const int nu)
constructs lower staple in mu-nu plane.
static bool Register(const std::string &realm, const creator_callback &cb)
Field_G m_Ez
field strength.
std::vector< int > m_boundary
void Register_double(const string &, const double)
static const std::string class_name
int fetch_double(const string &key, double &val) const
string get_string(const string &key) const
void upper(Field_G &, const Field_G &, const int mu, const int nu)
constructs upper staple in mu-nu plane.
int sg_index(int mu, int nu)
static VerboseLevel set_verbose_level(const std::string &str)
int fetch_int_vector(const string &key, std::vector< int > &val) const
void forward(Field &, const Field &, const int mu)