pub fn grid_search_2d<F>( x_values: &[f64], y_values: &[f64], objective: F, direction: ObjectiveDirection, ) -> Option<GridSearchResult2D>where F: Fn(f64, f64) -> f64,