14 #ifndef FOPR_CLOVER_SF_INCLUDED
15 #define FOPR_CLOVER_SF_INCLUDED
88 void set_parameters(
const double kappa,
const double cSW,
const std::vector<int> bc,
89 double *phi,
double *phipr);
121 }
else if (
m_mode ==
"DdagD") {
123 }
else if (
m_mode ==
"Ddag") {
125 }
else if (
m_mode ==
"H") {
137 }
else if (
m_mode ==
"DdagD") {
139 }
else if (
m_mode ==
"Ddag") {
141 }
else if (
m_mode ==
"H") {
160 const int mu,
const int nu);
170 void init(
const std::string repr);
184 static Fopr *create_object()
190 static bool register_factory()
192 return Fopr::Factory_noarg::Register(
"Clover_SF", create_object);
std::vector< GammaMatrix > m_SG
void init(const std::string repr)
void mult_csw_dirac(Field_F &, const Field_F &)
double m_phi[3]
SF boundary condition at t=0.
static const std::string class_name
Container of Field-type object.
int field_nin()
returns the on-site d.o.f. for which the fermion operator is defined.
void H(Field &, const Field &)
void set_config(Field *U)
setting pointer to the gauge configuration.
Wilson fermion operator with SF BC.
double m_phipr[3]
SF boundary condition at t=Nt.
void mult_isigma(Field_F &, const Field_F &, const int mu, const int nu)
Wilson-type fermion field.
void set_config(Field *U)
setting pointer to the gauge configuration.
int sg_index(const int mu, const int nu)
void DdagD(Field &, const Field &)
int field_nex()
returns the external d.o.f. for which the fermion operator is defined.
Bridge::VerboseLevel m_vl
std::string get_mode() const
only for Fopr_Overlap
void set_fieldstrength(Field_G &, const int, const int)
void mult_csw(Field_F &, const Field_F &)
std::vector< int > m_boundary
void mult_gm5(Field &v, const Field &w)
gamma_5 multiplication. [31 Mar 2017 H.Matsufuru]
Fopr_Wilson_SF * m_fopr_w
std::vector< GammaMatrix > m_GM
void crucial(const char *format,...)
void(Fopr_Clover_SF::* m_csw)(Field_F &, const Field_F &)
void Ddag(Field &, const Field &)
void mult(Field &v, const Field &f)
multiplies fermion operator to a given field (2nd argument)
void mult_csw_chiral(Field_F &, const Field_F &)
void set_mode(const std::string mode)
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelev...
void D(Field &, const Field &)
Field_F_SF setzero
In order to set the boundary field to zero.
Methods to shift a field in the lexical site index.
int field_nvol()
returns the volume for which the fermion operator is defined.
void mult_dag(Field &v, const Field &f)
hermitian conjugate of mult(Field&, const Field&).
Base class of fermion operator family.
void mult_gm5(Field &v, const Field &w)
gamma_5 multiplication. [31 Mar 2017 H.Matsufuru]
void set_config(unique_ptr< Field_G > &U)
double flop_count()
this returns the number of floating point number operations.
A class generated to add a function for the SF.
void set_parameters(const Parameters ¶ms)