Bridge++
Ver. 2.0.2
|
Base class of fermion operator family. More...
#include <afopr_eo.h>
Public Member Functions | |
virtual | ~AFopr_eo () |
virtual void | preProp (AFIELD &, AFIELD &, const AFIELD &)=0 |
virtual void | postProp (AFIELD &, const AFIELD &, const AFIELD &)=0 |
virtual void | set_config (Field *)=0 |
setting pointer to the gauge configuration. More... | |
virtual void | mult (AFIELD &, const AFIELD &) |
multiplies fermion operator to a given field (2nd argument) More... | |
virtual void | mult_dag (AFIELD &, const AFIELD &) |
hermitian conjugate of mult(Field&, const Field&). More... | |
virtual void | mult (AFIELD &, const AFIELD &, const std::string) |
executes mult with specified mode (unchanging internal mode). More... | |
virtual void | mult_dag (AFIELD &, const AFIELD &, const std::string) |
executes mult_dag with specified mode (unchanging internal mode). 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 |
returns the current mult mode. 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 AFopr< AFIELD > | |
AFopr () | |
virtual | ~AFopr () |
virtual void | set_parameters (const Parameters ¶ms) |
sets parameters by a Parameter object: to be implemented in a subclass. More... | |
virtual void | get_parameters (Parameters ¶ms) const |
gets parameters by a Parameter object: to be implemented in a subclass. More... | |
virtual void | mult_gm5 (AFIELD &, const AFIELD &) |
multiplies gamma_5 matrix. More... | |
virtual void | mult_up (int mu, AFIELD &, const AFIELD &) |
upward nearest neighbor hopping term. More... | |
virtual void | mult_dn (int mu, AFIELD &, const AFIELD &) |
downward nearest neighbor hopping term. More... | |
virtual void | normalize_fprop (AFIELD &) |
normalize propagator if necessary (default: do nothing) More... | |
virtual void | normalize_fopr (AFIELD &) |
normalize propagator if necessary (default: do nothing) More... | |
virtual double | flop_count () |
returns the number of floating point operations. 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 (AFIELD &, const Field &) |
converts a Field object into other format if necessary. More... | |
virtual void | reverse (Field &, const AFIELD &) |
converts an alternative field to a Field object. More... | |
Static Protected Attributes | |
static const std::string | class_name |
Static Protected Attributes inherited from AFopr< AFIELD > | |
static const std::string | class_name |
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 35 of file afopr_eo.h.
Definition at line 41 of file afopr_eo.h.
returns the external d.o.f. for which the fermion operator is defined.
Implements AFopr< AFIELD >.
Implemented in AFopr_Domainwall_eo< AFIELD >, Imp::Fopr_Wilson_eo, Org::Fopr_Wilson_eo, Fopr_Clover_eo, Fopr_Smeared_eo, AFopr_Smeared_eo< AFIELD >, and Fopr_Staggered_eo.
returns the on-site d.o.f. for which the fermion operator is defined.
Implements AFopr< AFIELD >.
Implemented in AFopr_Domainwall_eo< AFIELD >, Imp::Fopr_Wilson_eo, Org::Fopr_Wilson_eo, Fopr_Clover_eo, Fopr_Smeared_eo, AFopr_Smeared_eo< AFIELD >, and Fopr_Staggered_eo.
returns the volume for which the fermion operator is defined.
Implements AFopr< AFIELD >.
Implemented in AFopr_Domainwall_eo< AFIELD >, Imp::Fopr_Wilson_eo, Fopr_Clover_eo, Org::Fopr_Wilson_eo, Fopr_Smeared_eo, AFopr_Smeared_eo< AFIELD >, and Fopr_Staggered_eo.
returns the current mult mode.
Reimplemented from AFopr< AFIELD >.
Reimplemented in AFopr_Smeared_eo< AFIELD >.
Definition at line 68 of file afopr_eo.h.
|
inlinevirtual |
multiplies fermion operator to a given field (2nd argument)
Reimplemented from AFopr< AFIELD >.
Reimplemented in Fopr_Staggered_eo, Imp::Fopr_Wilson_eo, Fopr_Clover_eo, Fopr_Smeared_eo, Org::Fopr_Wilson_eo, AFopr_Domainwall_eo< AFIELD >, and AFopr_Smeared_eo< AFIELD >.
Definition at line 52 of file afopr_eo.h.
|
inlinevirtual |
executes mult with specified mode (unchanging internal mode).
Reimplemented from AFopr< AFIELD >.
Reimplemented in Fopr_Staggered_eo, Imp::Fopr_Wilson_eo, Org::Fopr_Wilson_eo, and AFopr_Domainwall_eo< AFIELD >.
Definition at line 57 of file afopr_eo.h.
|
inlinevirtual |
hermitian conjugate of mult(Field&, const Field&).
Reimplemented from AFopr< AFIELD >.
Reimplemented in Fopr_Staggered_eo, Imp::Fopr_Wilson_eo, Fopr_Clover_eo, Fopr_Smeared_eo, Org::Fopr_Wilson_eo, AFopr_Domainwall_eo< AFIELD >, and AFopr_Smeared_eo< AFIELD >.
Definition at line 55 of file afopr_eo.h.
|
inlinevirtual |
executes mult_dag with specified mode (unchanging internal mode).
Reimplemented from AFopr< AFIELD >.
Reimplemented in Fopr_Staggered_eo, Imp::Fopr_Wilson_eo, and Org::Fopr_Wilson_eo.
Definition at line 59 of file afopr_eo.h.
setting pointer to the gauge configuration.
Implements AFopr< AFIELD >.
Implemented in AFopr_Domainwall_eo< AFIELD >, Fopr_Clover_eo, Imp::Fopr_Wilson_eo, Org::Fopr_Wilson_eo, Fopr_Smeared_eo, AFopr_Smeared_eo< AFIELD >, and Fopr_Staggered_eo.
|
inlinevirtual |
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelevant call.
Reimplemented from AFopr< AFIELD >.
Reimplemented in AFopr_Domainwall_eo< AFIELD >, Org::Fopr_Wilson_eo, Fopr_Smeared_eo, AFopr_Smeared_eo< AFIELD >, Imp::Fopr_Wilson_eo, Fopr_Clover_eo, and Fopr_Staggered_eo.
Definition at line 63 of file afopr_eo.h.
Definition at line 38 of file afopr_eo.h.