jaxdem.integrators.direct_euler#
Direct (forward) Integrator.
Classes
Implements the explicit (forward) Euler integration method. |
- class jaxdem.integrators.direct_euler.DirectEuler[source]#
Bases:
LinearIntegratorImplements the explicit (forward) Euler integration method.
- static step_after_force(state: State, system: System) Tuple['State', 'System'][source][source]#
Advances the simulation state by one time step after the force calculation using the Direct Euler method.
The update equations are:
\[\begin{split}& v(t + \Delta t) &= v(t) + \Delta t a(t) \\ & r(t + \Delta t) &= r(t) + \Delta t v(t + \Delta t)\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)
- Parameters:
- Returns:
The updated state and system after one time step.
- Return type:
Note
This method donates state and system