sponge.control.Langevin
- class sponge.control.Langevin(system: Molecule, temperature: float = 300, control_step: int = 1, time_constant: float = 0.5, seed: int = 0, seed2: int = 0, **kwargs)[source]
A Langevin thermostat module, which is a subclass of
sponge.control.Thermostat
.Reference Goga, N.; Rzepiela, A. J.; de Vries, A. H.; Marrink, S. J.; Berendsen, H. J. C.., Efficient Algorithms for Langevin and DPD Dynamics [J]. Journal of Chemical Theory and Computation, 2012.
- Parameters
system (
sponge.system.Molecule
) – Simulation systemtemperature (float, optional) – Reference temperature \(T_{ref}\) in unit Kelvin for temperature coupling. Default:
300.0
.control_step (int, optional) – Step interval for controller execution. Default:
1
.time_constant (float, optional) – in unit picosecond for temperature coupling. Default:
0.2
.seed (int, optional) – Random seed for standard normal. Default:
0
.seed2 (int, optional) – Random seed2 for standard normal. Default:
0
.
- Inputs:
coordinate (Tensor) - Coordinate. Tensor of shape \((B, A, D)\). Data type is float. Here \(B\) is the number of walkers in simulation, \(A\) is the number of atoms and \(D\) is the spatial dimension of the simulation system, which is usually 3.
velocity (Tensor) - Velocity. Tensor of shape \((B, A, D)\). Data type is float.
force (Tensor) - Force. Tensor of shape \((B, A, D)\). Data type is float.
energy (Tensor) - Energy. Tensor of shape \((B, 1)\). Data type is float.
kinetics (Tensor) - Kinetics. Tensor of shape \((B, D)\). Data type is float.
virial (Tensor) - Virial. Tensor of shape \((B, D)\). Data type is float.
pbc_box (Tensor) - Pressure boundary condition box. Tensor of shape \((B, D)\). Data type is float.
step (int) - Simulation step. Default:
0
.
- Outputs:
coordinate, Tensor of shape \((B, A, D)\). Coordinate. Data type is float.
velocity, Tensor of shape \((B, A, D)\). Velocity. Data type is float.
force, Tensor of shape \((B, A, D)\). Force. Data type is float.
energy, Tensor of shape \((B, 1)\). Energy. Data type is float.
kinetics, Tensor of shape \((B, D)\). Kinetics. Data type is float.
virial, Tensor of shape \((B, D)\). Virial. Data type is float.
pbc_box, Tensor of shape \((B, D)\). Periodic boundary condition box. Data type is float.
- Supported Platforms:
Ascend
GPU
Examples
>>> from sponge import Molecule >>> from sponge.control import Langevin >>> system = Molecule(template='water.tip3p.yaml') >>> controller = Langevin(system)