26 #ifndef CASADI_ROSENBROCK_HPP
27 #define CASADI_ROSENBROCK_HPP
29 #include "casadi/core/runtime_integrator.hpp"
30 #include <casadi/solvers/casadi_integrator_rosenbrock_export.h>
74 const std::vector<double>& tout);
78 double t0,
const std::vector<double>& tout) {
86 const char*
plugin_name()
const override {
return "rosenbrock";}
89 std::string
class_name()
const override {
return "Rosenbrock";}
98 void init(
const Dict& opts)
override;
101 void set_work(
void* mem,
const double**& arg,
double**& res,
102 casadi_int*& iw,
double*& w)
const override;
135 void set_iteration_matrix();
138 void set_coefficients();
141 void set_rosenbrock_prob();
144 void codegen_rosenbrock_prob(
CodeGenerator& g,
const std::string& pe,
145 const std::string& p)
const;
148 std::vector<double> c_, gamma_sum_;
155 casadi_int init_max_iter_;
159 std::vector<casadi_int> iter_map_;
162 Sparsity sp_iter_v_, sp_iter_r_, sp_alg_v_, sp_alg_r_;
163 std::vector<casadi_int> iter_prinv_, iter_pc_, alg_prinv_, alg_pc_;
Helper class for C code generation.
Helper class for Serialization.
Internal storage for integrator related data.
Base class for FunctionInternal and LinsolInternal.
'rosenbrock' plugin for Integrator
static const std::string meta_doc
A documentation string.
static Integrator * creator(const std::string &name, const Function &dae, double t0, const std::vector< double > &tout)
Create a new integrator.
bool needs_jacobian() const override
Does the method linearize (tasks EVAL_JAC, EVAL_JAC_ADJ)?
void * alloc_mem() const override
Create memory block.
std::string class_name() const override
Readable name of the internal class.
void free_mem(void *mem) const override
Free memory block.
const char * plugin_name() const override
const Options & get_options() const override
Options.
static ProtoFunction * deserialize(DeserializingStream &s)
Deserialize into MX.
static const Options options_
Options.
Base class of one-step integrators driven by a reverse communication kernel.
Helper class for Serialization.
GenericType::Dict Dict
C++ equivalent of Python's dict or MATLAB's struct.
Options metadata for a class.
casadi_rosenbrock_data< double > r