Integrator

class torch_sim.integrators.Integrator(value, names=_not_given, *values, module=None, qualname=None, type=None, start=1, boundary=None)[source]

Bases: StrEnum

Enumeration of available molecular dynamics (MD) integrators.

Each member represents a different simulation ensemble or thermostat/barostat scheme. These values are used as keys in INTEGRATOR_REGISTRY to select the corresponding initialization and stepping functions.

Available options:
  • nve: Constant energy (microcanonical) ensemble.

  • nvt_vrescale: Velocity rescaling thermostat for constant temperature.

  • nvt_langevin: Langevin thermostat for constant temperature.

  • nvt_nose_hoover: Nosé-Hoover thermostat for constant temperature.

  • npt_langevin_isotropic: Isotropic Langevin barostat

    (uniform volume scaling).

  • npt_langevin_anisotropic: Anisotropic Langevin barostat

    (independent cell lengths).

  • npt_nose_hoover_isotropic: Isotropic Nosé-Hoover barostat

    (uniform volume scaling).

  • npt_crescale_isotropic: Isotropic C-Rescale barostat

    (uniform volume scaling, fixed cell shape).

  • npt_crescale_triclinic: Triclinic C-Rescale barostat

    (full cell flexibility, lengths and angles).

Example

>>> integrator = Integrator.nvt_langevin
>>> print(integrator.value)
'nvt_langevin'