コンテンツにスキップ

Dop853

このコンテンツはまだ日本語訳がありません。

Defined in: mod.rs:16

pub struct Dop853

Dormand-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).

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.


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 estimate
  • k13: derivative at y8 (reusable as k1 of next step via FSAL)

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.