18 #ifndef BUBBLEPROFILER_NLOPT_OPTIMIZER_HPP_INCLUDED 19 #define BUBBLEPROFILER_NLOPT_OPTIMIZER_HPP_INCLUDED 37 using Index = Eigen::VectorXd::Index;
38 using Function = std::function<double(const Eigen::VectorXd&)>;
77 nlopt::result
optimize(
const Eigen::VectorXd& guess);
89 double xtol_rel{2. * std::numeric_limits<double>::epsilon()};
90 double ftol_rel{2. * std::numeric_limits<double>::epsilon()};
93 std::vector<double>&,
void*);
Eigen::VectorXd::Index Index
nlopt::result optimize(const Eigen::VectorXd &guess)
void set_max_time(double maxtime)
Eigen::VectorXd upper_bounds
bool optimization_succeeded(nlopt::result)
void set_upper_bounds(double ub)
Eigen::VectorXd lower_bounds
void set_lower_bounds(double lb)
std::function< double(const Eigen::VectorXd &)> Function
double get_extremum_value() const
void set_extremum_type(Extremum_type e)
Eigen::VectorXd get_extremum_location() const
void set_ftol_rel(double ftol_rel_)
void set_algorithm(nlopt::algorithm a)
static double nlopt_function(const std::vector< double > &, std::vector< double > &, void *)
nlopt::algorithm algorithm
void set_xtol_rel(double xtol_rel_)
Extremum_type extremum_type