Bridge++  Ver. 2.0.2
Fopr_Smeared Class Reference

smeared fermion operator. More...

#include <fopr_Smeared.h>

Inheritance diagram for Fopr_Smeared:
AFopr< Field >

Public Member Functions

 Fopr_Smeared (Fopr *fopr, Director_Smear *dr_smear)
 constructor requires Fopr and Director_Smear objects More...
 
 Fopr_Smeared (Fopr *fopr, Director_Smear *dr_smear, const Parameters &params)
 
void set_parameters (const Parameters &)
 sets parameters by a Parameter object: to be implemented in a subclass. More...
 
void get_parameters (Parameters &) const
 gets parameters by a Parameter object: to be implemented in a subclass. More...
 
void set_config (Field *U)
 set pointer to original thin link variable More...
 
void mult (Field &v, const Field &f)
 multiply smeared fermion operator More...
 
void mult_dag (Field &v, const Field &f)
 multiply smeared fermion operator More...
 
void set_mode (const std::string mode)
 set the mode of fermion operator More...
 
std::string get_mode () const
 
void mult_up (const int mu, Field &v, const Field &w)
 upward nearest neighbor hopping term. More...
 
void mult_dn (const int mu, Field &v, const Field &w)
 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 ()
 this 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 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 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 = "Fopr_Smeared"
 

Private Attributes

Bridge::VerboseLevel m_vl
 
Foprm_fopr
 
Director_Smearm_dr_smear
 

Additional Inherited Members

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

Detailed Description

smeared fermion operator.

This class construct a smeared fermon operator for a given base fermion operator together with smearing director. Both of them must be constructed beforehand outside this class and given to the constructor. Smearing of link configuration is triggered by call of set_config(), which calls set_config() of the smearing director and then gets the pointer to the smeared config. to set it as the config. of base fermion operator. When mult() is called, this class just call the mult() of base class. [24 Dec 2011 H.Matsufuru] unique_ptr is introduced to avoid memory leaks [21 Mar 2015 Y.Namekawa]

Definition at line 41 of file fopr_Smeared.h.

Constructor & Destructor Documentation

◆ Fopr_Smeared() [1/2]

Fopr_Smeared::Fopr_Smeared ( Fopr fopr,
Director_Smear dr_smear 
)
inline

constructor requires Fopr and Director_Smear objects

Definition at line 54 of file fopr_Smeared.h.

◆ Fopr_Smeared() [2/2]

Fopr_Smeared::Fopr_Smeared ( Fopr fopr,
Director_Smear dr_smear,
const Parameters params 
)
inline

Definition at line 57 of file fopr_Smeared.h.

Member Function Documentation

◆ field_nex()

int Fopr_Smeared::field_nex ( )
inlinevirtual

returns the external degree of freedom of the fermion field.

Implements AFopr< Field >.

Definition at line 105 of file fopr_Smeared.h.

◆ field_nin()

int Fopr_Smeared::field_nin ( )
inlinevirtual

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

Implements AFopr< Field >.

Definition at line 104 of file fopr_Smeared.h.

◆ field_nvol()

int Fopr_Smeared::field_nvol ( )
inlinevirtual

returns the volume of the fermion field.

Implements AFopr< Field >.

Definition at line 103 of file fopr_Smeared.h.

◆ flop_count()

double Fopr_Smeared::flop_count ( )
virtual

this returns the number of floating point operations.

Reimplemented from AFopr< Field >.

Definition at line 54 of file fopr_Smeared.cpp.

◆ get_mode()

std::string Fopr_Smeared::get_mode ( ) const
inline

Definition at line 88 of file fopr_Smeared.h.

◆ get_parameters()

void Fopr_Smeared::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 35 of file fopr_Smeared.cpp.

◆ mult()

void Fopr_Smeared::mult ( Field v,
const Field f 
)
inlinevirtual

multiply smeared fermion operator

Reimplemented from AFopr< Field >.

Definition at line 71 of file fopr_Smeared.h.

◆ mult_dag()

void Fopr_Smeared::mult_dag ( Field v,
const Field f 
)
inlinevirtual

multiply smeared fermion operator

Reimplemented from AFopr< Field >.

Definition at line 77 of file fopr_Smeared.h.

◆ mult_dn()

void Fopr_Smeared::mult_dn ( const int  mu,
Field ,
const Field  
)
inlinevirtual

downward nearest neighbor hopping term.

Reimplemented from AFopr< Field >.

Definition at line 98 of file fopr_Smeared.h.

◆ mult_up()

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

upward nearest neighbor hopping term.

Reimplemented from AFopr< Field >.

Definition at line 93 of file fopr_Smeared.h.

◆ set_config()

void Fopr_Smeared::set_config ( Field U)
virtual

set pointer to original thin link variable

Implements AFopr< Field >.

Definition at line 42 of file fopr_Smeared.cpp.

◆ set_mode()

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

set the mode of fermion operator

Reimplemented from AFopr< Field >.

Definition at line 83 of file fopr_Smeared.h.

◆ set_parameters()

void Fopr_Smeared::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 25 of file fopr_Smeared.cpp.

Member Data Documentation

◆ class_name

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

Definition at line 44 of file fopr_Smeared.h.

◆ m_dr_smear

Director_Smear* Fopr_Smeared::m_dr_smear
private

Definition at line 50 of file fopr_Smeared.h.

◆ m_fopr

Fopr* Fopr_Smeared::m_fopr
private

Definition at line 49 of file fopr_Smeared.h.

◆ m_vl

Bridge::VerboseLevel Fopr_Smeared::m_vl
private

Definition at line 47 of file fopr_Smeared.h.


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