jaxdem.integrators.velocity_verlet#
Velocity Verlet Integrator.
Classes
Implements the Velocity Verlet integration method. |
- class jaxdem.integrators.velocity_verlet.VelocityVerlet#
Bases:
LinearIntegratorImplements 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:
\(r\) is the particle position (
jaxdem.State.pos)\(v\) is the particle velocity (
jaxdem.State.vel)\(a\) is the particle acceleration computed from forces (
jaxdem.State.force)\(\Delta t\) is the time step (
jaxdem.System.dt)
- 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:
\(v\) is the particle velocity (
jaxdem.State.vel)\(a\) is the particle acceleration computed from forces (
jaxdem.State.force)\(\Delta t\) is the time step (
jaxdem.System.dt)