#include <alpaqa/problem/type-erased-problem.hpp>
Struct containing function pointers to all problem functions (like the objective and constraint functions, with their derivatives, and more).
Some default implementations are available. Internal struct, it is used by TypeErasedProblem.
Definition at line 35 of file type-erased-problem.hpp.
Public Types | |
| using | Box = alpaqa::Box<config_t> |
| template<class F> | |
| using | optional_function_t = guanaqo::optional_function_t<F, ProblemVTable> |
| template<class F> | |
| using | required_function_t = guanaqo::required_function_t<F> |
Public Member Functions | |
| template<class P> | |
| ProblemVTable (std::in_place_t, P &p) | |
| ProblemVTable ()=default | |
| using Box = alpaqa::Box<config_t> |
Definition at line 37 of file type-erased-problem.hpp.
| using optional_function_t = guanaqo::optional_function_t<F, ProblemVTable> |
Definition at line 40 of file type-erased-problem.hpp.
Definition at line 42 of file type-erased-problem.hpp.
Definition at line 306 of file type-erased-problem.hpp.
|
default |
|
inlinestatic |
Definition at line 120 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 144 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 147 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 151 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 155 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 160 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 164 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 171 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 175 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 179 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 188 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 195 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 204 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 213 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 222 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 232 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 244 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 259 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 275 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 292 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 295 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 298 of file type-erased-problem.hpp.
|
inlinestatic |
Definition at line 299 of file type-erased-problem.hpp.
| required_function_t<void(crvec z, rvec e) const> eval_projecting_difference_constraints |
Definition at line 48 of file type-erased-problem.hpp.
| required_function_t<void(rvec y, real_t M) const> eval_projection_multipliers |
Definition at line 50 of file type-erased-problem.hpp.
| required_function_t<real_t(real_t γ, crvec x, crvec grad_ψ, rvec x̂, rvec p) const> eval_proximal_gradient_step |
Definition at line 52 of file type-erased-problem.hpp.
| required_function_t<real_t(crvec x) const> eval_objective |
Definition at line 54 of file type-erased-problem.hpp.
| required_function_t<void(crvec x, rvec grad_fx) const> eval_objective_gradient |
Definition at line 56 of file type-erased-problem.hpp.
| required_function_t<void(crvec x, rvec gx) const> eval_constraints |
Definition at line 58 of file type-erased-problem.hpp.
| required_function_t<void(crvec x, crvec y, rvec grad_gxy) const> eval_constraints_gradient_product |
Definition at line 60 of file type-erased-problem.hpp.
| optional_function_t<index_t(real_t γ, crvec x, crvec grad_ψ, rindexvec J) const> eval_inactive_indices_res_lna = default_eval_inactive_indices_res_lna |
Definition at line 62 of file type-erased-problem.hpp.
| optional_function_t<void(real_t γ, crvec x, rvec J_diag) const> eval_prox_jacobian_diag = default_eval_prox_jacobian_diag |
Definition at line 64 of file type-erased-problem.hpp.
| optional_function_t<real_t(crvec x) const> eval_nonsmooth_objective = default_eval_nonsmooth_objective |
Definition at line 66 of file type-erased-problem.hpp.
| optional_function_t<void(crvec x, rvec J_values) const> eval_constraints_jacobian = default_eval_constraints_jacobian |
Definition at line 70 of file type-erased-problem.hpp.
| optional_function_t<Sparsity() const> get_constraints_jacobian_sparsity = default_get_constraints_jacobian_sparsity |
Definition at line 72 of file type-erased-problem.hpp.
| optional_function_t<void(crvec x, index_t i, rvec grad_gi) const> eval_grad_gi = default_eval_grad_gi |
Definition at line 74 of file type-erased-problem.hpp.
| optional_function_t<void(crvec x, crvec y, real_t scale, crvec v, rvec Hv) const> eval_lagrangian_hessian_product = default_eval_lagrangian_hessian_product |
Definition at line 76 of file type-erased-problem.hpp.
| optional_function_t<void(crvec x, crvec y, real_t scale, rvec H_values) const> eval_lagrangian_hessian = default_eval_lagrangian_hessian |
Definition at line 78 of file type-erased-problem.hpp.
| optional_function_t<Sparsity() const> get_lagrangian_hessian_sparsity = default_get_lagrangian_hessian_sparsity |
Definition at line 80 of file type-erased-problem.hpp.
| optional_function_t<void(crvec x, crvec y, crvec Σ, real_t scale, crvec v, rvec Hv) const> eval_augmented_lagrangian_hessian_product = default_eval_augmented_lagrangian_hessian_product |
Definition at line 82 of file type-erased-problem.hpp.
| optional_function_t<void(crvec x, crvec y, crvec Σ, real_t scale, rvec H_values) const> eval_augmented_lagrangian_hessian = default_eval_augmented_lagrangian_hessian |
Definition at line 84 of file type-erased-problem.hpp.
| optional_function_t<Sparsity() const> get_augmented_lagrangian_hessian_sparsity = default_get_augmented_lagrangian_hessian_sparsity |
Definition at line 86 of file type-erased-problem.hpp.
| optional_function_t<real_t(crvec x, rvec grad_fx) const> eval_objective_and_gradient = default_eval_objective_and_gradient |
Definition at line 90 of file type-erased-problem.hpp.
| optional_function_t<real_t(crvec x, rvec g) const> eval_objective_and_constraints = default_eval_objective_and_constraints |
Definition at line 92 of file type-erased-problem.hpp.
| optional_function_t<void(crvec x, crvec y, rvec grad_f, rvec grad_gxy) const> eval_objective_gradient_and_constraints_gradient_product = default_eval_objective_gradient_and_constraints_gradient_product |
Definition at line 94 of file type-erased-problem.hpp.
| optional_function_t<void(crvec x, crvec y, rvec grad_L, rvec work_n) const> eval_lagrangian_gradient = default_eval_lagrangian_gradient |
Definition at line 98 of file type-erased-problem.hpp.
| optional_function_t<real_t(crvec x, crvec y, crvec Σ, rvec ŷ) const> eval_augmented_lagrangian = default_eval_augmented_lagrangian |
Definition at line 100 of file type-erased-problem.hpp.
| optional_function_t<void(crvec x, crvec y, crvec Σ, rvec grad_ψ, rvec work_n, rvec work_m) const> eval_augmented_lagrangian_gradient = default_eval_augmented_lagrangian_gradient |
Definition at line 102 of file type-erased-problem.hpp.
| optional_function_t<real_t(crvec x, crvec y, crvec Σ, rvec grad_ψ, rvec work_n, rvec work_m) const> eval_augmented_lagrangian_and_gradient = default_eval_augmented_lagrangian_and_gradient |
Definition at line 104 of file type-erased-problem.hpp.
| optional_function_t<const Box &() const> get_variable_bounds = default_get_variable_bounds |
Definition at line 108 of file type-erased-problem.hpp.
| optional_function_t<const Box &() const> get_general_bounds = default_get_general_bounds |
Definition at line 110 of file type-erased-problem.hpp.
| optional_function_t<void() const> check = default_check |
Definition at line 114 of file type-erased-problem.hpp.
| optional_function_t<std::string() const> get_name = default_get_name |
Definition at line 116 of file type-erased-problem.hpp.
| length_t n |
Definition at line 303 of file type-erased-problem.hpp.
| length_t m |
Definition at line 303 of file type-erased-problem.hpp.