Bridge++
Version 1.5.4
|
HMC with single level leapfrog intetgrator. More...
#include <hmc_Leapfrog.h>
Public Member Functions | |
HMC_Leapfrog (std::vector< Action * > action, RandomNumbers *rand) | |
constructor: with array of actions More... | |
HMC_Leapfrog (std::vector< Action * > action, unique_ptr< RandomNumbers > &rand) | |
HMC_Leapfrog (std::vector< Action * > action, std::vector< Director * > director, RandomNumbers *rand) | |
constructor: with array of actions and directors More... | |
HMC_Leapfrog (std::vector< Action * > action, std::vector< Director * > director, unique_ptr< RandomNumbers > &rand) | |
HMC_Leapfrog (const ActionList &action_list, RandomNumbers *rand) | |
constructor: with action_list More... | |
HMC_Leapfrog (const ActionList &action_list, unique_ptr< RandomNumbers > &rand) | |
HMC_Leapfrog (const ActionList &action_list, std::vector< Director * > director, RandomNumbers *rand) | |
constructor: with action_list and array of directors More... | |
HMC_Leapfrog (const ActionList &action_list, std::vector< Director * > director, unique_ptr< RandomNumbers > &rand) | |
~HMC_Leapfrog () | |
destructor More... | |
void | set_parameters (const Parameters ¶ms) |
void | set_parameters (const double Estep, const int Nmdc, const int Nprec, const int Metropolis_test) |
void | set_parameters (const double Estep, const int Nmdc, const int Nprec, const bool Metropolis_test) |
void | set_parameter_verboselevel (const Bridge::VerboseLevel vl) |
double | update (Field_G &) |
double | langevin (Field_G &iP, const Field_G &U) |
double | calc_Hamiltonian (const Field_G &iP, const Field_G &U) |
double | calcH_P (const Field_G &iP) |
void | integrate (Field_G &iP, Field_G &U) |
void | update_U (const double estep, const Field_G &iP, Field_G &U) |
void | update_P (const double estep, Field_G &iP, const Field_G &U) |
Static Public Attributes | |
static const std::string | class_name = "HMC_Leapfrog" |
Private Member Functions | |
HMC_Leapfrog (const HMC_Leapfrog &) | |
HMC_Leapfrog & | operator= (const HMC_Leapfrog &) |
Private Attributes | |
int | m_Nmdc |
int | m_Nprec |
bool | m_Metropolis_test |
double | m_Estep |
Langevin_Momentum * | m_Langevin_P |
Staple_lex * | m_staple |
std::vector< Action * > | m_action |
std::vector< Director * > | m_director |
RandomNumbers * | m_rand |
Bridge::VerboseLevel | m_vl |
HMC with single level leapfrog intetgrator.
This class implements standartd HMC with a simple leapfrog molecular dynamics integrator. While more general integrator is now available, this class is easy to understand and convenient for a first test, and thus kept as it is. 28 Dec 2011 H.Matsufuru YAML is implemented. [03 Mar 2013 Y.Namekawa] Langevin step was moved to separate class. [07 May 2014 H.Matsufuru] unique_ptr is introduced to avoid memory leaks [21 Mar 2015 Y.Namekawa]
Definition at line 44 of file hmc_Leapfrog.h.
HMC_Leapfrog::HMC_Leapfrog | ( | std::vector< Action * > | action, |
RandomNumbers * | rand | ||
) |
constructor: with array of actions
Definition at line 20 of file hmc_Leapfrog.cpp.
HMC_Leapfrog::HMC_Leapfrog | ( | std::vector< Action * > | action, |
unique_ptr< RandomNumbers > & | rand | ||
) |
Definition at line 39 of file hmc_Leapfrog.cpp.
HMC_Leapfrog::HMC_Leapfrog | ( | std::vector< Action * > | action, |
std::vector< Director * > | director, | ||
RandomNumbers * | rand | ||
) |
constructor: with array of actions and directors
Definition at line 59 of file hmc_Leapfrog.cpp.
HMC_Leapfrog::HMC_Leapfrog | ( | std::vector< Action * > | action, |
std::vector< Director * > | director, | ||
unique_ptr< RandomNumbers > & | rand | ||
) |
Definition at line 83 of file hmc_Leapfrog.cpp.
HMC_Leapfrog::HMC_Leapfrog | ( | const ActionList & | action_list, |
RandomNumbers * | rand | ||
) |
constructor: with action_list
Definition at line 108 of file hmc_Leapfrog.cpp.
HMC_Leapfrog::HMC_Leapfrog | ( | const ActionList & | action_list, |
unique_ptr< RandomNumbers > & | rand | ||
) |
Definition at line 129 of file hmc_Leapfrog.cpp.
HMC_Leapfrog::HMC_Leapfrog | ( | const ActionList & | action_list, |
std::vector< Director * > | director, | ||
RandomNumbers * | rand | ||
) |
constructor: with action_list and array of directors
Definition at line 151 of file hmc_Leapfrog.cpp.
HMC_Leapfrog::HMC_Leapfrog | ( | const ActionList & | action_list, |
std::vector< Director * > | director, | ||
unique_ptr< RandomNumbers > & | rand | ||
) |
Definition at line 177 of file hmc_Leapfrog.cpp.
HMC_Leapfrog::~HMC_Leapfrog | ( | ) |
destructor
Definition at line 204 of file hmc_Leapfrog.cpp.
|
private |
Definition at line 377 of file hmc_Leapfrog.cpp.
double HMC_Leapfrog::calcH_P | ( | const Field_G & | iP | ) |
Definition at line 408 of file hmc_Leapfrog.cpp.
Definition at line 419 of file hmc_Leapfrog.cpp.
Definition at line 342 of file hmc_Leapfrog.cpp.
|
private |
|
inline |
Definition at line 110 of file hmc_Leapfrog.h.
void HMC_Leapfrog::set_parameters | ( | const Parameters & | params | ) |
Definition at line 212 of file hmc_Leapfrog.cpp.
void HMC_Leapfrog::set_parameters | ( | const double | Estep, |
const int | Nmdc, | ||
const int | Nprec, | ||
const int | Metropolis_test | ||
) |
Definition at line 240 of file hmc_Leapfrog.cpp.
void HMC_Leapfrog::set_parameters | ( | const double | Estep, |
const int | Nmdc, | ||
const int | Nprec, | ||
const bool | Metropolis_test | ||
) |
Definition at line 249 of file hmc_Leapfrog.cpp.
double HMC_Leapfrog::update | ( | Field_G & | Uorg | ) |
Definition at line 271 of file hmc_Leapfrog.cpp.
Definition at line 449 of file hmc_Leapfrog.cpp.
Definition at line 473 of file hmc_Leapfrog.cpp.
|
static |
Definition at line 47 of file hmc_Leapfrog.h.
|
private |
Definition at line 58 of file hmc_Leapfrog.h.
|
private |
Definition at line 59 of file hmc_Leapfrog.h.
|
private |
Definition at line 53 of file hmc_Leapfrog.h.
|
private |
Definition at line 55 of file hmc_Leapfrog.h.
|
private |
Definition at line 52 of file hmc_Leapfrog.h.
|
private |
Definition at line 50 of file hmc_Leapfrog.h.
|
private |
Definition at line 51 of file hmc_Leapfrog.h.
|
private |
Definition at line 60 of file hmc_Leapfrog.h.
|
private |
Definition at line 56 of file hmc_Leapfrog.h.
|
private |
Definition at line 61 of file hmc_Leapfrog.h.