Bridge++  Ver. 2.0.2
gradientFlow_AdaptiveRungeKutta.h
Go to the documentation of this file.
1 
13 #ifndef GRADIENTFLOW_ADAPTIVERUNGEKUTTA_INCLUDED
14 #define GRADIENTFLOW_ADAPTIVERUNGEKUTTA_INCLUDED
15 
17 
18 #include "IO/bridgeIO.h"
19 using Bridge::vout;
20 
22 
35 {
36  public:
37  static const std::string class_name;
38 
39  protected:
41 
42  private:
44 
45  int m_Ndim;
46  int m_Nvol;
47 
49 
50  double m_tolerance;
51  double m_safety;
52 
54 
55  public:
57  const double tolerance, const double safety, const Bridge::VerboseLevel vl)
58  : GradientFlow_RungeKutta(0, 0, vl),
59  m_vl(vl),
60  m_RK(RK),
61  m_tolerance(tolerance),
62  m_safety(safety)
63  {
66 
69  }
70 
72 
73  void flow(double& t, double& Estep, Field_G& U);
74 
75  int Norder_RK() const { return m_RK ? m_RK->Norder_RK() : 0; }
76 
77  private:
78  double max_diff_U(const Field_G& U1, const Field_G& U0) const;
79 };
80 #endif
GradientFlow_AdaptiveRungeKutta::m_RK
GradientFlow_RungeKutta * m_RK
Definition: gradientFlow_AdaptiveRungeKutta.h:48
bridgeIO.h
GradientFlow_AdaptiveRungeKutta::flow
void flow(double &t, double &Estep, Field_G &U)
Definition: gradientFlow_AdaptiveRungeKutta.cpp:19
CommonParameters::Ndim
static int Ndim()
Definition: commonParameters.h:117
GradientFlow_AdaptiveRungeKutta::m_Nvol
int m_Nvol
Definition: gradientFlow_AdaptiveRungeKutta.h:46
GradientFlow_AdaptiveRungeKutta::GradientFlow_AdaptiveRungeKutta
GradientFlow_AdaptiveRungeKutta(GradientFlow_RungeKutta *RK, const double tolerance, const double safety, const Bridge::VerboseLevel vl)
Definition: gradientFlow_AdaptiveRungeKutta.h:56
CommonParameters::Nvol
static int Nvol()
Definition: commonParameters.h:109
gradientFlow_RungeKutta.h
Action
Base class of HMC action class family.
Definition: action.h:36
GradientFlow_AdaptiveRungeKutta::class_name
static const std::string class_name
Definition: gradientFlow_AdaptiveRungeKutta.h:37
GradientFlow_RungeKutta::Norder_RK
virtual int Norder_RK() const =0
GradientFlow_AdaptiveRungeKutta::Norder_RK
int Norder_RK() const
Definition: gradientFlow_AdaptiveRungeKutta.h:75
GradientFlow_AdaptiveRungeKutta::m_U_fine
Field_G m_U_fine
Definition: gradientFlow_AdaptiveRungeKutta.h:53
GradientFlow_AdaptiveRungeKutta::m_U_rough
Field_G m_U_rough
Definition: gradientFlow_AdaptiveRungeKutta.h:53
GradientFlow_AdaptiveRungeKutta
GradientFlow_AdaptiveRungeKutta construction.
Definition: gradientFlow_AdaptiveRungeKutta.h:34
ParameterCheck::vl
Bridge::VerboseLevel vl
Definition: parameterCheck.cpp:18
GradientFlow_AdaptiveRungeKutta::max_diff_U
double max_diff_U(const Field_G &U1, const Field_G &U0) const
Definition: gradientFlow_AdaptiveRungeKutta.cpp:67
Field_G::reset
void reset(const int Nvol, const int Nex)
Definition: field_G.h:79
GradientFlow_AdaptiveRungeKutta::~GradientFlow_AdaptiveRungeKutta
~GradientFlow_AdaptiveRungeKutta()
Definition: gradientFlow_AdaptiveRungeKutta.h:71
GradientFlow_RungeKutta
GradientFlow_RungeKutta construction.
Definition: gradientFlow_RungeKutta.h:29
GradientFlow_AdaptiveRungeKutta::m_action
Action * m_action
Definition: gradientFlow_AdaptiveRungeKutta.h:43
GradientFlow_AdaptiveRungeKutta::m_Ndim
int m_Ndim
Definition: gradientFlow_AdaptiveRungeKutta.h:45
GradientFlow_AdaptiveRungeKutta::m_vl
Bridge::VerboseLevel m_vl
Definition: gradientFlow_AdaptiveRungeKutta.h:40
Bridge::VerboseLevel
VerboseLevel
Definition: bridgeIO.h:42
Field_G
SU(N) gauge field.
Definition: field_G.h:38
GradientFlow_AdaptiveRungeKutta::m_tolerance
double m_tolerance
Definition: gradientFlow_AdaptiveRungeKutta.h:50
GradientFlow_AdaptiveRungeKutta::m_safety
double m_safety
Definition: gradientFlow_AdaptiveRungeKutta.h:51
Bridge::vout
BridgeIO vout
Definition: bridgeIO.cpp:512