pub fn bfgs<F, G>( f: F, grad: G, start: Array1<f64>, max_iter: usize, tol: f64, ) -> Array1<f64>where F: Fn(&Array1<f64>) -> f64, G: Fn(&Array1<f64>) -> Array1<f64>,
BFGS optimization with provided gradient.