14 #ifndef FOPR_CLOVER_SF_INCLUDED
15 #define FOPR_CLOVER_SF_INCLUDED
96 double *phi,
double *phipr);
128 }
else if (m_mode ==
"DdagD") {
130 }
else if (m_mode ==
"Ddag") {
132 }
else if (m_mode ==
"H") {
135 vout.
crucial(
m_vl,
"Fopr_Clover_SF: undefined mode = %s.\n", m_mode.c_str());
144 }
else if (m_mode ==
"DdagD") {
146 }
else if (m_mode ==
"Ddag") {
148 }
else if (m_mode ==
"H") {
151 vout.
crucial(
m_vl,
"Fopr_Clover_SF: undefined mode = %s.\n", m_mode.c_str());
167 const int mu,
const int nu);
177 void init(std::string repr);
187 int sg_index(
int mu,
int nu) {
return mu * m_Ndim + nu; }
std::vector< GammaMatrix > m_SG
void mult_csw_dirac(Field_F &, const Field_F &)
void(Fopr_Clover_SF::* m_csw)(Field_F &, const Field_F &)
double m_phi[3]
SF boundary condition at t=0.
void set_mode(std::string mode)
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelev...
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(int mu, int nu)
void DdagD(Field &, const Field &)
int field_nex()
returns the external d.o.f. for which the fermion operator is defined.
Parameters_Fopr_Clover_SF()
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)
Fopr_Wilson_SF * m_fopr_w
std::vector< GammaMatrix > m_GM
void crucial(const char *format,...)
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 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)
void set_config(unique_ptr< Field_G > &U)
void init(std::string repr)
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)