1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
//! Explicit ODE use crate::algebra::linear::{Vector}; /// Explicit ODE algrithm interface /// /// This trait has to be implemented by every ODE which shall be solved with /// and explicit ODE solving algorithm. pub trait ExplicitODE<T> { fn func(self: &Self, t: &T, x: &Vector<T>) -> Vector<T>; fn time_span(self: &Self) -> (T, T); fn init_cond(self: &Self) -> Vector<T>; }