Bridge++  Version 1.5.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
builder_Integrator.h
Go to the documentation of this file.
1 
14 #ifndef BUILDER_INTEGRATOR_INCLUDED
15 #define BUILDER_INTEGRATOR_INCLUDED
16 
17 #include <cassert>
18 
19 #include "action_list.h"
20 #include "integrator.h"
21 
22 #include "IO/bridgeIO.h"
23 using Bridge::vout;
24 
26 
40 {
41  public:
42  static const std::string class_name;
43 
44  protected:
46 
47  private:
48  std::vector<int> m_Nstep;
49 
50  int m_Nprec;
52 
53  std::string m_str_integrator_type;
54 
56  std::vector<Director *> m_director;
57 
58 
59  std::vector<Integrator *> m_integs;
60 
61  public:
63  Builder_Integrator(const ActionList& action_list,
64  std::vector<Director *> director = std::vector<Director *>());
65 
68  {
69  tidyup();
70  }
71 
72  private:
73  // non-copyable
76 
77  public:
78  void set_parameters(const Parameters& params);
79  void set_parameters(const std::string str_integrator_type,
80  const std::vector<int>& Nstep,
81  const int Nprec,
82  const double lambda_Omelyan);
83 
85 
86  Integrator *build();
87 
90 
91  void tidyup();
92 };
93 #endif
~Builder_Integrator()
destructor
BridgeIO vout
Definition: bridgeIO.cpp:503
Integrator * build_leapfrog()
std::vector< int > m_Nstep
Number of steps at each level.
Bridge::VerboseLevel m_vl
std::vector< Director * > m_director
Class for parameters.
Definition: parameters.h:46
int m_Nprec
precision parameter of exponentiation
Base class of Integrator class family.
Definition: integrator.h:29
void set_parameters(const Parameters &params)
Builder_Integrator(const ActionList &action_list, std::vector< Director * > director=std::vector< Director * >())
constructor with ActionList
std::string m_str_integrator_type
Builder_Integrator & operator=(const Builder_Integrator &)
static const std::string class_name
std::vector< Integrator * > m_integs
Integrator to be constructed.
Integrator * build_omelyan()
void set_parameter_verboselevel(const Bridge::VerboseLevel vl)
lists of actions at respective integrator levels.
Definition: action_list.h:40
Bridge::VerboseLevel vl
VerboseLevel
Definition: bridgeIO.h:42
Builder of MD integrator for HMC.