Bridge++  Ver. 2.0.2
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/action.h"
18 
19 #include "Force/Fermion/force_F.h"
20 #include "Solver/solver.h"
21 
22 #include "Field/field_SF.h"
23 
24 #include "IO/bridgeIO.h"
25 using Bridge::vout;
26 
28 
54 {
55  public:
56  static const std::string class_name;
57 
58  private:
60 
64  std::string m_label;
65 
67 
69 
73  int Svol;
75  int m_Nc2;
77  int m_Nd;
78 
79  // A function to set the pseudo fermion field to zero at the t=0 boundary.
80  // void set_boundary_zero(Field&);
81 
82  public:
83  Action_F_Standard_SF(Fopr *fopr, Force *fopr_force)
84  : m_vl(CommonParameters::Vlevel()),
85  m_fopr(fopr), m_fopr_force(fopr_force)
86  {
88  }
89 
90  Action_F_Standard_SF(Fopr *fopr, Force *fopr_force, const Parameters& params)
91  : m_vl(CommonParameters::Vlevel()),
92  m_fopr(fopr), m_fopr_force(fopr_force)
93  {
94  set_parameters(params);
95  }
96 
98  {
99  delete m_solver;
100  }
101 
102  void set_parameters(const Parameters&);
103  void set_parameters();
104 
105  void get_parameters(Parameters&) const;
106 
107  void set_label(const std::string label)
108  {
109  m_label = label;
110  vout.detailed(m_vl, " label: %s\n", m_label.c_str());
111  }
112 
113  std::string get_label()
114  {
115  return m_label;
116  }
117 
118  void set_config(Field *U)
119  {
120  m_U = U;
121  m_fopr->set_config(U);
123  }
124 
125  double langevin(RandomNumbers *);
126 
127  double calcH();
128 
129  void force(Field&);
130 };
131 #endif
solver.h
bridgeIO.h
CommonParameters
Common parameter class: provides parameters as singleton.
Definition: commonParameters.h:42
AFopr< Field >
Action_F_Standard_SF::m_solver
Solver * m_solver
Definition: action_F_Standard_SF.h:66
Action_F_Standard_SF::class_name
static const std::string class_name
Definition: action_F_Standard_SF.h:56
Parameters
Class for parameters.
Definition: parameters.h:46
Action_F_Standard_SF::m_psf
Field m_psf
Definition: action_F_Standard_SF.h:63
Action_F_Standard_SF::Svol
int Svol
A spatial volume in a node.
Definition: action_F_Standard_SF.h:73
Bridge::BridgeIO::detailed
void detailed(const char *format,...)
Definition: bridgeIO.cpp:219
RandomNumbers
Base class of random number generators.
Definition: randomNumbers.h:43
Force::set_config
virtual void set_config(Field *)=0
Action_F_Standard_SF::~Action_F_Standard_SF
~Action_F_Standard_SF()
Definition: action_F_Standard_SF.h:97
Action_F_Standard_SF::Action_F_Standard_SF
Action_F_Standard_SF(Fopr *fopr, Force *fopr_force, const Parameters &params)
Definition: action_F_Standard_SF.h:90
Action_F_Standard_SF::get_parameters
void get_parameters(Parameters &) const
Definition: action_F_Standard_SF.cpp:29
Action_F_Standard_SF::Action_F_Standard_SF
Action_F_Standard_SF(Fopr *fopr, Force *fopr_force)
Definition: action_F_Standard_SF.h:83
Action
Base class of HMC action class family.
Definition: action.h:36
Action_F_Standard_SF::set_config
void set_config(Field *U)
setting pointer to the gauge configuration.
Definition: action_F_Standard_SF.h:118
action.h
AFopr::set_config
virtual void set_config(Field *)=0
sets the gauge configuration.
Action_F_Standard_SF::comm
Communicator * comm
Needed to know a node at the temporal boundary.
Definition: action_F_Standard_SF.h:71
Solver
Base class for linear solver class family.
Definition: solver.h:36
Action_F_Standard_SF::set_parameters
void set_parameters()
Definition: action_F_Standard_SF.cpp:36
Action_F_Standard_SF::m_U
Field * m_U
Definition: action_F_Standard_SF.h:68
field_SF.h
Action_F_Standard_SF::m_vl
Bridge::VerboseLevel m_vl
Definition: action_F_Standard_SF.h:59
Action_F_Standard_SF::set_label
void set_label(const std::string label)
Definition: action_F_Standard_SF.h:107
Action_F_Standard_SF::m_fopr
Fopr * m_fopr
Definition: action_F_Standard_SF.h:61
Action_F_Standard_SF
Standard fermion action with SF BC for HMC.
Definition: action_F_Standard_SF.h:53
Action_F_Standard_SF::langevin
double langevin(RandomNumbers *)
Langevis step.
Definition: action_F_Standard_SF.cpp:51
Action_F_Standard_SF::calcH
double calcH()
calculate Hamiltonian of this action term.
Definition: action_F_Standard_SF.cpp:87
force_F.h
Action_F_Standard_SF::m_Nd
int m_Nd
dimension of the spinor index
Definition: action_F_Standard_SF.h:77
Communicator
Communication library which wraps MPI.
Definition: communicator.h:50
Action_F_Standard_SF::m_fopr_force
Force * m_fopr_force
Definition: action_F_Standard_SF.h:62
Field
Container of Field-type object.
Definition: field.h:46
Bridge::VerboseLevel
VerboseLevel
Definition: bridgeIO.h:42
Action_F_Standard_SF::force
void force(Field &)
returns force for molcular dynamical update of conjugate momenta.
Definition: action_F_Standard_SF.cpp:122
Action_F_Standard_SF::m_label
std::string m_label
Definition: action_F_Standard_SF.h:64
Action_F_Standard_SF::get_label
std::string get_label()
Definition: action_F_Standard_SF.h:113
Action_F_Standard_SF::m_Nc2
int m_Nc2
number of the doubled color elements
Definition: action_F_Standard_SF.h:75
Force
Base class of fermion force calculation.
Definition: force_F.h:31
Bridge::vout
BridgeIO vout
Definition: bridgeIO.cpp:512