Dop853
Defined in: mod.rs:16
pub struct Dop853Dormand-Prince 8(5,3) adaptive step-size integrator (DOP853).
Uses a 12-stage embedded Runge-Kutta pair. The 8th-order solution is propagated (local extrapolation); the 5th and 3rd-order solutions are used for error estimation. Based on Hairer, Norsett & Wanner (1993).
Methods
Section titled “Methods”stepper()
Section titled “stepper()”fn stepper<‘a, S: DynamicalSystem>(&self, system: &‘a S, initial:
::State, t0: f64, dt: f64, tol: Tolerances) -> AdaptiveStepper853<‘a, S>
Create an AdaptiveStepper853 for the given system and initial conditions.
step_full()
Section titled “step_full()”fn step_full<S: DynamicalSystem>(&self, system: &S, t: f64, state: &
::State, dt: f64) -> (::State,::State,::State)
Perform a single DOP853 step with full output.
Returns (y8, error, k13) where:
y8: 8th-order solution (to propagate)error: error estimatek13: derivative at y8 (reusable as k1 of next step via FSAL)
integrate_adaptive_with_events()
Section titled “integrate_adaptive_with_events()”fn integrate_adaptive_with_events<S, F, E, B>(&self, system: &S, initial:
::State, t0: f64, t_end: f64, dt_initial: f64, tol: &Tolerances, callback: F, event_check: E) -> IntegrationOutcome<::State, B>where S: DynamicalSystem, F: FnMut(f64, &::State), E: [Fn(f64, &::State) -> ControlFlow<B>](https://doc.rust-lang.org/std/ops/function/trait.Fn.html)
Integrate adaptively with event detection and NaN/Inf checking.