Bridge++  Version 1.5.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
fopr_eo.h
Go to the documentation of this file.
1 
14 #ifndef FOPR_EO_INCLUDED
15 #define FOPR_EO_INCLUDED
16 
17 #include "fopr.h"
18 
20 
34 class Fopr_eo : public Fopr
35 {
36  public:
37  virtual ~Fopr_eo() {}
38 
39  // methods for even odd fermion operator
40  virtual void preProp(Field&, Field&, const Field&) = 0;
41  virtual void postProp(Field&, const Field&, const Field&) = 0;
42 
44  virtual void set_config(Field *) = 0;
45  virtual void set_config(unique_ptr<Field_G>&) = 0;
46 
48  // and set the resultant field to the 1st argument.
49  virtual void mult(Field&, const Field&) {}
50 
52  virtual void mult_dag(Field&, const Field&) {}
53 
56  virtual void set_mode(const std::string mode)
57  {
58  vout.general(m_vl, "Fopr_eo: set_mode not implemented.\n");
59  }
60 
61  std::string get_mode() const
62  {
63  vout.general(m_vl, "Fopr_eo: get_mode not implemented.\n");
64  return std::string();
65  }
66 
68  virtual int field_nvol() = 0;
69 
71  virtual int field_nin() = 0;
72 
74  virtual int field_nex() = 0;
75 };
76 #endif
BridgeIO vout
Definition: bridgeIO.cpp:503
virtual int field_nvol()=0
returns the volume for which the fermion operator is defined.
void general(const char *format,...)
Definition: bridgeIO.cpp:197
virtual void postProp(Field &, const Field &, const Field &)=0
Container of Field-type object.
Definition: field.h:45
std::string get_mode() const
only for Fopr_Overlap
Definition: fopr_eo.h:61
virtual void set_config(Field *)=0
setting pointer to the gauge configuration.
Bridge::VerboseLevel m_vl
Definition: fopr.h:127
Base class of fermion operator family.
Definition: fopr_eo.h:34
virtual void set_mode(const std::string mode)
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelev...
Definition: fopr_eo.h:56
virtual int field_nex()=0
returns the external d.o.f. for which the fermion operator is defined.
virtual ~Fopr_eo()
Definition: fopr_eo.h:37
virtual void preProp(Field &, Field &, const Field &)=0
virtual int field_nin()=0
returns the on-site d.o.f. for which the fermion operator is defined.
virtual void mult(Field &, const Field &)
multiplies fermion operator to a given field (2nd argument)
Definition: fopr_eo.h:49
virtual void mult_dag(Field &, const Field &)
hermitian conjugate of mult(Field&, const Field&).
Definition: fopr_eo.h:52
Base class of fermion operator family.
Definition: fopr.h:46