Bridge++  Ver. 1.3.x
action_F_Standard_lex.h
Go to the documentation of this file.
1 
14 #ifndef ACTION_F_STANDARD_LEX_INCLUDED
15 #define ACTION_F_STANDARD_LEX_INCLUDED
16 
17 #include "action.h"
18 #include "fprop.h"
19 
20 #include "bridgeIO.h"
21 using Bridge::vout;
22 
24 
36 {
37  public:
38  static const std::string class_name;
39 
40  private:
44  std::string m_label;
45 
48 
50 
51 
52  public:
54  Fopr *fopr, Force *fopr_force,
55  Fprop *fprop_MD, Fprop *fprop_H)
56  : Action(),
57  m_fopr(fopr), m_fopr_force(fopr_force),
58  m_fprop_MD(fprop_MD), m_fprop_H(fprop_H)
59  {
61  }
62 
64  unique_ptr<Fopr>& fopr, unique_ptr<Force>& fopr_force,
65  unique_ptr<Fprop>& fprop_MD, unique_ptr<Fprop>& fprop_H)
66  : Action(),
67  m_fopr(fopr.get()), m_fopr_force(fopr_force.get()),
68  m_fprop_MD(fprop_MD.get()), m_fprop_H(fprop_H.get())
69  {
71  }
72 
74  {
75  // delete m_fprop;
76  }
77 
78  void set_parameters(const Parameters&);
79  void set_parameters();
80 
81  void set_label(std::string label)
82  {
83  m_label = label;
84  vout.detailed(m_vl, " label: %s\n", m_label.c_str());
85  }
86 
87  std::string get_label()
88  {
89  return m_label;
90  }
91 
92  void set_config(Field *U);
93 
94  double langevin(RandomNumbers *);
95 
96  double calcH();
97 
98  void force(Field&);
99 };
100 #endif
BridgeIO vout
Definition: bridgeIO.cpp:278
void set_config(Field *U)
setting pointer to the gauge configuration.
void detailed(const char *format,...)
Definition: bridgeIO.cpp:82
Action_F_Standard_lex(unique_ptr< Fopr > &fopr, unique_ptr< Force > &fopr_force, unique_ptr< Fprop > &fprop_MD, unique_ptr< Fprop > &fprop_H)
Definition: fprop.h:20
Container of Field-type object.
Definition: field.h:39
double calcH()
calculate Hamiltonian of this action term.
double langevin(RandomNumbers *)
Langevis step.
Base class of fermion force calculation.
Definition: force.h:31
Class for parameters.
Definition: parameters.h:38
Base class of HMC action class family.
Definition: action.h:42
Bridge::VerboseLevel m_vl
Definition: action.h:81
Base class of random number generators.
Definition: randomNumbers.h:39
void force(Field &)
returns force for molcular dynamical update of conjugate momenta.
Base class of fermion operator family.
Definition: fopr.h:49
Standard fermion action for HMC.
Action_F_Standard_lex(Fopr *fopr, Force *fopr_force, Fprop *fprop_MD, Fprop *fprop_H)
static const std::string class_name
void set_label(std::string label)