Bridge++  Ver. 1.3.x
action_F_Rational_Frame_SF.h
Go to the documentation of this file.
1 
14 #ifndef ACTION_FRATIONAL_FRAME_SF_INCLUDED
15 #define ACTION_FRATIONAL_FRAME_SF_INCLUDED
16 
17 #include "action.h"
18 #include "fopr_Rational.h"
19 #include "force_F_Rational.h"
20 
21 #include "field_G_SF.h"
22 #include "field_F_SF.h"
23 
24 #include "bridgeIO.h"
25 using Bridge::vout;
26 
28 
39 //- parameters class
41 {
42  public:
44 };
45 //- end
46 
48  public:
49  static const std::string class_name;
50 
51  private:
52  std::string m_label; // label of action
53 
57 
59 
61 
62  public:
64  Action_F_Rational_frame_SF(Fopr *fopr_langev, Fopr *fopr_H,
65  Force *fopr_force_MD)
66  {
67  m_fopr_langev = fopr_langev;
68  m_fopr_H = fopr_H;
69  m_fopr_force_MD = fopr_force_MD;
70  setup();
71  }
72 
74  unique_ptr<Force>& fopr_force_MD)
75  {
76  m_fopr_langev = fopr_langev.get();
77  m_fopr_H = fopr_H.get();
78  m_fopr_force_MD = fopr_force_MD.get();
79  setup();
80  }
81 
84  {
85  }
86 
88  void set_parameters(const Parameters& params);
89 
91  void set_label(std::string label)
92  {
93  m_label = label;
94  vout.detailed(m_vl, " label: %s\n", m_label.c_str());
95  }
96 
98  std::string get_label()
99  {
100  return m_label;
101  }
102 
104  void set_config(Field *U)
105  {
106  m_U = U;
107  m_fopr_langev->set_config(U);
108  m_fopr_H->set_config(U);
109  m_fopr_force_MD->set_config(U);
110  }
111 
113  double langevin(RandomNumbers *);
114 
116  double calcH();
117 
119  //const Field force();
120  void force(Field&);
121 
122  private:
123 
125  void setup();
126 
128  void tidyup();
129 };
130 #endif
BridgeIO vout
Definition: bridgeIO.cpp:278
void detailed(const char *format,...)
Definition: bridgeIO.cpp:82
action class for RHMC, with externally constructed Fopr_Rational.
double calcH()
calculation of Hamiltonian.
void force(Field &)
returns the force for updating conjugate momentum.
void set_label(std::string label)
set the label of action.
virtual void set_config(Field *)=0
setting pointer to the gauge configuration.
Container of Field-type object.
Definition: field.h:39
virtual void set_config(Field *)=0
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
Action_F_Rational_frame_SF(Fopr *fopr_langev, Fopr *fopr_H, Force *fopr_force_MD)
constructor requires pointers to Fopr and Force instances.
void tidyup()
destruct class instances constructed in setup()
pointer get() const
Action_F_Rational_frame_SF(unique_ptr< Fopr > &fopr_langev, unique_ptr< Fopr > &fopr_H, unique_ptr< Force > &fopr_force_MD)
static const std::string class_name
~Action_F_Rational_frame_SF()
destructor. constructed instances are deconstructed in tydyup().
Bridge::VerboseLevel m_vl
Definition: action.h:81
Base class of random number generators.
Definition: randomNumbers.h:39
void set_parameters(const Parameters &params)
setting parameters and creating class instances.
std::string get_label()
returns the label of action.
double langevin(RandomNumbers *)
Langevin step called at the beginning of HMC.
void setup()
creating instances. called from set_parameters().
Base class of fermion operator family.
Definition: fopr.h:49
void set_config(Field *U)
setting gauge configuration.