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

#include <fopr_WilsonGeneral_impl.h>

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

Public Member Functions

 Fopr_WilsonGeneral (const Parameters &params)
 standard constructor. More...
 
DEPRECATED Fopr_WilsonGeneral ()
 
DEPRECATED Fopr_WilsonGeneral (const std::string repr)
 
 ~Fopr_WilsonGeneral ()
 
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_s, const double kappa_t, const double nu_s, const double r_s, 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 &w)
 multiplies fermion operator to a given field. More...
 
void mult_dag (Field &v, const Field &w)
 hermitian conjugate of mult. More...
 
void mult (Field &v, const Field &w, const std::string mod)
 executes mult with specified mode (unchanging internal mode). More...
 
void mult_dag (Field &v, const Field &w, const std::string mode)
 executes mult_dag with specified mode (unchanging internal mode). More...
 
void mult_gm5 (Field &v, const Field &w)
 multiplies gamma_5 matrix. More...
 
void D (Field &v, const Field &w)
 
void Ddag (Field &v, const Field &w)
 
void DdagD (Field &v, const Field &w)
 
void DDdag (Field &v, const Field &w)
 
void H (Field &v, const Field &w)
 
void mult_up (const int mu, Field &, const Field &)
 upward nearest neighbor hopping term. More...
 
void mult_dn (const int mu, Field &, const Field &)
 downward nearest neighbor hopping term. More...
 
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 the 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 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_WilsonGeneral"
 

Private Member Functions

 Fopr_WilsonGeneral (const Fopr_WilsonGeneral &)
 
Fopr_WilsonGeneraloperator= (const Fopr_WilsonGeneral &)
 
void init (const std::string repr)
 obsolete initial setup. More...
 
void init (const Parameters &params)
 standard initial setup. More...
 
void setup ()
 initial setup main. More...
 
void tidyup ()
 final clean-up. More...
 
void mult_gm5_chiral (Field &, const Field &)
 
void mult_gm5_dirac (Field &, const Field &)
 
void D_chiral (Field &, const int ex1, const Field &, const int ex2)
 
void D_dirac (Field &, const int ex1, const Field &, const int ex2)
 
void mult_xp (Field &, const Field &)
 
void mult_xm (Field &, const Field &)
 
void mult_yp (Field &, const Field &)
 
void mult_ym (Field &, const Field &)
 
void mult_zp (Field &, const Field &)
 
void mult_zm (Field &, const Field &)
 
void mult_tp_dirac (Field &, const Field &)
 
void mult_tm_dirac (Field &, const Field &)
 
void mult_tp_chiral (Field &, const Field &)
 
void mult_tm_chiral (Field &, const Field &)
 
void daxpy (Field &, const double, const Field &)
 
void clear (Field &)
 

Private Attributes

double m_kappa_s
 
double m_kappa_t
 
double m_nu_s
 
double m_r_s
 
std::vector< int > m_boundary
 boundary condition More...
 
std::string m_repr
 gamma-matrix representation More...
 
Bridge::VerboseLevel m_vl
 verbose level More...
 
std::string m_mode
 mult mode More...
 
int m_Nc
 
int m_Nd
 
int m_Nvc
 
int m_Ndf
 
int m_Nx
 
int m_Ny
 
int m_Nz
 
int m_Nt
 
int m_Nvol
 
int m_Ndim
 
const Field_Gm_U
 gauge configuration. More...
 
std::vector< double > m_boundary_each_node
 b.c. on each node. More...
 
double * vcp1_xp
 arrays for communication buffer. More...
 
double * vcp2_xp
 
double * vcp1_xm
 
double * vcp2_xm
 
double * vcp1_yp
 
double * vcp2_yp
 
double * vcp1_ym
 
double * vcp2_ym
 
double * vcp1_zp
 
double * vcp2_zp
 
double * vcp1_zm
 
double * vcp2_zm
 
double * vcp1_tp
 
double * vcp2_tp
 
double * vcp1_tm
 
double * vcp2_tm
 
Field m_w1
 
Field m_w2
 working fields More...
 

Additional Inherited Members

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

Detailed Description

Definition at line 38 of file fopr_WilsonGeneral_impl.h.

Constructor & Destructor Documentation

◆ Fopr_WilsonGeneral() [1/4]

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

standard constructor.

Definition at line 72 of file fopr_WilsonGeneral_impl.h.

◆ Fopr_WilsonGeneral() [2/4]

DEPRECATED Imp::Fopr_WilsonGeneral::Fopr_WilsonGeneral ( )
inline

Definition at line 75 of file fopr_WilsonGeneral_impl.h.

◆ Fopr_WilsonGeneral() [3/4]

DEPRECATED Imp::Fopr_WilsonGeneral::Fopr_WilsonGeneral ( const std::string  repr)
inline

Definition at line 78 of file fopr_WilsonGeneral_impl.h.

◆ ~Fopr_WilsonGeneral()

Imp::Fopr_WilsonGeneral::~Fopr_WilsonGeneral ( )
inline

Definition at line 80 of file fopr_WilsonGeneral_impl.h.

◆ Fopr_WilsonGeneral() [4/4]

Imp::Fopr_WilsonGeneral::Fopr_WilsonGeneral ( const Fopr_WilsonGeneral )
inlineprivate

Definition at line 128 of file fopr_WilsonGeneral_impl.h.

Member Function Documentation

◆ clear()

void Imp::Fopr_WilsonGeneral::clear ( Field w)
private

Definition at line 517 of file fopr_WilsonGeneral_impl.cpp.

◆ D()

void Imp::Fopr_WilsonGeneral::D ( Field v,
const Field w 
)

Definition at line 425 of file fopr_WilsonGeneral_impl.cpp.

◆ D_chiral()

void Imp::Fopr_WilsonGeneral::D_chiral ( Field w,
const int  ex1,
const Field f,
const int  ex2 
)
private

Definition at line 495 of file fopr_WilsonGeneral_impl.cpp.

◆ D_dirac()

void Imp::Fopr_WilsonGeneral::D_dirac ( Field w,
const int  ex1,
const Field f,
const int  ex2 
)
private

Definition at line 473 of file fopr_WilsonGeneral_impl.cpp.

◆ daxpy()

void Imp::Fopr_WilsonGeneral::daxpy ( Field v,
const double  fac,
const Field w 
)
private

Definition at line 539 of file fopr_WilsonGeneral_impl.cpp.

◆ Ddag()

void Imp::Fopr_WilsonGeneral::Ddag ( Field v,
const Field w 
)

Definition at line 436 of file fopr_WilsonGeneral_impl.cpp.

◆ DdagD()

void Imp::Fopr_WilsonGeneral::DdagD ( Field v,
const Field w 
)

Definition at line 445 of file fopr_WilsonGeneral_impl.cpp.

◆ DDdag()

void Imp::Fopr_WilsonGeneral::DDdag ( Field v,
const Field w 
)

Definition at line 455 of file fopr_WilsonGeneral_impl.cpp.

◆ field_nex()

int Imp::Fopr_WilsonGeneral::field_nex ( )
inlinevirtual

returns the external degree of freedom of the fermion field.

Implements AFopr< Field >.

Definition at line 122 of file fopr_WilsonGeneral_impl.h.

◆ field_nin()

int Imp::Fopr_WilsonGeneral::field_nin ( )
inlinevirtual

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

Implements AFopr< Field >.

Definition at line 121 of file fopr_WilsonGeneral_impl.h.

◆ field_nvol()

int Imp::Fopr_WilsonGeneral::field_nvol ( )
inlinevirtual

returns the volume of the fermion field.

Implements AFopr< Field >.

Definition at line 120 of file fopr_WilsonGeneral_impl.h.

◆ flop_count()

double Imp::Fopr_WilsonGeneral::flop_count ( )
virtual

returns the number of floating point operations.

Reimplemented from AFopr< Field >.

Definition at line 1879 of file fopr_WilsonGeneral_impl.cpp.

◆ get_mode()

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

Definition at line 94 of file fopr_WilsonGeneral_impl.h.

◆ get_parameters()

void Imp::Fopr_WilsonGeneral::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 249 of file fopr_WilsonGeneral_impl.cpp.

◆ H()

void Imp::Fopr_WilsonGeneral::H ( Field v,
const Field w 
)

Definition at line 465 of file fopr_WilsonGeneral_impl.cpp.

◆ init() [1/2]

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

standard initial setup.

Definition at line 39 of file fopr_WilsonGeneral_impl.cpp.

◆ init() [2/2]

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

obsolete initial setup.

Definition at line 73 of file fopr_WilsonGeneral_impl.cpp.

◆ mult() [1/2]

void Imp::Fopr_WilsonGeneral::mult ( Field ,
const Field  
)
virtual

multiplies fermion operator to a given field.

Reimplemented from AFopr< Field >.

Definition at line 282 of file fopr_WilsonGeneral_impl.cpp.

◆ mult() [2/2]

void Imp::Fopr_WilsonGeneral::mult ( Field ,
const Field ,
const std::string  mode 
)
virtual

executes mult with specified mode (unchanging internal mode).

Reimplemented from AFopr< Field >.

Definition at line 324 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_dag() [1/2]

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

hermitian conjugate of mult.

Reimplemented from AFopr< Field >.

Definition at line 303 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_dag() [2/2]

void Imp::Fopr_WilsonGeneral::mult_dag ( Field ,
const Field ,
const std::string  mode 
)
virtual

executes mult_dag with specified mode (unchanging internal mode).

Reimplemented from AFopr< Field >.

Definition at line 346 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_dn()

void Imp::Fopr_WilsonGeneral::mult_dn ( const int  mu,
Field ,
const Field  
)
virtual

downward nearest neighbor hopping term.

Reimplemented from AFopr< Field >.

Definition at line 391 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_gm5()

void Imp::Fopr_WilsonGeneral::mult_gm5 ( Field ,
const Field  
)
virtual

multiplies gamma_5 matrix.

Reimplemented from AFopr< Field >.

Definition at line 414 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_gm5_chiral()

void Imp::Fopr_WilsonGeneral::mult_gm5_chiral ( Field v,
const Field w 
)
private

Definition at line 584 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_gm5_dirac()

void Imp::Fopr_WilsonGeneral::mult_gm5_dirac ( Field v,
const Field w 
)
private

Definition at line 563 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_tm_chiral()

void Imp::Fopr_WilsonGeneral::mult_tm_chiral ( Field v,
const Field w 
)
private

Definition at line 1785 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_tm_dirac()

void Imp::Fopr_WilsonGeneral::mult_tm_dirac ( Field v,
const Field w 
)
private

Definition at line 1601 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_tp_chiral()

void Imp::Fopr_WilsonGeneral::mult_tp_chiral ( Field v,
const Field w 
)
private

Definition at line 1697 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_tp_dirac()

void Imp::Fopr_WilsonGeneral::mult_tp_dirac ( Field v,
const Field w 
)
private

Definition at line 1513 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_up()

void Imp::Fopr_WilsonGeneral::mult_up ( const int  mu,
Field ,
const Field  
)
virtual

upward nearest neighbor hopping term.

Reimplemented from AFopr< Field >.

Definition at line 368 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_xm()

void Imp::Fopr_WilsonGeneral::mult_xm ( Field v,
const Field w 
)
private

Definition at line 747 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_xp()

void Imp::Fopr_WilsonGeneral::mult_xp ( Field v,
const Field w 
)
private

Definition at line 605 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_ym()

void Imp::Fopr_WilsonGeneral::mult_ym ( Field v,
const Field w 
)
private

Definition at line 1048 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_yp()

void Imp::Fopr_WilsonGeneral::mult_yp ( Field v,
const Field w 
)
private

Definition at line 899 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_zm()

void Imp::Fopr_WilsonGeneral::mult_zm ( Field v,
const Field w 
)
private

Definition at line 1356 of file fopr_WilsonGeneral_impl.cpp.

◆ mult_zp()

void Imp::Fopr_WilsonGeneral::mult_zp ( Field v,
const Field w 
)
private

Definition at line 1205 of file fopr_WilsonGeneral_impl.cpp.

◆ operator=()

Fopr_WilsonGeneral& Imp::Fopr_WilsonGeneral::operator= ( const Fopr_WilsonGeneral )
private

◆ set_config()

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

sets the gauge configuration.

Implements AFopr< Field >.

Definition at line 263 of file fopr_WilsonGeneral_impl.cpp.

◆ set_mode()

void Imp::Fopr_WilsonGeneral::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 272 of file fopr_WilsonGeneral_impl.cpp.

◆ set_parameters() [1/2]

void Imp::Fopr_WilsonGeneral::set_parameters ( const double  kappa_s,
const double  kappa_t,
const double  nu_s,
const double  r_s,
const std::vector< int >  bc 
)

Definition at line 208 of file fopr_WilsonGeneral_impl.cpp.

◆ set_parameters() [2/2]

void Imp::Fopr_WilsonGeneral::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 175 of file fopr_WilsonGeneral_impl.cpp.

◆ setup()

void Imp::Fopr_WilsonGeneral::setup ( )
private

initial setup main.

Definition at line 96 of file fopr_WilsonGeneral_impl.cpp.

◆ tidyup()

void Imp::Fopr_WilsonGeneral::tidyup ( )
private

final clean-up.

Definition at line 150 of file fopr_WilsonGeneral_impl.cpp.

Member Data Documentation

◆ class_name

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

Definition at line 41 of file fopr_WilsonGeneral_impl.h.

◆ m_boundary

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

boundary condition

Definition at line 47 of file fopr_WilsonGeneral_impl.h.

◆ m_boundary_each_node

std::vector<double> Imp::Fopr_WilsonGeneral::m_boundary_each_node
private

b.c. on each node.

Definition at line 60 of file fopr_WilsonGeneral_impl.h.

◆ m_kappa_s

double Imp::Fopr_WilsonGeneral::m_kappa_s
private

Definition at line 45 of file fopr_WilsonGeneral_impl.h.

◆ m_kappa_t

double Imp::Fopr_WilsonGeneral::m_kappa_t
private

Definition at line 45 of file fopr_WilsonGeneral_impl.h.

◆ m_mode

std::string Imp::Fopr_WilsonGeneral::m_mode
private

mult mode

Definition at line 51 of file fopr_WilsonGeneral_impl.h.

◆ m_Nc

int Imp::Fopr_WilsonGeneral::m_Nc
private

Definition at line 54 of file fopr_WilsonGeneral_impl.h.

◆ m_Nd

int Imp::Fopr_WilsonGeneral::m_Nd
private

Definition at line 54 of file fopr_WilsonGeneral_impl.h.

◆ m_Ndf

int Imp::Fopr_WilsonGeneral::m_Ndf
private

Definition at line 54 of file fopr_WilsonGeneral_impl.h.

◆ m_Ndim

int Imp::Fopr_WilsonGeneral::m_Ndim
private

Definition at line 56 of file fopr_WilsonGeneral_impl.h.

◆ m_Nt

int Imp::Fopr_WilsonGeneral::m_Nt
private

Definition at line 55 of file fopr_WilsonGeneral_impl.h.

◆ m_nu_s

double Imp::Fopr_WilsonGeneral::m_nu_s
private

Definition at line 46 of file fopr_WilsonGeneral_impl.h.

◆ m_Nvc

int Imp::Fopr_WilsonGeneral::m_Nvc
private

Definition at line 54 of file fopr_WilsonGeneral_impl.h.

◆ m_Nvol

int Imp::Fopr_WilsonGeneral::m_Nvol
private

Definition at line 56 of file fopr_WilsonGeneral_impl.h.

◆ m_Nx

int Imp::Fopr_WilsonGeneral::m_Nx
private

Definition at line 55 of file fopr_WilsonGeneral_impl.h.

◆ m_Ny

int Imp::Fopr_WilsonGeneral::m_Ny
private

Definition at line 55 of file fopr_WilsonGeneral_impl.h.

◆ m_Nz

int Imp::Fopr_WilsonGeneral::m_Nz
private

Definition at line 55 of file fopr_WilsonGeneral_impl.h.

◆ m_r_s

double Imp::Fopr_WilsonGeneral::m_r_s
private

Definition at line 46 of file fopr_WilsonGeneral_impl.h.

◆ m_repr

std::string Imp::Fopr_WilsonGeneral::m_repr
private

gamma-matrix representation

Definition at line 48 of file fopr_WilsonGeneral_impl.h.

◆ m_U

const Field_G* Imp::Fopr_WilsonGeneral::m_U
private

gauge configuration.

Definition at line 58 of file fopr_WilsonGeneral_impl.h.

◆ m_vl

Bridge::VerboseLevel Imp::Fopr_WilsonGeneral::m_vl
private

verbose level

Definition at line 49 of file fopr_WilsonGeneral_impl.h.

◆ m_w1

Field Imp::Fopr_WilsonGeneral::m_w1
private

Definition at line 68 of file fopr_WilsonGeneral_impl.h.

◆ m_w2

Field Imp::Fopr_WilsonGeneral::m_w2
private

working fields

Definition at line 68 of file fopr_WilsonGeneral_impl.h.

◆ vcp1_tm

double * Imp::Fopr_WilsonGeneral::vcp1_tm
private

Definition at line 66 of file fopr_WilsonGeneral_impl.h.

◆ vcp1_tp

double* Imp::Fopr_WilsonGeneral::vcp1_tp
private

Definition at line 66 of file fopr_WilsonGeneral_impl.h.

◆ vcp1_xm

double * Imp::Fopr_WilsonGeneral::vcp1_xm
private

Definition at line 63 of file fopr_WilsonGeneral_impl.h.

◆ vcp1_xp

double* Imp::Fopr_WilsonGeneral::vcp1_xp
private

arrays for communication buffer.

Definition at line 63 of file fopr_WilsonGeneral_impl.h.

◆ vcp1_ym

double * Imp::Fopr_WilsonGeneral::vcp1_ym
private

Definition at line 64 of file fopr_WilsonGeneral_impl.h.

◆ vcp1_yp

double* Imp::Fopr_WilsonGeneral::vcp1_yp
private

Definition at line 64 of file fopr_WilsonGeneral_impl.h.

◆ vcp1_zm

double * Imp::Fopr_WilsonGeneral::vcp1_zm
private

Definition at line 65 of file fopr_WilsonGeneral_impl.h.

◆ vcp1_zp

double* Imp::Fopr_WilsonGeneral::vcp1_zp
private

Definition at line 65 of file fopr_WilsonGeneral_impl.h.

◆ vcp2_tm

double * Imp::Fopr_WilsonGeneral::vcp2_tm
private

Definition at line 66 of file fopr_WilsonGeneral_impl.h.

◆ vcp2_tp

double * Imp::Fopr_WilsonGeneral::vcp2_tp
private

Definition at line 66 of file fopr_WilsonGeneral_impl.h.

◆ vcp2_xm

double * Imp::Fopr_WilsonGeneral::vcp2_xm
private

Definition at line 63 of file fopr_WilsonGeneral_impl.h.

◆ vcp2_xp

double * Imp::Fopr_WilsonGeneral::vcp2_xp
private

Definition at line 63 of file fopr_WilsonGeneral_impl.h.

◆ vcp2_ym

double * Imp::Fopr_WilsonGeneral::vcp2_ym
private

Definition at line 64 of file fopr_WilsonGeneral_impl.h.

◆ vcp2_yp

double * Imp::Fopr_WilsonGeneral::vcp2_yp
private

Definition at line 64 of file fopr_WilsonGeneral_impl.h.

◆ vcp2_zm

double * Imp::Fopr_WilsonGeneral::vcp2_zm
private

Definition at line 65 of file fopr_WilsonGeneral_impl.h.

◆ vcp2_zp

double * Imp::Fopr_WilsonGeneral::vcp2_zp
private

Definition at line 65 of file fopr_WilsonGeneral_impl.h.


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