Go to the documentation of this file.
14 #ifndef FOPR_CLOVERGENERAL_INCLUDED
15 #define FOPR_CLOVERGENERAL_INCLUDED
82 std::string repr = params.
get_string(
"gamma_matrix_type");
94 const double nu_s,
const double r_s,
95 const double cSW_s,
const double cSW_t,
96 const std::vector<int> bc);
107 void set_mode(
const std::string mode);
118 }
else if (
m_mode ==
"Ddag") {
120 }
else if (
m_mode ==
"DdagD") {
122 }
else if (
m_mode ==
"DDdag") {
124 }
else if (
m_mode ==
"H") {
136 }
else if (
m_mode ==
"DdagD") {
138 }
else if (
m_mode ==
"Ddag") {
140 }
else if (
m_mode ==
"H") {
170 const int mu,
const int nu);
180 void init(
const std::string repr);
185 static Fopr *create_object()
190 static Fopr *create_object_with_arg(
const std::string& repr)
201 static bool register_factory()
204 init &= Fopr::Factory_noarg::Register(
"CloverGeneral", create_object);
205 init &= Fopr::Factory_string::Register(
"CloverGeneral", create_object_with_arg);
206 init &= Fopr::Factory_params::Register(
"CloverGeneral", create_object_with_params);
void set_config(Field *U)
sets the gauge configuration.
Common parameter class: provides parameters as singleton.
void mult(Field &v, const Field &f)
multiplies fermion operator to a given field.
void set_mode(const std::string mode)
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelev...
Fopr_CloverGeneral(const Parameters ¶ms)
void set_parameters(const Parameters ¶ms)
sets parameters by a Parameter object: to be implemented in a subclass.
void H(Field &, const Field &)
int field_nvol()
returns the volume of the fermion field.
DEPRECATED Fopr_CloverGeneral()
void mult_up(const int mu, Field &w, const Field &f)
upward nearest neighbor hopping term.
double m_r_s
spatial Wilson parameter
double m_kappa_t
temporal hopping parameter
void mult_dn(const int mu, Field &w, const Field &f)
downward nearest neighbor hopping term.
double m_cSW_t
temporal clover coefficient
void Ddag(Field &, const Field &)
void mult_dag(Field &v, const Field &f)
hermitian conjugate of mult.
void get_parameters(Parameters ¶ms) const
gets parameters by a Parameter object: to be implemented in a subclass.
DEPRECATED Fopr_CloverGeneral(const std::string repr)
const Field_G * m_U
gauge configuration (pointer)
int m_NinF
internal parameters
static const std::string class_name
int field_nin()
returns the on-site degree of freedom of the fermion field.
Fopr_CloverTerm_General * m_fopr_csw
Clover term operator.
int field_nex()
returns the external degree of freedom of the fermion field.
double m_kappa_s
spatial hopping parameter
double m_nu_s
spatial anisotopy parameter
void mult_isigma(Field_F &, const Field_F &, const int mu, const int nu)
double m_cSW_s
spatial clover coefficient
Clover general fermion operator.
void mult_gm5(Field &v, const Field &w)
multiplies gamma_5 matrix.
void mult_dn(const int mu, Field &v, const Field &w)
downward nearest neighbor hopping term.
std::string m_repr
gamma matrix representation
void set_config(Field *U)
sets the gauge configuration.
Fopr_WilsonGeneral * m_fopr_w
Wilson fermion kernel.
void set_config(Field *U)
sets the gauge configuration.
std::string get_mode() const
std::vector< int > m_boundary
boundary conditions
void init(const std::string repr)
void DdagD(Field &, const Field &)
void DDdag(Field &, const Field &)
Wilson-type fermion field.
string get_string(const string &key) const
void crucial(const char *format,...)
std::string m_mode
mode of multiplication
Container of Field-type object.
void mult_up(const int mu, Field &v, const Field &w)
upward nearest neighbor hopping term.
double flop_count()
this returns the number of floating point operations.
void D(Field &, const Field &)
Bridge::VerboseLevel m_vl
void mult_gm5(Field &v, const Field &f)
multiplies gamma_5 matrix.