pub fn midpoint_method( f: impl Fn(f64, &[f64]) -> Vec<f64>, t_span: (f64, f64), y0: &[f64], dt: f64, ) -> OdeResult