jaxdem.integrators.direct_euler#

Direct (forward) Integrator.

Classes

DirectEuler()

Implements the explicit (forward) Euler integration method.

class jaxdem.integrators.direct_euler.DirectEuler[source]#

Bases: LinearIntegrator

Implements 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:
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]

Note

  • This method donates state and system