INTEGRATOR_REGISTRY

torch_sim.integrators.INTEGRATOR_REGISTRY: Final[dict[Integrator, tuple[Callable[[...], Any], Callable[[...], Any]]]] = {Integrator.npt_crescale_isotropic: (<function npt_crescale_init>, <function npt_crescale_isotropic_step>), Integrator.npt_crescale_triclinic: (<function npt_crescale_init>, <function npt_crescale_triclinic_step>), Integrator.npt_langevin_anisotropic: (<function npt_langevin_anisotropic_init>, <function npt_langevin_anisotropic_step>), Integrator.npt_langevin_isotropic: (<function npt_langevin_isotropic_init>, <function npt_langevin_isotropic_step>), Integrator.npt_nose_hoover_isotropic: (<function npt_nose_hoover_isotropic_init>, <function npt_nose_hoover_isotropic_step>), Integrator.nve: (<function nve_init>, <function nve_step>), Integrator.nvt_langevin: (<function nvt_langevin_init>, <function nvt_langevin_step>), Integrator.nvt_nose_hoover: (<function nvt_nose_hoover_init>, <function nvt_nose_hoover_step>), Integrator.nvt_vrescale: (<function nvt_vrescale_init>, <function nvt_vrescale_step>)}

Integrator registry - maps integrator names to (init_fn, step_fn) pairs.

This dictionary associates each Integrator enum value with a pair of callables:

  • init_fn: A function used to initialize the integrator state.

  • step_fn: A function that advances the state by one simulation step.

Example

>>> init_fn, step_fn = INTEGRATOR_REGISTRY[Integrator.nvt_langevin]
>>> state = init_fn(...)
>>> new_state = step_fn(state, ...)

The available integrators are:

  • Integrator.nve: Velocity Verlet (microcanonical)

  • Integrator.nvt_vrescale: V-Rescale thermostat

  • Integrator.nvt_langevin: Langevin thermostat

  • Integrator.nvt_nose_hoover: Nosé-Hoover thermostat

  • Integrator.npt_langevin_isotropic: Isotropic Langevin barostat

  • Integrator.npt_langevin_anisotropic: Anisotropic Langevin barostat

  • Integrator.npt_nose_hoover_isotropic: Isotropic Nosé-Hoover barostat

  • Integrator.npt_crescale_isotropic: Isotropic C-Rescale barostat

  • Integrator.npt_crescale_triclinic: Triclinic C-Rescale barostat

Type:

dict[Integrator, tuple[Callable[…, Any], Callable[…, Any]]]