1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
use super::ImplicitODE; use crate::algebra::linear::{Vector}; use crate::algebra::abstr::Real; /// pub trait ImplicitFixedStepSizeMethod<T> where T: Real { fn do_step<F>(self: &Self, prob: &F, t_n: &T, x_n: &Vector<T>, h: &T) -> Vector<T> where F: ImplicitODE<T>; fn order(self: &Self) -> u8; } //pub trait ExplicitAdaptiveMethod<T> //{ // /// // fn do_step<F>(self: &Self, prob: &F, t_n: &T, x_n: &Vector<T>, h: &T) -> (Vector<T>, Vector<T>) // where F: ExplicitODE<T>; // // fn order(self: &Self) -> (u8, u8); //}