Go to the documentation of this file.
10 #ifndef FOPR_STAGGERED_EO_INCLUDED
11 #define FOPR_STAGGERED_EO_INCLUDED
84 void set_mode(
const std::string mode);
150 static bool register_factory()
153 init &= Fopr::Factory_noarg::Register(
"Staggered_eo", create_object);
154 init &= Fopr::Factory_params::Register(
"Staggered_eo",
155 create_object_with_params);
Methods to shift the even-odd field.
void mult(Field &w, const Field &f)
multiplies fermion operator to a given field (2nd argument)
void get_parameters(Parameters ¶ms) const
gets parameters by a Parameter object: to be implemented in a subclass.
Base class of fermion operator family.
Even-odd staggered fermion operator.
void MeoMoe(Field &v, const Field &f)
D = m^2 - Deo * Doe.
void set_config_omp(Field *U)
int field_nvol()
returns the volume for which the fermion operator is defined.
std::string m_mode
mult mode
int field_nin()
returns the on-site d.o.f. for which the fermion operator is defined.
void Meo(Field &, const Field &, const int ieo, const int jd)
hopping term: ieo = 0: even <– odd, 1: odd <– even
std::string get_mode() const
void tidyup()
final clean-up.
void preProp(Field &, Field &, const Field &)
for even-odd solver: called before linear solver.
Bridge::VerboseLevel m_vl
verbose level
void init()
initial setup.
Fopr_Staggered_eo(const Parameters ¶ms)
constructor with a Paramters object.
Field m_v2
working vectors
Field m_staggered_phase
staggered phase
void set_config(Field *U)
setting pointer to the gauge configuration.
DEPRECATED Fopr_Staggered_eo()
static const std::string class_name
Field_G m_Ueo
even-odd gauge configuration
void mult_dag(Field &w, const Field &f)
hermitian conjugate of mult(Field&, const Field&).
double flop_count()
returns the number of floating point operations.
void mult_dn(Field &, const Field &, const int mu, const int ieo)
void set_mode(const std::string mode)
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelev...
void mult_up(Field &, const Field &, const int mu, const int ieo)
int field_nex()
returns the external d.o.f. for which the fermion operator is defined.
Container of Field-type object.
std::vector< int > m_boundary
boundary conditions
void set_config_impl(Field *U)
void set_parameters(const Parameters ¶ms)
sets parameters by a Parameter object: to be implemented in a subclass.
void postProp(Field &, const Field &, const Field &)
for even-odd solver: called after linear solver.
void set_staggered_phase()
void mult_staggered_phase(Field &, const int mu, const int ieo)
multiplied staggered phase with a given vector.
Field m_t2
working vectors
ShiftField_eo * m_shift_eo
~Fopr_Staggered_eo()
deconstructor.