Bridge++  Version 1.5.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
action_G_Plaq_SF.h
Go to the documentation of this file.
1 
14 #ifndef ACTION_G_PLAQ_SF_INCLUDED
15 #define ACTION_G_PLAQ_SF_INCLUDED
16 
17 #include "Action/action.h"
19 
20 #include "IO/bridgeIO.h"
21 using Bridge::vout;
22 
63 class Action_G_Plaq_SF : public Action
64 {
65  public:
66  static const std::string class_name;
67 
68  private:
69  double m_beta;
70 
72  double *m_phi;
74  double *m_phipr;
76  double m_ct;
77 
78  std::string m_label;
79 
83 
84  public:
86  : Action()
87  {
88  m_force_G = Force_G::New("Force_G_Plaq_SF");
89  }
90 
92  {
93  delete m_force_G;
94  }
95 
96  void set_parameters(const Parameters& params);
97  void set_parameters(const double beta,
98  double *phi, double *phipr,
99  const double ct);
100 
101  void set_label(const std::string label)
102  {
103  m_label = label;
104  vout.detailed(m_vl, " label: %s\n", m_label.c_str());
105  }
106 
107  std::string get_label()
108  {
109  return m_label;
110  }
111 
112  void set_config(Field *U)
113  {
114  m_U = (Field_G *)U;
115  }
116 
117  double langevin(RandomNumbers *);
118 
119  double calcH();
120 
121  void force(Field&);
122 
123 #ifdef USE_FACTORY
124  private:
125  static Action *create_object()
126  {
127  return new Action_G_Plaq_SF();
128  }
129 
130  public:
131  static bool register_factory()
132  {
133  return Action::Factory::Register("Action_G_Plaq_SF", create_object);
134  }
135 #endif
136 };
137 #endif
BridgeIO vout
Definition: bridgeIO.cpp:503
void detailed(const char *format,...)
Definition: bridgeIO.cpp:216
void set_parameters(const Parameters &params)
Container of Field-type object.
Definition: field.h:45
Staple construction.
Definition: staple_SF.h:36
std::string m_label
Class for parameters.
Definition: parameters.h:46
Base class of HMC action class family.
Definition: action.h:36
std::string get_label()
HMC action class for plaquette gauge action with SF BC.
SU(N) gauge field.
Definition: field_G.h:38
Base class of gauge force calculation.
Definition: force_G.h:31
double m_ct
SF boundary improvement coefficient for the plaquatte action.
void set_config(Field *U)
setting pointer to the gauge configuration.
double * m_phipr
SF boundary condition at t=Nt.
Bridge::VerboseLevel m_vl
Definition: action.h:75
Base class of random number generators.
Definition: randomNumbers.h:43
static const std::string class_name
void set_label(const std::string label)
double langevin(RandomNumbers *)
Langevis step.
double * m_phi
SF boundary condition at t=0.