26 #ifndef CASADI_BLAZING_SPLINE_IMPL_HPP
27 #define CASADI_BLAZING_SPLINE_IMPL_HPP
29 #include "blazing_spline.hpp"
30 #include "function_internal.hpp"
41 const std::string& name,
42 const std::vector< std::vector<double> >& knots,
43 casadi_int diff_order);
48 std::string
class_name()
const override {
return "BlazingSplineFunction";}
58 void merge(
const std::vector<MX>& arg,
59 std::vector<MX>& subs_from, std::vector<MX>& subs_to)
const override;
72 void init(
const Dict& opts)
override;
74 void init_derived_members();
90 bool has_jacobian()
const override;
91 Function get_jacobian(
const std::string& name,
92 const std::vector<std::string>& inames,
93 const std::vector<std::string>& onames,
94 const Dict& opts)
const override;
98 std::vector< std::vector<double> >
knots_;
105 casadi_int
nc_, ndc_, nddc_;
111 size_t get_n_in()
override;
112 size_t get_n_out()
override;
118 bool get_diff_in(casadi_int i)
override;
124 Sparsity get_sparsity_in(casadi_int i)
override;
125 Sparsity get_sparsity_out(casadi_int i)
override;
132 std::string get_name_in(casadi_int i)
override;
133 std::string get_name_out(casadi_int i)
override;
std::vector< casadi_int > knots_offset_
std::vector< double > knots_stacked_
std::vector< std::vector< double > > knots_
std::string class_name() const override
Get type name.
static const Options options_
Options.
bool has_codegen() const override
Is codegen supported?
std::string serialize_base_function() const override
String used to identify the immediate FunctionInternal subclass.
const Options & get_options() const override
Options.
Helper class for C code generation.
Helper class for Serialization.
Internal class for Function.
Base class for FunctionInternal and LinsolInternal.
Helper class for Serialization.
GenericType::Dict Dict
C++ equivalent of Python's dict or MATLAB's struct.
Options metadata for a class.