6#include <proxsuite-nlp/modelling/spaces/cartesian-product.hpp>
15template <
typename _Scalar>
27 xyz::polymorphic<Base> g);
29 void forward(
const ConstVectorRef &x,
const ConstVectorRef &u,
32 void dForward(
const ConstVectorRef &x,
const ConstVectorRef &u,
35 shared_ptr<DynamicsDataTpl<Scalar>>
createData()
const override {
36 return std::make_shared<Data>(*
this);
39 xyz::polymorphic<Base>
f_,
g_;
47template <
typename Scalar>
53template <
typename Scalar>
61#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
62#include "./explicit-dynamics-direct-sum.txx"
auto directSum(xyz::polymorphic< CostAbstractTpl< Scalar > > const &c1, xyz::polymorphic< CostAbstractTpl< Scalar > > const &c2)
shared_ptr< BaseData > data1_
Data(DirectSumExplicitDynamicsTpl const &model)
xyz::polymorphic< Base > g_
ManifoldAbstractTpl< Scalar > Manifold
xyz::polymorphic< Base > f_
void forward(const ConstVectorRef &x, const ConstVectorRef &u, BaseData &data) const override
proxsuite::nlp::CartesianProductTpl< Scalar > CartesianProduct
void dForward(const ConstVectorRef &x, const ConstVectorRef &u, BaseData &data) const override
shared_ptr< DynamicsDataTpl< Scalar > > createData() const override
DirectSumExplicitDynamicsTpl(xyz::polymorphic< Base > f, xyz::polymorphic< Base > g)
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
Specific data struct for explicit dynamics ExplicitDynamicsModelTpl.
Explicit forward dynamics model .