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

A symbolic representation of a differential-algebraic equations model. More...

#include <dae_builder.hpp>

Detailed Description

Variables:

t:      independent variable (usually time)
c:      constants
p:      parameters
d:      dependent parameters (time independent)
u:      controls
w:      dependent variables  (time dependent)
x:      differential states
z:      algebraic variables
q:      quadrature states
y:      outputs

Equations:

differential equations: \dot{x} ==  ode(...)
algebraic equations:          0 ==  alg(...)
quadrature equations:   \dot{q} == quad(...)
dependent parameters:         d == ddef(d_prev,p)
dependent variables:          w == wdef(w_prev,x,z,u,p,t)
output equations:             y == ydef(...)
initial equations:     init_lhs == init_rhs(...)
events:      when when_cond < 0: when_lhs := when_rhs
Date
2012-2021
Author
Joel Andersson

Extra doc: https://github.com/casadi/casadi/wiki/L_5c

Definition at line 68 of file dae_builder.hpp.

Inheritance diagram for casadi::DaeBuilder:
Inheritance graph
[legend]

Public Types

using internal_base_type = SharedObjectInternal
 
using base_type = SharedObject
 

Public Member Functions

std::string type_name () const
 Readable name of the class. More...
 
 DaeBuilder ()
 Default constructor. More...
 
 DaeBuilder (const std::string &name, const std::string &path="", const Dict &opts=Dict())
 Construct a DaeBuilder instance. More...
 
const std::string & name () const
 Name of instance. More...
 
void reorder (const std::string &cat, const std::vector< std::string > &v)
 Reorder variables in a category. More...
 
void clear_all (const std::string &v)
 [DEPRECATED] Use set_variability, set_causality or set_category to change variable category More...
 
void set_all (const std::string &v, const std::vector< std::string > &name)
 [DEPRECATED] Use set_variability, set_causality, set_category and/or reorder More...
 
void eliminate_d ()
 [DEPRECATED] Use eliminate("d") More...
 
void eliminate_w ()
 [DEPRECATED] Use eliminate("w") More...
 
void eliminate_quad ()
 [DEPRECATED] Use eliminate("q") More...
 
void sort_d ()
 [DEPRECATED] Use sort("d") More...
 
void sort_w ()
 [DEPRECATED] Use sort("w") More...
 
void sort_z (const std::vector< std::string > &z_order)
 [DEPRECATED] Use reorder("z", new_order) More...
 
Function create (const std::string &fname, const Dict &opts=Dict()) const
 Create a function with standard integrator DAE signature. More...
 
Function create () const
 Create a function with standard integrator DAE signature, default naming. More...
 
Function dependent_fun (const std::string &fname, const std::vector< std::string > &s_in, const std::vector< std::string > &s_out) const
 Construct a function for evaluating dependent parameters. More...
 
Function transition (const std::string &fname, casadi_int index) const
 Construct a function describing transition at a specific events. More...
 
Function transition (const std::string &fname) const
 Construct a function describing transition at any events. More...
 
Function transition () const
 Construct an event transition function, default naming. More...
 
std::vector< std::string > der (const std::vector< std::string > &name) const
 Get the time derivative of model variables. More...
 
std::vector< std::string > pre (const std::vector< std::string > &name) const
 Get the pre-variables of model variables. More...
 
MX pre (const MX &v) const
 Get the pre-expression given variable expression. More...
 
bool has_beq (const std::string &name) const
 Does a variable have a binding equation? More...
 
MX beq (const std::string &name) const
 Get the binding equation for a variable. More...
 
std::string causality (const std::string &name) const
 Get the causality. More...
 
void set_causality (const std::string &name, const std::string &val)
 Set the causality, if permitted. More...
 
std::string variability (const std::string &name) const
 Get the variability. More...
 
void set_variability (const std::string &name, const std::string &val)
 Set the variability, if permitted. More...
 
std::string category (const std::string &name) const
 Get the variable category. More...
 
void set_category (const std::string &name, const std::string &val)
 Set the variable category, if permitted. More...
 
casadi_int numel (const std::string &name) const
 Get the number of elements of a variable. More...
 
std::vector< casadi_int > dimension (const std::string &name) const
 Get the dimensions of a variable. More...
 
double start_time () const
 Get the start time. More...
 
void set_start_time (double val)
 Set the start time. More...
 
double stop_time () const
 Get the stop time. More...
 
void set_stop_time (double val)
 Set the stop time. More...
 
double tolerance () const
 Get the tolerance. More...
 
void set_tolerance (double val)
 Set the tolerance. More...
 
double step_size () const
 Get the step size. More...
 
void set_step_size (double val)
 Set the step size. More...
 
std::string der (const std::string &name) const
 Get the time derivative of model variables, single variable. More...
 
std::string pre (const std::string &name) const
 Get the pre-variables of model variables. More...
 
double attribute (const std::string &a, const std::string &name) const
 Get an attribute, single variable. More...
 
void set_attribute (const std::string &a, const std::string &name, double val)
 Set an attribute, single variable. More...
 
double min (const std::string &name) const
 Get the lower bound, single variable. More...
 
void set_min (const std::string &name, double val)
 Set the lower bound, single variable. More...
 
double max (const std::string &name) const
 Get the upper bound, single variable. More...
 
void set_max (const std::string &name, double val)
 Set the upper bound, single variable. More...
 
double nominal (const std::string &name) const
 Get the nominal value, single variable. More...
 
void set_nominal (const std::string &name, double val)
 Set the nominal value, single variable. More...
 
std::vector< double > start (const std::string &name) const
 Get the start attribute, single variable. More...
 
void set_start (const std::string &name, double val)
 Set the start attribute, single variable. More...
 
void set_start (const std::string &name, const std::vector< double > &val)
 Set the start attribute, vector argument. More...
 
void reset ()
 
void set (const std::string &name, double val)
 
void set (const std::string &name, const std::string &val)
 
GenericType get (const std::string &name) const
 Evaluate the values for a set of variables at the initial time, single value. More...
 
std::vector< double > attribute (const std::string &a, const std::vector< std::string > &name) const
 Get an attribute. More...
 
void set_attribute (const std::string &a, const std::vector< std::string > &name, const std::vector< double > &val)
 Set an attribute. More...
 
std::vector< double > min (const std::vector< std::string > &name) const
 Get the lower bound. More...
 
void set_min (const std::vector< std::string > &name, const std::vector< double > &val)
 Set the lower bound. More...
 
std::vector< double > max (const std::vector< std::string > &name) const
 Get the upper bound. More...
 
void set_max (const std::vector< std::string > &name, const std::vector< double > &val)
 Set the upper bound. More...
 
std::vector< double > nominal (const std::vector< std::string > &name) const
 Get the nominal value. More...
 
void set_nominal (const std::vector< std::string > &name, const std::vector< double > &val)
 Set the nominal value. More...
 
std::vector< double > start (const std::vector< std::string > &name) const
 Get the start attribute. More...
 
void set_start (const std::vector< std::string > &name, const std::vector< double > &val)
 Set the start attribute. More...
 
void set (const std::vector< std::string > &name, const std::vector< double > &val)
 Set the current value. More...
 
void set (const std::vector< std::string > &name, const std::vector< std::string > &val)
 Set the current value (string) More...
 
std::vector< GenericTypeget (const std::vector< std::string > &name) const
 Evaluate the values for a set of variables at the initial time. More...
 
bool has (const std::string &name) const
 Check if a particular variable exists. More...
 
std::vector< std::string > all () const
 Get a list of all variables. More...
 
std::vector< std::string > all (const std::string &cat) const
 Get a list of all variables of a particular category. More...
 
MX add_variable (const std::string &name, casadi_int n=1)
 [DEPRECATED] Use add More...
 
MX add_variable (const std::string &name, const Sparsity &sp)
 [DEPRECATED] Use add More...
 
void add_variable (const MX &new_v)
 Add a new variable from symbolic expressions. More...
 
size_t add_variable_new (const std::string &name, casadi_int n=1)
 [DEPRECATED] Use add More...
 
size_t add_variable_new (const std::string &name, const Sparsity &sp)
 [DEPRECATED] Use add More...
 
size_t add_variable_new (const MX &new_v)
 [DEPRECATED] Use add More...
 
bool has_variable (const std::string &name) const
 [DEPRECATED] Ranamed "has" More...
 
std::vector< std::string > all_variables () const
 Get a list of all variables. More...
 
Function oracle (bool sx=false, bool elim_w=false, bool lifted_calls=false) const
 Get the (cached) oracle, SX or MX. More...
 
Sparsity jac_sparsity (const std::vector< std::string > &onames, const std::vector< std::string > &inames) const
 Get Jacobian sparsity. More...
 
std::string class_name () const
 Get class name. More...
 
void disp (std::ostream &stream, bool more=false) const
 Print a description of the object. More...
 
std::string get_str (bool more=false) const
 Get string representation. More...
 
std::string debug_repr () const
 
bool is_null () const
 Is a null pointer? More...
 
casadi_int __hash__ () const
 Returns a number that is unique for a given Node. More...
 
Variables and equations
const MXtime () const
 Expression for independent variable (usually time) More...
 
std::vector< std::string > t_new () const
 Independent variable (usually time) More...
 
std::vector< std::string > x () const
 Differential states. More...
 
std::vector< std::string > y () const
 Outputs *‍/. More...
 
std::vector< MXode () const
 Ordinary differential equations (ODE) More...
 
std::vector< std::string > z () const
 Algebraic variables. More...
 
std::vector< MXalg () const
 Algebraic equations. More...
 
std::vector< std::string > q () const
 Quadrature states. More...
 
std::vector< MXquad () const
 Quadrature equations. More...
 
std::vector< MXzero () const
 Zero-crossing functions. More...
 
std::vector< MXydef () const
 Definitions of output variables. More...
 
std::vector< std::string > u () const
 Free controls. More...
 
std::vector< std::string > p () const
 Parameters. More...
 
std::vector< std::string > c () const
 Named constants. More...
 
std::vector< MXcdef () const
 Definitions of named constants. More...
 
std::vector< std::string > d () const
 Dependent parameters. More...
 
std::vector< MXddef () const
 Definitions of dependent parameters. More...
 
std::vector< std::string > w () const
 Dependent variables. More...
 
std::vector< MXwdef () const
 Dependent variables and corresponding definitions. More...
 
std::vector< MXinit_lhs () const
 Initial conditions, left-hand-side. More...
 
std::vector< MXinit_rhs () const
 Initial conditions, right-hand-side. More...
 
std::vector< std::string > outputs () const
 Model structure: outputs. More...
 
std::vector< std::string > derivatives () const
 Model structure: derivatives. More...
 
std::vector< std::string > initial_unknowns () const
 Model structure: initial unknowns. More...
 
bool has_t () const
 Is there a time variable? More...
 
casadi_int nx () const
 Differential states. More...
 
casadi_int nz () const
 Algebraic variables. More...
 
casadi_int nq () const
 Quadrature states. More...
 
casadi_int nzero () const
 Zero-crossing functions. More...
 
casadi_int ny () const
 Output variables. More...
 
casadi_int nu () const
 Free controls. More...
 
casadi_int np () const
 Parameters. More...
 
casadi_int nc () const
 Named constants. More...
 
casadi_int nd () const
 Dependent parameters. More...
 
casadi_int nw () const
 Dependent variables. More...
 
Symbolic modeling

Formulate a dynamic system model

MX add (const std::string &name, const std::string &causality, const std::string &variability, const Dict &opts=Dict())
 Add a new model variable. More...
 
MX add (const std::string &name, const std::string &causality, const Dict &opts=Dict())
 Add a new model variable, default variability. More...
 
MX add (const std::string &name, const Dict &opts=Dict())
 Add a new model variable, default variability and causality. More...
 
void add (const std::string &name, const std::string &causality, const std::string &variability, const MX &expr, const Dict &opts=Dict())
 Add a new model variable, symbolic expression already available. More...
 
const MXt () const
 [DEPRECATED] Renamed "time" More...
 
MX add_t (const std::string &name="t")
 [DEPRECATED] Replaced by add More...
 
MX add_p (const std::string &name=std::string())
 [DEPRECATED] Replaced by add More...
 
MX add_u (const std::string &name=std::string())
 [DEPRECATED] Replaced by add More...
 
MX add_x (const std::string &name=std::string())
 [DEPRECATED] Replaced by add More...
 
MX add_z (const std::string &name=std::string())
 [DEPRECATED] Replaced by add More...
 
MX add_q (const std::string &name=std::string())
 [DEPRECATED] Replaced by add More...
 
MX add_c (const std::string &name, const MX &new_cdef)
 [DEPRECATED] Replaced by add and eq More...
 
MX add_d (const std::string &name, const MX &new_ddef)
 [DEPRECATED] Replaced by add and eq More...
 
MX add_w (const std::string &name, const MX &new_wdef)
 [DEPRECATED] Replaced by add and eq More...
 
MX add_y (const std::string &name, const MX &new_ydef)
 [DEPRECATED] Replaced by add and eq More...
 
void set_beq (const std::string &name, const MX &val)
 [DEPRECATED] Replaced by eq More...
 
void eq (const MX &lhs, const MX &rhs, const Dict &opts=Dict())
 Add a simple equation. More...
 
void when (const MX &cond, const std::vector< std::string > &eqs, const Dict &opts=Dict())
 Add when equations. More...
 
std::string assign (const std::string &name, const MX &val)
 Assignment inside a when-equation or if-else equation. More...
 
std::string reinit (const std::string &name, const MX &val)
 Reinitialize a state inside when-equations. More...
 
void set_init (const std::string &name, const MX &init_rhs)
 Specify the initial equation for a variable. More...
 
void set_ode (const std::string &name, const MX &ode_rhs)
 [DEPRECATED] Replaced by eq More...
 
void set_alg (const std::string &name, const MX &alg_rhs)
 [DEPRECATED] Replaced by eq More...
 
void add_init (const MX &lhs, const MX &rhs)
 [DEPRECATED] Replaced by set_init More...
 
casadi_int ne () const
 [DEPRECATED] Replaced by nzero() More...
 
std::vector< std::string > e () const
 [DEPRECATED] Use all("zero") *‍/ More...
 
void sanity_check () const
 Check if dimensions match. More...
 
[DEPRECATED] Register an existing variable
void register_t (const std::string &name)
 
void register_p (const std::string &name)
 
void register_u (const std::string &name)
 
void register_x (const std::string &name)
 
void register_z (const std::string &name)
 
void register_q (const std::string &name)
 
void register_c (const std::string &name)
 
void register_d (const std::string &name)
 
void register_w (const std::string &name)
 
void register_y (const std::string &name)
 
void register_e (const std::string &name)
 
Manipulation

Reformulate the dynamic optimization problem.

void eliminate (const std::string &cat)
 Eliminate all dependent parameters. More...
 
void sort (const std::string &cat)
 Sort dependent parameters. More...
 
void lift (bool lift_shared=true, bool lift_calls=true)
 Lift problem formulation by extracting shared subexpressions. More...
 
void prune (bool prune_p=true, bool prune_u=true)
 Prune unused controls. More...
 
void tear ()
 Identify iteration variables and residual equations using naming convention. More...
 
Functions

Add or load auxiliary functions

Function add_fun (const std::string &name, const std::vector< std::string > &arg, const std::vector< std::string > &res, const Dict &opts=Dict())
 Add a function from loaded expressions. More...
 
Function add_fun (const Function &f)
 Add an already existing function. More...
 
Function add_fun (const std::string &name, const Importer &compiler, const Dict &opts=Dict())
 Add an external function. More...
 
bool has_fun (const std::string &name) const
 Does a particular function already exist? More...
 
Function fun (const std::string &name) const
 Get function by name. More...
 
std::vector< Functionfun () const
 Get all functions. More...
 
void gather_fun (casadi_int max_depth=-1)
 Collect embedded functions from the expression graph. More...
 
Import and export
void parse_fmi (const std::string &filename)
 
bool provides_directional_derivatives () const
 Does the FMU provide support for analytic derivatives. More...
 
bool provides_directional_derivative () const
 Does the FMU provide support for analytic derivatives (FMI 2 naming) More...
 
void load_fmi_description (const std::string &filename)
 Import problem description from FMI or XML. More...
 
std::vector< std::string > export_fmu (const Dict &opts=Dict())
 Export instance into an FMU. More...
 
void add_lc (const std::string &name, const std::vector< std::string > &f_out)
 Add a named linear combination of output expressions. More...
 
Function create (const std::string &fname, const std::vector< std::string > &name_in, const std::vector< std::string > &name_out, bool sx, bool lifted_calls=false) const
 Construct a function object, legacy syntax. More...
 
Function create (const std::string &name, const std::vector< std::string > &name_in, const std::vector< std::string > &name_out, const Dict &opts=Dict()) const
 Construct a function object, names provided. More...
 
MX var (const std::string &name) const
 
MX operator() (const std::string &name) const
 
MX der (const MX &v) const
 
MX der (const MX &v)
 
casadi_int value_reference (const std::string &name) const
 
void set_value_reference (const std::string &name, casadi_int val)
 
std::string description (const std::string &name) const
 
void set_description (const std::string &name, const std::string &val)
 
std::string type (const std::string &name, casadi_int fmi_version=3) const
 
void set_type (const std::string &name, const std::string &val)
 
std::string initial (const std::string &name) const
 
void set_initial (const std::string &name, const std::string &val)
 
std::string unit (const std::string &name) const
 
void set_unit (const std::string &name, const std::string &val)
 
std::string display_unit (const std::string &name) const
 
void set_display_unit (const std::string &name, const std::string &val)
 

Member Typedef Documentation

◆ base_type

Definition at line 103 of file shared_object.hpp.

◆ internal_base_type

using casadi::SharedObject::internal_base_type = SharedObjectInternal
inherited

Definition at line 102 of file shared_object.hpp.

Constructor & Destructor Documentation

◆ DaeBuilder() [1/2]

casadi::DaeBuilder::DaeBuilder ( )

◆ DaeBuilder() [2/2]

casadi::DaeBuilder::DaeBuilder ( const std::string &  name,
const std::string &  path = "",
const Dict opts = Dict() 
)
explicit

Member Function Documentation

◆ __hash__()

casadi_int casadi::GenericShared< SharedObject , SharedObjectInternal >::__hash__
inherited

If the Object does not point to any node, "0" is returned.

Extra doc: https://github.com/casadi/casadi/wiki/L_av

Definition at line 124 of file generic_shared_impl.hpp.

◆ add() [1/4]

MX casadi::DaeBuilder::add ( const std::string &  name,
const Dict opts = Dict() 
)

◆ add() [2/4]

MX casadi::DaeBuilder::add ( const std::string &  name,
const std::string &  causality,
const Dict opts = Dict() 
)

◆ add() [3/4]

MX casadi::DaeBuilder::add ( const std::string &  name,
const std::string &  causality,
const std::string &  variability,
const Dict opts = Dict() 
)

◆ add() [4/4]

void casadi::DaeBuilder::add ( const std::string &  name,
const std::string &  causality,
const std::string &  variability,
const MX expr,
const Dict opts = Dict() 
)

◆ add_c()

MX casadi::DaeBuilder::add_c ( const std::string &  name,
const MX new_cdef 
)

◆ add_d()

MX casadi::DaeBuilder::add_d ( const std::string &  name,
const MX new_ddef 
)

◆ add_fun() [1/3]

Function casadi::DaeBuilder::add_fun ( const Function f)

◆ add_fun() [2/3]

Function casadi::DaeBuilder::add_fun ( const std::string &  name,
const Importer compiler,
const Dict opts = Dict() 
)

◆ add_fun() [3/3]

Function casadi::DaeBuilder::add_fun ( const std::string &  name,
const std::vector< std::string > &  arg,
const std::vector< std::string > &  res,
const Dict opts = Dict() 
)

◆ add_init()

void casadi::DaeBuilder::add_init ( const MX lhs,
const MX rhs 
)
inline

Definition at line 365 of file dae_builder.hpp.

◆ add_lc()

void casadi::DaeBuilder::add_lc ( const std::string &  name,
const std::vector< std::string > &  f_out 
)

◆ add_p()

MX casadi::DaeBuilder::add_p ( const std::string &  name = std::string())

◆ add_q()

MX casadi::DaeBuilder::add_q ( const std::string &  name = std::string())

◆ add_t()

MX casadi::DaeBuilder::add_t ( const std::string &  name = "t")

◆ add_u()

MX casadi::DaeBuilder::add_u ( const std::string &  name = std::string())

◆ add_variable() [1/3]

void casadi::DaeBuilder::add_variable ( const MX new_v)

◆ add_variable() [2/3]

MX casadi::DaeBuilder::add_variable ( const std::string &  name,
casadi_int  n = 1 
)

◆ add_variable() [3/3]

MX casadi::DaeBuilder::add_variable ( const std::string &  name,
const Sparsity sp 
)

◆ add_variable_new() [1/3]

size_t casadi::DaeBuilder::add_variable_new ( const MX new_v)

◆ add_variable_new() [2/3]

size_t casadi::DaeBuilder::add_variable_new ( const std::string &  name,
casadi_int  n = 1 
)

◆ add_variable_new() [3/3]

size_t casadi::DaeBuilder::add_variable_new ( const std::string &  name,
const Sparsity sp 
)

◆ add_w()

MX casadi::DaeBuilder::add_w ( const std::string &  name,
const MX new_wdef 
)

◆ add_x()

MX casadi::DaeBuilder::add_x ( const std::string &  name = std::string())

◆ add_y()

MX casadi::DaeBuilder::add_y ( const std::string &  name,
const MX new_ydef 
)

◆ add_z()

MX casadi::DaeBuilder::add_z ( const std::string &  name = std::string())

◆ alg()

std::vector<MX> casadi::DaeBuilder::alg ( ) const

◆ all() [1/2]

std::vector<std::string> casadi::DaeBuilder::all ( ) const

◆ all() [2/2]

std::vector<std::string> casadi::DaeBuilder::all ( const std::string &  cat) const

◆ all_variables()

std::vector<std::string> casadi::DaeBuilder::all_variables ( ) const
inline

Definition at line 814 of file dae_builder.hpp.

◆ assign()

std::string casadi::DaeBuilder::assign ( const std::string &  name,
const MX val 
)

◆ attribute() [1/2]

double casadi::DaeBuilder::attribute ( const std::string &  a,
const std::string &  name 
) const

◆ attribute() [2/2]

std::vector<double> casadi::DaeBuilder::attribute ( const std::string &  a,
const std::vector< std::string > &  name 
) const

◆ beq()

MX casadi::DaeBuilder::beq ( const std::string &  name) const

◆ c()

std::vector<std::string> casadi::DaeBuilder::c ( ) const
inline

Extra doc: https://github.com/casadi/casadi/wiki/L_5p

Definition at line 156 of file dae_builder.hpp.

◆ category()

std::string casadi::DaeBuilder::category ( const std::string &  name) const

◆ causality()

std::string casadi::DaeBuilder::causality ( const std::string &  name) const

◆ cdef()

std::vector<MX> casadi::DaeBuilder::cdef ( ) const

◆ class_name()

std::string casadi::SharedObject::class_name ( ) const
inherited

◆ clear_all()

void casadi::DaeBuilder::clear_all ( const std::string &  v)

◆ create() [1/4]

Function casadi::DaeBuilder::create ( ) const
inline

Extra doc: https://github.com/casadi/casadi/wiki/L_2c1

Definition at line 529 of file dae_builder.hpp.

◆ create() [2/4]

Function casadi::DaeBuilder::create ( const std::string &  fname,
const Dict opts = Dict() 
) const
Parameters
nameName assigned to the resulting function object
optsOptional settings

Extra doc: https://github.com/casadi/casadi/wiki/L_2c0

◆ create() [3/4]

Function casadi::DaeBuilder::create ( const std::string &  fname,
const std::vector< std::string > &  name_in,
const std::vector< std::string > &  name_out,
bool  sx,
bool  lifted_calls = false 
) const

◆ create() [4/4]

Function casadi::DaeBuilder::create ( const std::string &  name,
const std::vector< std::string > &  name_in,
const std::vector< std::string > &  name_out,
const Dict opts = Dict() 
) const
Parameters
nameName assigned to the resulting function object
name_inNames of all the inputs
name_outNames of all the outputs
optsOptional settings

Extra doc: https://github.com/casadi/casadi/wiki/L_6e

◆ d()

std::vector<std::string> casadi::DaeBuilder::d ( ) const
inline

Extra doc: https://github.com/casadi/casadi/wiki/L_5r

Definition at line 166 of file dae_builder.hpp.

◆ ddef()

std::vector<MX> casadi::DaeBuilder::ddef ( ) const

Interdependencies are allowed but must be non-cyclic.

Extra doc: https://github.com/casadi/casadi/wiki/L_5s

◆ debug_repr()

std::string casadi::GenericShared< SharedObject , SharedObjectInternal >::debug_repr
inherited

Definition at line 113 of file generic_shared_impl.hpp.

◆ dependent_fun()

Function casadi::DaeBuilder::dependent_fun ( const std::string &  fname,
const std::vector< std::string > &  s_in,
const std::vector< std::string > &  s_out 
) const

◆ der() [1/4]

MX casadi::DaeBuilder::der ( const MX v)

Differentiate an expression with respect to time

◆ der() [2/4]

MX casadi::DaeBuilder::der ( const MX v) const

Differentiate an expression with respect to time

◆ der() [3/4]

std::string casadi::DaeBuilder::der ( const std::string &  name) const

◆ der() [4/4]

std::vector<std::string> casadi::DaeBuilder::der ( const std::vector< std::string > &  name) const

◆ derivatives()

std::vector<std::string> casadi::DaeBuilder::derivatives ( ) const

◆ description()

std::string casadi::DaeBuilder::description ( const std::string &  name) const

Get/set description

◆ dimension()

std::vector<casadi_int> casadi::DaeBuilder::dimension ( const std::string &  name) const

◆ disp()

void casadi::SharedObject::disp ( std::ostream &  stream,
bool  more = false 
) const
inherited

◆ display_unit()

std::string casadi::DaeBuilder::display_unit ( const std::string &  name) const

Get/set the display unit

◆ e()

std::vector<std::string> casadi::DaeBuilder::e ( ) const
inline

Definition at line 373 of file dae_builder.hpp.

◆ eliminate()

void casadi::DaeBuilder::eliminate ( const std::string &  cat)

◆ eliminate_d()

void casadi::DaeBuilder::eliminate_d ( )

◆ eliminate_quad()

void casadi::DaeBuilder::eliminate_quad ( )

◆ eliminate_w()

void casadi::DaeBuilder::eliminate_w ( )

◆ eq()

void casadi::DaeBuilder::eq ( const MX lhs,
const MX rhs,
const Dict opts = Dict() 
)

◆ export_fmu()

std::vector<std::string> casadi::DaeBuilder::export_fmu ( const Dict opts = Dict())

◆ fun() [1/2]

std::vector<Function> casadi::DaeBuilder::fun ( ) const

◆ fun() [2/2]

Function casadi::DaeBuilder::fun ( const std::string &  name) const

◆ gather_fun()

void casadi::DaeBuilder::gather_fun ( casadi_int  max_depth = -1)

◆ get() [1/2]

GenericType casadi::DaeBuilder::get ( const std::string &  name) const

◆ get() [2/2]

std::vector<GenericType> casadi::DaeBuilder::get ( const std::vector< std::string > &  name) const

◆ get_str()

std::string casadi::SharedObject::get_str ( bool  more = false) const
inlineinherited

Definition at line 91 of file shared_object.hpp.

◆ has()

bool casadi::DaeBuilder::has ( const std::string &  name) const

◆ has_beq()

bool casadi::DaeBuilder::has_beq ( const std::string &  name) const

◆ has_fun()

bool casadi::DaeBuilder::has_fun ( const std::string &  name) const

◆ has_t()

bool casadi::DaeBuilder::has_t ( ) const

◆ has_variable()

bool casadi::DaeBuilder::has_variable ( const std::string &  name) const
inline

Definition at line 811 of file dae_builder.hpp.

◆ init_lhs()

std::vector<MX> casadi::DaeBuilder::init_lhs ( ) const

◆ init_rhs()

std::vector<MX> casadi::DaeBuilder::init_rhs ( ) const

◆ initial()

std::string casadi::DaeBuilder::initial ( const std::string &  name) const

Get/set the initial property

◆ initial_unknowns()

std::vector<std::string> casadi::DaeBuilder::initial_unknowns ( ) const

◆ is_null()

bool casadi::GenericShared< SharedObject , SharedObjectInternal >::is_null
inherited

Definition at line 117 of file generic_shared_impl.hpp.

◆ jac_sparsity()

Sparsity casadi::DaeBuilder::jac_sparsity ( const std::vector< std::string > &  onames,
const std::vector< std::string > &  inames 
) const

◆ lift()

void casadi::DaeBuilder::lift ( bool  lift_shared = true,
bool  lift_calls = true 
)

◆ load_fmi_description()

void casadi::DaeBuilder::load_fmi_description ( const std::string &  filename)

◆ max() [1/2]

double casadi::DaeBuilder::max ( const std::string &  name) const

◆ max() [2/2]

std::vector<double> casadi::DaeBuilder::max ( const std::vector< std::string > &  name) const

◆ min() [1/2]

double casadi::DaeBuilder::min ( const std::string &  name) const

◆ min() [2/2]

std::vector<double> casadi::DaeBuilder::min ( const std::vector< std::string > &  name) const

◆ name()

const std::string& casadi::DaeBuilder::name ( ) const

◆ nc()

casadi_int casadi::DaeBuilder::nc ( ) const

◆ nd()

casadi_int casadi::DaeBuilder::nd ( ) const

◆ ne()

casadi_int casadi::DaeBuilder::ne ( ) const
inline

Definition at line 370 of file dae_builder.hpp.

◆ nominal() [1/2]

double casadi::DaeBuilder::nominal ( const std::string &  name) const

◆ nominal() [2/2]

std::vector<double> casadi::DaeBuilder::nominal ( const std::vector< std::string > &  name) const

◆ np()

casadi_int casadi::DaeBuilder::np ( ) const

◆ nq()

casadi_int casadi::DaeBuilder::nq ( ) const

◆ nu()

casadi_int casadi::DaeBuilder::nu ( ) const

◆ numel()

casadi_int casadi::DaeBuilder::numel ( const std::string &  name) const

◆ nw()

casadi_int casadi::DaeBuilder::nw ( ) const

◆ nx()

casadi_int casadi::DaeBuilder::nx ( ) const

◆ ny()

casadi_int casadi::DaeBuilder::ny ( ) const

◆ nz()

casadi_int casadi::DaeBuilder::nz ( ) const

◆ nzero()

casadi_int casadi::DaeBuilder::nzero ( ) const

◆ ode()

std::vector<MX> casadi::DaeBuilder::ode ( ) const

◆ operator()()

MX casadi::DaeBuilder::operator() ( const std::string &  name) const
inline

Get variable expression by name

Definition at line 548 of file dae_builder.hpp.

◆ oracle()

Function casadi::DaeBuilder::oracle ( bool  sx = false,
bool  elim_w = false,
bool  lifted_calls = false 
) const

◆ outputs()

std::vector<std::string> casadi::DaeBuilder::outputs ( ) const

◆ p()

std::vector<std::string> casadi::DaeBuilder::p ( ) const
inline

Extra doc: https://github.com/casadi/casadi/wiki/L_5o

Definition at line 151 of file dae_builder.hpp.

◆ parse_fmi()

void casadi::DaeBuilder::parse_fmi ( const std::string &  filename)
inline

Import existing problem from FMI/XML

Definition at line 482 of file dae_builder.hpp.

◆ pre() [1/3]

MX casadi::DaeBuilder::pre ( const MX v) const

◆ pre() [2/3]

std::string casadi::DaeBuilder::pre ( const std::string &  name) const

◆ pre() [3/3]

std::vector<std::string> casadi::DaeBuilder::pre ( const std::vector< std::string > &  name) const

◆ provides_directional_derivative()

bool casadi::DaeBuilder::provides_directional_derivative ( ) const
inline

Definition at line 488 of file dae_builder.hpp.

◆ provides_directional_derivatives()

bool casadi::DaeBuilder::provides_directional_derivatives ( ) const

◆ prune()

void casadi::DaeBuilder::prune ( bool  prune_p = true,
bool  prune_u = true 
)

◆ q()

std::vector<std::string> casadi::DaeBuilder::q ( ) const
inline

Extra doc: https://github.com/casadi/casadi/wiki/L_5j

Definition at line 126 of file dae_builder.hpp.

◆ quad()

std::vector<MX> casadi::DaeBuilder::quad ( ) const

◆ register_c()

void casadi::DaeBuilder::register_c ( const std::string &  name)

◆ register_d()

void casadi::DaeBuilder::register_d ( const std::string &  name)

◆ register_e()

void casadi::DaeBuilder::register_e ( const std::string &  name)

◆ register_p()

void casadi::DaeBuilder::register_p ( const std::string &  name)

◆ register_q()

void casadi::DaeBuilder::register_q ( const std::string &  name)

◆ register_t()

void casadi::DaeBuilder::register_t ( const std::string &  name)

◆ register_u()

void casadi::DaeBuilder::register_u ( const std::string &  name)

◆ register_w()

void casadi::DaeBuilder::register_w ( const std::string &  name)

◆ register_x()

void casadi::DaeBuilder::register_x ( const std::string &  name)

◆ register_y()

void casadi::DaeBuilder::register_y ( const std::string &  name)

◆ register_z()

void casadi::DaeBuilder::register_z ( const std::string &  name)

◆ reinit()

std::string casadi::DaeBuilder::reinit ( const std::string &  name,
const MX val 
)

◆ reorder()

void casadi::DaeBuilder::reorder ( const std::string &  cat,
const std::vector< std::string > &  v 
)

◆ reset()

void casadi::DaeBuilder::reset ( )

◆ sanity_check()

void casadi::DaeBuilder::sanity_check ( ) const

◆ set() [1/4]

void casadi::DaeBuilder::set ( const std::string &  name,
const std::string &  val 
)

◆ set() [2/4]

void casadi::DaeBuilder::set ( const std::string &  name,
double  val 
)

◆ set() [3/4]

void casadi::DaeBuilder::set ( const std::vector< std::string > &  name,
const std::vector< double > &  val 
)

◆ set() [4/4]

void casadi::DaeBuilder::set ( const std::vector< std::string > &  name,
const std::vector< std::string > &  val 
)

◆ set_alg()

void casadi::DaeBuilder::set_alg ( const std::string &  name,
const MX alg_rhs 
)
inline

Definition at line 359 of file dae_builder.hpp.

◆ set_all()

void casadi::DaeBuilder::set_all ( const std::string &  v,
const std::vector< std::string > &  name 
)

◆ set_attribute() [1/2]

void casadi::DaeBuilder::set_attribute ( const std::string &  a,
const std::string &  name,
double  val 
)

◆ set_attribute() [2/2]

void casadi::DaeBuilder::set_attribute ( const std::string &  a,
const std::vector< std::string > &  name,
const std::vector< double > &  val 
)

◆ set_beq()

void casadi::DaeBuilder::set_beq ( const std::string &  name,
const MX val 
)

◆ set_category()

void casadi::DaeBuilder::set_category ( const std::string &  name,
const std::string &  val 
)

The following changes are permitted: Controls 'u' can be changed to/from tunable parameters 'p' or fixed parameters 'c' Differential states that do not appear in the right-hand-sides can be changed between regular states 'x' and quadrature states 'q'

Other changes are not permitted. Causality and variability is updated accordingly.

Extra doc: https://github.com/casadi/casadi/wiki/L_2c4

◆ set_causality()

void casadi::DaeBuilder::set_causality ( const std::string &  name,
const std::string &  val 
)

The following changes are permitted: For controls 'u' (variability 'continuous', causality 'input'), free parameters 'p' (variability 'tunable', causality 'parameter') and fixed parameters 'c' (variability 'fixed', causality 'parameter'), causality can only be changed indirectly, by updating the variability Add or remove an output 'y' by setting the causality to 'output' or 'local', respectively

No other changes are permitted.

Extra doc: https://github.com/casadi/casadi/wiki/L_2c2

◆ set_description()

void casadi::DaeBuilder::set_description ( const std::string &  name,
const std::string &  val 
)

Get/set description

◆ set_display_unit()

void casadi::DaeBuilder::set_display_unit ( const std::string &  name,
const std::string &  val 
)

Get/set the display unit

◆ set_init()

void casadi::DaeBuilder::set_init ( const std::string &  name,
const MX init_rhs 
)

◆ set_initial()

void casadi::DaeBuilder::set_initial ( const std::string &  name,
const std::string &  val 
)

Get/set the initial property

◆ set_max() [1/2]

void casadi::DaeBuilder::set_max ( const std::string &  name,
double  val 
)

◆ set_max() [2/2]

void casadi::DaeBuilder::set_max ( const std::vector< std::string > &  name,
const std::vector< double > &  val 
)

◆ set_min() [1/2]

void casadi::DaeBuilder::set_min ( const std::string &  name,
double  val 
)

◆ set_min() [2/2]

void casadi::DaeBuilder::set_min ( const std::vector< std::string > &  name,
const std::vector< double > &  val 
)

◆ set_nominal() [1/2]

void casadi::DaeBuilder::set_nominal ( const std::string &  name,
double  val 
)

◆ set_nominal() [2/2]

void casadi::DaeBuilder::set_nominal ( const std::vector< std::string > &  name,
const std::vector< double > &  val 
)

◆ set_ode()

void casadi::DaeBuilder::set_ode ( const std::string &  name,
const MX ode_rhs 
)
inline

Definition at line 354 of file dae_builder.hpp.

◆ set_start() [1/3]

void casadi::DaeBuilder::set_start ( const std::string &  name,
const std::vector< double > &  val 
)

◆ set_start() [2/3]

void casadi::DaeBuilder::set_start ( const std::string &  name,
double  val 
)

◆ set_start() [3/3]

void casadi::DaeBuilder::set_start ( const std::vector< std::string > &  name,
const std::vector< double > &  val 
)

◆ set_start_time()

void casadi::DaeBuilder::set_start_time ( double  val)

◆ set_step_size()

void casadi::DaeBuilder::set_step_size ( double  val)

◆ set_stop_time()

void casadi::DaeBuilder::set_stop_time ( double  val)

◆ set_tolerance()

void casadi::DaeBuilder::set_tolerance ( double  val)

◆ set_type()

void casadi::DaeBuilder::set_type ( const std::string &  name,
const std::string &  val 
)

Get/set the type

◆ set_unit()

void casadi::DaeBuilder::set_unit ( const std::string &  name,
const std::string &  val 
)

Get/set the unit

◆ set_value_reference()

void casadi::DaeBuilder::set_value_reference ( const std::string &  name,
casadi_int  val 
)

Get/set value reference

◆ set_variability()

void casadi::DaeBuilder::set_variability ( const std::string &  name,
const std::string &  val 
)

For controls 'u' (variability 'continuous', causality 'input'), free parameters 'p' (variability 'tunable', causality 'parameter') and fixed parameters 'c' (variability 'fixed', causality 'parameter'), update variability in order to change the category. Causality is updated accordingly.

Other changes are not permitted

Extra doc: https://github.com/casadi/casadi/wiki/L_2c3 

◆ sort()

void casadi::DaeBuilder::sort ( const std::string &  cat)

◆ sort_d()

void casadi::DaeBuilder::sort_d ( )

◆ sort_w()

void casadi::DaeBuilder::sort_w ( )

◆ sort_z()

void casadi::DaeBuilder::sort_z ( const std::vector< std::string > &  z_order)

◆ start() [1/2]

std::vector<double> casadi::DaeBuilder::start ( const std::string &  name) const

◆ start() [2/2]

std::vector<double> casadi::DaeBuilder::start ( const std::vector< std::string > &  name) const

◆ start_time()

double casadi::DaeBuilder::start_time ( ) const

◆ step_size()

double casadi::DaeBuilder::step_size ( ) const

◆ stop_time()

double casadi::DaeBuilder::stop_time ( ) const

◆ t()

const MX& casadi::DaeBuilder::t ( ) const
inline

Definition at line 300 of file dae_builder.hpp.

◆ t_new()

std::vector<std::string> casadi::DaeBuilder::t_new ( ) const
inline

Extra doc: https://github.com/casadi/casadi/wiki/L_2bz

Definition at line 98 of file dae_builder.hpp.

◆ tear()

void casadi::DaeBuilder::tear ( )

◆ time()

const MX& casadi::DaeBuilder::time ( ) const

◆ tolerance()

double casadi::DaeBuilder::tolerance ( ) const

◆ transition() [1/3]

Function casadi::DaeBuilder::transition ( ) const
inline

Definition at line 543 of file dae_builder.hpp.

◆ transition() [2/3]

Function casadi::DaeBuilder::transition ( const std::string &  fname) const

◆ transition() [3/3]

Function casadi::DaeBuilder::transition ( const std::string &  fname,
casadi_int  index 
) const

◆ type()

std::string casadi::DaeBuilder::type ( const std::string &  name,
casadi_int  fmi_version = 3 
) const

Get/set the type

◆ type_name()

std::string casadi::DaeBuilder::type_name ( ) const
inline

Definition at line 74 of file dae_builder.hpp.

◆ u()

std::vector<std::string> casadi::DaeBuilder::u ( ) const
inline

Extra doc: https://github.com/casadi/casadi/wiki/L_5n

Definition at line 146 of file dae_builder.hpp.

◆ unit()

std::string casadi::DaeBuilder::unit ( const std::string &  name) const

Get/set the unit

◆ value_reference()

casadi_int casadi::DaeBuilder::value_reference ( const std::string &  name) const

Get/set value reference

◆ var()

MX casadi::DaeBuilder::var ( const std::string &  name) const

Get variable expression by name

◆ variability()

std::string casadi::DaeBuilder::variability ( const std::string &  name) const

◆ w()

std::vector<std::string> casadi::DaeBuilder::w ( ) const
inline

Extra doc: https://github.com/casadi/casadi/wiki/L_5t

Definition at line 178 of file dae_builder.hpp.

◆ wdef()

std::vector<MX> casadi::DaeBuilder::wdef ( ) const

Interdependencies are allowed but must be non-cyclic.

Extra doc: https://github.com/casadi/casadi/wiki/L_5u

◆ when()

void casadi::DaeBuilder::when ( const MX cond,
const std::vector< std::string > &  eqs,
const Dict opts = Dict() 
)

◆ x()

std::vector<std::string> casadi::DaeBuilder::x ( ) const
inline

Extra doc: https://github.com/casadi/casadi/wiki/L_5f

Definition at line 103 of file dae_builder.hpp.

◆ y()

std::vector<std::string> casadi::DaeBuilder::y ( ) const

◆ ydef()

std::vector<MX> casadi::DaeBuilder::ydef ( ) const

◆ z()

std::vector<std::string> casadi::DaeBuilder::z ( ) const
inline

Extra doc: https://github.com/casadi/casadi/wiki/L_5h

Definition at line 116 of file dae_builder.hpp.

◆ zero()

std::vector<MX> casadi::DaeBuilder::zero ( ) const

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