Bridge++  Ver. 1.2.x
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
action_F_Standard_SF.h
Go to the documentation of this file.
1 
14 #ifndef ACTION_FSTANDARD_SF_INCLUDED
15 #define ACTION_FSTANDARD_SF_INCLUDED
16 
17 #include "action.h"
18 #include "solver.h"
19 
20 #include "field_G_SF.h"
21 #include "field_F_SF.h"
22 
23 #include "bridgeIO.h"
24 using Bridge::vout;
25 
27 
51 {
52  public:
53  static const std::string class_name;
54 
55  private:
59  std::string m_label;
61 
63 
66 
68 
72  int Svol;
74  int m_Nc2;
76  int m_Nd;
77 
78  // A function to set the pseudo fermion field to zero at the t=0 boundary.
79  // void set_boundary_zero(Field&);
80 
81  public:
82 
83  Action_F_Standard_SF(Fopr *fopr, Force *fopr_force)
84  : Action(), m_fopr(fopr), m_fopr_force(fopr_force)
85  {
87  }
88 
90  {
91  delete m_solver;
92  }
93 
94  void set_parameters(const Parameters&);
95  void set_parameters();
96 
97  void set_label(std::string label)
98  {
99  m_label = label;
100  vout.detailed(m_vl, " label: %s\n", m_label.c_str());
101  }
102 
103  std::string get_label()
104  {
105  return m_label;
106  }
107 
108  void set_config(Field *U)
109  {
110  m_U = U;
111  m_fopr->set_config(U);
113  }
114 
116  {
117  m_status_linkv = 0;
118  }
119 
120  double langevin(RandomNumbers *);
121 
122  double calcH();
123 
124  const Field force();
125 };
126 #endif
BridgeIO vout
Definition: bridgeIO.cpp:207
void detailed(const char *format,...)
Definition: bridgeIO.cpp:50
Communication library which wraps MPI.
Definition: communicator.h:42
virtual void set_config(Field *)=0
setting pointer to the gauge configuration.
static const std::string class_name
Container of Field-type object.
Definition: field.h:37
virtual void set_config(Field *)=0
Base class of fermion force calculation.
Definition: force.h:34
Class for parameters.
Definition: parameters.h:40
void set_config(Field *U)
setting pointer to the gauge configuration.
Base class of HMC action class family.
Definition: action.h:35
int Svol
A spatial volume in a node.
Action_F_Standard_SF(Fopr *fopr, Force *fopr_force)
Communicator * comm
Needed to know a node at the temporal boundary.
double calcH()
calculate Hamiltonian of this action term.
void set_label(std::string label)
void notify_linkv()
to be called when gauge configuration is updated.
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
const Field force()
returns force for molcular dynamical update of conjugate momenta.
double langevin(RandomNumbers *)
Langevis step.
Base class of fermion operator family.
Definition: fopr.h:39
int m_Nd
dimension of the spinor index
Standard fermion action with SF BC for HMC.
int m_Nc2
number of the doubled color elements