nve_step

torch_sim.integrators.nve.nve_step(state, model, *, dt, **_kwargs)[source]

Perform one complete NVE (microcanonical) integration step.

This function implements the velocity Verlet algorithm for NVE dynamics, which provides energy-conserving time evolution. The integration sequence is: 1. Half momentum update using current forces 2. Full position update using updated momenta 3. Force update at new positions 4. Half momentum update using new forces

Parameters:
  • model (ModelInterface) – Neural network model that computes energies and forces. Must return a dict with ‘energy’ and ‘forces’ keys.

  • state (MDState) – Current system state containing positions, momenta, forces

  • dt (Tensor) – Integration timestep, either scalar or shape [n_systems]

  • _kwargs (Any)

Returns:

Updated state after one complete NVE step with new positions,

momenta, forces, and energy

Return type:

MDState

Notes

  • Uses velocity Verlet algorithm for time reversible integration

  • Conserves energy in the absence of numerical errors

  • Handles periodic boundary conditions if enabled in state

  • Symplectic integrator preserving phase space volume