Bridge++  Ver. 1.2.x
 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 
33 class Fopr_eo : public Fopr
34 {
35  public:
36 
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 
48  virtual const Field mult(const Field&) = 0;
49 
51  // *** superficial return statement ***
52  virtual const Field mult_dag(const Field&) { return Field(); }
53 
55  // and set the resultant field to the 1st argument.
56  virtual void mult(Field&, const Field&) {}
57 
59  virtual void mult_dag(Field&, const Field&) {}
60 
63  virtual void set_mode(std::string mode)
64  {
65  vout.general(m_vl, "Fopr_eo: set_mode not implemented.\n");
66  }
67 
68  std::string get_mode() const
69  {
70  vout.general(m_vl, "Fopr_eo: get_mode not implemented.\n");
71  return std::string();
72  }
73 
75  virtual int field_nvol() = 0;
76 
78  virtual int field_nin() = 0;
79 
81  virtual int field_nex() = 0;
82 };
83 #endif
BridgeIO vout
Definition: bridgeIO.cpp:207
virtual int field_nvol()=0
returns the volume for which the fermion operator is defined.
void general(const char *format,...)
Definition: bridgeIO.cpp:38
virtual void postProp(Field &, const Field &, const Field &)=0
Container of Field-type object.
Definition: field.h:37
std::string get_mode() const
Definition: fopr_eo.h:68
virtual void set_config(Field *)=0
setting pointer to the gauge configuration.
Bridge::VerboseLevel m_vl
Definition: fopr.h:99
Base class of fermion operator family.
Definition: fopr_eo.h:33
virtual int field_nex()=0
returns the external d.o.f. for which the fermion operator is defined.
virtual void set_mode(std::string mode)
setting the mode of multiplication if necessary. Default implementation here is just to avoid irrelev...
Definition: fopr_eo.h:63
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:56
virtual void mult_dag(Field &, const Field &)
hermitian conjugate of mult(Field&, const Field&).
Definition: fopr_eo.h:59
Base class of fermion operator family.
Definition: fopr.h:39
virtual const Field mult(const Field &)=0
multiplies fermion operator to a given field and returns the resultant field.
virtual const Field mult_dag(const Field &)
hermitian conjugate of mult(const Field&).
Definition: fopr_eo.h:52