14template <
typename _Scalar>
28 virtual void forward(
const ConstVectorRef &x,
const ConstVectorRef &u,
29 Data &data)
const = 0;
32 virtual void dForward(
const ConstVectorRef &x,
const ConstVectorRef &u,
33 Data &data)
const = 0;
37 void evaluate(
const ConstVectorRef &x,
const ConstVectorRef &u,
38 const ConstVectorRef &xdot,
Data &data)
const override;
41 const ConstVectorRef &xdot,
Data &data)
const override;
47#ifdef ALIGATOR_ENABLE_TEMPLATE_INSTANTIATION
48#include "aligator/modelling/dynamics/ode-abstract.txx"
Base definitions for continuous dynamics.
Namespace for modelling system dynamics.
ContinuousDynamicsAbstractTpl(ManifoldPtr space, const int nu)
Data struct for ContinuousDynamicsAbstractTpl.
Base class for ODE dynamics .
virtual void forward(const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const =0
Evaluate the ODE vector field: this returns the value of .
virtual void dForward(const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const =0
Evaluate the vector field Jacobians.
ContinuousDynamicsDataTpl< Scalar > Data
void evaluate(const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xdot, Data &data) const override
void computeJacobians(const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xdot, Data &data) const override
Differentiate the vector field.
virtual ~ODEAbstractTpl()=default
ALIGATOR_DYNAMIC_TYPEDEFS(Scalar)
ContinuousDynamicsAbstractTpl< Scalar > Base