#include <alpaqa/include/alpaqa/problem/ocproblem.hpp>
Definition at line 557 of file ocproblem.hpp.
Public Types | |
using | Box = typename TypeErasedControlProblem< config_t >::Box |
Public Member Functions | |
length_t | get_N () const |
length_t | get_nu () const |
length_t | get_nx () const |
length_t | get_nh () const |
length_t | get_nh_N () const |
length_t | get_nc () const |
length_t | get_nc_N () const |
void | eval_proj_diff_g (crvec z, rvec e) const |
void | eval_proj_multipliers (rvec y, real_t M) const |
void | get_x_init (rvec x_init) const |
length_t | get_R_work_size () const |
length_t | get_S_work_size () const |
void | get_U (Box &U) const |
void | get_D (Box &D) const |
void | get_D_N (Box &D) const |
void | eval_f (index_t timestep, crvec x, crvec u, rvec fxu) const |
void | eval_jac_f (index_t timestep, crvec x, crvec u, rmat J_fxu) const |
void | eval_grad_f_prod (index_t timestep, crvec x, crvec u, crvec p, rvec grad_fxu_p) const |
void | eval_h (index_t timestep, crvec x, crvec u, rvec h) const |
void | eval_h_N (crvec x, rvec h) const |
real_t | eval_l (index_t timestep, crvec h) const |
real_t | eval_l_N (crvec h) const |
void | eval_qr (index_t timestep, crvec xu, crvec h, rvec qr) const |
void | eval_q_N (crvec x, crvec h, rvec q) const |
void | eval_add_Q (index_t timestep, crvec xu, crvec h, rmat Q) const |
void | eval_add_Q_N (crvec x, crvec h, rmat Q) const |
void | eval_add_R_masked (index_t timestep, crvec xu, crvec h, crindexvec mask, rmat R, rvec work) const |
void | eval_add_S_masked (index_t timestep, crvec xu, crvec h, crindexvec mask, rmat S, rvec work) const |
void | eval_add_R_prod_masked (index_t timestep, crvec xu, crvec h, crindexvec mask_J, crindexvec mask_K, crvec v, rvec out, rvec work) const |
void | eval_add_S_prod_masked (index_t timestep, crvec xu, crvec h, crindexvec mask_K, crvec v, rvec out, rvec work) const |
void | eval_constr (index_t timestep, crvec x, rvec c) const |
void | eval_constr_N (crvec x, rvec c) const |
void | eval_grad_constr_prod (index_t timestep, crvec x, crvec p, rvec grad_cx_p) const |
void | eval_grad_constr_prod_N (crvec x, crvec p, rvec grad_cx_p) const |
void | eval_add_gn_hess_constr (index_t timestep, crvec x, crvec M, rmat out) const |
void | eval_add_gn_hess_constr_N (crvec x, crvec M, rmat out) const |
void | check () const |
bool | provides_get_D () const |
bool | provides_get_D_N () const |
bool | provides_eval_add_Q_N () const |
bool | provides_eval_add_R_prod_masked () const |
bool | provides_eval_add_S_prod_masked () const |
bool | provides_get_R_work_size () const |
bool | provides_get_S_work_size () const |
bool | provides_eval_constr () const |
bool | provides_eval_constr_N () const |
bool | provides_eval_grad_constr_prod () const |
bool | provides_eval_grad_constr_prod_N () const |
bool | provides_eval_add_gn_hess_constr () const |
bool | provides_eval_add_gn_hess_constr_N () const |
ControlProblemWithCounters ()=default | |
template<class P > requires std::is_same_v<std::remove_cvref_t<P>, std::remove_cvref_t<Problem>> | |
ControlProblemWithCounters (P &&problem) | |
template<class... Args> requires (!std::is_lvalue_reference_v<Problem>) | |
ControlProblemWithCounters (std::in_place_t, Args &&...args) | |
void | reset_evaluations () |
Reset all evaluation counters and timers to zero. | |
void | decouple_evaluations () |
Give this instance its own evaluation counters and timers, decoupling it from any other instances they might have previously been shared with. | |
Public Attributes | |
std::shared_ptr< OCPEvalCounter > | evaluations = std::make_shared<OCPEvalCounter>() |
Problem | problem |
Static Private Member Functions | |
template<class TimeT , class FunT > | |
static decltype(auto) | timed (TimeT &time, FunT &&f) |
using Box = typename TypeErasedControlProblem<config_t>::Box |
Definition at line 559 of file ocproblem.hpp.
|
default |
|
inlineexplicit |
Definition at line 623 of file ocproblem.hpp.
|
inlineexplicit |
Definition at line 627 of file ocproblem.hpp.
|
inline |
Definition at line 561 of file ocproblem.hpp.
|
inline |
Definition at line 562 of file ocproblem.hpp.
|
inline |
Definition at line 563 of file ocproblem.hpp.
|
inline |
Definition at line 564 of file ocproblem.hpp.
|
inline |
Definition at line 565 of file ocproblem.hpp.
|
inline |
Definition at line 566 of file ocproblem.hpp.
|
inline |
Definition at line 567 of file ocproblem.hpp.
Definition at line 570 of file ocproblem.hpp.
Definition at line 571 of file ocproblem.hpp.
|
inline |
Definition at line 572 of file ocproblem.hpp.
|
inline |
Definition at line 573 of file ocproblem.hpp.
|
inline |
Definition at line 574 of file ocproblem.hpp.
|
inline |
Definition at line 575 of file ocproblem.hpp.
|
inline |
Definition at line 576 of file ocproblem.hpp.
|
inline |
Definition at line 577 of file ocproblem.hpp.
Definition at line 586 of file ocproblem.hpp.
Definition at line 588 of file ocproblem.hpp.
|
inline |
Definition at line 591 of file ocproblem.hpp.
|
inline |
Definition at line 592 of file ocproblem.hpp.
Definition at line 593 of file ocproblem.hpp.
Definition at line 594 of file ocproblem.hpp.
Definition at line 595 of file ocproblem.hpp.
Definition at line 596 of file ocproblem.hpp.
Definition at line 597 of file ocproblem.hpp.
Definition at line 598 of file ocproblem.hpp.
|
inline |
Definition at line 599 of file ocproblem.hpp.
|
inline |
Definition at line 601 of file ocproblem.hpp.
|
inline |
Definition at line 602 of file ocproblem.hpp.
|
inline |
Definition at line 603 of file ocproblem.hpp.
|
inline |
Definition at line 604 of file ocproblem.hpp.
|
inline |
Definition at line 605 of file ocproblem.hpp.
|
inline |
Definition at line 606 of file ocproblem.hpp.
|
inline |
Definition at line 607 of file ocproblem.hpp.
|
inline |
Definition at line 608 of file ocproblem.hpp.
|
inline |
Definition at line 609 of file ocproblem.hpp.
|
inline |
Definition at line 610 of file ocproblem.hpp.
|
inline |
Definition at line 611 of file ocproblem.hpp.
|
inline |
Definition at line 612 of file ocproblem.hpp.
|
inline |
Definition at line 613 of file ocproblem.hpp.
|
inline |
Reset all evaluation counters and timers to zero.
Affects all instances that share the same evaluations. If you only want to reset the counters of this instance, use decouple_evaluations first.
Definition at line 634 of file ocproblem.hpp.
|
inline |
Give this instance its own evaluation counters and timers, decoupling it from any other instances they might have previously been shared with.
The evaluation counters and timers are preserved (a copy is made).
Definition at line 638 of file ocproblem.hpp.
|
inlinestaticprivate |
Definition at line 642 of file ocproblem.hpp.
std::shared_ptr<OCPEvalCounter> evaluations = std::make_shared<OCPEvalCounter>() |
Definition at line 616 of file ocproblem.hpp.
Problem problem |
Definition at line 617 of file ocproblem.hpp.