Interface to binary FMU. More...
#include <fmu_impl.hpp>
Internal API.
Extra doc: https://github.com/casadi/casadi/wiki/L_26z
Definition at line 60 of file fmu_impl.hpp.
Public Types | |
using | weak_ref_type = WeakRefInternal |
Public Member Functions | |
FmuInternal (const std::string &name, const std::vector< std::string > &scheme_in, const std::vector< std::string > &scheme_out, const std::map< std::string, std::vector< size_t >> &scheme, const std::vector< std::string > &aux) | |
~FmuInternal () override | |
Destructor. More... | |
virtual void | init (const DaeBuilderInternal *dae) |
virtual void | load_functions ()=0 |
virtual int | enter_initialization_mode (void *instance) const =0 |
virtual int | exit_initialization_mode (void *instance) const =0 |
virtual int | enter_continuous_time_mode (void *instance) const =0 |
virtual int | update_discrete_states (void *instance, EventMemory *eventmem) const =0 |
virtual int | set_real (void *instance, const unsigned int *vr, size_t n_vr, const double *values, size_t n_values) const =0 |
virtual int | get_real (void *instance, const unsigned int *vr, size_t n_vr, double *values, size_t n_values) const =0 |
virtual int | get_directional_derivative (void *instance, const unsigned int *vr_out, size_t n_out, const unsigned int *vr_in, size_t n_in, const double *seed, size_t n_seed, double *sensitivity, size_t n_sensitivity) const =0 |
virtual int | get_adjoint_derivative (void *instance, const unsigned int *vr_out, size_t n_out, const unsigned int *vr_in, size_t n_in, const double *seed, size_t n_seed, double *sensitivity, size_t n_sensitivity) const |
virtual int | set_values (void *instance) const =0 |
virtual int | get_aux (void *instance)=0 |
void | finalize () |
void | disp (std::ostream &stream, bool more) const override |
Print. More... | |
size_t | n_in () const |
Get the number of scheme inputs. More... | |
size_t | n_out () const |
Get the number of scheme outputs. More... | |
size_t | index_in (const std::string &n) const |
size_t | index_out (const std::string &n) const |
Sparsity | jac_sparsity (const std::vector< size_t > &osub, const std::vector< size_t > &isub) const |
Sparsity | hess_sparsity (const std::vector< size_t > &r, const std::vector< size_t > &c) const |
std::string | desc_in (FmuMemory *m, size_t id, bool more=true) const |
virtual std::string | system_infix () const =0 |
template<typename T > | |
T * | load_function (const std::string &symname) |
int | discrete_states_iter (void *instance) const |
int | init_mem (FmuMemory *m) const |
Initalize memory block. More... | |
virtual void * | instantiate () const =0 |
virtual void | free_instance (void *c) const =0 |
void | set (FmuMemory *m, size_t ind, const double *value) const |
void | request (FmuMemory *m, size_t ind) const |
int | eval (FmuMemory *m) const |
void | get (FmuMemory *m, size_t id, double *value) const |
void | set_fwd (FmuMemory *m, casadi_int nseed, const casadi_int *id, const double *v) const |
void | set_fwd (FmuMemory *m, size_t ind, const double *v) const |
void | request_fwd (FmuMemory *m, casadi_int nsens, const casadi_int *id, const casadi_int *wrt_id) const |
void | request_fwd (FmuMemory *m, casadi_int ind) const |
int | eval_fwd (FmuMemory *m, bool independent_seeds) const |
int | eval_ad (FmuMemory *m) const |
int | eval_fd (FmuMemory *m, bool independent_seeds) const |
void | get_fwd (FmuMemory *m, casadi_int nsens, const casadi_int *id, double *v) const |
void | get_fwd (FmuMemory *m, size_t ind, double *v) const |
void | set_adj (FmuMemory *m, casadi_int nseed, const casadi_int *id, const double *v) const |
void | set_adj (FmuMemory *m, size_t ind, const double *v) const |
void | request_adj (FmuMemory *m, casadi_int nsens, const casadi_int *id, const casadi_int *wrt_id) const |
void | request_adj (FmuMemory *m, casadi_int ind) const |
int | eval_adj (FmuMemory *m) const |
void | get_adj (FmuMemory *m, casadi_int nsens, const casadi_int *id, double *v) const |
void | get_adj (FmuMemory *m, size_t ind, double *v) const |
void | gather_fwd (FmuMemory *m) const |
void | gather_adj (FmuMemory *m) const |
void | gather_io (FmuMemory *m) const |
virtual void | get_stats (FmuMemory *m, Dict *stats, const std::vector< std::string > &name_in, const InputStruct *in) const =0 |
Get stats. More... | |
void | serialize (SerializingStream &s) const |
virtual void | serialize_type (SerializingStream &s) const |
virtual void | serialize_body (SerializingStream &s) const |
virtual std::string | class_name () const =0 |
Readable name of the internal class. More... | |
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... | |
std::vector< double > | all_nominal_in (size_t i) const |
Retreive nominal values. More... | |
std::vector< double > | all_nominal_out (size_t i) const |
Retreive nominal values. More... | |
Static Public Member Functions | |
static std::string | dll_suffix () |
static FmuInternal * | deserialize (DeserializingStream &s) |
Protected Member Functions | |
FmuInternal (DeserializingStream &s) | |
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... | |
Protected Attributes | |
Resource | resource_ |
std::string | name_ |
Instance name. More... | |
std::vector< std::string > | scheme_in_ |
std::vector< std::string > | scheme_out_ |
std::map< std::string, std::vector< size_t > > | scheme_ |
std::vector< std::string > | aux_ |
std::string | resource_loc_ |
double | fmutol_ |
std::string | instance_name_ |
std::string | instantiation_token_ |
bool | logging_on_ |
casadi_int | number_of_event_indicators_ |
bool | provides_directional_derivatives_ |
bool | provides_adjoint_derivatives_ |
bool | can_be_instantiated_only_once_per_process_ |
Importer | li_ |
DLL. More... | |
std::vector< size_t > | iind_ |
std::vector< size_t > | iind_map_ |
std::vector< size_t > | oind_ |
std::vector< size_t > | oind_map_ |
bool | has_independent_ |
std::vector< double > | nominal_in_ |
std::vector< double > | nominal_out_ |
std::vector< double > | min_in_ |
std::vector< double > | min_out_ |
std::vector< double > | max_in_ |
std::vector< double > | max_out_ |
std::vector< std::string > | vn_in_ |
std::vector< std::string > | vn_out_ |
std::vector< unsigned int > | vr_in_ |
std::vector< unsigned int > | vr_out_ |
std::vector< double > | value_in_ |
std::vector< std::vector< size_t > > | ired_ |
std::vector< std::vector< size_t > > | ored_ |
Sparsity | jac_sp_ |
Sparsity | hess_sp_ |
Friends | |
class | Fmu |
|
inherited |
Definition at line 152 of file shared_object.hpp.
casadi::FmuInternal::FmuInternal | ( | const std::string & | name, |
const std::vector< std::string > & | scheme_in, | ||
const std::vector< std::string > & | scheme_out, | ||
const std::map< std::string, std::vector< size_t >> & | scheme, | ||
const std::vector< std::string > & | aux | ||
) |
Definition at line 432 of file fmu.cpp.
|
explicitprotected |
Definition at line 1377 of file fmu.cpp.
References aux_, can_be_instantiated_only_once_per_process_, fmutol_, hess_sp_, iind_, iind_map_, instance_name_, instantiation_token_, ired_, jac_sp_, logging_on_, max_in_, max_out_, min_in_, min_out_, name_, nominal_in_, nominal_out_, number_of_event_indicators_, oind_, oind_map_, ored_, provides_adjoint_derivatives_, provides_directional_derivatives_, resource_, scheme_, scheme_in_, scheme_out_, casadi::DeserializingStream::unpack(), value_in_, casadi::DeserializingStream::version(), vn_in_, vn_out_, vr_in_, and vr_out_.
std::vector< double > casadi::FmuInternal::all_nominal_in | ( | size_t | i | ) | const |
Extra doc: https://github.com/casadi/casadi/wiki/L_26r
Definition at line 665 of file fmu.cpp.
References ired_, and nominal_in_.
std::vector< double > casadi::FmuInternal::all_nominal_out | ( | size_t | i | ) | const |
Extra doc: https://github.com/casadi/casadi/wiki/L_26r
Definition at line 673 of file fmu.cpp.
References nominal_out_, and ored_.
|
pure virtualinherited |
Implemented in casadi::SymbolicQr, casadi::Sqpmethod, casadi::ShellCompiler, casadi::Scpgen, casadi::RungeKutta, casadi::Qrsqp, casadi::Qrqp, casadi::QpToNlp, casadi::Newton, casadi::Lsqr, casadi::LinsolTridiag, casadi::LinsolQr, casadi::LinsolLdl, casadi::LinearInterpolantJac, casadi::LinearInterpolant, casadi::Ipqp, casadi::ImplicitToNlp, casadi::Feasiblesqpmethod, casadi::FastNewton, casadi::Collocation, casadi::BSplineInterpolant, casadi::WorhpInterface, casadi::TinyXmlInterface, casadi::SuperscsInterface, casadi::KinsolInterface, casadi::IdasInterface, casadi::CvodesInterface, casadi::SqicInterface, casadi::SnoptInterface, casadi::SlicotExpm, casadi::SlicotDple, casadi::SLEQPInterface, casadi::QpoasesInterface, casadi::ProxqpInterface, casadi::OsqpInterface, casadi::OoqpInterface, casadi::MumpsInterface, casadi::MadnlpInterface, casadi::LapackQr, casadi::LapackLu, casadi::KnitroInterface, casadi::IpoptInterface, casadi::Ma27Interface, casadi::HpmpcInterface, casadi::HpipmInterface, casadi::HighsInterface, casadi::GurobiInterface, casadi::FatropInterface, casadi::FatropConicInterface, casadi::DaqpInterface, casadi::CsparseInterface, casadi::CSparseCholeskyInterface, casadi::CplexInterface, casadi::ClpInterface, casadi::ClarabelInterface, casadi::ClangCompiler, casadi::CbcInterface, casadi::BonminInterface, casadi::Blocksqp, casadi::AmplInterface, casadi::AlpaqaInterface, casadi::SXFunction, casadi::Switch, casadi::SparsityInternal, casadi::WeakRefInternal, casadi::ZipMemResource, casadi::ZipResource, casadi::DirResource, casadi::OptiNode, casadi::Nlpsol, casadi::MXNode, casadi::MXFunction, casadi::MapSum, casadi::ThreadMap, casadi::OmpMap, casadi::Map, casadi::JitFunction, casadi::Interpolant, casadi::DllLibrary, casadi::ImporterInternal, casadi::GenericTypeInternal< ID, T >, casadi::FmuFunction, casadi::Fmu3, casadi::Fmu2, casadi::Smoothing, casadi::CentralDiff, casadi::BackwardDiff, casadi::ForwardDiff, casadi::External, casadi::DaeBuilderInternal, casadi::CallbackInternal, and casadi::BlazingSplineFunction.
Referenced by casadi::FunctionInternal::call_forward(), casadi::FunctionInternal::call_reverse(), casadi::FunctionInternal::codegen_body(), casadi::ProtoFunction::construct(), deserialize(), casadi::ResourceInternal::deserialize(), disp(), casadi::FunctionInternal::disp(), casadi::LinsolInternal::disp(), casadi::XmlFileInternal::dump(), casadi::FunctionInternal::eval(), casadi::FunctionInternal::eval_dm(), casadi::FunctionInternal::eval_sx(), casadi::FunctionInternal::export_code(), casadi::LinsolInternal::generate(), casadi::FunctionInternal::generate_dependencies(), casadi::Conic::generateNativeCode(), get_adjoint_derivative(), casadi::FunctionInternal::get_forward(), casadi::FunctionInternal::get_function(), casadi::FunctionInternal::get_jacobian(), casadi::FunctionInternal::get_reverse(), casadi::FiniteDiff::init(), casadi::FunctionInternal::instruction_constant(), casadi::FunctionInternal::instruction_id(), casadi::FunctionInternal::instruction_input(), casadi::FunctionInternal::instruction_MX(), casadi::FunctionInternal::instruction_output(), casadi::FunctionInternal::instructions_sx(), casadi::LinsolInternal::linsol_eval_sx(), casadi::FunctionInternal::n_instructions(), casadi::FunctionInternal::n_nodes(), casadi::LinsolInternal::neig(), casadi::LinsolInternal::nfact(), casadi::FunctionInternal::oracle(), casadi::XmlFileInternal::parse(), casadi::LinsolInternal::rank(), serialize_type(), casadi::ResourceInternal::serialize_type(), and casadi::LinsolInternal::solve().
|
inherited |
Definition at line 62 of file generic_shared_internal.hpp.
std::string casadi::FmuInternal::desc_in | ( | FmuMemory * | m, |
size_t | id, | ||
bool | more = true |
||
) | const |
Definition at line 694 of file fmu.cpp.
References casadi::FmuMemory::ibuf_, max_in_, min_in_, nominal_in_, and vn_in_.
Referenced by eval_fd().
|
static |
Definition at line 1417 of file fmu.cpp.
References casadi::SharedObjectInternal::class_name(), casadi::Fmu2::deserialize(), and casadi::DeserializingStream::unpack().
Referenced by casadi::Fmu::deserialize().
|
inlineprotectedinherited |
Called in the destructor of singletons
Definition at line 77 of file generic_shared_internal.hpp.
int casadi::FmuInternal::discrete_states_iter | ( | void * | instance | ) | const |
Definition at line 1075 of file fmu.cpp.
References casadi::EventMemory::discrete_states_need_update, casadi::EventMemory::next_event_time, casadi::EventMemory::next_event_time_defined, casadi::EventMemory::nominals_of_continuous_states_changed, casadi::EventMemory::terminate_simulation, update_discrete_states(), and casadi::EventMemory::values_of_continuous_states_changed.
Referenced by init_mem().
|
overridevirtual |
Extra doc: https://github.com/casadi/casadi/wiki/L_26m
Implements casadi::SharedObjectInternal.
Definition at line 609 of file fmu.cpp.
References casadi::SharedObjectInternal::class_name(), and name_.
|
static |
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by init_mem().
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by finalize(), and init_mem().
int casadi::FmuInternal::eval | ( | FmuMemory * | m | ) | const |
Definition at line 1179 of file fmu.cpp.
References gather_io(), casadi::get_ptr(), get_real(), casadi::FmuMemory::id_in_, casadi::FmuMemory::id_out_, casadi::FmuMemory::instance, n_out(), casadi::FmuMemory::obuf_, set_real(), casadi::FmuMemory::v_in_, casadi::FmuMemory::v_out_, casadi::FmuMemory::vr_in_, and casadi::FmuMemory::vr_out_.
int casadi::FmuInternal::eval_ad | ( | FmuMemory * | m | ) | const |
Definition at line 746 of file fmu.cpp.
References casadi::FmuMemory::d_in_, casadi::FmuMemory::d_out_, get_directional_derivative(), casadi::get_ptr(), get_real(), casadi::FmuMemory::id_in_, casadi::FmuMemory::id_out_, casadi::FmuMemory::instance, casadi::FmuMemory::osens_, casadi::FmuMemory::v_out_, casadi::FmuMemory::vr_in_, and casadi::FmuMemory::vr_out_.
Referenced by eval_fwd().
int casadi::FmuInternal::eval_adj | ( | FmuMemory * | m | ) | const |
Definition at line 723 of file fmu.cpp.
References casadi::FmuMemory::d_in_, casadi::FmuMemory::d_out_, gather_adj(), get_adjoint_derivative(), casadi::get_ptr(), casadi::FmuMemory::id_in_, casadi::FmuMemory::id_out_, casadi::FmuMemory::instance, casadi::FmuMemory::isens_, casadi::FmuMemory::vr_in_, and casadi::FmuMemory::vr_out_.
int casadi::FmuInternal::eval_fd | ( | FmuMemory * | m, |
bool | independent_seeds | ||
) | const |
Definition at line 775 of file fmu.cpp.
References casadi::FmuFunction::abstol_, casadi::casadi_copy(), casadi::FmuMemory::d_in_, casadi::FmuMemory::d_out_, desc_in(), casadi::eps, casadi::FmuFunction::fd_, casadi::fd_offset(), casadi::FmuMemory::fd_out_, casadi::finite_diff(), casadi::FmuMemory::flip_, casadi::get_ptr(), get_real(), casadi::FmuMemory::ibuf_, casadi::FmuMemory::id_in_, casadi::FmuMemory::id_out_, casadi::FmuMemory::in_bounds_, casadi::FmuMemory::instance, max_in_, min_in_, casadi::n_fd_points(), casadi::nan, nominal_in_, nominal_out_, casadi::FmuMemory::osens_, casadi::FmuFunction::reltol_, casadi::FmuMemory::self, set_real(), casadi::sign(), casadi::FmuFunction::step_, casadi::str(), casadi::to_string(), casadi::FmuMemory::v_in_, casadi::FmuMemory::v_out_, casadi::FmuMemory::v_pert_, casadi::FmuFunction::validate_ad_file_, casadi::FmuFunction::validate_forward_, vn_in_, vn_out_, casadi::FmuMemory::vr_in_, casadi::FmuMemory::vr_out_, and casadi::FmuMemory::wrt_.
Referenced by eval_fwd().
int casadi::FmuInternal::eval_fwd | ( | FmuMemory * | m, |
bool | independent_seeds | ||
) | const |
Definition at line 707 of file fmu.cpp.
References eval_ad(), eval_fd(), gather_fwd(), casadi::FmuMemory::self, casadi::FmuFunction::uses_directional_derivatives_, and casadi::FmuFunction::validate_forward_.
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by init_mem().
void casadi::FmuInternal::finalize | ( | ) |
Definition at line 569 of file fmu.cpp.
References casadi::Filesystem::absolute(), dll_suffix(), enter_initialization_mode(), free_instance(), get_aux(), casadi::get_ptr(), get_real(), instance_name_, instantiate(), casadi::Filesystem::is_enabled(), li_, load_functions(), casadi::Resource::path(), resource_, resource_loc_, set_values(), system_infix(), value_in_, and vr_in_.
Referenced by casadi::Fmu2::deserialize().
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by finalize().
void casadi::FmuInternal::gather_adj | ( | FmuMemory * | m | ) | const |
Definition at line 1295 of file fmu.cpp.
References casadi::FmuMemory::d_in_, casadi::FmuMemory::d_out_, gather_io(), casadi::FmuMemory::id_in_, casadi::FmuMemory::id_out_, casadi::FmuMemory::osens_, and casadi::FmuMemory::v_in_.
Referenced by eval_adj().
void casadi::FmuInternal::gather_fwd | ( | FmuMemory * | m | ) | const |
Definition at line 1276 of file fmu.cpp.
References casadi::FmuMemory::d_in_, casadi::FmuMemory::d_out_, gather_io(), casadi::FmuMemory::id_in_, casadi::FmuMemory::id_out_, casadi::FmuMemory::isens_, and casadi::FmuMemory::v_out_.
Referenced by eval_fwd().
void casadi::FmuInternal::gather_io | ( | FmuMemory * | m | ) | const |
Definition at line 1251 of file fmu.cpp.
References casadi::FmuMemory::ibuf_, casadi::FmuMemory::id_in_, casadi::FmuMemory::id_out_, casadi::FmuMemory::imarked_, casadi::FmuMemory::omarked_, casadi::FmuMemory::v_in_, casadi::FmuMemory::vr_in_, vr_in_, casadi::FmuMemory::vr_out_, and vr_out_.
Referenced by eval(), gather_adj(), and gather_fwd().
void casadi::FmuInternal::get | ( | FmuMemory * | m, |
size_t | id, | ||
double * | value | ||
) | const |
Definition at line 1207 of file fmu.cpp.
References casadi::FmuMemory::obuf_, and ored_.
Referenced by casadi::Fmu::get().
void casadi::FmuInternal::get_adj | ( | FmuMemory * | m, |
casadi_int | nsens, | ||
const casadi_int * | id, | ||
double * | v | ||
) | const |
Definition at line 1059 of file fmu.cpp.
References casadi::FmuMemory::isens_.
Referenced by get_adj().
void casadi::FmuInternal::get_adj | ( | FmuMemory * | m, |
size_t | ind, | ||
double * | v | ||
) | const |
Definition at line 1065 of file fmu.cpp.
|
virtual |
Reimplemented in casadi::Fmu3.
Definition at line 562 of file fmu.cpp.
References casadi::SharedObjectInternal::class_name().
Referenced by eval_adj().
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by finalize().
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by eval_ad().
void casadi::FmuInternal::get_fwd | ( | FmuMemory * | m, |
casadi_int | nsens, | ||
const casadi_int * | id, | ||
double * | v | ||
) | const |
Definition at line 1006 of file fmu.cpp.
References casadi::FmuMemory::osens_.
Referenced by get_fwd().
void casadi::FmuInternal::get_fwd | ( | FmuMemory * | m, |
size_t | ind, | ||
double * | v | ||
) | const |
Definition at line 1012 of file fmu.cpp.
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by eval(), eval_ad(), eval_fd(), and finalize().
|
pure virtual |
Extra doc: https://github.com/casadi/casadi/wiki/L_272
Implemented in casadi::Fmu3, and casadi::Fmu2.
|
inherited |
Definition at line 60 of file generic_shared_internal.hpp.
Sparsity casadi::FmuInternal::hess_sparsity | ( | const std::vector< size_t > & | r, |
const std::vector< size_t > & | c | ||
) | const |
Definition at line 654 of file fmu.cpp.
References hess_sp_, and casadi::Sparsity::sub().
size_t casadi::FmuInternal::index_in | ( | const std::string & | n | ) | const |
Definition at line 623 of file fmu.cpp.
References scheme_in_.
Referenced by casadi::InputStruct::parse(), and casadi::OutputStruct::parse().
size_t casadi::FmuInternal::index_out | ( | const std::string & | n | ) | const |
Definition at line 633 of file fmu.cpp.
References scheme_out_.
Referenced by casadi::InputStruct::parse(), and casadi::OutputStruct::parse().
|
virtual |
Reimplemented in casadi::Fmu3, and casadi::Fmu2.
Definition at line 443 of file fmu.cpp.
References casadi::DaeBuilderInternal::can_be_instantiated_only_once_per_process_, can_be_instantiated_only_once_per_process_, casadi::Variable::causality, casadi::DaeBuilderInternal::debug_, casadi::DaeBuilderInternal::fmutol_, fmutol_, has_independent_, hess_sp_, casadi::DaeBuilderInternal::hess_sparsity(), iind_, iind_map_, casadi::INDEPENDENT, instance_name_, casadi::DaeBuilderInternal::instantiation_token_, instantiation_token_, ired_, jac_sp_, casadi::DaeBuilderInternal::jac_sparsity(), logging_on_, casadi::Variable::max, max_in_, max_out_, casadi::Variable::min, min_in_, min_out_, casadi::DaeBuilderInternal::model_identifier_, casadi::DaeBuilderInternal::n_variables(), casadi::Variable::name, casadi::Variable::nominal, nominal_in_, nominal_out_, casadi::DaeBuilderInternal::number_of_event_indicators_, number_of_event_indicators_, oind_, oind_map_, ored_, casadi::DaeBuilderInternal::provides_adjoint_derivatives_, provides_adjoint_derivatives_, casadi::DaeBuilderInternal::provides_directional_derivatives_, provides_directional_derivatives_, casadi::DaeBuilderInternal::resource_, resource_, scheme_, scheme_in_, scheme_out_, value_in_, casadi::Variable::value_reference, casadi::DaeBuilderInternal::variable(), vn_in_, vn_out_, vr_in_, and vr_out_.
Referenced by casadi::Fmu2::init(), and casadi::Fmu3::init().
int casadi::FmuInternal::init_mem | ( | FmuMemory * | m | ) | const |
Extra doc: https://github.com/casadi/casadi/wiki/L_271
Definition at line 1105 of file fmu.cpp.
References discrete_states_iter(), enter_continuous_time_mode(), enter_initialization_mode(), exit_initialization_mode(), casadi::FmuMemory::ibuf_, iind_, casadi::FmuMemory::imarked_, casadi::FmuMemory::instance, instantiate(), casadi::FmuMemory::isens_, casadi::nan, casadi::FmuMemory::obuf_, oind_, casadi::FmuMemory::omarked_, casadi::FmuMemory::osens_, set_values(), and casadi::FmuMemory::wrt_.
|
inlineprotectedinherited |
Called in the constructor of singletons to avoid that the counter reaches zero
Definition at line 71 of file generic_shared_internal.hpp.
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by finalize(), and init_mem().
Sparsity casadi::FmuInternal::jac_sparsity | ( | const std::vector< size_t > & | osub, |
const std::vector< size_t > & | isub | ||
) | const |
T * casadi::FmuInternal::load_function | ( | const std::string & | symname | ) |
Definition at line 334 of file fmu_impl.hpp.
References casadi::Importer::get_function(), li_, and casadi::T.
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by finalize().
|
inline |
Extra doc: https://github.com/casadi/casadi/wiki/L_270
Definition at line 124 of file fmu_impl.hpp.
Referenced by casadi::Fmu3::get_adjoint_derivative(), casadi::Fmu2::get_directional_derivative(), and casadi::Fmu3::get_directional_derivative().
|
inline |
Extra doc: https://github.com/casadi/casadi/wiki/L_26o
Definition at line 129 of file fmu_impl.hpp.
Referenced by eval(), casadi::Fmu3::get_adjoint_derivative(), casadi::Fmu2::get_directional_derivative(), and casadi::Fmu3::get_directional_derivative().
void casadi::FmuInternal::request | ( | FmuMemory * | m, |
size_t | ind | ||
) | const |
Definition at line 1170 of file fmu.cpp.
References casadi::FmuMemory::omarked_, ored_, and casadi::FmuMemory::wrt_.
void casadi::FmuInternal::request_adj | ( | FmuMemory * | m, |
casadi_int | ind | ||
) | const |
Definition at line 1050 of file fmu.cpp.
References ired_, and request_adj().
void casadi::FmuInternal::request_adj | ( | FmuMemory * | m, |
casadi_int | nsens, | ||
const casadi_int * | id, | ||
const casadi_int * | wrt_id | ||
) | const |
Definition at line 1041 of file fmu.cpp.
References casadi::FmuMemory::imarked_, and casadi::FmuMemory::wrt_.
Referenced by request_adj().
void casadi::FmuInternal::request_fwd | ( | FmuMemory * | m, |
casadi_int | ind | ||
) | const |
Definition at line 1242 of file fmu.cpp.
References ored_, and request_fwd().
void casadi::FmuInternal::request_fwd | ( | FmuMemory * | m, |
casadi_int | nsens, | ||
const casadi_int * | id, | ||
const casadi_int * | wrt_id | ||
) | const |
Definition at line 1233 of file fmu.cpp.
References casadi::FmuMemory::omarked_, and casadi::FmuMemory::wrt_.
Referenced by request_fwd().
void casadi::FmuInternal::serialize | ( | SerializingStream & | s | ) | const |
Definition at line 1328 of file fmu.cpp.
References serialize_body(), and serialize_type().
|
virtual |
Reimplemented in casadi::Fmu2.
Definition at line 1337 of file fmu.cpp.
References aux_, can_be_instantiated_only_once_per_process_, fmutol_, hess_sp_, iind_, iind_map_, instance_name_, instantiation_token_, ired_, jac_sp_, logging_on_, max_in_, max_out_, min_in_, min_out_, name_, nominal_in_, nominal_out_, number_of_event_indicators_, oind_, oind_map_, ored_, casadi::SerializingStream::pack(), provides_adjoint_derivatives_, provides_directional_derivatives_, resource_, scheme_, scheme_in_, scheme_out_, value_in_, casadi::SerializingStream::version(), vn_in_, vn_out_, vr_in_, and vr_out_.
Referenced by serialize(), and casadi::Fmu2::serialize_body().
|
virtual |
Definition at line 1333 of file fmu.cpp.
References casadi::SharedObjectInternal::class_name(), and casadi::SerializingStream::pack().
Referenced by serialize().
void casadi::FmuInternal::set | ( | FmuMemory * | m, |
size_t | ind, | ||
const double * | value | ||
) | const |
Definition at line 1149 of file fmu.cpp.
References casadi::FmuMemory::ibuf_, casadi::FmuMemory::imarked_, and ired_.
void casadi::FmuInternal::set_adj | ( | FmuMemory * | m, |
casadi_int | nseed, | ||
const casadi_int * | id, | ||
const double * | v | ||
) | const |
Definition at line 1022 of file fmu.cpp.
References casadi::FmuMemory::omarked_, and casadi::FmuMemory::osens_.
Referenced by set_adj().
void casadi::FmuInternal::set_adj | ( | FmuMemory * | m, |
size_t | ind, | ||
const double * | v | ||
) | const |
Definition at line 1031 of file fmu.cpp.
void casadi::FmuInternal::set_fwd | ( | FmuMemory * | m, |
casadi_int | nseed, | ||
const casadi_int * | id, | ||
const double * | v | ||
) | const |
Definition at line 1214 of file fmu.cpp.
References casadi::FmuMemory::imarked_, and casadi::FmuMemory::isens_.
Referenced by set_fwd().
void casadi::FmuInternal::set_fwd | ( | FmuMemory * | m, |
size_t | ind, | ||
const double * | v | ||
) | const |
Definition at line 1223 of file fmu.cpp.
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by finalize(), and init_mem().
|
inlineprotectedinherited |
Definition at line 83 of file generic_shared_internal.hpp.
|
inlineprotectedinherited |
Definition at line 92 of file generic_shared_internal.hpp.
|
pure virtual |
|
pure virtual |
Implemented in casadi::Fmu3, and casadi::Fmu2.
Referenced by discrete_states_iter().
|
inherited |
Extra doc: https://github.com/casadi/casadi/wiki/L_1ai
Definition at line 67 of file generic_shared_internal.hpp.
|
friend |
Definition at line 61 of file fmu_impl.hpp.
|
protected |
Definition at line 281 of file fmu_impl.hpp.
Referenced by FmuInternal(), casadi::Fmu2::init(), casadi::Fmu3::init(), and serialize_body().
|
protected |
Definition at line 305 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 287 of file fmu_impl.hpp.
Referenced by casadi::Fmu3::enter_initialization_mode(), FmuInternal(), init(), casadi::Fmu2::instantiate(), and serialize_body().
|
protected |
Definition at line 314 of file fmu_impl.hpp.
Referenced by init(), and casadi::Fmu3::set_real().
|
protected |
Definition at line 330 of file fmu_impl.hpp.
Referenced by FmuInternal(), hess_sparsity(), init(), and serialize_body().
|
protected |
Definition at line 311 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), init_mem(), and serialize_body().
|
protected |
Definition at line 311 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 290 of file fmu_impl.hpp.
Referenced by finalize(), FmuInternal(), init(), casadi::Fmu2::instantiate(), casadi::Fmu3::instantiate(), and serialize_body().
|
protected |
Definition at line 293 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), casadi::Fmu2::instantiate(), casadi::Fmu3::instantiate(), and serialize_body().
|
protected |
Definition at line 327 of file fmu_impl.hpp.
Referenced by all_nominal_in(), FmuInternal(), get_adj(), casadi::Fmu2::get_stats(), casadi::Fmu3::get_stats(), init(), request_adj(), serialize_body(), set(), and set_fwd().
|
protected |
Definition at line 330 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), jac_sparsity(), and serialize_body().
|
protected |
Definition at line 308 of file fmu_impl.hpp.
Referenced by finalize(), and load_function().
|
protected |
Definition at line 296 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), casadi::Fmu2::instantiate(), casadi::Fmu3::instantiate(), and serialize_body().
|
protected |
Definition at line 319 of file fmu_impl.hpp.
Referenced by desc_in(), eval_fd(), FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 319 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 318 of file fmu_impl.hpp.
Referenced by desc_in(), eval_fd(), FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 318 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 274 of file fmu_impl.hpp.
Referenced by disp(), FmuInternal(), and serialize_body().
|
protected |
Definition at line 317 of file fmu_impl.hpp.
Referenced by all_nominal_in(), desc_in(), eval_fd(), FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 317 of file fmu_impl.hpp.
Referenced by all_nominal_out(), eval_fd(), FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 299 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 311 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), init_mem(), and serialize_body().
|
protected |
Definition at line 311 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 327 of file fmu_impl.hpp.
Referenced by all_nominal_out(), FmuInternal(), get(), get_fwd(), init(), request(), request_fwd(), serialize_body(), and set_adj().
|
protected |
Definition at line 302 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), casadi::Fmu3::load_functions(), and serialize_body().
|
protected |
Definition at line 302 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), casadi::Fmu2::load_functions(), casadi::Fmu3::load_functions(), and serialize_body().
|
protected |
Definition at line 271 of file fmu_impl.hpp.
Referenced by finalize(), FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 284 of file fmu_impl.hpp.
Referenced by finalize(), casadi::Fmu2::instantiate(), and casadi::Fmu3::instantiate().
|
protected |
Definition at line 278 of file fmu_impl.hpp.
Referenced by FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 277 of file fmu_impl.hpp.
Referenced by FmuInternal(), index_in(), init(), and serialize_body().
|
protected |
Definition at line 277 of file fmu_impl.hpp.
Referenced by FmuInternal(), index_out(), init(), and serialize_body().
|
protected |
Definition at line 324 of file fmu_impl.hpp.
Referenced by finalize(), FmuInternal(), casadi::Fmu2::get_stats(), casadi::Fmu3::get_stats(), init(), and serialize_body().
|
protected |
Definition at line 320 of file fmu_impl.hpp.
Referenced by desc_in(), eval_fd(), FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 320 of file fmu_impl.hpp.
Referenced by eval_fd(), FmuInternal(), init(), and serialize_body().
|
protected |
Definition at line 321 of file fmu_impl.hpp.
Referenced by finalize(), FmuInternal(), gather_io(), init(), serialize_body(), and casadi::Fmu3::set_real().
|
protected |
Definition at line 321 of file fmu_impl.hpp.
Referenced by FmuInternal(), gather_io(), init(), and serialize_body().