Trait nyx_space::propagators::RK
source · pub trait RKwhere
Self: Sized,{
const ORDER: u8;
const STAGES: usize;
const A_COEFFS: &'static [f64];
const B_COEFFS: &'static [f64];
}
Expand description
The RK
trait defines a Runge Kutta integrator.
Required Associated Constants
sourceconst ORDER: u8
const ORDER: u8
Returns the order of this integrator (as u8 because there probably isn’t an order greater than 255). The order is used for the adaptive step size only to compute the error between estimates.
sourceconst STAGES: usize
const STAGES: usize
Returns the stages of this integrator (as usize because it’s used as indexing)
sourceconst A_COEFFS: &'static [f64]
const A_COEFFS: &'static [f64]
Returns a pointer to a list of f64 corresponding to the A coefficients of the Butcher table for that RK.
This module only supports implicit integrators, and as such, Self.a_coeffs().len()
must be of
size (order+1)*(order)/2.
Warning: this RK trait supposes that the implementation is consistent, i.e. c_i = \sum_j a_{ij}.