3#include <alpaqa/ipopt-adapter-export.h>
24 Ipopt::SolverReturn
status = Ipopt::SolverReturn::UNASSIGNED;
43 IndexStyleEnum &index_style)
override;
53 Number &obj_value)
override;
72 Number obj_value,
const Ipopt::IpoptData *ip_data,
73 Ipopt::IpoptCalculatedQuantities *ip_cq)
override;
81 sparsity::SparsityConverter<Sparsity, sparsity::SparseCOO<Index>>;
Based on https://coin-or.github.io/Ipopt/INTERFACES.html.
IpoptAdapter(const Problem &problem)
vec initial_guess_bounds_multipliers
bool eval_g(Index n, const Number *x, bool new_x, Index m, Number *g) override
bool eval_grad_f(Index n, const Number *x, bool new_x, Number *grad_f) override
SparsityConv cvt_sparsity_jac_g
bool eval_h(Index n, const Number *x, bool new_x, Number obj_factor, Index m, const Number *lambda, bool new_lambda, Index nele_hess, Index *iRow, Index *jCol, Number *values) override
bool get_starting_point(Index n, bool init_x, Number *x, bool init_z, Number *z_L, Number *z_U, Index m, bool init_lambda, Number *lambda) override
sparsity::SparsityConverter< Sparsity, sparsity::SparseCOO< Index > > SparsityConv
bool get_bounds_info(Index n, Number *x_l, Number *x_u, Index m, Number *g_l, Number *g_u) override
bool eval_f(Index n, const Number *x, bool new_x, Number &obj_value) override
bool get_nlp_info(Index &n, Index &m, Index &nnz_jac_g, Index &nnz_h_lag, IndexStyleEnum &index_style) override
bool eval_jac_g(Index n, const Number *x, bool new_x, Index m, Index nele_jac, Index *iRow, Index *jCol, Number *values) override
vec initial_guess_multipliers
void finalize_solution(Ipopt::SolverReturn status, Index n, const Number *x, const Number *z_L, const Number *z_U, Index m, const Number *g, const Number *lambda, Number obj_value, const Ipopt::IpoptData *ip_data, Ipopt::IpoptCalculatedQuantities *ip_cq) override
Sparsity orig_sparsity_hess_L
IpoptAdapter(Problem &&)=delete
Sparsity orig_sparsity_jac_g
TypeErasedProblem< config_t > Problem
SparsityConv cvt_sparsity_hess_L
The main polymorphic minimization problem interface.
#define USING_ALPAQA_CONFIG(Conf)
typename Conf::real_t real_t
typename Conf::length_t length_t
Double-precision double configuration.
vec combine_bounds_multipliers() const
Ipopt::SolverReturn status