14 #ifndef FOPR_WILSON_GENERAL_IMP_INCLUDED 
   15 #define FOPR_WILSON_GENERAL_IMP_INCLUDED 
   55     std::vector<GammaMatrix> 
m_GM;   
 
   75     void init(std::string repr);
 
   81                         const double nu_s, 
const double r_s,
 
   82                         const std::vector<int> bc);
 
  101     { (this->*
m_gm5)(v, f); }
 
  104     { (this->*
m_D)(v, f); }
 
  146                      const Field& f, 
const int ex2)
 
  147     { (this->*
m_D_ex)(v, ex1, f, ex2); }
 
  160                      const Field& v, 
const int ex2, 
const int ipm);
 
  196                                        const Field&, 
const int);
 
  272     void daxpy_thread(
int, 
double *, 
double, 
const double *);
 
  273     void daypx_thread(
int, 
double *, 
double, 
const double *);
 
const Field_F mult_gm5p(int mu, const Field_F &w)
 
void mult_t_plus1_chiral_thread(int, double *, const double *)
 
void(Fopr_WilsonGeneral::* m_mult_t_plus)(Field &, const Field &)
 
void DDdag(Field &w, const Field &f)
 
void mult_dag(Field &v, const Field &f)
hermitian conjugate of mult(Field&, const Field&). 
 
int field_nin()
returns the on-site d.o.f. for which the fermion operator is defined. 
 
void mult_y_plus2_thread(int, double *, const double *)
 
double * vcp1_x_plus
arrays for data transfer. 
 
void D_dirac(Field &, const Field &)
 
void mult_t_plus2_dirac_thread(int, double *, const double *)
 
void D_ex_chiral(Field &, const int ex1, const Field &, const int ex2)
 
int field_nvol()
returns the volume for which the fermion operator is defined. 
 
Bridge::VerboseLevel m_vl
 
void mult_x_minus_bulk_thread(int, double *, const double *)
 
void mult_x_plus2_thread(int, double *, const double *)
 
void(Fopr_WilsonGeneral::* m_mult)(Field &, const Field &)
 
Fopr_WilsonGeneral(std::string repr)
 
Container of Field-type object. 
 
void H(Field &w, const Field &f)
 
void mult_t_plus_dirac(Field &, const Field &)
 
void mult_t_plus_bulk_dirac_thread(int, double *, const double *)
 
void mult_t_minus2_chiral_thread(int, double *, const double *)
 
std::string get_mode() const 
only for Fopr_Overlap 
 
void gm5_dirac_thread(int, double *, const double *)
 
void mult_x_plus(Field &, const Field &)
 
void set_config(Field *U)
setting pointer to the gauge configuration. 
 
void daxpy_thread(int, double *, double, const double *)
 
void gm5_chiral_thread(int, double *, const double *)
 
double flop_count()
returns the flops per site. 
 
void daxpy(Field &, double, const Field &)
 
Fopr_WilsonGeneral(const Fopr_WilsonGeneral &)
 
void D_ex(Field &v, const int ex1, const Field &f, const int ex2)
 
void init(std::string repr)
 
void mult_x_minus1_thread(int, double *, const double *)
 
void mult_y_plus_bulk_thread(int, double *, const double *)
 
void mult_m(int mu, Field_F &, const Field_F &)
 
void mult_x_minus2_thread(int, double *, const double *)
 
Wilson-type fermion field. 
 
std::vector< GammaMatrix > m_GM
gamma matrices. 
 
void mult_t_minus_dirac(Field &, const Field &)
 
void mult_z_plus_bulk_thread(int, double *, const double *)
 
void set_config(unique_ptr< Field_G > &U)
 
void DdagD(Field &w, const Field &f)
 
void mult_y_minus(Field &, const Field &)
 
void mult_y_minus_bulk_thread(int, double *, const double *)
 
void mult_z_minus1_thread(int, double *, const double *)
 
void mult_t_minus1_dirac_thread(int, double *, const double *)
 
void mult_undef(Field &, const Field &f)
 
void mult_t_minus_bulk_chiral_thread(int, double *, const double *)
 
void mult_gm5(Field &v, const Field &f)
gamma_5 multiplication. [31 Mar 2017 H.Matsufuru] 
 
void mult_x_plus1_thread(int, double *, const double *)
 
const Field_G * m_U
gauge configuration. 
 
Field m_w2
temporary fields. 
 
void daypx_thread(int, double *, double, const double *)
 
std::vector< double > m_boundary2
b.c. for each node. 
 
void mult_t_plus2_chiral_thread(int, double *, const double *)
 
void mult_x_minus(Field &, const Field &)
 
void mult_dn(int mu, Field &, const Field &)
 
void mult_t_plus_chiral(Field &, const Field &)
 
void mult_t_minus_chiral(Field &, const Field &)
 
void mult_x_plus_bulk_thread(int, double *, const double *)
 
void clear_thread(int, double *)
 
void mult_t_minus2_dirac_thread(int, double *, const double *)
 
void(Fopr_WilsonGeneral::* m_mult_dag)(Field &, const Field &)
 
void set_mode(std::string mode)
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelev...
 
void mult_y_plus(Field &, const Field &)
 
void mult_y_minus1_thread(int, double *, const double *)
 
void crucial(const char *format,...)
 
void mult_y_minus2_thread(int, double *, const double *)
 
void mult_z_plus2_thread(int, double *, const double *)
 
void(Fopr_WilsonGeneral::* m_mult_t_minus)(Field &, const Field &)
 
void(Fopr_WilsonGeneral::* m_D_ex)(Field &, const int, const Field &, const int)
 
void scal(Field &, double)
 
void scal_thread(int, double *, double)
 
static const std::string class_name
 
void mult_t_plus_bulk_chiral_thread(int, double *, const double *)
 
void gm5_chiral(Field &, const Field &)
 
void set_parameters(const Parameters ¶ms)
 
void mult_z_minus_bulk_thread(int, double *, const double *)
 
void mult_z_plus1_thread(int, double *, const double *)
 
void proj_chiral(Field &w, const int ex1, const Field &v, const int ex2, const int ipm)
 
void Ddag(Field &w, const Field &f)
 
void mult_p(int mu, Field_F &, const Field_F &)
 
std::vector< mult_arg > m_arg
 
void mult_up(int mu, Field &, const Field &)
nearest neighbor hopping term: temporary entry [H.Matsufuru] 
 
int field_nex()
returns the external d.o.f. for which the fermion operator is defined. 
 
void(Fopr_WilsonGeneral::* m_gm5)(Field &, const Field &)
 
void D_ex_dirac(Field &, const int ex1, const Field &, const int ex2)
 
void daypx(Field &, double, const Field &)
 
void D(Field &v, const Field &f)
 
void mult_z_minus(Field &, const Field &)
 
Base class of fermion operator family. 
 
void mult_y_plus1_thread(int, double *, const double *)
 
void mult_t_minus1_chiral_thread(int, double *, const double *)
 
Fopr_WilsonGeneral & operator=(const Fopr_WilsonGeneral &)
 
void mult_t_plus1_dirac_thread(int, double *, const double *)
 
std::vector< int > m_boundary
boundary condition. 
 
void mult_z_plus(Field &, const Field &)
 
void gm5_dirac(Field &, const Field &)
 
void(Fopr_WilsonGeneral::* m_D)(Field &, const Field &)
 
void mult_t_minus_bulk_dirac_thread(int, double *, const double *)
 
void mult_z_minus2_thread(int, double *, const double *)
 
void mult(Field &v, const Field &f)
multiplies fermion operator to a given field (2nd argument) 
 
void D_chiral(Field &, const Field &)