Bridge++  Version 1.5.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Fopr_CloverGeneral Class Reference

Clover general fermion operator. More...

#include <fopr_CloverGeneral.h>

Inheritance diagram for Fopr_CloverGeneral:
Fopr

Public Member Functions

 Fopr_CloverGeneral ()
 
 Fopr_CloverGeneral (const std::string repr)
 
 ~Fopr_CloverGeneral ()
 
void set_parameters (const Parameters &params)
 
void set_parameters (const double kappa_s, const double kappa_t, const double nu_s, const double r_s, const double cSW_s, const double cSW_t, const std::vector< int > bc)
 
void set_config (Field *U)
 setting pointer to the gauge configuration. More...
 
void set_config (unique_ptr< Field_G > &U)
 
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
 only for Fopr_Overlap More...
 
void mult (Field &v, const Field &f)
 multiplies fermion operator to a given field (2nd argument) More...
 
void mult_dag (Field &v, const Field &f)
 hermitian conjugate of mult(Field&, const Field&). More...
 
void D (Field &, const Field &)
 
void Ddag (Field &, const Field &)
 
void DdagD (Field &, const Field &)
 
void DDdag (Field &, const Field &)
 
void H (Field &, const Field &)
 
void mult_gm5 (Field &v, const Field &w)
 gamma_5 multiplication. [31 Mar 2017 H.Matsufuru] More...
 
void mult_up (const int mu, Field &v, const Field &w)
 nearest neighbor hopping term: temporary entry [H.Matsufuru] More...
 
void mult_dn (const int mu, Field &v, const Field &w)
 
void mult_isigma (Field_F &, const Field_F &, const int mu, const int nu)
 
int field_nvol ()
 returns the volume for which the fermion operator is defined. More...
 
int field_nin ()
 returns the on-site d.o.f. for which the fermion operator is defined. More...
 
int field_nex ()
 returns the external d.o.f. for which the fermion operator is defined. More...
 
double flop_count ()
 this returns the number of floating point operations. More...
 
- Public Member Functions inherited from Fopr
 Fopr ()
 
virtual ~Fopr ()
 
void set_parameter_verboselevel (const Bridge::VerboseLevel vl)
 
virtual void mult (Field &, const Field &, const std::string mode)
 execute mult with specified mode (unchanging internal mode). [23 May 2016 H.Matsufuru]. More...
 
virtual void mult_dag (Field &, const Field &, const std::string mode)
 execute mult_dag with specified mode (unchanging internal mode). [23 May 2016 H.Matsufuru]. More...
 
virtual double flop_count (const std::string mode)
 returns the flop in giga unit for a specified mode. [23 May 2016 H.Matsufuru] More...
 

Static Public Attributes

static const std::string class_name = "Fopr_CloverGeneral"
 

Private Member Functions

void init (const std::string repr)
 
void tidyup ()
 

Private Attributes

double m_kappa_s
 spatial hopping parameter More...
 
double m_kappa_t
 temporal hopping parameter More...
 
double m_nu_s
 spatial anisotopy parameter More...
 
double m_r_s
 spatial Wilson parameter More...
 
double m_cSW_s
 spatial clover coefficient More...
 
double m_cSW_t
 temporal clover coefficient More...
 
std::vector< int > m_boundary
 boundary conditions More...
 
std::string m_repr
 gamma matrix representation More...
 
std::string m_mode
 mode of multiplication More...
 
int m_Nvol
 
int m_Ndim
 
int m_Nc
 
int m_Nd
 
int m_NinF
 internal parameters More...
 
Fopr_WilsonGeneralm_fopr_w
 Wilson fermion kernel. More...
 
Fopr_CloverTerm_Generalm_fopr_csw
 Clover term operator. More...
 
const Field_Gm_U
 gauge configuration (pointer) More...
 
Field m_v1
 
Field m_v2
 working field. More...
 

Additional Inherited Members

- Protected Attributes inherited from Fopr
Bridge::VerboseLevel m_vl
 

Detailed Description

Clover general fermion operator.

This class implements Clover General fermion operator, including Clover fermion on anisotropic lattice, T. R. Klassen, Nucl. Phys. B509 391 (1998) QCD-TARO Collab., Nucl. Phys. Proc. Suppl. 83 411 (2000) and relativistic heavy quarks, A. X. El-Khadra et al., Phys. Rev. D 55, 3933 (1997) S. Aoki et al., Prog. Theor. Phys. 109, 383 (2003) N. H. Christ et al., Phys. Rev. D 76, 074505 (2007) [21 Mar 2015 Y.Namekawa]

Definition at line 37 of file fopr_CloverGeneral.h.

Constructor & Destructor Documentation

Fopr_CloverGeneral::Fopr_CloverGeneral ( )
inline

Definition at line 63 of file fopr_CloverGeneral.h.

Fopr_CloverGeneral::Fopr_CloverGeneral ( const std::string  repr)
inline

Definition at line 69 of file fopr_CloverGeneral.h.

Fopr_CloverGeneral::~Fopr_CloverGeneral ( )
inline

Definition at line 75 of file fopr_CloverGeneral.h.

Member Function Documentation

void Fopr_CloverGeneral::D ( Field w,
const Field f 
)

Definition at line 127 of file fopr_CloverGeneral.cpp.

void Fopr_CloverGeneral::Ddag ( Field w,
const Field f 
)

Definition at line 140 of file fopr_CloverGeneral.cpp.

void Fopr_CloverGeneral::DdagD ( Field w,
const Field f 
)

Definition at line 149 of file fopr_CloverGeneral.cpp.

void Fopr_CloverGeneral::DDdag ( Field w,
const Field f 
)

Definition at line 159 of file fopr_CloverGeneral.cpp.

int Fopr_CloverGeneral::field_nex ( )
inlinevirtual

returns the external d.o.f. for which the fermion operator is defined.

Implements Fopr.

Definition at line 170 of file fopr_CloverGeneral.h.

int Fopr_CloverGeneral::field_nin ( )
inlinevirtual

returns the on-site d.o.f. for which the fermion operator is defined.

Implements Fopr.

Definition at line 169 of file fopr_CloverGeneral.h.

int Fopr_CloverGeneral::field_nvol ( )
inlinevirtual

returns the volume for which the fermion operator is defined.

Implements Fopr.

Definition at line 168 of file fopr_CloverGeneral.h.

double Fopr_CloverGeneral::flop_count ( )
virtual

this returns the number of floating point operations.

Reimplemented from Fopr.

Definition at line 185 of file fopr_CloverGeneral.cpp.

std::string Fopr_CloverGeneral::get_mode ( ) const
inlinevirtual

only for Fopr_Overlap

Reimplemented from Fopr.

Definition at line 105 of file fopr_CloverGeneral.h.

void Fopr_CloverGeneral::H ( Field w,
const Field f 
)

Definition at line 169 of file fopr_CloverGeneral.cpp.

void Fopr_CloverGeneral::init ( const std::string  repr)
private

Definition at line 25 of file fopr_CloverGeneral.cpp.

void Fopr_CloverGeneral::mult ( Field ,
const Field  
)
inlinevirtual

multiplies fermion operator to a given field (2nd argument)

Implements Fopr.

Definition at line 110 of file fopr_CloverGeneral.h.

void Fopr_CloverGeneral::mult_dag ( Field ,
const Field  
)
inlinevirtual

hermitian conjugate of mult(Field&, const Field&).

Reimplemented from Fopr.

Definition at line 128 of file fopr_CloverGeneral.h.

void Fopr_CloverGeneral::mult_dn ( const int  mu,
Field v,
const Field w 
)
inlinevirtual

Reimplemented from Fopr.

Definition at line 160 of file fopr_CloverGeneral.h.

void Fopr_CloverGeneral::mult_gm5 ( Field ,
const Field  
)
inlinevirtual

gamma_5 multiplication. [31 Mar 2017 H.Matsufuru]

Reimplemented from Fopr.

Definition at line 150 of file fopr_CloverGeneral.h.

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

Definition at line 177 of file fopr_CloverGeneral.cpp.

void Fopr_CloverGeneral::mult_up ( const int  mu,
Field ,
const Field  
)
inlinevirtual

nearest neighbor hopping term: temporary entry [H.Matsufuru]

Reimplemented from Fopr.

Definition at line 155 of file fopr_CloverGeneral.h.

void Fopr_CloverGeneral::set_config ( Field )
inlinevirtual

setting pointer to the gauge configuration.

Implements Fopr.

Definition at line 86 of file fopr_CloverGeneral.h.

void Fopr_CloverGeneral::set_config ( unique_ptr< Field_G > &  U)
inlinevirtual

Implements Fopr.

Definition at line 93 of file fopr_CloverGeneral.h.

void Fopr_CloverGeneral::set_mode ( const std::string  mode)
inlinevirtual

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

Reimplemented from Fopr.

Definition at line 100 of file fopr_CloverGeneral.h.

void Fopr_CloverGeneral::set_parameters ( const Parameters params)
virtual

Implements Fopr.

Definition at line 56 of file fopr_CloverGeneral.cpp.

void Fopr_CloverGeneral::set_parameters ( const double  kappa_s,
const double  kappa_t,
const double  nu_s,
const double  r_s,
const double  cSW_s,
const double  cSW_t,
const std::vector< int >  bc 
)

Definition at line 88 of file fopr_CloverGeneral.cpp.

void Fopr_CloverGeneral::tidyup ( )
private

Definition at line 48 of file fopr_CloverGeneral.cpp.

Member Data Documentation

const std::string Fopr_CloverGeneral::class_name = "Fopr_CloverGeneral"
static

Definition at line 40 of file fopr_CloverGeneral.h.

std::vector<int> Fopr_CloverGeneral::m_boundary
private

boundary conditions

Definition at line 49 of file fopr_CloverGeneral.h.

double Fopr_CloverGeneral::m_cSW_s
private

spatial clover coefficient

Definition at line 47 of file fopr_CloverGeneral.h.

double Fopr_CloverGeneral::m_cSW_t
private

temporal clover coefficient

Definition at line 48 of file fopr_CloverGeneral.h.

Fopr_CloverTerm_General* Fopr_CloverGeneral::m_fopr_csw
private

Clover term operator.

Definition at line 56 of file fopr_CloverGeneral.h.

Fopr_WilsonGeneral* Fopr_CloverGeneral::m_fopr_w
private

Wilson fermion kernel.

Definition at line 55 of file fopr_CloverGeneral.h.

double Fopr_CloverGeneral::m_kappa_s
private

spatial hopping parameter

Definition at line 43 of file fopr_CloverGeneral.h.

double Fopr_CloverGeneral::m_kappa_t
private

temporal hopping parameter

Definition at line 44 of file fopr_CloverGeneral.h.

std::string Fopr_CloverGeneral::m_mode
private

mode of multiplication

Definition at line 51 of file fopr_CloverGeneral.h.

int Fopr_CloverGeneral::m_Nc
private

Definition at line 53 of file fopr_CloverGeneral.h.

int Fopr_CloverGeneral::m_Nd
private

Definition at line 53 of file fopr_CloverGeneral.h.

int Fopr_CloverGeneral::m_Ndim
private

Definition at line 53 of file fopr_CloverGeneral.h.

int Fopr_CloverGeneral::m_NinF
private

internal parameters

Definition at line 53 of file fopr_CloverGeneral.h.

double Fopr_CloverGeneral::m_nu_s
private

spatial anisotopy parameter

Definition at line 45 of file fopr_CloverGeneral.h.

int Fopr_CloverGeneral::m_Nvol
private

Definition at line 53 of file fopr_CloverGeneral.h.

double Fopr_CloverGeneral::m_r_s
private

spatial Wilson parameter

Definition at line 46 of file fopr_CloverGeneral.h.

std::string Fopr_CloverGeneral::m_repr
private

gamma matrix representation

Definition at line 50 of file fopr_CloverGeneral.h.

const Field_G* Fopr_CloverGeneral::m_U
private

gauge configuration (pointer)

Definition at line 57 of file fopr_CloverGeneral.h.

Field Fopr_CloverGeneral::m_v1
private

Definition at line 60 of file fopr_CloverGeneral.h.

Field Fopr_CloverGeneral::m_v2
private

working field.

Definition at line 60 of file fopr_CloverGeneral.h.


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