26 #ifndef CASADI_SETNONZEROS_PARAM_HPP
27 #define CASADI_SETNONZEROS_PARAM_HPP
29 #include "mx_node.hpp"
53 static MX create(
const MX& y,
const MX& x,
const MX& nz);
54 static MX create(
const MX& y,
const MX& x,
const MX& inner,
const Slice& outer);
55 static MX create(
const MX& y,
const MX& x,
const Slice& inner,
const MX& outer);
56 static MX create(
const MX& y,
const MX& x,
const MX& inner,
const MX& outer);
69 int sp_forward(
const bvec_t** arg,
bvec_t** res, casadi_int* iw,
bvec_t* w)
const override;
88 const std::vector<casadi_int>& arg,
89 const std::vector<casadi_int>& res,
90 const std::vector<bool>& arg_is_ref,
91 std::vector<bool>& res_is_ref)
const override;
125 void eval_mx(
const std::vector<MX>& arg, std::vector<MX>& res)
const override;
128 int eval(
const double** arg,
double** res, casadi_int* iw,
double* w)
const override;
133 void ad_forward(
const std::vector<std::vector<MX> >& fseed,
134 std::vector<std::vector<MX> >& fsens)
const override;
139 void ad_reverse(
const std::vector<std::vector<MX> >& aseed,
140 std::vector<std::vector<MX> >& asens)
const override;
145 std::string disp(
const std::vector<std::string>& arg)
const override;
151 const std::vector<casadi_int>& arg,
152 const std::vector<casadi_int>& res,
153 const std::vector<bool>& arg_is_ref,
154 std::vector<bool>& res_is_ref)
const override;
179 size_t sz_iw()
const override;
191 void eval_mx(
const std::vector<MX>& arg, std::vector<MX>& res)
const override;
196 void ad_forward(
const std::vector<std::vector<MX> >& fseed,
197 std::vector<std::vector<MX> >& fsens)
const override;
202 void ad_reverse(
const std::vector<std::vector<MX> >& aseed,
203 std::vector<std::vector<MX> >& asens)
const override;
206 int eval(
const double** arg,
double** res, casadi_int* iw,
double* w)
const override;
211 std::string disp(
const std::vector<std::string>& arg)
const override;
217 const std::vector<casadi_int>& arg,
218 const std::vector<casadi_int>& res,
219 const std::vector<bool>& arg_is_ref,
220 std::vector<bool>& res_is_ref)
const override;
256 void eval_mx(
const std::vector<MX>& arg, std::vector<MX>& res)
const override;
259 int eval(
const double** arg,
double** res, casadi_int* iw,
double* w)
const override;
264 void ad_forward(
const std::vector<std::vector<MX> >& fseed,
265 std::vector<std::vector<MX> >& fsens)
const override;
270 void ad_reverse(
const std::vector<std::vector<MX> >& aseed,
271 std::vector<std::vector<MX> >& asens)
const override;
276 std::string disp(
const std::vector<std::string>& arg)
const override;
282 const std::vector<casadi_int>& arg,
283 const std::vector<casadi_int>& res,
284 const std::vector<bool>& arg_is_ref,
285 std::vector<bool>& res_is_ref)
const override;
313 size_t sz_iw()
const override;
325 void eval_mx(
const std::vector<MX>& arg, std::vector<MX>& res)
const override;
328 int eval(
const double** arg,
double** res, casadi_int* iw,
double* w)
const override;
333 void ad_forward(
const std::vector<std::vector<MX> >& fseed,
334 std::vector<std::vector<MX> >& fsens)
const override;
339 void ad_reverse(
const std::vector<std::vector<MX> >& aseed,
340 std::vector<std::vector<MX> >& asens)
const override;
345 std::string disp(
const std::vector<std::string>& arg)
const override;
351 const std::vector<casadi_int>& arg,
352 const std::vector<casadi_int>& res,
353 const std::vector<bool>& arg_is_ref,
354 std::vector<bool>& res_is_ref)
const override;
Helper class for C code generation.
Helper class for Serialization.
Node class for MX objects.
Helper class for Serialization.
SetNonzerosParamParam(const MX &y, const MX &x, const MX &inner, const MX &outer)
Constructor.
~SetNonzerosParamParam() override
Destructor.
~SetNonzerosParamSlice() override
Destructor.
SetNonzerosParamSlice(const MX &y, const MX &x, const MX &inner, const Slice &outer)
Constructor.
Add the nonzeros of a matrix to another matrix, parametrically.
~SetNonzerosParamVector() override
Destructor.
Assign or add entries to a matrix, parametrically.
casadi_int op() const override
Get the operation.
casadi_int n_inplace() const override
Can the operation be performed inplace (i.e. overwrite the result)
SetNonzerosParam(DeserializingStream &s)
Deserializing constructor.
~SetNonzerosSliceParam() override
Destructor.
SetNonzerosSliceParam(const MX &y, const MX &x, const Slice &inner, const MX &outer)
Constructor.
Class representing a Slice.
unsigned long long bvec_t