Bridge++  Ver. 1.2.x
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
action_F_Standard.h
Go to the documentation of this file.
1 
14 #ifndef ACTION_F_STANDARD_INCLUDED
15 #define ACTION_F_STANDARD_INCLUDED
16 
17 #include <valarray>
18 #include "action.h"
19 #include "solver.h"
20 
21 #include "bridgeIO.h"
22 using Bridge::vout;
23 
25 
35 class Action_F_Standard : public Action
36 {
37  public:
38  static const std::string class_name;
39 
40  private:
44  std::string m_label;
46 
48 
51 
53 
54  public:
55 
56  Action_F_Standard(Fopr *fopr, Force *fopr_force)
57  : Action(), m_fopr(fopr), m_fopr_force(fopr_force)
58  {
60  }
61 
63  {
64  delete m_solver;
65  }
66 
67  void set_parameters(const Parameters&);
68  void set_parameters();
69 
70  void set_label(std::string label)
71  {
72  m_label = label;
73  vout.detailed(m_vl, " label: %s\n", m_label.c_str());
74  }
75 
76  std::string get_label()
77  {
78  return m_label;
79  }
80 
81  void set_config(Field *U)
82  {
83  m_U = U;
84  m_fopr->set_config(U);
86  }
87 
88  void notify_linkv()
89  {
90  m_status_linkv = 0;
91  }
92 
93  double langevin(RandomNumbers *);
94 
95  double calcH();
96 
97  const Field force();
98 };
99 #endif
BridgeIO vout
Definition: bridgeIO.cpp:207
void set_label(std::string label)
void detailed(const char *format,...)
Definition: bridgeIO.cpp:50
Standard fermion action for HMC.
virtual void set_config(Field *)=0
setting pointer to the gauge configuration.
void set_config(Field *U)
setting pointer to the gauge configuration.
Container of Field-type object.
Definition: field.h:37
virtual void set_config(Field *)=0
static const std::string class_name
RandomNumbers * m_rand
Base class of fermion force calculation.
Definition: force.h:34
double langevin(RandomNumbers *)
Langevis step.
std::string get_label()
Class for parameters.
Definition: parameters.h:40
Base class of HMC action class family.
Definition: action.h:35
Action_F_Standard(Fopr *fopr, Force *fopr_force)
const Field force()
returns force for molcular dynamical update of conjugate momenta.
Base class for linear solver class family.
Definition: solver.h:37
Bridge::VerboseLevel m_vl
Definition: action.h:64
Base class of random number generators.
Definition: randomNumbers.h:40
void notify_linkv()
to be called when gauge configuration is updated.
Base class of fermion operator family.
Definition: fopr.h:39
double calcH()
calculate Hamiltonian of this action term.