#include <alpaqa/casadi/CasADiFunctionWrapper.hpp>
Class for evaluating CasADi functions, allocating the necessary workspace storage in advance for allocation-free evaluations.
Definition at line 17 of file CasADiFunctionWrapper.hpp.
Public Types | |
using | casadi_dim = std::pair< casadi_int, casadi_int > |
Public Member Functions | |
CasADiFunctionEvaluator (casadi::Function &&f) | |
CasADiFunctionEvaluator (casadi::Function &&f, const std::array< casadi_dim, N_in > &dim_in, const std::array< casadi_dim, N_out > &dim_out) | |
void | validate_dimensions (const std::array< casadi_dim, N_in > &dim_in={}, const std::array< casadi_dim, N_out > &dim_out={}) |
void | operator() (const double *const (&in)[N_in], double *const (&out)[N_out]) const |
Public Attributes | |
casadi::Function | fun |
Protected Member Functions | |
void | operator() (const double *const *in, double *const *out) const |
Private Attributes | |
std::vector< casadi_int > | iwork |
std::vector< double > | dwork |
std::vector< const double * > | arg_work |
std::vector< double * > | res_work |
using casadi_dim = std::pair<casadi_int, casadi_int> |
Definition at line 22 of file CasADiFunctionWrapper.hpp.
|
inline |
std::invalid_argument |
Definition at line 25 of file CasADiFunctionWrapper.hpp.
|
inline |
std::invalid_argument |
Definition at line 42 of file CasADiFunctionWrapper.hpp.
|
inline |
std::invalid_argument |
Definition at line 51 of file CasADiFunctionWrapper.hpp.
|
inlineprotected |
Definition at line 82 of file CasADiFunctionWrapper.hpp.
|
inline |
casadi::Function fun |
Definition at line 95 of file CasADiFunctionWrapper.hpp.
|
mutableprivate |
Definition at line 98 of file CasADiFunctionWrapper.hpp.
|
mutableprivate |
Definition at line 99 of file CasADiFunctionWrapper.hpp.
|
mutableprivate |
Definition at line 100 of file CasADiFunctionWrapper.hpp.
|
mutableprivate |
Definition at line 101 of file CasADiFunctionWrapper.hpp.