List of all members | Public Member Functions
casadi::AlpaqaProblem Class Reference

#include <alpaqa_problem.hpp>

Detailed Description

Definition at line 14 of file alpaqa_problem.hpp.

Inheritance diagram for casadi::AlpaqaProblem:
Inheritance graph
[legend]
Collaboration diagram for casadi::AlpaqaProblem:
Collaboration graph
[legend]

Public Member Functions

 AlpaqaProblem (const AlpaqaInterface &solver, AlpaqaMemory *mem)
 
 ~AlpaqaProblem ()
 
real_t eval_f (crvec x) const
 
void eval_grad_f (crvec x, rvec grad_fx) const
 
real_t eval_f_grad_f (crvec x, rvec grad_fx) const
 
void eval_g (crvec x, rvec g) const
 
void eval_grad_g_prod (crvec x, crvec y, rvec grad_gxy) const
 
void eval_grad_ψ (crvec x, crvec y, crvec Σ, rvec grad_ψ, rvec work_n, rvec work_m) const
 
real_t eval_ψ_grad_ψ (crvec x, crvec y, crvec Σ, rvec grad_ψ, rvec work_n, rvec work_m) const
 
void eval_grad_L (crvec x, crvec y, rvec grad_L, rvec work_n) const
 
real_t eval_ψ (crvec x, crvec y, crvec Σ, rvec ŷ) const
 
void eval_grad_gi (crvec x, index_t i, rvec grad_i) const
 
length_t get_jac_g_num_nonzeros () const
 
void eval_jac_g (crvec x, rindexvec inner_idx, rindexvec outer_ptr, rvec J_values) const
 
void eval_hess_L_prod (crvec x, crvec y, real_t scale, crvec v, rvec Hv) const
 
length_t get_hess_L_num_nonzeros () const
 
void eval_hess_L (crvec x, crvec y, real_t scale, rindexvec inner_idx, rindexvec outer_ptr, rvec H_values) const
 
void eval_hess_ψ_prod (crvec x, crvec y, crvec Σ, real_t scale, crvec v, rvec Hv) const
 
length_t get_hess_ψ_num_nonzeros () const
 
void eval_hess_ψ (crvec x, crvec y, crvec Σ, real_t scale, rindexvec inner_idx, rindexvec outer_ptr, rvec H_values) const
 
bool provides_eval_grad_gi () const
 
bool provides_eval_jac_g () const
 
bool provides_eval_hess_L_prod () const
 
bool provides_eval_hess_L () const
 
bool provides_eval_hess_ψ_prod () const
 
bool provides_eval_hess_ψ () const
 

Constructor & Destructor Documentation

◆ AlpaqaProblem()

casadi::AlpaqaProblem::AlpaqaProblem ( const AlpaqaInterface solver,
AlpaqaMemory mem 
)

Definition at line 7 of file alpaqa_problem.cpp.

8  : alpaqa::BoxConstrProblem<alpaqa::DefaultConfig>{
9  static_cast<alpaqa::DefaultConfig::length_t>(solver.nx_),
10  static_cast<alpaqa::DefaultConfig::length_t>(solver.ng_)},
11  solver_(solver), mem_(mem) {
12 
13 }

References casadi::Nlpsol::ng_, and casadi::Nlpsol::nx_.

◆ ~AlpaqaProblem()

casadi::AlpaqaProblem::~AlpaqaProblem ( )
default

Member Function Documentation

◆ eval_f()

double casadi::AlpaqaProblem::eval_f ( crvec  x) const

Definition at line 21 of file alpaqa_problem.cpp.

21  {
22  double obj_value;
23  mem_->arg[0] = x.data();
24  mem_->arg[1] = mem_->d_nlp.p;
25  mem_->res[0] = &obj_value;
26  try {
27  casadi_assert(solver_.calc_function(mem_, "nlp_f")==0, "Failing evaluating eval_f");
28  } catch(KeyboardInterruptException& ex) {
29  casadi_warning("KeyboardInterruptException");
30  throw KeyboardInterruptException();
31  } catch (std::exception& ex) {
32  if (solver_.show_eval_warnings_) {
33  casadi_warning("AlpaqaProblem::eval_f failed:" + std::string(ex.what()));
34  }
35  }
36 
37  return obj_value;
38 }
int calc_function(OracleMemory *m, const std::string &fcn, const double *const *arg=nullptr, int thread_id=0) const
bool show_eval_warnings_
Show evaluation warnings.
casadi_nlpsol_data< double > d_nlp
Definition: nlpsol_impl.hpp:42

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::NlpsolMemory::d_nlp, casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

Referenced by casadi::AlpaqaInterface::solve().

◆ eval_f_grad_f()

double casadi::AlpaqaProblem::eval_f_grad_f ( crvec  x,
rvec  grad_fx 
) const

Definition at line 44 of file alpaqa_problem.cpp.

44  {
45  double obj_value;
46  mem_->arg[0] = x.data();
47  mem_->arg[1] = mem_->d_nlp.p;
48  mem_->res[0] = &obj_value;
49  mem_->res[1] = grad_fx.data();
50  try {
51  casadi_assert(solver_.calc_function(mem_, "nlp_f_grad_f")==0, "Failing evaluating eval_f_grad_f");
52  } catch(KeyboardInterruptException& ex) {
53  casadi_warning("KeyboardInterruptException");
54  throw KeyboardInterruptException();
55  } catch (std::exception& ex) {
56  if (solver_.show_eval_warnings_) {
57  casadi_warning("AlpaqaProblem::eval_f_grad_f failed:" + std::string(ex.what()));
58  }
59  }
60  return obj_value;
61 }

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::NlpsolMemory::d_nlp, casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

Referenced by eval_grad_f().

◆ eval_g()

void casadi::AlpaqaProblem::eval_g ( crvec  x,
rvec  g 
) const

Definition at line 76 of file alpaqa_problem.cpp.

76  {
77  mem_->arg[0] = x.data();
78  mem_->arg[1] = mem_->d_nlp.p;
79  mem_->res[0] = g.data();
80  try {
81  casadi_assert(solver_.calc_function(mem_, "nlp_g")==0, "Failing evaluating eval_f_grad_f");
82  } catch(KeyboardInterruptException& ex) {
83  casadi_warning("KeyboardInterruptException");
84  throw KeyboardInterruptException();
85  } catch (std::exception& ex) {
86  if (solver_.show_eval_warnings_) {
87  casadi_warning("AlpaqaProblem::eval_g failed:" + std::string(ex.what()));
88  }
89  }
90 }

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::NlpsolMemory::d_nlp, casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

Referenced by casadi::AlpaqaInterface::solve().

◆ eval_grad_f()

void casadi::AlpaqaProblem::eval_grad_f ( crvec  x,
rvec  grad_fx 
) const

Definition at line 40 of file alpaqa_problem.cpp.

40  {
41  eval_f_grad_f(x, grad_fx);
42 }
real_t eval_f_grad_f(crvec x, rvec grad_fx) const

References eval_f_grad_f().

◆ eval_grad_g_prod()

void casadi::AlpaqaProblem::eval_grad_g_prod ( crvec  x,
crvec  y,
rvec  grad_gxy 
) const

Definition at line 165 of file alpaqa_problem.cpp.

165  {
166  casadi_error("Not implemented");
167 }

◆ eval_grad_gi()

void casadi::AlpaqaProblem::eval_grad_gi ( crvec  x,
index_t  i,
rvec  grad_i 
) const

Definition at line 169 of file alpaqa_problem.cpp.

169  {
170  casadi_error("Not implemented");
171 }

◆ eval_grad_L()

void casadi::AlpaqaProblem::eval_grad_L ( crvec  x,
crvec  y,
rvec  grad_L,
rvec  work_n 
) const

Definition at line 225 of file alpaqa_problem.cpp.

226  {
227  mem_->arg[0] = x.data();
228  mem_->arg[1] = mem_->d_nlp.p;
229  mem_->arg[2] = y.data();
230  mem_->res[0] = grad_L.data();
231  try {
232  casadi_assert(solver_.calc_function(mem_, "nlp_grad_L")==0, "Failing evaluating eval_f_grad_f");
233  } catch(KeyboardInterruptException& ex) {
234  casadi_warning("KeyboardInterruptException");
235  throw KeyboardInterruptException();
236  } catch (std::exception& ex) {
237  if (solver_.show_eval_warnings_) {
238  casadi_warning("AlpaqaProblem::eval_grad_L failed:" + std::string(ex.what()));
239  }
240  }
241 }

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::NlpsolMemory::d_nlp, casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

◆ eval_grad_ψ()

void casadi::AlpaqaProblem::eval_grad_ψ ( crvec  x,
crvec  y,
crvec  Σ,
rvec  grad_ψ,
rvec  work_n,
rvec  work_m 
) const

Definition at line 220 of file alpaqa_problem.cpp.

221  {
222  eval_ψ_grad_ψ(x, y, Σ, grad_ψ, a, b);
223 }
real_t eval_ψ_grad_ψ(crvec x, crvec y, crvec Σ, rvec grad_ψ, rvec work_n, rvec work_m) const

References eval_ψ_grad_ψ().

◆ eval_hess_L()

void casadi::AlpaqaProblem::eval_hess_L ( crvec  x,
crvec  y,
real_t  scale,
rindexvec  inner_idx,
rindexvec  outer_ptr,
rvec  H_values 
) const

Definition at line 117 of file alpaqa_problem.cpp.

119  {
120  if (H_values.size()>0) {
121  mem_->arg[0] = x.data();
122  mem_->arg[1] = mem_->d_nlp.p;
123  mem_->arg[2] = y.data();
124  mem_->arg[3] = &scale;
125  mem_->res[0] = H_values.data();
126  try {
127  casadi_assert(solver_.calc_function(mem_, "nlp_hess_L")==0, "Failing evaluating eval_f_grad_f");
128  } catch(KeyboardInterruptException& ex) {
129  casadi_warning("KeyboardInterruptException");
130  throw KeyboardInterruptException();
131  } catch (std::exception& ex) {
132  if (solver_.show_eval_warnings_) {
133  casadi_warning("AlpaqaProblem::eval_hess_L failed:" + std::string(ex.what()));
134  }
135  }
136  } else {
137  const Sparsity& sp = solver_.get_function("nlp_hess_L").sparsity_out(0);
138  if (!sp.is_dense()) {
139  copy(sp.row(), sp.nnz(), inner_idx.data());
140  copy(sp.colind(), get_n()+1, outer_ptr.data());
141  }
142  }
143 }
std::vector< std::string > get_function() const override
Get list of dependency functions.
void copy(const T1 *x, casadi_int n, T2 *y)

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::Sparsity::colind(), casadi::copy(), casadi::NlpsolMemory::d_nlp, casadi::OracleFunction::get_function(), casadi::Sparsity::is_dense(), casadi::Sparsity::nnz(), casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::Sparsity::row(), casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

◆ eval_hess_L_prod()

void casadi::AlpaqaProblem::eval_hess_L_prod ( crvec  x,
crvec  y,
real_t  scale,
crvec  v,
rvec  Hv 
) const

Definition at line 145 of file alpaqa_problem.cpp.

146  {
147  mem_->arg[0] = x.data();
148  mem_->arg[1] = mem_->d_nlp.p;
149  mem_->arg[2] = y.data();
150  mem_->arg[3] = &scale;
151  mem_->arg[4] = v.data();
152  mem_->res[0] = Hv.data();
153  try {
154  casadi_assert(solver_.calc_function(mem_, "nlp_hess_L_prod")==0, "Failing evaluating eval_f_grad_f");
155  } catch(KeyboardInterruptException& ex) {
156  casadi_warning("KeyboardInterruptException");
157  throw KeyboardInterruptException();
158  } catch (std::exception& ex) {
159  if (solver_.show_eval_warnings_) {
160  casadi_warning("AlpaqaProblem::eval_hess_L_prod failed:" + std::string(ex.what()));
161  }
162  }
163 }

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::NlpsolMemory::d_nlp, casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

◆ eval_hess_ψ()

void casadi::AlpaqaProblem::eval_hess_ψ ( crvec  x,
crvec  y,
crvec  Σ,
real_t  scale,
rindexvec  inner_idx,
rindexvec  outer_ptr,
rvec  H_values 
) const

Definition at line 243 of file alpaqa_problem.cpp.

245  {
246  if (H_values.size()>0) {
247  mem_->arg[0] = x.data();
248  mem_->arg[1] = mem_->d_nlp.p;
249  mem_->arg[2] = y.data();
250  mem_->arg[3] = Σ.data();
251  mem_->arg[4] = &scale;
252  mem_->arg[5] = this->D.lowerbound.data();
253  mem_->arg[6] = this->D.upperbound.data();
254  mem_->res[0] = H_values.data();
255  try {
256  casadi_assert(solver_.calc_function(mem_, "nlp_hess_psi")==0, "Failing evaluating eval_f_grad_f");
257  } catch(KeyboardInterruptException& ex) {
258  casadi_warning("KeyboardInterruptException");
259  throw KeyboardInterruptException();
260  } catch (std::exception& ex) {
261  if (solver_.show_eval_warnings_) {
262  casadi_warning("AlpaqaProblem::eval_hess_psi failed:" + std::string(ex.what()));
263  }
264  }
265  } else {
266  const Sparsity& sp = solver_.get_function("nlp_hess_psi").sparsity_out(0);
267  if (!sp.is_dense()) {
268  copy(sp.row(), sp.nnz(), inner_idx.data());
269  copy(sp.colind(), get_n()+1, outer_ptr.data());
270  }
271  }
272 }

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::Sparsity::colind(), casadi::copy(), casadi::D, casadi::NlpsolMemory::d_nlp, casadi::OracleFunction::get_function(), casadi::Sparsity::is_dense(), casadi::Sparsity::nnz(), casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::Sparsity::row(), casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

◆ eval_hess_ψ_prod()

void casadi::AlpaqaProblem::eval_hess_ψ_prod ( crvec  x,
crvec  y,
crvec  Σ,
real_t  scale,
crvec  v,
rvec  Hv 
) const

Definition at line 274 of file alpaqa_problem.cpp.

276  {
277  mem_->arg[0] = x.data();
278  mem_->arg[1] = mem_->d_nlp.p;
279  mem_->arg[2] = y.data();
280  mem_->arg[3] = Σ.data();
281  mem_->arg[4] = &scale;
282  mem_->arg[5] = this->D.lowerbound.data();
283  mem_->arg[6] = this->D.upperbound.data();
284  mem_->arg[7] = v.data();
285  mem_->res[0] = Hv.data();
286  try {
287  casadi_assert(solver_.calc_function(mem_, "nlp_hess_psi_prod")==0, "Failing evaluating eval_f_grad_f");
288  } catch(KeyboardInterruptException& ex) {
289  casadi_warning("KeyboardInterruptException");
290  throw KeyboardInterruptException();
291  } catch (std::exception& ex) {
292  if (solver_.show_eval_warnings_) {
293  casadi_warning("AlpaqaProblem::eval_hess_psi_prod failed:" + std::string(ex.what()));
294  }
295  }
296 }

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::D, casadi::NlpsolMemory::d_nlp, casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

◆ eval_jac_g()

void casadi::AlpaqaProblem::eval_jac_g ( crvec  x,
rindexvec  inner_idx,
rindexvec  outer_ptr,
rvec  J_values 
) const

Definition at line 92 of file alpaqa_problem.cpp.

93  {
94  if (J_values.size()>0) {
95  mem_->arg[0] = x.data();
96  mem_->arg[1] = mem_->d_nlp.p;
97  mem_->res[0] = J_values.data();
98  try {
99  casadi_assert(solver_.calc_function(mem_, "nlp_jac_g")==0, "Failing evaluating eval_f_grad_f");
100  } catch(KeyboardInterruptException& ex) {
101  casadi_warning("KeyboardInterruptException");
102  throw KeyboardInterruptException();
103  } catch (std::exception& ex) {
104  if (solver_.show_eval_warnings_) {
105  casadi_warning("AlpaqaProblem::eval_jac_g failed:" + std::string(ex.what()));
106  }
107  }
108  } else {
109  const Sparsity& sp = solver_.jacg_sp_;
110  if (!sp.is_dense()) {
111  copy(sp.row(), sp.nnz(), inner_idx.data());
112  copy(sp.colind(), get_n()+1, outer_ptr.data());
113  }
114  }
115 }

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::Sparsity::colind(), casadi::copy(), casadi::NlpsolMemory::d_nlp, casadi::Sparsity::is_dense(), casadi::AlpaqaInterface::jacg_sp_, casadi::Sparsity::nnz(), casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::Sparsity::row(), casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

◆ eval_ψ()

double casadi::AlpaqaProblem::eval_ψ ( crvec  x,
crvec  y,
crvec  Σ,
rvec  ŷ 
) const

Definition at line 173 of file alpaqa_problem.cpp.

173  {
174  double res;
175  mem_->arg[0] = x.data();
176  mem_->arg[1] = mem_->d_nlp.p;
177  mem_->arg[2] = y.data();
178  mem_->arg[3] = Σ.data();
179  mem_->arg[4] = this->D.lowerbound.data();
180  mem_->arg[5] = this->D.upperbound.data();
181  mem_->res[0] = &res;
182  mem_->res[1] = ŷ.data();
183  try {
184  casadi_assert(solver_.calc_function(mem_, "nlp_psi")==0, "Failing evaluating eval_f_grad_f");
185  } catch(KeyboardInterruptException& ex) {
186  casadi_warning("KeyboardInterruptException");
187  throw KeyboardInterruptException();
188  } catch (std::exception& ex) {
189  if (solver_.show_eval_warnings_) {
190  casadi_warning("AlpaqaProblem::eval_psi failed:" + std::string(ex.what()));
191  }
192  }
193  return res;
194 }

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::D, casadi::NlpsolMemory::d_nlp, casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

◆ eval_ψ_grad_ψ()

double casadi::AlpaqaProblem::eval_ψ_grad_ψ ( crvec  x,
crvec  y,
crvec  Σ,
rvec  grad_ψ,
rvec  work_n,
rvec  work_m 
) const

Definition at line 196 of file alpaqa_problem.cpp.

197  {
198  double res;
199  mem_->arg[0] = x.data();
200  mem_->arg[1] = mem_->d_nlp.p;
201  mem_->arg[2] = y.data();
202  mem_->arg[3] = Σ.data();
203  mem_->arg[4] = this->D.lowerbound.data();
204  mem_->arg[5] = this->D.upperbound.data();
205  mem_->res[0] = &res;
206  mem_->res[1] = grad_ψ.data();
207  try {
208  casadi_assert(solver_.calc_function(mem_, "nlp_grad_psi")==0, "Failing evaluating eval_f_grad_f");
209  } catch(KeyboardInterruptException& ex) {
210  casadi_warning("KeyboardInterruptException");
211  throw KeyboardInterruptException();
212  } catch (std::exception& ex) {
213  if (solver_.show_eval_warnings_) {
214  casadi_warning("AlpaqaProblem::eval_grad_psi failed:" + std::string(ex.what()));
215  }
216  }
217  return res;
218 }

References casadi::OracleMemory::arg, casadi::OracleFunction::calc_function(), casadi::D, casadi::NlpsolMemory::d_nlp, casadi_nlpsol_data< T1 >::p, casadi::OracleMemory::res, casadi::OracleFunction::show_eval_warnings_, and casadi::CasadiException::what().

Referenced by eval_grad_ψ().

◆ get_hess_L_num_nonzeros()

alpaqa::DefaultConfig::length_t casadi::AlpaqaProblem::get_hess_L_num_nonzeros ( ) const

Definition at line 298 of file alpaqa_problem.cpp.

298  {
299  const Sparsity& sp = solver_.get_function("nlp_hess_L").sparsity_out(0);
300  return sp.is_dense() ? 0 : sp.nnz();
301 }

References casadi::OracleFunction::get_function(), casadi::Sparsity::is_dense(), and casadi::Sparsity::nnz().

◆ get_hess_ψ_num_nonzeros()

alpaqa::DefaultConfig::length_t casadi::AlpaqaProblem::get_hess_ψ_num_nonzeros ( ) const

Definition at line 303 of file alpaqa_problem.cpp.

303  {
304  const Sparsity& sp = solver_.get_function("nlp_hess_psi").sparsity_out(0);
305  return sp.is_dense() ? 0 : sp.nnz();
306 }

References casadi::OracleFunction::get_function(), casadi::Sparsity::is_dense(), and casadi::Sparsity::nnz().

◆ get_jac_g_num_nonzeros()

alpaqa::DefaultConfig::length_t casadi::AlpaqaProblem::get_jac_g_num_nonzeros ( ) const

Definition at line 309 of file alpaqa_problem.cpp.

309  {
310  const Sparsity& sp = solver_.jacg_sp_;
311  return sp.is_dense() ? 0 : sp.nnz();
312 }
bool is_dense() const
Is dense?
Definition: sparsity.cpp:273

References casadi::Sparsity::is_dense(), casadi::AlpaqaInterface::jacg_sp_, and casadi::Sparsity::nnz().

◆ provides_eval_grad_gi()

bool casadi::AlpaqaProblem::provides_eval_grad_gi ( ) const
inline
See also
TypeErasedProblem::provides_eval_grad_gi

Definition at line 46 of file alpaqa_problem.hpp.

46 { return false; }

◆ provides_eval_hess_L()

bool casadi::AlpaqaProblem::provides_eval_hess_L ( ) const
inline
See also
TypeErasedProblem::provides_eval_hess_L

Definition at line 52 of file alpaqa_problem.hpp.

52 { return true; }

◆ provides_eval_hess_L_prod()

bool casadi::AlpaqaProblem::provides_eval_hess_L_prod ( ) const
inline
See also
TypeErasedProblem::provides_eval_hess_L_prod

Definition at line 50 of file alpaqa_problem.hpp.

50 { return true; }

◆ provides_eval_hess_ψ()

bool casadi::AlpaqaProblem::provides_eval_hess_ψ ( ) const
inline
See also
TypeErasedProblem::provides_eval_hess_ψ

Definition at line 56 of file alpaqa_problem.hpp.

56 { return true; }

◆ provides_eval_hess_ψ_prod()

bool casadi::AlpaqaProblem::provides_eval_hess_ψ_prod ( ) const
inline
See also
TypeErasedProblem::provides_eval_hess_ψ_prod

Definition at line 54 of file alpaqa_problem.hpp.

54 { return true; }

◆ provides_eval_jac_g()

bool casadi::AlpaqaProblem::provides_eval_jac_g ( ) const
inline
See also
TypeErasedProblem::provides_eval_jac_g

Definition at line 48 of file alpaqa_problem.hpp.

48 { return true; }

The documentation for this class was generated from the following files: