45 std::string name =
"CasADiProblem";
85 void load_numerical_data(const std::filesystem::path &filepath,
89 [[nodiscard]] real_t eval_f(crvec x) const;
90 void eval_grad_f(crvec x, rvec grad_fx) const;
91 real_t eval_f_grad_f(crvec x, rvec grad_fx) const;
92 void eval_g(crvec x, rvec g) const;
93 void eval_grad_g_prod(crvec x, crvec y, rvec grad_gxy) const;
94 void eval_grad_ψ(crvec x, crvec y, crvec Σ, rvec grad_ψ, rvec work_n, rvec work_m) const;
95 real_t eval_ψ_grad_ψ(crvec x, crvec y, crvec Σ, rvec grad_ψ, rvec work_n, rvec work_m) const;
96 void eval_grad_L(crvec x, crvec y, rvec grad_L, rvec work_n) const;
97 [[nodiscard]] real_t eval_ψ(crvec x, crvec y, crvec Σ, rvec ŷ) const;
98 void eval_grad_gi(crvec x, index_t i, rvec grad_i) const;
99 [[nodiscard]]
Sparsity get_jac_g_sparsity() const;
100 void eval_jac_g(crvec x, rvec J_values) const;
101 void eval_hess_L_prod(crvec x, crvec y, real_t scale, crvec v, rvec Hv) const;
102 [[nodiscard]]
Sparsity get_hess_L_sparsity() const;
103 void eval_hess_L(crvec x, crvec y, real_t scale, rvec H_values) const;
104 void eval_hess_ψ_prod(crvec x, crvec y, crvec Σ, real_t scale, crvec v, rvec Hv) const;
105 [[nodiscard]]
Sparsity get_hess_ψ_sparsity() const;
106 void eval_hess_ψ(crvec x, crvec y, crvec Σ, real_t scale, rvec H_values) const;
110 [[nodiscard]]
bool provides_eval_grad_L() const;
112 [[nodiscard]]
bool provides_eval_ψ() const;
114 [[nodiscard]]
bool provides_eval_grad_ψ() const;
116 [[nodiscard]]
bool provides_eval_ψ_grad_ψ() const;
118 [[nodiscard]]
bool provides_eval_grad_gi() const;
120 [[nodiscard]]
bool provides_eval_jac_g() const;
122 [[nodiscard]]
bool provides_eval_hess_L_prod() const;
124 [[nodiscard]]
bool provides_eval_hess_L() const;
126 [[nodiscard]]
bool provides_eval_hess_ψ_prod() const;
128 [[nodiscard]]
bool provides_eval_hess_ψ() const;
131 [[nodiscard]] std::
string get_name() const;
134 using
Functions = casadi_loader::CasADiFunctionsWithParam<Conf>;