aligator  0.10.0
A primal-dual augmented Lagrangian-type solver for nonlinear trajectory optimization.
Loading...
Searching...
No Matches
aligator::python::PyExplicitDynamics< ExplicitBase > Struct Template Referencefinal

#include </home/runner/work/aligator/aligator/bindings/python/include/aligator/python/modelling/explicit-dynamics.hpp>

Inheritance diagram for aligator::python::PyExplicitDynamics< ExplicitBase >:
[legend]
Collaboration diagram for aligator::python::PyExplicitDynamics< ExplicitBase >:
[legend]

Public Types

using Scalar = context::Scalar
 
using Data = ExplicitDynamicsDataTpl<Scalar>
 
- Public Types inherited from aligator::ExplicitDynamicsModelTpl< Scalar >
using Scalar = _Scalar
 
using Base = DynamicsModelTpl<Scalar>
 
using BaseData = DynamicsDataTpl<Scalar>
 
using Data = ExplicitDynamicsDataTpl<Scalar>
 
using Manifold = ManifoldAbstractTpl<Scalar>
 
using ManifoldPtr = xyz::polymorphic<Manifold>
 
- Public Types inherited from aligator::DynamicsModelTpl< _Scalar >
using Scalar
 
using Data
 
using Manifold
 

Public Member Functions

 ALIGATOR_DYNAMIC_TYPEDEFS (Scalar)
 
void forward (const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const
 Evaluate the forward discrete dynamics.
 
void dForward (const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const
 Compute the Jacobians of the forward dynamics.
 
shared_ptr< DynamicsData > createData () const
 
shared_ptr< DynamicsData > default_createData () const
 
- Public Member Functions inherited from aligator::ExplicitDynamicsModelTpl< Scalar >
 ALIGATOR_DYNAMIC_TYPEDEFS (Scalar)
 
bool isExplicit () const
 Check if this dynamics model is implicit or explicit.
 
 ExplicitDynamicsModelTpl (const ManifoldPtr &space, const int nu)
 Constructor requires providing the next state's manifold.
 
virtual ~ExplicitDynamicsModelTpl ()=default
 
void evaluate (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &y, BaseData &data) const
 
void computeJacobians (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &y, BaseData &data) const
 
- Public Member Functions inherited from aligator::DynamicsModelTpl< _Scalar >
 ALIGATOR_DYNAMIC_TYPEDEFS (_Scalar)
 
const Manifoldspace () const
 State space for the input.
 
const Manifoldspace_next () const
 State space for the output of this dynamics model.
 
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 ~DynamicsModelTpl ()=default
 

Additional Inherited Members

- Public Attributes inherited from aligator::DynamicsModelTpl< _Scalar >
xyz::polymorphic< Manifoldspace_
 State space for the input.
 
xyz::polymorphic< Manifoldspace_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.
 

Detailed Description

template<class ExplicitBase = context::ExplicitDynamics>
struct aligator::python::PyExplicitDynamics< ExplicitBase >

Wrapper for ExplicitDynamicsModel which avoids redeclaring overrides for any child virtual class (e.g. integrator classes).

Template Parameters
ExplicitBaseThe derived virtual class that is being exposed.
See also
PyStageFunction

Definition at line 22 of file explicit-dynamics.hpp.

Member Typedef Documentation

◆ Scalar

template<class ExplicitBase = context::ExplicitDynamics>
using aligator::python::PyExplicitDynamics< ExplicitBase >::Scalar = context::Scalar

Definition at line 26 of file explicit-dynamics.hpp.

◆ Data

template<class ExplicitBase = context::ExplicitDynamics>
using aligator::python::PyExplicitDynamics< ExplicitBase >::Data = ExplicitDynamicsDataTpl<Scalar>

Definition at line 29 of file explicit-dynamics.hpp.

Member Function Documentation

◆ ALIGATOR_DYNAMIC_TYPEDEFS()

template<class ExplicitBase = context::ExplicitDynamics>
aligator::python::PyExplicitDynamics< ExplicitBase >::ALIGATOR_DYNAMIC_TYPEDEFS ( Scalar )

◆ forward()

template<class ExplicitBase = context::ExplicitDynamics>
void aligator::python::PyExplicitDynamics< ExplicitBase >::forward ( const ConstVectorRef & x,
const ConstVectorRef & u,
Data & data ) const
inlinevirtual

Evaluate the forward discrete dynamics.

Implements aligator::ExplicitDynamicsModelTpl< Scalar >.

Definition at line 33 of file explicit-dynamics.hpp.

◆ dForward()

template<class ExplicitBase = context::ExplicitDynamics>
void aligator::python::PyExplicitDynamics< ExplicitBase >::dForward ( const ConstVectorRef & x,
const ConstVectorRef & u,
Data & data ) const
inlinevirtual

Compute the Jacobians of the forward dynamics.

Implements aligator::ExplicitDynamicsModelTpl< Scalar >.

Definition at line 38 of file explicit-dynamics.hpp.

◆ createData()

template<class ExplicitBase = context::ExplicitDynamics>
shared_ptr< DynamicsData > aligator::python::PyExplicitDynamics< ExplicitBase >::createData ( ) const
inlinevirtual

Reimplemented from aligator::ExplicitDynamicsModelTpl< Scalar >.

Definition at line 43 of file explicit-dynamics.hpp.

◆ default_createData()

template<class ExplicitBase = context::ExplicitDynamics>
shared_ptr< DynamicsData > aligator::python::PyExplicitDynamics< ExplicitBase >::default_createData ( ) const
inline

Definition at line 48 of file explicit-dynamics.hpp.


The documentation for this struct was generated from the following file: