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

Base class of fermion operator family. More...

#include <fopr_eo.h>

Inheritance diagram for Fopr_eo:
Fopr Fopr_Clover_eo Fopr_Smeared_eo Imp::Fopr_Wilson_eo Org::Fopr_Wilson_eo

Public Member Functions

virtual ~Fopr_eo ()
 
virtual void preProp (Field &, Field &, const Field &)=0
 
virtual void postProp (Field &, const Field &, const Field &)=0
 
virtual void set_config (Field *)=0
 setting pointer to the gauge configuration. More...
 
virtual void set_config (unique_ptr< Field_G > &)=0
 
virtual void mult (Field &, const Field &)
 multiplies fermion operator to a given field (2nd argument) More...
 
virtual void mult_dag (Field &, const Field &)
 hermitian conjugate of mult(Field&, const Field&). More...
 
virtual 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...
 
virtual int field_nvol ()=0
 returns the volume for which the fermion operator is defined. More...
 
virtual int field_nin ()=0
 returns the on-site d.o.f. for which the fermion operator is defined. More...
 
virtual int field_nex ()=0
 returns the external d.o.f. for which the fermion operator is defined. More...
 
- Public Member Functions inherited from Fopr
 Fopr ()
 
virtual ~Fopr ()
 
virtual void set_parameters (const Parameters &)=0
 
void set_parameter_verboselevel (const Bridge::VerboseLevel vl)
 
virtual void mult_gm5 (Field &, const Field &)
 gamma_5 multiplication. [31 Mar 2017 H.Matsufuru] More...
 
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 void mult_up (const int mu, Field &, const Field &)
 nearest neighbor hopping term: temporary entry [H.Matsufuru] More...
 
virtual void mult_dn (const int mu, Field &, const Field &)
 
virtual double flop_count ()
 returns the flop in giga unit 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...
 

Additional Inherited Members

- Protected Attributes inherited from Fopr
Bridge::VerboseLevel m_vl
 

Detailed Description

Base class of fermion operator family.

In Bridge-OF, the fermion operator implies an operator which transforms a field to other field, irrespective of physical formulation. This class defines the interface of the fermion operators. At present, void functions mult(v,w) and mult_dag(v,w) is not purely virtual, because some of subclass have not implemented them yet. [20 Dec 2011 H.Matsufuru] unique_ptr is introduced to avoid memory leaks [21 Mar 2015 Y.Namekawa]

Definition at line 34 of file fopr_eo.h.

Constructor & Destructor Documentation

virtual Fopr_eo::~Fopr_eo ( )
inlinevirtual

Definition at line 37 of file fopr_eo.h.

Member Function Documentation

virtual int Fopr_eo::field_nex ( )
pure virtual

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

Implements Fopr.

Implemented in Fopr_Clover_eo, Imp::Fopr_Wilson_eo, Org::Fopr_Wilson_eo, and Fopr_Smeared_eo.

virtual int Fopr_eo::field_nin ( )
pure virtual

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

Implements Fopr.

Implemented in Fopr_Clover_eo, Imp::Fopr_Wilson_eo, Org::Fopr_Wilson_eo, and Fopr_Smeared_eo.

virtual int Fopr_eo::field_nvol ( )
pure virtual

returns the volume for which the fermion operator is defined.

Implements Fopr.

Implemented in Fopr_Clover_eo, Imp::Fopr_Wilson_eo, Org::Fopr_Wilson_eo, and Fopr_Smeared_eo.

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

only for Fopr_Overlap

Reimplemented from Fopr.

Reimplemented in Fopr_Smeared_eo, Org::Fopr_Wilson_eo, and Imp::Fopr_Wilson_eo.

Definition at line 61 of file fopr_eo.h.

virtual void Fopr_eo::mult ( Field ,
const Field  
)
inlinevirtual

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

Implements Fopr.

Reimplemented in Fopr_Clover_eo, Org::Fopr_Wilson_eo, Imp::Fopr_Wilson_eo, and Fopr_Smeared_eo.

Definition at line 49 of file fopr_eo.h.

virtual void Fopr_eo::mult_dag ( Field ,
const Field  
)
inlinevirtual

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

Reimplemented from Fopr.

Reimplemented in Fopr_Clover_eo, Org::Fopr_Wilson_eo, Imp::Fopr_Wilson_eo, and Fopr_Smeared_eo.

Definition at line 52 of file fopr_eo.h.

virtual void Fopr_eo::postProp ( Field ,
const Field ,
const Field  
)
pure virtual
virtual void Fopr_eo::preProp ( Field ,
Field ,
const Field  
)
pure virtual
virtual void Fopr_eo::set_config ( Field )
pure virtual

setting pointer to the gauge configuration.

Implements Fopr.

Implemented in Org::Fopr_Wilson_eo, Imp::Fopr_Wilson_eo, Fopr_Clover_eo, and Fopr_Smeared_eo.

virtual void Fopr_eo::set_config ( unique_ptr< Field_G > &  )
pure virtual
virtual void Fopr_eo::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.

Reimplemented in Fopr_Smeared_eo, Org::Fopr_Wilson_eo, Imp::Fopr_Wilson_eo, and Fopr_Clover_eo.

Definition at line 56 of file fopr_eo.h.


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