![]() |
ESPResSo
Extensible Simulation Package for Research on Soft Matter Systems
|
Thermostat for isotropic NPT dynamics. More...
#include <thermostat.hpp>
Inheritance diagram for IsotropicNptThermostat:
Collaboration diagram for IsotropicNptThermostat:Public Member Functions | |
| void | recalc_prefactors (double kT, double piston, std::vector< double > const &mass_list, double time_step) |
| Recalculate prefactors. | |
Public Member Functions inherited from BaseThermostat | |
| void | rng_initialize (uint32_t const seed) |
| Initialize or re-initialize the RNG counter with a seed. | |
| void | rng_increment () |
| Increment the RNG counter. | |
| uint64_t | rng_counter () const |
| Get current value of the RNG. | |
| void | set_rng_counter (uint64_t value) |
| bool | is_seed_required () const |
| Is the RNG seed required. | |
| uint32_t | rng_seed () const |
Static Public Member Functions | |
| static double | sigma (double kT, double gamma, double time_step) |
| Calculate the noise prefactor. | |
| static double | sigma_OU (double kT, double gamma, double time_step) |
| Calculate the noise prefactor for the exact solution of Orstein-Uhlenbeck equation. | |
Public Attributes | |
Parameters | |
| double | gamma0 = 0. |
| Friction coefficient of the particles \( \gamma^0 \). | |
| double | gammav = 0. |
| Friction coefficient for the box \( \gamma^V \). | |
Prefactors | |
| std::unordered_map< double, double > | pref_rescale_0 |
| Particle velocity rescaling at the time step for Orstein-Uhlenbeck equation. | |
| std::unordered_map< double, double > | pref_noise_0 |
| Particle velocity rescaling noise standard deviation for Orstein-Uhlenbeck equation. | |
| double | pref_rescale_V = 0. |
| Volume rescaling at half the time step. | |
| double | pref_noise_V = 0. |
| Volume rescaling noise standard deviation for Orstein-Uhlenbeck equation Stores \( \sqrt{k_B T ( 1 - \exp( -2 \frac{\gamma^{0}}{W} dt}) \). | |
Thermostat for isotropic NPT dynamics.
Definition at line 277 of file core/thermostat.hpp.
|
inline |
Recalculate prefactors.
Needs to be called every time the parameters are changed.
Definition at line 285 of file core/thermostat.hpp.
References gamma0, gammav, pref_noise_0, pref_noise_V, pref_rescale_0, pref_rescale_V, sigma_OU(), and stream.
|
inlinestatic |
Calculate the noise prefactor.
Evaluates the quantity \( \sqrt{2 k_B T \gamma dt / 2} / \sigma_\eta \) with \( \sigma_\eta \) the standard deviation of the random uniform process \( \eta(t) \).
Definition at line 303 of file core/thermostat.hpp.
References stream.
|
inlinestatic |
Calculate the noise prefactor for the exact solution of Orstein-Uhlenbeck equation.
Evaluates the quantity \( \sqrt{k_B T (1 - \exp(-2 \gamma dt)} \)
Definition at line 313 of file core/thermostat.hpp.
Referenced by recalc_prefactors().
| double IsotropicNptThermostat::gamma0 = 0. |
Friction coefficient of the particles \( \gamma^0 \).
Definition at line 319 of file core/thermostat.hpp.
Referenced by ScriptInterface::Thermostat::IsotropicNpt::IsotropicNpt(), propagate_therm0_nptiso(), and recalc_prefactors().
| double IsotropicNptThermostat::gammav = 0. |
Friction coefficient for the box \( \gamma^V \).
Definition at line 321 of file core/thermostat.hpp.
Referenced by ScriptInterface::Thermostat::IsotropicNpt::IsotropicNpt(), propagate_thermV_nptiso(), and recalc_prefactors().
Particle velocity rescaling noise standard deviation for Orstein-Uhlenbeck equation.
Stores \( \sqrt{k_B T ( 1 - \exp( -2 \frac{\gamma^{0}}{m} dt}) \)
Definition at line 334 of file core/thermostat.hpp.
Referenced by propagate_therm0_nptiso(), and recalc_prefactors().
| double IsotropicNptThermostat::pref_noise_V = 0. |
Volume rescaling noise standard deviation for Orstein-Uhlenbeck equation Stores \( \sqrt{k_B T ( 1 - \exp( -2 \frac{\gamma^{0}}{W} dt}) \).
Definition at line 343 of file core/thermostat.hpp.
Referenced by propagate_thermV_nptiso(), and recalc_prefactors().
Particle velocity rescaling at the time step for Orstein-Uhlenbeck equation.
Stores \( \exp(-\frac{\gamma^{0}}{m} \cdot dt) \).
Definition at line 329 of file core/thermostat.hpp.
Referenced by propagate_therm0_nptiso(), and recalc_prefactors().
| double IsotropicNptThermostat::pref_rescale_V = 0. |
Volume rescaling at half the time step.
Stores \( \exp(-\frac{\gamma^{V}}{W} \cdot dt) \).
Definition at line 338 of file core/thermostat.hpp.
Referenced by propagate_thermV_nptiso(), and recalc_prefactors().