sponge.control.Brownian

View Source On Gitee
class sponge.control.Brownian(system: Molecule, temperature: float = 300, friction_coefficient: float = 1000.0, **kwargs)[source]

A Brownian integrator module, which is a subclass of sponge.control.Integrator.

Parameters
  • system (sponge.system.Molecule) – Simulation system

  • temperature (float, optional) – Simulation temperature T (K). Default: 300.0.

  • friction_coefficient (float, optional) – Friction coefficient g (amu/ps). Default: 1e3.

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 Brownian
>>> system = Molecule(template='water.tip3p.yaml')
>>> controller = Brownian(system)
set_barostat(barostat: None = None)[source]

Set barostat algorithm for integrator.

Parameters

barostat (None) – Barostat algorithm, which needs to be None for Brownian integrator. Default: None.

set_constraint(constraint: None = None, num_constraints: int = 0)[source]

Set constraint algorithm for integrator.

Parameters
  • constraint (None) – Constraint algorithm, which needs to be None for Brownian integrator. Default: None.

  • num_constraints (int, optional) – Number of constraints. Default: 0.0.

set_thermostat(thermostat: None = None)[source]

Set thermostat algorithm for integrator.

Parameters

thermostat (None) – Thermostat algorithm, which needs to be None for Brownian integrator. Default: None.

set_time_step(dt: float)[source]

Set simulation time step.

Parameters

dt (float) – Simulation time step.