#include <Dynamics.h>
Public Member Functions | |
| Dynamics (Matter *matter, const DynamicsConfig &config) | |
| Dynamics (Matter *matter, const Parameters ¶meters) | |
| ~Dynamics () | |
| void | setTemperature (double temperature) |
| void | oneStep (int stepNumber=-1) |
| void | velocityVerlet () |
| void | run () |
| void | andersenCollision () |
| void | setThermalVelocity () |
| void | rescaleVelocity () |
| void | noseHooverVerlet () |
| Nose-Hoover chain thermostat (Martyna-Klein-Tuckerman algorithm). | |
| void | langevinVerlet () |
| Langevin dynamics (velocity-Verlet with friction and random forces). | |
Static Public Attributes | |
| static const char | ANDERSEN [] = "andersen" |
| static const char | NOSE_HOOVER [] = "nose_hoover" |
| static const char | LANGEVIN [] = "langevin" |
| static const char | NONE [] = "none" |
| static const char | PILE [] = "pile" |
| static const char | PIGLET [] = "piglet" |
Private Member Functions | |
| void | nhcChainHalfStep (AtomMatrix &vel, double &kinE) |
| One Martyna-Klein-Tuckerman chain half-step. | |
| void | runPathIntegral () |
| Ring-polymer trajectory. Beads do not enter velocityVerlet. | |
Private Attributes | |
| long | nAtoms {0} |
| long | nFreeCoords {0} |
| Matter * | matter |
| DynamicsConfig | m_config |
| double | dt {0.0} |
| double | kB {0.0} |
| double | temperature {0.0} |
| double | vxi1 {0.0} |
| double | vxi2 {0.0} |
| double | xi1 {0.0} |
| double | xi2 {0.0} |
| eonc::log::Scoped | log |
Definition at line 70 of file Dynamics.h.
| eonc::Dynamics::Dynamics | ( | Matter * | matter, |
| const DynamicsConfig & | config ) |
Definition at line 29 of file Dynamics.cpp.
|
inline |
Definition at line 83 of file Dynamics.h.
|
default |
| void eonc::Dynamics::andersenCollision | ( | ) |
Definition at line 224 of file Dynamics.cpp.
| void eonc::Dynamics::langevinVerlet | ( | ) |
Langevin dynamics (velocity-Verlet with friction and random forces).
Matter::getFixed(atom) is true only when every axis is fixed, so noise and the position kick are applied per free axis.
Definition at line 332 of file Dynamics.cpp.
|
private |
One Martyna-Klein-Tuckerman chain half-step.
G2 is always (Q1 vxi1^2 - kT) / Q2.
Definition at line 275 of file Dynamics.cpp.
| void eonc::Dynamics::noseHooverVerlet | ( | ) |
Nose-Hoover chain thermostat (Martyna-Klein-Tuckerman algorithm).
Two chain variables (xi1, xi2) with velocities (vxi1, vxi2).
Definition at line 307 of file Dynamics.cpp.
| void eonc::Dynamics::oneStep | ( | int | stepNumber = -1 | ) |
Definition at line 57 of file Dynamics.cpp.
| void eonc::Dynamics::rescaleVelocity | ( | ) |
Definition at line 264 of file Dynamics.cpp.
| void eonc::Dynamics::run | ( | ) |
Definition at line 161 of file Dynamics.cpp.
|
private |
Ring-polymer trajectory. Beads do not enter velocityVerlet.
Definition at line 104 of file Dynamics.cpp.
| void eonc::Dynamics::setTemperature | ( | double | temperature | ) |
Definition at line 53 of file Dynamics.cpp.
| void eonc::Dynamics::setThermalVelocity | ( | ) |
Definition at line 247 of file Dynamics.cpp.
| void eonc::Dynamics::velocityVerlet | ( | ) |
Definition at line 91 of file Dynamics.cpp.
|
static |
Definition at line 73 of file Dynamics.h.
|
private |
Definition at line 110 of file Dynamics.h.
|
private |
Definition at line 111 of file Dynamics.h.
|
static |
Definition at line 75 of file Dynamics.h.
|
private |
Definition at line 114 of file Dynamics.h.
|
private |
Definition at line 108 of file Dynamics.h.
|
private |
Definition at line 107 of file Dynamics.h.
|
private |
Definition at line 105 of file Dynamics.h.
|
private |
Definition at line 105 of file Dynamics.h.
|
static |
Definition at line 76 of file Dynamics.h.
|
static |
Definition at line 74 of file Dynamics.h.
|
static |
Definition at line 78 of file Dynamics.h.
|
static |
Definition at line 77 of file Dynamics.h.
|
private |
Definition at line 112 of file Dynamics.h.
|
private |
Definition at line 113 of file Dynamics.h.
|
private |
Definition at line 113 of file Dynamics.h.
|
private |
Definition at line 113 of file Dynamics.h.
|
private |
Definition at line 113 of file Dynamics.h.