108 return std::string();
133 typedef Fopr *(*ProductCreator_noarg)();
134 typedef Fopr *(*ProductCreator_fopr)(
Fopr *fopr);
135 typedef Fopr *(*ProductCreator_fopr_director)(
Fopr *fopr,
Director *director);
136 typedef Fopr *(*ProductCreator_string)(
const std::string& arg);
145 ProductCreator_noarg p = Factory_noarg::Find(subtype);
147 return p ? (*p)() : 0;
152 ProductCreator_fopr p = Factory_fopr::Find(subtype);
154 return p ? (*p)(fopr) : 0;
159 ProductCreator_fopr p = Factory_fopr::Find(subtype);
161 return p ? (*p)(fopr.
get()) : 0;
166 ProductCreator_fopr_director p = Factory_fopr_director::Find(subtype);
168 return p ? (*p)(fopr, director) : 0;
173 ProductCreator_fopr_director p = Factory_fopr_director::Find(subtype);
175 return p ? (*p)(fopr.
get(), director.
get()) : 0;
180 ProductCreator_string p = Factory_string::Find(subtype);
182 return p ? (*p)(arg) : 0;
void general(const char *format,...)
virtual void set_config(Field *)=0
setting pointer to the gauge configuration.
Container of Field-type object.
virtual void mult_gm5(Field &, const Field &)
gamma_5 multiplication. [31 Mar 2017 H.Matsufuru]
void set_parameter_verboselevel(const Bridge::VerboseLevel vl)
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].
virtual void mult_dn(int mu, Field &, const Field &)
virtual int field_nin()=0
returns the on-site d.o.f. for which the fermion operator is defined.
Manager of commonly used data object in HMC.
virtual void mult(Field &, const Field &, const std::string mode)
execute mult with specified mode (unchanging internal mode). [23 May 2016 H.Matsufuru].
Bridge::VerboseLevel m_vl
virtual double flop_count()
returns the flops per site.
virtual std::string get_mode() const
only for Fopr_Overlap
virtual int field_nex()=0
returns the external d.o.f. for which the fermion operator is defined.
Common parameter class: provides parameters as singleton.
virtual void set_parameters(const Parameters &)=0
virtual void mult_up(int mu, Field &, const Field &)
nearest neighbor hopping term: temporary entry [H.Matsufuru]
virtual double flop_count(const std::string mode)
returns the flops per site for specified mode. [23 May 2016 H.Matsufuru]
Fopr & operator=(const Fopr &)
void crucial(const char *format,...)
virtual void mult(Field &, const Field &)=0
multiplies fermion operator to a given field (2nd argument)
virtual void set_mode(std::string mode)
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelev...
std::string IdentifierType
Factory template class.
virtual void mult_dag(Field &, const Field &)
hermitian conjugate of mult(Field&, const Field&).
Base class of fermion operator family.
virtual int field_nvol()=0
returns the volume for which the fermion operator is defined.