jaxdem.integrators.velocity_verlet#

Velocity Verlet Integrator.

Classes

VelocityVerlet()

Implements the Velocity Verlet integration method.

class jaxdem.integrators.velocity_verlet.VelocityVerlet#

Bases: LinearIntegrator

Implements the Velocity Verlet integration method.

static step_before_force(state: State, system: System) tuple[State, System][source]#

Advances the simulation state by one half-step before the force calculation using the Velocity Verlet scheme.

The update equations are:

\[\begin{split}v(t + \Delta t / 2) = v(t) + \Delta t a(t) / 2 \\ r(t + \Delta t) = r(t) + \Delta t v(t + \Delta t / 2)\end{split}\]
where:
Parameters:
  • state (State) – Current state of the simulation.

  • system (System) – Simulation system configuration.

Returns:

The updated state and system after one time step.

Return type:

Tuple[State, System]

static step_after_force(state: State, system: System) tuple[State, System][source]#

Advances the simulation state by one half-step after the force calculation using the Velocity Verlet scheme.

The update equations are:

\[v(t + \Delta t) = v(t + \Delta t / 2) + \Delta t a(t + \Delta t) / 2\]
where:
Parameters:
  • state (State) – Current state of the simulation.

  • system (System) – Simulation system configuration.

Returns:

The updated state and system after one time step.

Return type:

Tuple[State, System]