A simplified interface for NLP modeling/solving. More...
#include <optistack_internal.hpp>
Extra doc: https://github.com/casadi/casadi/wiki/L_172
Definition at line 55 of file optistack_internal.hpp.
Public Types | |
using | weak_ref_type = WeakRefInternal |
Public Member Functions | |
OptiNode (const std::string &problem_type) | |
Create Opti Context. More... | |
~OptiNode () | |
Destructor. More... | |
MX | variable (casadi_int n=1, casadi_int m=1, const std::string &attribute="full") |
Create a decision variable (symbol) More... | |
MX | variable (const Sparsity &sp, const std::string &attribute="full") |
MX | variable (const MX &symbol, const std::string &attribute="full") |
MX | parameter (casadi_int n=1, casadi_int m=1, const std::string &attribute="full") |
Create a parameter (symbol); fixed during optimization. More... | |
MX | parameter (const Sparsity &sp, const std::string &attribute="full") |
Create a parameter (symbol); fixed during optimization. More... | |
MX | parameter (const MX &symbol, const std::string &attribute="full") |
void | minimize (const MX &f, double linear_scale=1) |
Set objective. More... | |
void | subject_to (const MX &g, const DM &linear_scale=1, const Dict &options=Dict()) |
brief Add constraints More... | |
void | subject_to () |
Clear constraints. More... | |
void | solver (const std::string &solver, const Dict &plugin_options=Dict(), const Dict &solver_options=Dict()) |
Solver. More... | |
void | set_domain (const MX &x, const std::string &domain) |
Set domain of variable. More... | |
void | set_linear_scale (const MX &x, const DM &scale, const DM &offset) |
Set scale of a decision variable. More... | |
OptiSol | solve (bool accept_limit) |
Crunch the numbers; solve the problem. More... | |
Opti | copy () const |
Copy. More... | |
Dict | stats () const |
Get statistics. More... | |
std::string | return_status () const |
Get return status of solver. More... | |
bool | return_success (bool accept_limit) const |
Did the solver return successfully? More... | |
Function | casadi_solver () const |
Get the underlying CasADi solver of the Opti stack. More... | |
Function | scale_helper (const Function &h) const |
Scale a helper function constructed via opti.x, opti.g, ... More... | |
std::vector< MX > | initial () const |
get assignment expressions for initial values More... | |
std::vector< MX > | value_variables () const |
get assignment expressions for latest values More... | |
std::vector< MX > | value_parameters () const |
void | callback_class (OptiCallback *callback) |
void | callback_class () |
bool | has_callback_class () const |
bool | is_parametric (const MX &expr) const |
return true if expression is only dependant on Opti parameters, not variables More... | |
MetaCon | canon_expr (const MX &expr, const DM &linear_scale=1) const |
Interpret an expression (for internal use only) More... | |
MetaVar | get_meta (const MX &m) const |
Get meta-data of symbol (for internal use only) More... | |
MetaCon | get_meta_con (const MX &m) const |
Get meta-data of symbol (for internal use only) More... | |
void | set_meta (const MX &m, const MetaVar &meta) |
Set meta-data of an expression. More... | |
void | set_meta_con (const MX &m, const MetaCon &meta) |
Set meta-data of an expression. More... | |
void | update_user_dict (const MX &m, const Dict &meta) |
add meta-data of an expression More... | |
Dict | user_dict (const MX &m) const |
MX | dual (const MX &m) const |
get the dual variable More... | |
void | assert_active_symbol (const MX &m) const |
std::vector< MX > | active_symvar (VariableType type) const |
std::vector< DM > | active_values (VariableType type) const |
std::vector< DM > | active_values (VariableType type, const std::map< VariableType, std::vector< DM > > &store) const |
MX | x_lookup (casadi_int i) const |
MX | g_lookup (casadi_int i) const |
std::string | x_describe (casadi_int i, const Dict &opts=Dict()) const |
std::string | g_describe (casadi_int i, const Dict &opts=Dict()) const |
std::string | describe (const MX &x, casadi_int indent=0, const Dict &opts=Dict()) const |
void | solve_prepare () |
Function | solver_construct (bool callback=true) |
DMDict | solve_actual (const DMDict &args) |
DMDict | arg () const |
void | res (const DMDict &res) |
DMDict | res () const |
std::vector< MX > | constraints () const |
MX | objective () const |
OptiAdvanced | baked_copy () const |
std::string | class_name () const override |
Readable name of the internal class. More... | |
casadi_int | nx () const |
Number of (scalarised) decision variables. More... | |
casadi_int | np () const |
Number of (scalarised) parameters. More... | |
casadi_int | ng () const |
Number of (scalarised) constraints. More... | |
MX | x () const |
Get all (scalarised) decision variables as a symbolic column vector. More... | |
MX | p () const |
Get all (scalarised) parameters as a symbolic column vector. More... | |
MX | g () const |
Get all (scalarised) constraint expressions as a column vector. More... | |
MX | f () const |
Get objective expression. More... | |
MX | lbg () const |
MX | ubg () const |
MX | lam_g () const |
Get dual variables as a symbolic column vector. More... | |
DM | x_linear_scale () const |
DM | x_linear_scale_offset () const |
DM | g_linear_scale () const |
double | f_linear_scale () const |
void | assert_empty () const |
void | show_infeasibilities (double tol=0, const Dict &opts=Dict()) const |
Function | to_function (const std::string &name, const std::vector< MX > &args, const std::vector< MX > &res, const std::vector< std::string > &name_in, const std::vector< std::string > &name_out, const Dict &opts) |
Create a CasADi Function from the Opti solver. More... | |
void | disp (std::ostream &stream, bool more=false) const override |
Print representation. More... | |
void | bake () |
Fix the structure of the optimization problem. More... | |
casadi_int | instance_number () const |
void | mark_problem_dirty (bool flag=true) |
bool | problem_dirty () const |
void | mark_solver_dirty (bool flag=true) |
bool | solver_dirty () const |
void | mark_solved (bool flag=true) |
bool | solved () const |
void | assert_solved () const |
void | assert_baked () const |
casadi_int | g_index_reduce_g (casadi_int i) const |
casadi_int | g_index_reduce_x (casadi_int i) const |
casadi_int | g_index_unreduce_g (casadi_int i) const |
casadi_int | getCount () const |
Get the reference count. More... | |
std::string | debug_repr (const SharedObjectInternal *) const |
GenericWeakRef< SharedObject, SharedObjectInternal > * | weak () |
Get a weak reference to the object. More... | |
void | set_initial (const MX &x, const DM &v) |
void | set_initial (const std::vector< MX > &assignments) |
void | set_value (const MX &x, const DM &v) |
Set value of parameter. More... | |
void | set_value (const std::vector< MX > &assignments) |
Set value of parameter. More... | |
DM | value (const MX &x, const std::vector< MX > &values=std::vector< MX >(), bool scaled=false) const |
DM | value (const DM &x, const std::vector< MX > &values=std::vector< MX >(), bool scaled=false) const |
DM | value (const SX &x, const std::vector< MX > &values=std::vector< MX >(), bool scaled=false) const |
std::vector< MX > | symvar () const |
std::vector< MX > | symvar (const MX &expr) const |
std::vector< MX > | symvar (const MX &expr, VariableType type) const |
Static Public Member Functions | |
static OptiNode * | create (const std::string &problem_type) |
Public Attributes | |
bool | problem_dirty_ |
bool | solver_dirty_ |
bool | solved_ |
Protected Member Functions | |
void | initSingleton () |
void | destroySingleton () |
B | shared_from_this () |
Get a shared object from the current internal object. More... | |
const B | shared_from_this () const |
Get a shared object from the current internal object. More... | |
Friends | |
class | InternalOptiCallback |
|
inherited |
Definition at line 152 of file shared_object.hpp.
casadi::OptiNode::OptiNode | ( | const std::string & | problem_type | ) |
Definition at line 254 of file optistack_internal.cpp.
References mark_problem_dirty(), casadi::OPTI_DUAL_G, casadi::OPTI_PAR, and casadi::OPTI_VAR.
casadi::OptiNode::~OptiNode | ( | ) |
Definition at line 272 of file optistack_internal.cpp.
std::vector< MX > casadi::OptiNode::active_symvar | ( | VariableType | type | ) | const |
Definition at line 1623 of file optistack_internal.cpp.
Referenced by bake(), res(), solve_prepare(), to_function(), and x_lookup().
std::vector< DM > casadi::OptiNode::active_values | ( | VariableType | type | ) | const |
Definition at line 1633 of file optistack_internal.cpp.
Referenced by bake(), solve_prepare(), and to_function().
std::vector< DM > casadi::OptiNode::active_values | ( | VariableType | type, |
const std::map< VariableType, std::vector< DM > > & | store | ||
) | const |
Definition at line 1637 of file optistack_internal.cpp.
|
inline |
Definition at line 209 of file optistack_internal.hpp.
Referenced by scale_helper(), solve_actual(), solve_prepare(), to_function(), and value().
void casadi::OptiNode::assert_active_symbol | ( | const MX & | m | ) | const |
Definition at line 1465 of file optistack_internal.cpp.
References assert_baked(), and describe().
void casadi::OptiNode::assert_baked | ( | ) | const |
Definition at line 1171 of file optistack_internal.cpp.
References problem_dirty().
Referenced by assert_active_symbol().
void casadi::OptiNode::assert_empty | ( | ) | const |
Definition at line 1177 of file optistack_internal.cpp.
References casadi::GenericMatrix< MatType >::is_empty().
void casadi::OptiNode::assert_solved | ( | ) | const |
void casadi::OptiNode::bake | ( | ) |
Definition at line 724 of file optistack_internal.cpp.
References casadi::MetaVar::active_i, active_symvar(), active_values(), casadi::MetaCon::canon, casadi::MetaVar::count, casadi::MetaCon::dual_canon, g(), g_linear_scale(), casadi::GenericMatrix< MatType >::is_empty(), mark_problem_dirty(), casadi::GenericMatrix< MatType >::nnz(), casadi::GenericMatrix< MatType >::ones(), casadi::OPTI_DOMAIN_INTEGER, casadi::OPTI_DUAL_G, casadi::OPTI_EQUALITY, casadi::OPTI_GENERIC_EQUALITY, casadi::OPTI_PAR, casadi::OPTI_PSD, casadi::OPTI_VAR, p(), casadi::GenericMatrix< MatType >::size(), casadi::IndexAbstraction::start, casadi::IndexAbstraction::stop, symvar(), casadi::MetaCon::type, and x().
Referenced by solve(), and solver_construct().
|
inline |
Definition at line 215 of file optistack_internal.hpp.
References casadi::OptiAdvanced::bake(), casadi::copy(), and casadi::OptiAdvanced::problem_dirty().
Referenced by casadi::OptiAdvanced::baked_copy(), describe(), g_describe(), g_lookup(), scale_helper(), to_function(), x_describe(), and x_lookup().
void casadi::OptiNode::callback_class | ( | ) |
Definition at line 103 of file optistack_internal.cpp.
void casadi::OptiNode::callback_class | ( | OptiCallback * | callback | ) |
Definition at line 99 of file optistack_internal.cpp.
Definition at line 1031 of file optistack_internal.cpp.
References casadi::MetaCon::canon, casadi::MX::dep(), casadi::GenericMatrix< MatType >::dim(), casadi::MX::eye(), casadi::MetaCon::flipped, casadi::inf, casadi::MX::is_op(), is_parametric(), casadi::GenericMatrix< MatType >::is_scalar(), casadi::GenericMatrix< MatType >::is_vector(), casadi::MetaCon::lb, casadi::MetaCon::linear_scale, casadi::MetaCon::n, casadi::GenericMatrix< MatType >::ones(), casadi::OP_EQ, casadi::OP_LE, casadi::OP_LT, casadi::OP_NORM2, casadi::OP_NORMF, casadi::OPTI_DOUBLE_INEQUALITY, casadi::OPTI_EQUALITY, casadi::OPTI_GENERIC_EQUALITY, casadi::OPTI_GENERIC_INEQUALITY, casadi::OPTI_INEQUALITY, casadi::OPTI_PSD, casadi::OPTI_UNKNOWN, casadi::MetaCon::original, casadi::GenericMatrix< MatType >::size(), casadi::GenericMatrix< MatType >::size1(), casadi::GenericMatrix< MatType >::size2(), casadi::MX::sparsity(), casadi::MetaCon::type, casadi::MetaCon::ub, and casadi::GenericMatrix< MatType >::zeros().
Referenced by subject_to().
Function casadi::OptiNode::casadi_solver | ( | ) | const |
Definition at line 559 of file optistack_internal.cpp.
|
inlineoverridevirtual |
Implements casadi::SharedObjectInternal.
Definition at line 221 of file optistack_internal.hpp.
|
inline |
Definition at line 212 of file optistack_internal.hpp.
Opti casadi::OptiNode::copy | ( | ) | const |
Definition at line 362 of file optistack_internal.cpp.
References casadi::Opti::create(), and OptiNode().
Referenced by casadi::Opti::copy(), and solve().
|
static |
Definition at line 94 of file optistack_internal.cpp.
References OptiNode().
Referenced by casadi::Opti::Opti().
|
inherited |
Definition at line 62 of file generic_shared_internal.hpp.
std::string casadi::OptiNode::describe | ( | const MX & | x, |
casadi_int | indent = 0 , |
||
const Dict & | opts = Dict() |
||
) | const |
Definition at line 139 of file optistack_internal.cpp.
References baked_copy(), casadi::OptiAdvanced::describe(), casadi::description(), casadi::GenericMatrix< MatType >::dim(), casadi::MetaCon::extra, casadi::MetaVar::extra, casadi::MX::is_symbolic(), casadi::MX::name(), problem_dirty(), casadi::str(), and symvar().
Referenced by assert_active_symbol(), g_describe(), solve_prepare(), value(), and x_describe().
|
inlineprotectedinherited |
Called in the destructor of singletons
Definition at line 77 of file generic_shared_internal.hpp.
|
overridevirtual |
Implements casadi::SharedObjectInternal.
Definition at line 1705 of file optistack_internal.cpp.
Definition at line 601 of file optistack_internal.cpp.
References casadi::MetaCon::dual.
|
inline |
|
inline |
|
inline |
Definition at line 254 of file optistack_internal.hpp.
Referenced by bake(), show_infeasibilities(), solve_prepare(), solver_construct(), and subject_to().
Definition at line 208 of file optistack_internal.cpp.
References baked_copy(), describe(), casadi::description(), casadi::OptiAdvanced::g_describe(), g_lookup(), casadi::GenericMatrix< MatType >::numel(), problem_dirty(), casadi::IndexAbstraction::start, casadi::GlobalOptions::start_index, and casadi::str().
Referenced by show_infeasibilities().
casadi_int casadi::OptiNode::g_index_reduce_g | ( | casadi_int | i | ) | const |
casadi_int casadi::OptiNode::g_index_reduce_x | ( | casadi_int | i | ) | const |
Definition at line 522 of file optistack_internal.cpp.
References stats().
casadi_int casadi::OptiNode::g_index_unreduce_g | ( | casadi_int | i | ) | const |
Definition at line 518 of file optistack_internal.cpp.
References stats().
|
inline |
MX casadi::OptiNode::g_lookup | ( | casadi_int | i | ) | const |
Definition at line 242 of file optistack_internal.cpp.
References baked_copy(), casadi::OptiAdvanced::g_lookup(), ng(), problem_dirty(), casadi::IndexAbstraction::start, and casadi::IndexAbstraction::stop.
Referenced by g_describe().
Definition at line 629 of file optistack_internal.cpp.
Referenced by update_user_dict(), and user_dict().
Definition at line 633 of file optistack_internal.cpp.
Referenced by update_user_dict(), and user_dict().
|
inherited |
Definition at line 60 of file generic_shared_internal.hpp.
bool casadi::OptiNode::has_callback_class | ( | ) | const |
Definition at line 107 of file optistack_internal.cpp.
std::vector< MX > casadi::OptiNode::initial | ( | ) | const |
Definition at line 697 of file optistack_internal.cpp.
References casadi::OPTI_DUAL_G, casadi::OPTI_VAR, and symvar().
|
inlineprotectedinherited |
Called in the constructor of singletons to avoid that the counter reaches zero
Definition at line 71 of file generic_shared_internal.hpp.
casadi_int casadi::OptiNode::instance_number | ( | ) | const |
Definition at line 1709 of file optistack_internal.cpp.
bool casadi::OptiNode::is_parametric | ( | const MX & | expr | ) | const |
Definition at line 1027 of file optistack_internal.cpp.
References casadi::OPTI_VAR, and symvar().
Referenced by canon_expr().
|
inline |
Definition at line 276 of file optistack_internal.hpp.
Referenced by to_function().
|
inline |
Definition at line 265 of file optistack_internal.hpp.
Referenced by show_infeasibilities().
|
inline |
Definition at line 321 of file optistack_internal.hpp.
Referenced by bake(), minimize(), OptiNode(), set_domain(), and subject_to().
|
inline |
|
inline |
Definition at line 325 of file optistack_internal.hpp.
void casadi::OptiNode::minimize | ( | const MX & | f, |
double | linear_scale = 1 |
||
) |
Definition at line 1182 of file optistack_internal.cpp.
References casadi::GenericMatrix< MatType >::dim(), f(), casadi::GenericMatrix< MatType >::is_scalar(), and mark_problem_dirty().
|
inline |
Definition at line 236 of file optistack_internal.hpp.
Referenced by g_lookup(), scale_helper(), and stats().
|
inline |
Definition at line 230 of file optistack_internal.hpp.
Referenced by scale_helper().
|
inline |
Definition at line 224 of file optistack_internal.hpp.
Referenced by scale_helper(), and x_lookup().
|
inline |
Definition at line 213 of file optistack_internal.hpp.
|
inline |
Definition at line 248 of file optistack_internal.hpp.
Referenced by bake(), to_function(), and value().
MX casadi::OptiNode::parameter | ( | casadi_int | n = 1 , |
casadi_int | m = 1 , |
||
const std::string & | attribute = "full" |
||
) |
Definition at line 458 of file optistack_internal.cpp.
References casadi::MetaVar::attribute, casadi::MetaVar::count, casadi::MetaVar::i, casadi::MetaVar::m, casadi::MetaVar::n, casadi::Matrix< double >::nan(), casadi::OPTI_PAR, set_meta(), casadi::MX::sparsity(), casadi::str(), casadi::GenericMatrix< MX >::sym(), and casadi::MetaVar::type.
Definition at line 419 of file optistack_internal.cpp.
References casadi::MetaVar::attribute, casadi::MetaVar::count, casadi::MetaVar::i, casadi::MetaVar::m, casadi::MetaVar::n, casadi::Matrix< double >::nan(), casadi::OPTI_PAR, set_meta(), casadi::GenericMatrix< MatType >::size1(), casadi::GenericMatrix< MatType >::size2(), casadi::MX::sparsity(), and casadi::MetaVar::type.
Definition at line 438 of file optistack_internal.cpp.
References casadi::MetaVar::attribute, casadi::MetaVar::count, casadi::MetaVar::i, casadi::MetaVar::m, casadi::MetaVar::n, casadi::Matrix< double >::nan(), casadi::OPTI_PAR, set_meta(), casadi::Sparsity::size1(), casadi::Sparsity::size2(), casadi::MX::sparsity(), casadi::str(), casadi::GenericMatrix< MX >::sym(), and casadi::MetaVar::type.
|
inline |
Definition at line 322 of file optistack_internal.hpp.
Referenced by assert_baked(), describe(), g_describe(), g_lookup(), scale_helper(), solve(), solver_construct(), to_function(), x_describe(), and x_lookup().
|
inline |
Definition at line 211 of file optistack_internal.hpp.
Referenced by res(), scale_helper(), solve(), solve_prepare(), and to_function().
void casadi::OptiNode::res | ( | const DMDict & | res | ) |
Definition at line 1237 of file optistack_internal.cpp.
References active_symvar(), casadi::MetaVar::i, mark_solved(), casadi::OPTI_DUAL_G, casadi::OPTI_VAR, res(), and casadi::IndexAbstraction::start.
std::string casadi::OptiNode::return_status | ( | ) | const |
bool casadi::OptiNode::return_success | ( | bool | accept_limit | ) | const |
Extra doc: https://github.com/casadi/casadi/wiki/L_2cd
Definition at line 895 of file optistack_internal.cpp.
References arg(), baked_copy(), casadi::D, f_linear_scale(), g_linear_scale(), casadi::Function::name(), casadi::Function::name_in(), casadi::Function::name_out(), ng(), np(), nx(), problem_dirty(), res(), casadi::Opti::scale_helper(), casadi::GenericMatrix< MX >::sym(), x_linear_scale(), and x_linear_scale_offset().
void casadi::OptiNode::set_domain | ( | const MX & | x, |
const std::string & | domain | ||
) |
Definition at line 1481 of file optistack_internal.cpp.
References casadi::MetaVar::domain, casadi::MX::is_valid_input(), mark_problem_dirty(), mark_solved(), casadi::OPTI_DOMAIN_INTEGER, casadi::OPTI_DOMAIN_REAL, casadi::MX::primitives(), and x().
Set initial value for decision variables
Definition at line 1596 of file optistack_internal.cpp.
References casadi::OPTI_PAR, casadi::MX::symvar(), and x().
Referenced by set_initial().
void casadi::OptiNode::set_initial | ( | const std::vector< MX > & | assignments | ) |
Set initial value for decision variables
Definition at line 1472 of file optistack_internal.cpp.
References casadi::OP_EQ, and set_initial().
Definition at line 1610 of file optistack_internal.cpp.
References casadi::GenericMatrix< MatType >::dim(), casadi::GenericMatrix< MatType >::is_scalar(), casadi::OPTI_PAR, casadi::GenericMatrix< MatType >::size(), casadi::MX::symvar(), and x().
Definition at line 563 of file optistack_internal.cpp.
References casadi::MX::get().
Referenced by parameter(), update_user_dict(), and variable().
Definition at line 567 of file optistack_internal.cpp.
References casadi::MX::get().
Referenced by subject_to(), and update_user_dict().
Each parameter must be given a value before 'solve' can be called
Extra doc: https://github.com/casadi/casadi/wiki/L_173
Definition at line 1603 of file optistack_internal.cpp.
References casadi::OPTI_VAR, casadi::MX::symvar(), and x().
Referenced by set_value().
void casadi::OptiNode::set_value | ( | const std::vector< MX > & | assignments | ) |
Each parameter must be given a value before 'solve' can be called
Extra doc: https://github.com/casadi/casadi/wiki/L_173
Definition at line 1499 of file optistack_internal.cpp.
References casadi::OP_EQ, and set_value().
|
inlineprotectedinherited |
Definition at line 83 of file generic_shared_internal.hpp.
|
inlineprotectedinherited |
Definition at line 92 of file generic_shared_internal.hpp.
Definition at line 1713 of file optistack_internal.cpp.
References g(), g_describe(), casadi::Matrix< Scalar >::get_elements(), lbg(), casadi::GlobalOptions::start_index, stats(), ubg(), casadi::uout(), and value().
OptiSol casadi::OptiNode::solve | ( | bool | accept_limit | ) |
Definition at line 1316 of file optistack_internal.cpp.
References bake(), copy(), casadi::GenericShared< Shared, Internal >::is_null(), mark_solver_dirty(), problem_dirty(), res(), return_status(), return_success(), solve_actual(), solve_prepare(), solver_construct(), and solver_dirty().
void casadi::OptiNode::solve_prepare | ( | ) |
Definition at line 1342 of file optistack_internal.cpp.
References active_symvar(), active_values(), arg(), describe(), g(), casadi::Function::get(), InternalOptiCallback, casadi::is_regular(), casadi::OPTI_DUAL_G, casadi::OPTI_PAR, casadi::OPTI_UNKNOWN, casadi::OPTI_VAR, and res().
Referenced by solve().
|
inline |
void casadi::OptiNode::solver | ( | const std::string & | solver, |
const Dict & | plugin_options = Dict() , |
||
const Dict & | solver_options = Dict() |
||
) |
Definition at line 953 of file optistack_internal.cpp.
References mark_solver_dirty().
Referenced by to_function().
Function casadi::OptiNode::solver_construct | ( | bool | callback = true | ) |
Definition at line 1270 of file optistack_internal.cpp.
References bake(), casadi::Function::create(), g(), InternalOptiCallback, casadi::nlpsol(), casadi::OPTI_PSD, problem_dirty(), and casadi::qpsol().
Referenced by solve(), and to_function().
|
inline |
Dict casadi::OptiNode::stats | ( | ) | const |
Definition at line 478 of file optistack_internal.cpp.
References casadi::any(), assert_solved(), casadi::get_from_dict(), ng(), and casadi::Function::stats().
Referenced by g_index_reduce_g(), g_index_reduce_x(), g_index_unreduce_g(), return_status(), return_success(), and show_infeasibilities().
void casadi::OptiNode::subject_to | ( | ) |
Definition at line 1220 of file optistack_internal.cpp.
References mark_problem_dirty(), and casadi::OPTI_DUAL_G.
void casadi::OptiNode::subject_to | ( | const MX & | g, |
const DM & | linear_scale = 1 , |
||
const Dict & | options = Dict() |
||
) |
Definition at line 1190 of file optistack_internal.cpp.
References canon_expr(), casadi::GenericMatrix< MatType >::dim(), casadi::MetaCon::extra, casadi::MetaVar::extra, g(), casadi::MX::is_constant(), casadi::GenericMatrix< MatType >::is_empty(), mark_problem_dirty(), casadi::GenericMatrix< MatType >::nnz(), set_meta_con(), and update_user_dict().
std::vector< MX > casadi::OptiNode::symvar | ( | ) | const |
Get symbols present in expression
Definition at line 977 of file optistack_internal.cpp.
Referenced by bake(), describe(), initial(), is_parametric(), symvar(), value(), value_parameters(), and value_variables().
Get symbols present in expression
Definition at line 981 of file optistack_internal.cpp.
References casadi::MX::symvar().
std::vector< MX > casadi::OptiNode::symvar | ( | const MX & | expr, |
VariableType | type | ||
) | const |
Get symbols present in expression
Definition at line 1228 of file optistack_internal.cpp.
References symvar().
Function casadi::OptiNode::to_function | ( | const std::string & | name, |
const std::vector< MX > & | args, | ||
const std::vector< MX > & | res, | ||
const std::vector< std::string > & | name_in, | ||
const std::vector< std::string > & | name_out, | ||
const Dict & | opts | ||
) |
Extra doc: https://github.com/casadi/casadi/wiki/L_174
Definition at line 1649 of file optistack_internal.cpp.
References casadi::MetaVar::active_i, active_symvar(), active_values(), arg(), casadi::assign_vector(), baked_copy(), casadi::MX::is_valid_input(), lam_g(), casadi::OPTI_DUAL_G, casadi::OPTI_PAR, casadi::OPTI_VAR, p(), casadi::MX::primitives(), problem_dirty(), res(), solver(), solver_construct(), casadi::str(), and casadi::Opti::to_function().
|
inline |
Definition at line 571 of file optistack_internal.cpp.
References casadi::MetaCon::dual_canon, casadi::MetaCon::extra, casadi::MetaVar::extra, get_meta(), get_meta_con(), set_meta(), set_meta_con(), and casadi::MX::symvar().
Referenced by subject_to().
Definition at line 591 of file optistack_internal.cpp.
References casadi::MetaCon::extra, casadi::MetaVar::extra, get_meta(), and get_meta_con().
|
inline |
Obtain value of expression at the current value
Definition at line 121 of file optistack_internal.hpp.
DM casadi::OptiNode::value | ( | const MX & | x, |
const std::vector< MX > & | values = std::vector<MX>() , |
||
bool | scaled = false |
||
) | const |
Obtain value of expression at the current value
Definition at line 1398 of file optistack_internal.cpp.
References arg(), assert_solved(), describe(), casadi::Function::has_free(), casadi::MetaVar::i, casadi::OP_EQ, casadi::OPTI_DUAL_G, casadi::OPTI_PAR, casadi::OPTI_VAR, casadi::override_num(), p(), symvar(), casadi::MetaVar::type, and x().
Referenced by show_infeasibilities().
|
inline |
Obtain value of expression at the current value
Definition at line 123 of file optistack_internal.hpp.
References casadi::Matrix< double >::nan(), and casadi::Matrix< Scalar >::sparsity().
std::vector< MX > casadi::OptiNode::value_parameters | ( | ) | const |
std::vector< MX > casadi::OptiNode::value_variables | ( | ) | const |
MX casadi::OptiNode::variable | ( | casadi_int | n = 1 , |
casadi_int | m = 1 , |
||
const std::string & | attribute = "full" |
||
) |
Definition at line 275 of file optistack_internal.cpp.
References casadi::MetaVar::attribute, casadi::MetaVar::count, casadi::MetaVar::domain, casadi::MetaVar::i, casadi::Sparsity::lower(), casadi::MetaVar::m, casadi::MetaVar::n, casadi::Matrix< double >::nan(), casadi::GenericMatrix< MatType >::ones(), casadi::OPTI_DOMAIN_REAL, casadi::OPTI_VAR, set_meta(), casadi::MX::sparsity(), casadi::str(), casadi::GenericMatrix< MX >::sym(), casadi::MetaVar::type, and casadi::GenericMatrix< MatType >::zeros().
Definition at line 312 of file optistack_internal.cpp.
References casadi::MetaVar::attribute, casadi::MetaVar::count, casadi::MetaVar::i, casadi::MetaVar::m, casadi::MetaVar::n, casadi::Matrix< double >::nan(), casadi::GenericMatrix< MatType >::ones(), casadi::OPTI_VAR, set_meta(), casadi::GenericMatrix< MatType >::size1(), casadi::GenericMatrix< MatType >::size2(), casadi::MX::sparsity(), casadi::MetaVar::type, and casadi::GenericMatrix< MatType >::zeros().
Definition at line 334 of file optistack_internal.cpp.
References casadi::MetaVar::attribute, casadi::MetaVar::count, casadi::MetaVar::i, casadi::MetaVar::m, casadi::MetaVar::n, casadi::Matrix< double >::nan(), casadi::GenericMatrix< MatType >::ones(), casadi::OPTI_VAR, set_meta(), casadi::Sparsity::size1(), casadi::Sparsity::size2(), casadi::MX::sparsity(), casadi::str(), casadi::GenericMatrix< MX >::sym(), casadi::MetaVar::type, and casadi::GenericMatrix< MatType >::zeros().
|
inherited |
Extra doc: https://github.com/casadi/casadi/wiki/L_1ai
Definition at line 67 of file generic_shared_internal.hpp.
|
inline |
Definition at line 242 of file optistack_internal.hpp.
Referenced by bake(), set_domain(), set_initial(), set_linear_scale(), set_value(), value(), and x_lookup().
Definition at line 219 of file optistack_internal.cpp.
References baked_copy(), describe(), casadi::description(), casadi::GenericMatrix< MatType >::numel(), problem_dirty(), casadi::IndexAbstraction::start, casadi::GlobalOptions::start_index, casadi::str(), casadi::OptiAdvanced::x_describe(), and x_lookup().
|
inline |
|
inline |
MX casadi::OptiNode::x_lookup | ( | casadi_int | i | ) | const |
Definition at line 229 of file optistack_internal.cpp.
References active_symvar(), baked_copy(), nx(), casadi::OPTI_VAR, problem_dirty(), casadi::IndexAbstraction::start, casadi::IndexAbstraction::stop, x(), and casadi::OptiAdvanced::x_lookup().
Referenced by x_describe().
|
friend |
Definition at line 57 of file optistack_internal.hpp.
Referenced by solve_prepare(), and solver_construct().
bool casadi::OptiNode::problem_dirty_ |
Definition at line 320 of file optistack_internal.hpp.
bool casadi::OptiNode::solved_ |
Definition at line 328 of file optistack_internal.hpp.
bool casadi::OptiNode::solver_dirty_ |
Definition at line 324 of file optistack_internal.hpp.