pub fn central_jacobian_pert<const N: usize, const M: usize, F>( f: &'_ dyn Fn(&[F; N]) -> Result<[F; M], Error>, ) -> impl Fn(&[F; N], &PerturbationVectors) -> Result<[[F; N]; M], Error> + '_where F: Float + FromPrimitive + AddAssign,