Bridge++
Ver. 1.1.x
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Pages
integrator_Omelyan.h
Go to the documentation of this file.
1
14
#ifndef INTEGRATOR_OMELYAN_INCLUDED
15
#define INTEGRATOR_OMELYAN_INCLUDED
16
17
#include "
action.h
"
18
#include "
director.h
"
19
#include "
randomNumbers.h
"
20
#include "
integrator.h
"
21
22
#include "
bridgeIO.h
"
23
using
Bridge::vout
;
24
26
33
//- parameters class
34
class
Parameters_Integrator_Omelyan
:
virtual
public
Parameters
35
{
36
public
:
37
Parameters_Integrator_Omelyan
();
38
};
39
//- end
40
41
class
Integrator_Omelyan
:
public
Integrator
42
{
43
private
:
44
double
m_Estep
;
// step size of each molecular dynamical evolution
45
int
m_Nstep
;
// number of steps
46
int
m_level
;
// level number
47
double
m_lambda
;
// Omelyan's optimized parameter
48
Integrator
*
m_integ_next
;
49
std::valarray<Action *>
m_action
;
// actions
50
51
public
:
53
Integrator_Omelyan
(std::valarray<Action *> action,
54
Integrator
*integ_next)
55
{
56
m_action
.resize(action.size());
57
for
(
int
i = 0; i < action.size(); ++i) {
58
m_action
[i] = action[i];
59
}
60
m_integ_next
= integ_next;
61
m_Estep
= 0.0;
62
m_Nstep
= 0;
63
m_lambda
= 0.0;
64
}
65
67
~Integrator_Omelyan
() {}
68
69
void
set_parameters
(
const
Parameters
& params);
70
void
set_parameters
(
int
level,
double
Estep,
int
Nstep,
71
double
lambda_Omelyan);
72
73
void
evolve
(
Field_G
& iP,
Field_G
& U);
74
};
75
#endif
src
HMC
integrator_Omelyan.h
Generated on Tue Jul 23 2013 10:48:48 for Bridge++ by
1.8.3.1