Bridge++  Ver. 2.0.2
Imp::Fopr_CloverTerm_eo Class Reference

#include <fopr_CloverTerm_eo_impl.h>

Inheritance diagram for Imp::Fopr_CloverTerm_eo:
AFopr< Field >

Public Member Functions

DEPRECATED Fopr_CloverTerm_eo (std::string repr)
 
 Fopr_CloverTerm_eo (const Parameters &params)
 standard constructor. More...
 
 ~Fopr_CloverTerm_eo ()
 
void set_parameters (const Parameters &params)
 sets parameters by a Parameter object: to be implemented in a subclass. More...
 
void set_parameters (const double kappa, const double cSW, const std::vector< int > bc)
 
void get_parameters (Parameters &params) const
 gets parameters by a Parameter object: to be implemented in a subclass. More...
 
void set_config (Field *U)
 sets the gauge configuration. More...
 
void set_mode (const std::string mode)
 setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelevant call. More...
 
std::string get_mode () const
 
void mult (Field &v, const Field &f)
 return D = D^dag = 1-f_ee or 1-f_oo More...
 
void mult_dag (Field &v, const Field &f)
 hermitian conjugate of mult. More...
 
void mult_isigma (Field_F &, const Field_F &, const int mu, const int nu)
 
void D (Field &v, const Field &f, const int ieo)
 multiplies 1-csw kappa sigma_{mu nu} F_{mu nu} More...
 
void D_dirac (Field &v, const Field &f, const int ieo)
 explicit implementation for Dirac representation (for Imp-version). More...
 
void D_chiral (Field &v, const Field &f, const int ieo)
 explicit implementation for Chiral representation (for Imp-version). More...
 
void mult_csw_inv (Field &, const Field &, const int ieo)
 multiplies [ 1-csw kappa sigma_{mu nu} F_{mu nu} ]^{-1} More...
 
void mult_csw_inv_dirac (Field &, const Field &, const int ieo)
 
void mult_csw_inv_chiral (Field &, const Field &, const int ieo)
 
int field_nvol ()
 returns the volume of the fermion field. More...
 
int field_nin ()
 returns the on-site degree of freedom of the fermion field. More...
 
int field_nex ()
 returns the external degree of freedom of the fermion field. More...
 
double flop_count ()
 returns number of floating point operations. More...
 
- Public Member Functions inherited from AFopr< Field >
 AFopr ()
 
virtual ~AFopr ()
 
virtual std::string get_mode () const
 returns the current mult mode. More...
 
virtual void mult (Field &, const Field &, const std::string mode)
 executes mult with specified mode (unchanging internal mode). More...
 
virtual void mult_dag (Field &, const Field &, const std::string mode)
 executes mult_dag with specified mode (unchanging internal mode). More...
 
virtual void mult_gm5 (Field &, const Field &)
 multiplies gamma_5 matrix. More...
 
virtual void mult_up (int mu, Field &, const Field &)
 upward nearest neighbor hopping term. More...
 
virtual void mult_dn (int mu, Field &, const Field &)
 downward nearest neighbor hopping term. More...
 
virtual void normalize_fprop (Field &)
 normalize propagator if necessary (default: do nothing) More...
 
virtual void normalize_fopr (Field &)
 normalize propagator if necessary (default: do nothing) More...
 
virtual double flop_count (const std::string mode)
 returns the flops per site for specified mode. More...
 
virtual bool needs_convert ()
 returns true if additional field conversion is needed. More...
 
virtual void convert (Field &, const Field &)
 converts a Field object into other format if necessary. More...
 
virtual void reverse (Field &, const Field &)
 converts an alternative field to a Field object. More...
 

Static Public Attributes

static const std::string class_name = "Imp::Fopr_CloverTerm_eo"
 

Private Member Functions

void init (const std::string repr)
 
void init (const Parameters &params)
 
void tidyup ()
 
void setup ()
 
void setup_gamma_matrices ()
 
void set_config_omp (Field *U)
 
void set_config_impl (Field *U)
 
void solve_csw_inv ()
 
void set_csw ()
 
void set_csw_dirac ()
 explicit implementation for Dirac representation (for Imp-version). More...
 
void set_csw_chiral ()
 explicit implementation for Chiral representation (for Imp-version). More...
 
void mult_csw (Field_F &, const Field_F &, const int ieo)
 
void set_fieldstrength (Field_G &, const int, const int)
 
int sg_index (const int mu, const int nu)
 

Private Attributes

double m_kappa
 
double m_cSW
 
std::vector< int > m_boundary
 
std::string m_repr
 
Bridge::VerboseLevel m_vl
 
std::string m_mode
 
int m_Nvol
 
int m_Nvol2
 
int m_Ndim
 
int m_Nc
 
int m_Nd
 
int m_Ndm2
 
int m_NinF
 
std::vector< GammaMatrixm_GM
 Gamma Matrix and Sigma_{mu,nu} = -i [Gamma_mu, Gamma_nu] /2. More...
 
std::vector< GammaMatrixm_SG
 
Index_eo m_idx
 
Staple_eom_staple
 
ShiftField_eom_shift_eo
 
Solver_CGm_solver
 
Field_G m_Ueo
 even-odd gauge configuration More...
 
Field_G m_T
 m_T = 1 - kappa c_SW sigma F / 2 More...
 
Field_F m_Fee_inv
 
Field_F m_Foo_inv
 inverse of site-diagonal part More...
 
Field_F m_w1
 
Field_F m_w2
 working vectors More...
 
Field_G m_Ft
 working vectors More...
 
Field_G m_Cup
 
Field_G m_Cdn
 
Field_G m_Umu
 working vectors More...
 
Field_G m_ut1
 
Field_G m_ut2
 
Field_G m_ut3
 working vectors More...
 

Additional Inherited Members

- Static Protected Attributes inherited from AFopr< Field >
static const std::string class_name
 

Detailed Description

Definition at line 64 of file fopr_CloverTerm_eo_impl.h.

Constructor & Destructor Documentation

◆ Fopr_CloverTerm_eo() [1/2]

DEPRECATED Imp::Fopr_CloverTerm_eo::Fopr_CloverTerm_eo ( std::string  repr)
inline

Definition at line 107 of file fopr_CloverTerm_eo_impl.h.

◆ Fopr_CloverTerm_eo() [2/2]

Imp::Fopr_CloverTerm_eo::Fopr_CloverTerm_eo ( const Parameters params)
inline

standard constructor.

Definition at line 110 of file fopr_CloverTerm_eo_impl.h.

◆ ~Fopr_CloverTerm_eo()

Imp::Fopr_CloverTerm_eo::~Fopr_CloverTerm_eo ( )
inline

Definition at line 112 of file fopr_CloverTerm_eo_impl.h.

Member Function Documentation

◆ D()

void Imp::Fopr_CloverTerm_eo::D ( Field v,
const Field f,
const int  ieo 
)

multiplies 1-csw kappa sigma_{mu nu} F_{mu nu}

Definition at line 521 of file fopr_CloverTerm_eo_impl.cpp.

◆ D_chiral()

void Imp::Fopr_CloverTerm_eo::D_chiral ( Field v,
const Field f,
const int  ieo 
)

explicit implementation for Chiral representation (for Imp-version).

Definition at line 591 of file fopr_CloverTerm_eo_impl.cpp.

◆ D_dirac()

void Imp::Fopr_CloverTerm_eo::D_dirac ( Field v,
const Field f,
const int  ieo 
)

explicit implementation for Dirac representation (for Imp-version).

Definition at line 537 of file fopr_CloverTerm_eo_impl.cpp.

◆ field_nex()

int Imp::Fopr_CloverTerm_eo::field_nex ( )
inlinevirtual

returns the external degree of freedom of the fermion field.

Implements AFopr< Field >.

Definition at line 156 of file fopr_CloverTerm_eo_impl.h.

◆ field_nin()

int Imp::Fopr_CloverTerm_eo::field_nin ( )
inlinevirtual

returns the on-site degree of freedom of the fermion field.

Implements AFopr< Field >.

Definition at line 154 of file fopr_CloverTerm_eo_impl.h.

◆ field_nvol()

int Imp::Fopr_CloverTerm_eo::field_nvol ( )
inlinevirtual

returns the volume of the fermion field.

Implements AFopr< Field >.

Definition at line 152 of file fopr_CloverTerm_eo_impl.h.

◆ flop_count()

double Imp::Fopr_CloverTerm_eo::flop_count ( )
virtual

returns number of floating point operations.

Reimplemented from AFopr< Field >.

Definition at line 897 of file fopr_CloverTerm_eo_impl.cpp.

◆ get_mode()

std::string Imp::Fopr_CloverTerm_eo::get_mode ( ) const
inline

Definition at line 124 of file fopr_CloverTerm_eo_impl.h.

◆ get_parameters()

void Imp::Fopr_CloverTerm_eo::get_parameters ( Parameters params) const
virtual

gets parameters by a Parameter object: to be implemented in a subclass.

Reimplemented from AFopr< Field >.

Definition at line 207 of file fopr_CloverTerm_eo_impl.cpp.

◆ init() [1/2]

void Imp::Fopr_CloverTerm_eo::init ( const Parameters params)
private

Definition at line 37 of file fopr_CloverTerm_eo_impl.cpp.

◆ init() [2/2]

void Imp::Fopr_CloverTerm_eo::init ( const std::string  repr)
private

Definition at line 73 of file fopr_CloverTerm_eo_impl.cpp.

◆ mult()

void Imp::Fopr_CloverTerm_eo::mult ( Field v,
const Field f 
)
virtual

return D = D^dag = 1-f_ee or 1-f_oo

Reimplemented from AFopr< Field >.

Definition at line 305 of file fopr_CloverTerm_eo_impl.cpp.

◆ mult_csw()

void Imp::Fopr_CloverTerm_eo::mult_csw ( Field_F ,
const Field_F ,
const int  ieo 
)
private

◆ mult_csw_inv()

void Imp::Fopr_CloverTerm_eo::mult_csw_inv ( Field v,
const Field w,
const int  ieo 
)

multiplies [ 1-csw kappa sigma_{mu nu} F_{mu nu} ]^{-1}

Definition at line 394 of file fopr_CloverTerm_eo_impl.cpp.

◆ mult_csw_inv_chiral()

void Imp::Fopr_CloverTerm_eo::mult_csw_inv_chiral ( Field v,
const Field w,
const int  ieo 
)

Definition at line 463 of file fopr_CloverTerm_eo_impl.cpp.

◆ mult_csw_inv_dirac()

void Imp::Fopr_CloverTerm_eo::mult_csw_inv_dirac ( Field v,
const Field w,
const int  ieo 
)

Definition at line 407 of file fopr_CloverTerm_eo_impl.cpp.

◆ mult_dag()

void Imp::Fopr_CloverTerm_eo::mult_dag ( Field ,
const Field  
)
virtual

hermitian conjugate of mult.

Reimplemented from AFopr< Field >.

Definition at line 321 of file fopr_CloverTerm_eo_impl.cpp.

◆ mult_isigma()

void Imp::Fopr_CloverTerm_eo::mult_isigma ( Field_F v,
const Field_F w,
const int  mu,
const int  nu 
)

Definition at line 644 of file fopr_CloverTerm_eo_impl.cpp.

◆ set_config()

void Imp::Fopr_CloverTerm_eo::set_config ( Field )
virtual

sets the gauge configuration.

Implements AFopr< Field >.

Definition at line 254 of file fopr_CloverTerm_eo_impl.cpp.

◆ set_config_impl()

void Imp::Fopr_CloverTerm_eo::set_config_impl ( Field U)
private

Definition at line 283 of file fopr_CloverTerm_eo_impl.cpp.

◆ set_config_omp()

void Imp::Fopr_CloverTerm_eo::set_config_omp ( Field U)
private

Definition at line 271 of file fopr_CloverTerm_eo_impl.cpp.

◆ set_csw()

void Imp::Fopr_CloverTerm_eo::set_csw ( )
private

Definition at line 657 of file fopr_CloverTerm_eo_impl.cpp.

◆ set_csw_chiral()

void Imp::Fopr_CloverTerm_eo::set_csw_chiral ( )
private

explicit implementation for Chiral representation (for Imp-version).

Definition at line 746 of file fopr_CloverTerm_eo_impl.cpp.

◆ set_csw_dirac()

void Imp::Fopr_CloverTerm_eo::set_csw_dirac ( )
private

explicit implementation for Dirac representation (for Imp-version).

Definition at line 672 of file fopr_CloverTerm_eo_impl.cpp.

◆ set_fieldstrength()

void Imp::Fopr_CloverTerm_eo::set_fieldstrength ( Field_G Fst,
const int  mu,
const int  nu 
)
private

Definition at line 839 of file fopr_CloverTerm_eo_impl.cpp.

◆ set_mode()

void Imp::Fopr_CloverTerm_eo::set_mode ( const std::string  mode)
virtual

setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelevant call.

Reimplemented from AFopr< Field >.

Definition at line 293 of file fopr_CloverTerm_eo_impl.cpp.

◆ set_parameters() [1/2]

void Imp::Fopr_CloverTerm_eo::set_parameters ( const double  kappa,
const double  cSW,
const std::vector< int >  bc 
)

Definition at line 182 of file fopr_CloverTerm_eo_impl.cpp.

◆ set_parameters() [2/2]

void Imp::Fopr_CloverTerm_eo::set_parameters ( const Parameters params)
virtual

sets parameters by a Parameter object: to be implemented in a subclass.

Reimplemented from AFopr< Field >.

Definition at line 153 of file fopr_CloverTerm_eo_impl.cpp.

◆ setup()

void Imp::Fopr_CloverTerm_eo::setup ( )
private

Definition at line 98 of file fopr_CloverTerm_eo_impl.cpp.

◆ setup_gamma_matrices()

void Imp::Fopr_CloverTerm_eo::setup_gamma_matrices ( )
private

Definition at line 219 of file fopr_CloverTerm_eo_impl.cpp.

◆ sg_index()

int Imp::Fopr_CloverTerm_eo::sg_index ( const int  mu,
const int  nu 
)
inlineprivate

Definition at line 190 of file fopr_CloverTerm_eo_impl.h.

◆ solve_csw_inv()

void Imp::Fopr_CloverTerm_eo::solve_csw_inv ( )
private

Definition at line 329 of file fopr_CloverTerm_eo_impl.cpp.

◆ tidyup()

void Imp::Fopr_CloverTerm_eo::tidyup ( )
private

Definition at line 144 of file fopr_CloverTerm_eo_impl.cpp.

Member Data Documentation

◆ class_name

const std::string Imp::Fopr_CloverTerm_eo::class_name = "Imp::Fopr_CloverTerm_eo"
static

Definition at line 69 of file fopr_CloverTerm_eo_impl.h.

◆ m_boundary

std::vector<int> Imp::Fopr_CloverTerm_eo::m_boundary
private

Definition at line 75 of file fopr_CloverTerm_eo_impl.h.

◆ m_Cdn

Field_G Imp::Fopr_CloverTerm_eo::m_Cdn
private

Definition at line 100 of file fopr_CloverTerm_eo_impl.h.

◆ m_cSW

double Imp::Fopr_CloverTerm_eo::m_cSW
private

Definition at line 74 of file fopr_CloverTerm_eo_impl.h.

◆ m_Cup

Field_G Imp::Fopr_CloverTerm_eo::m_Cup
private

Definition at line 100 of file fopr_CloverTerm_eo_impl.h.

◆ m_Fee_inv

Field_F Imp::Fopr_CloverTerm_eo::m_Fee_inv
private

Definition at line 97 of file fopr_CloverTerm_eo_impl.h.

◆ m_Foo_inv

Field_F Imp::Fopr_CloverTerm_eo::m_Foo_inv
private

inverse of site-diagonal part

Definition at line 97 of file fopr_CloverTerm_eo_impl.h.

◆ m_Ft

Field_G Imp::Fopr_CloverTerm_eo::m_Ft
private

working vectors

Definition at line 99 of file fopr_CloverTerm_eo_impl.h.

◆ m_GM

std::vector<GammaMatrix> Imp::Fopr_CloverTerm_eo::m_GM
private

Gamma Matrix and Sigma_{mu,nu} = -i [Gamma_mu, Gamma_nu] /2.

Definition at line 87 of file fopr_CloverTerm_eo_impl.h.

◆ m_idx

Index_eo Imp::Fopr_CloverTerm_eo::m_idx
private

Definition at line 89 of file fopr_CloverTerm_eo_impl.h.

◆ m_kappa

double Imp::Fopr_CloverTerm_eo::m_kappa
private

Definition at line 73 of file fopr_CloverTerm_eo_impl.h.

◆ m_mode

std::string Imp::Fopr_CloverTerm_eo::m_mode
private

Definition at line 80 of file fopr_CloverTerm_eo_impl.h.

◆ m_Nc

int Imp::Fopr_CloverTerm_eo::m_Nc
private

Definition at line 83 of file fopr_CloverTerm_eo_impl.h.

◆ m_Nd

int Imp::Fopr_CloverTerm_eo::m_Nd
private

Definition at line 83 of file fopr_CloverTerm_eo_impl.h.

◆ m_Ndim

int Imp::Fopr_CloverTerm_eo::m_Ndim
private

Definition at line 82 of file fopr_CloverTerm_eo_impl.h.

◆ m_Ndm2

int Imp::Fopr_CloverTerm_eo::m_Ndm2
private

Definition at line 83 of file fopr_CloverTerm_eo_impl.h.

◆ m_NinF

int Imp::Fopr_CloverTerm_eo::m_NinF
private

Definition at line 84 of file fopr_CloverTerm_eo_impl.h.

◆ m_Nvol

int Imp::Fopr_CloverTerm_eo::m_Nvol
private

Definition at line 82 of file fopr_CloverTerm_eo_impl.h.

◆ m_Nvol2

int Imp::Fopr_CloverTerm_eo::m_Nvol2
private

Definition at line 82 of file fopr_CloverTerm_eo_impl.h.

◆ m_repr

std::string Imp::Fopr_CloverTerm_eo::m_repr
private

Definition at line 76 of file fopr_CloverTerm_eo_impl.h.

◆ m_SG

std::vector<GammaMatrix> Imp::Fopr_CloverTerm_eo::m_SG
private

Definition at line 87 of file fopr_CloverTerm_eo_impl.h.

◆ m_shift_eo

ShiftField_eo* Imp::Fopr_CloverTerm_eo::m_shift_eo
private

Definition at line 91 of file fopr_CloverTerm_eo_impl.h.

◆ m_solver

Solver_CG* Imp::Fopr_CloverTerm_eo::m_solver
private

Definition at line 92 of file fopr_CloverTerm_eo_impl.h.

◆ m_staple

Staple_eo* Imp::Fopr_CloverTerm_eo::m_staple
private

Definition at line 90 of file fopr_CloverTerm_eo_impl.h.

◆ m_T

Field_G Imp::Fopr_CloverTerm_eo::m_T
private

m_T = 1 - kappa c_SW sigma F / 2

Definition at line 95 of file fopr_CloverTerm_eo_impl.h.

◆ m_Ueo

Field_G Imp::Fopr_CloverTerm_eo::m_Ueo
private

even-odd gauge configuration

Definition at line 94 of file fopr_CloverTerm_eo_impl.h.

◆ m_Umu

Field_G Imp::Fopr_CloverTerm_eo::m_Umu
private

working vectors

Definition at line 100 of file fopr_CloverTerm_eo_impl.h.

◆ m_ut1

Field_G Imp::Fopr_CloverTerm_eo::m_ut1
private

Definition at line 101 of file fopr_CloverTerm_eo_impl.h.

◆ m_ut2

Field_G Imp::Fopr_CloverTerm_eo::m_ut2
private

Definition at line 101 of file fopr_CloverTerm_eo_impl.h.

◆ m_ut3

Field_G Imp::Fopr_CloverTerm_eo::m_ut3
private

working vectors

Definition at line 101 of file fopr_CloverTerm_eo_impl.h.

◆ m_vl

Bridge::VerboseLevel Imp::Fopr_CloverTerm_eo::m_vl
private

Definition at line 77 of file fopr_CloverTerm_eo_impl.h.

◆ m_w1

Field_F Imp::Fopr_CloverTerm_eo::m_w1
private

Definition at line 98 of file fopr_CloverTerm_eo_impl.h.

◆ m_w2

Field_F Imp::Fopr_CloverTerm_eo::m_w2
private

working vectors

Definition at line 98 of file fopr_CloverTerm_eo_impl.h.


The documentation for this class was generated from the following files: