aligator
0.10.0
A primal-dual augmented Lagrangian-type solver for nonlinear trajectory optimization.
|
Dynamics model: describes system dynamics through an implicit relation \(f(x,u,x') = 0\). More...
#include <aligator/core/dynamics.hpp>
Public Types | |
using | Scalar = _Scalar |
using | Data = DynamicsDataTpl<Scalar> |
using | Manifold = ManifoldAbstractTpl<Scalar> |
Public Member Functions | |
ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) | |
const Manifold & | space () const |
State space for the input. | |
const Manifold & | space_next () const |
State space for the output of this dynamics model. | |
virtual bool | isExplicit () const |
Check if this dynamics model is implicit or explicit. | |
int | nx1 () const |
int | nx2 () const |
DynamicsModelTpl (xyz::polymorphic< Manifold > space, const int nu) | |
Constructor for dynamics. | |
DynamicsModelTpl (xyz::polymorphic< Manifold > space, const int nu, xyz::polymorphic< Manifold > space_next) | |
Constructor for dynamics. This constructor assumes same dimension for the current and next state. | |
virtual void | evaluate (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xn, Data &) const =0 |
virtual void | computeJacobians (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xn, Data &) const =0 |
virtual void | computeVectorHessianProducts (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xn, const ConstVectorRef &lbda, Data &data) const |
virtual shared_ptr< Data > | createData () const |
virtual | ~DynamicsModelTpl ()=default |
Public Attributes | |
xyz::polymorphic< Manifold > | space_ |
State space for the input. | |
xyz::polymorphic< Manifold > | space_next_ |
State space for the output of this dynamics model. | |
const int | ndx1 |
State space dimension. | |
const int | nu |
Control dimension. | |
const int | ndx2 |
Next state space dimension. | |
Dynamics model: describes system dynamics through an implicit relation \(f(x,u,x') = 0\).
A dynamics model is a function \(f(x,u,x')\) that must be set to zero, describing the dynamics mapping \((x, u) \mapsto x'\).
using aligator::DynamicsModelTpl< Scalar >::Scalar = _Scalar |
Definition at line 15 of file dynamics.hpp.
using aligator::DynamicsModelTpl< Scalar >::Data = DynamicsDataTpl<Scalar> |
Definition at line 17 of file dynamics.hpp.
using aligator::DynamicsModelTpl< Scalar >::Manifold = ManifoldAbstractTpl<Scalar> |
Definition at line 18 of file dynamics.hpp.
aligator::DynamicsModelTpl< Scalar >::DynamicsModelTpl | ( | xyz::polymorphic< Manifold > | space, |
const int | nu ) |
Constructor for dynamics.
space | State space. |
nu | Control dimension |
ndx2 | Next state space dimension. |
aligator::DynamicsModelTpl< Scalar >::DynamicsModelTpl | ( | xyz::polymorphic< Manifold > | space, |
const int | nu, | ||
xyz::polymorphic< Manifold > | space_next ) |
Constructor for dynamics. This constructor assumes same dimension for the current and next state.
space | State space for the current node. |
nu | Control dimension |
space_next | State space for the next node. |
|
virtualdefault |
aligator::DynamicsModelTpl< Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS | ( | Scalar | ) |
|
inline |
State space for the input.
Definition at line 32 of file dynamics.hpp.
|
inline |
State space for the output of this dynamics model.
Definition at line 34 of file dynamics.hpp.
|
inlinevirtual |
Check if this dynamics model is implicit or explicit.
Reimplemented in aligator::ExplicitDynamicsModelTpl< Scalar >, and aligator::ExplicitDynamicsModelTpl< _Scalar >.
Definition at line 36 of file dynamics.hpp.
|
inline |
Definition at line 38 of file dynamics.hpp.
|
inline |
Definition at line 39 of file dynamics.hpp.
|
pure virtual |
|
pure virtual |
|
virtual |
Reimplemented in aligator::python::PyDynamics< Base >.
|
virtual |
Reimplemented in aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >, aligator::DirectSumExplicitDynamicsTpl< _Scalar >, aligator::dynamics::ExplicitIntegratorAbstractTpl< _Scalar >, aligator::dynamics::IntegratorAbstractTpl< _Scalar >, aligator::dynamics::IntegratorMidpointTpl< _Scalar >, aligator::dynamics::IntegratorRK2Tpl< _Scalar >, aligator::dynamics::IntegratorSemiImplEulerTpl< _Scalar >, aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >, aligator::ExplicitDynamicsModelTpl< Scalar >, aligator::ExplicitDynamicsModelTpl< _Scalar >, aligator::python::PyDynamics< Base >, and aligator::python::PyExplicitDynamics< ExplicitBase >.
xyz::polymorphic<Manifold> aligator::DynamicsModelTpl< Scalar >::space_ |
State space for the input.
Definition at line 21 of file dynamics.hpp.
xyz::polymorphic<Manifold> aligator::DynamicsModelTpl< Scalar >::space_next_ |
State space for the output of this dynamics model.
Definition at line 23 of file dynamics.hpp.
const int aligator::DynamicsModelTpl< Scalar >::ndx1 |
State space dimension.
Definition at line 25 of file dynamics.hpp.
const int aligator::DynamicsModelTpl< Scalar >::nu |
Control dimension.
Definition at line 27 of file dynamics.hpp.
const int aligator::DynamicsModelTpl< Scalar >::ndx2 |
Next state space dimension.
Definition at line 29 of file dynamics.hpp.