4#include <alpaqa/cutest-interface-export.h>
7#include <guanaqo/copyable-unique_ptr.hpp>
8#include <guanaqo/dl-flags.hpp>
15using guanaqo::DynamicLoadFlags;
29 CUTEstProblem(
const char *so_fname,
const char *outsdif_fname =
nullptr,
30 bool sparse =
false, DynamicLoadFlags dl_flags = {});
80 std::string
name =
"<UNKNOWN>";
85 guanaqo::copyable_unique_ptr<class CUTEstLoader>
impl;
91 }
mutable storage_jac_g, storage_hess_L;
95 void eval_objective_gradient(
crvec x,
rvec grad_fx)
const;
96 void eval_constraints(
crvec x,
rvec gx)
const;
97 void eval_constraints_gradient_product(
crvec x,
crvec y,
100 void eval_constraints_jacobian(
crvec x,
rvec J_values)
const;
101 [[nodiscard]] Sparsity get_constraints_jacobian_sparsity()
const;
106 rvec H_values)
const;
107 [[nodiscard]] Sparsity get_lagrangian_hessian_sparsity()
const;
108 void eval_augmented_lagrangian_hessian_product(
crvec x,
crvec y,
crvec Σ,
111 [[nodiscard]]
real_t eval_objective_and_gradient(
crvec x,
113 [[nodiscard]]
real_t eval_objective_and_constraints(
crvec x,
rvec g)
const;
BoxConstrProblem(length_t num_variables, length_t num_constraints)
std::string get_name() const
Eigen::VectorX< int > cols
Calls calls
Function call counters.
unsigned constraints_grad
Number of calls to the constraint gradients.
double time_setup
CPU time (in seconds) for CUTEST_csetup.
Report get_report() const
CUTEstProblem(const char *so_fname, const char *outsdif_fname=nullptr, bool sparse=false, DynamicLoadFlags dl_flags={})
Load a CUTEst problem from the given shared library and OUTSDIF.d file.
unsigned objective
Number of calls to the objective function.
CUTEstProblem(CUTEstProblem &&) noexcept
CUTEstProblem(const CUTEstProblem &)
unsigned constraints
Number of calls to the constraint functions.
std::string name
Problem name.
Eigen::VectorX< int > rows
vec y0
Initial value of Lagrange multipliers.
unsigned hessian_times_vector
Number of Hessian times vector products.
double time
CPU time (in seconds) since the end of CUTEST_csetup.
vec x0
Initial value of decision variables.
unsigned objective_hess
Number of calls to the objective Hessian.
std::ostream & format_report(std::ostream &os, const Report &r) const
guanaqo::copyable_unique_ptr< class CUTEstLoader > impl
unsigned constraints_hess
Number of calls to the constraint Hessians.
CUTEstProblem & operator=(const CUTEstProblem &)
std::ostream & format_report(std::ostream &os) const
unsigned objective_grad
Number of calls to the objective gradient.
The report generated by CUTEst.
#define USING_ALPAQA_CONFIG(Conf)
typename Conf::real_t real_t
typename Conf::index_t index_t
typename Conf::crvec crvec
Double-precision double configuration.