aligator  0.6.1
A primal-dual augmented Lagrangian-type solver for nonlinear trajectory optimization.
Loading...
Searching...
No Matches
aligator::dynamics::ODEAbstractTpl< _Scalar > Struct Template Referenceabstract

Base class for ODE dynamics \( \dot{x} = f(x, u) \). More...

#include <aligator/modelling/dynamics/ode-abstract.hpp>

Inheritance diagram for aligator::dynamics::ODEAbstractTpl< _Scalar >:
[legend]
Collaboration diagram for aligator::dynamics::ODEAbstractTpl< _Scalar >:
[legend]

Public Types

using Scalar = _Scalar
 
using Base = ContinuousDynamicsAbstractTpl<Scalar>
 
using Data = ODEDataTpl<Scalar>
 
- Public Types inherited from aligator::dynamics::ContinuousDynamicsAbstractTpl< _Scalar >
using Scalar = _Scalar
 
using Manifold = ManifoldAbstractTpl<Scalar>
 
using ManifoldPtr = shared_ptr<Manifold>
 
using Data = ContinuousDynamicsDataTpl<Scalar>
 

Public Member Functions

 ALIGATOR_DYNAMIC_TYPEDEFS (Scalar)
 
virtual ~ODEAbstractTpl ()=default
 
virtual void forward (const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const =0
 Evaluate the ODE vector field: this returns the value of \(\dot{x}\).
 
virtual void dForward (const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const =0
 Evaluate the vector field Jacobians.
 
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
 
- Public Member Functions inherited from aligator::dynamics::ContinuousDynamicsAbstractTpl< _Scalar >
 ALIGATOR_DYNAMIC_TYPEDEFS (Scalar)
 
int ndx () const
 
int nu () const
 
const Manifoldspace () const
 Return a reference to the state space.
 
 ContinuousDynamicsAbstractTpl (ManifoldPtr space, const int nu)
 
virtual ~ContinuousDynamicsAbstractTpl ()=default
 
virtual void evaluate (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xdot, Data &data) const =0
 Evaluate the vector field at a point \((x, u)\).
 
virtual void computeJacobians (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xdot, Data &data) const =0
 Differentiate the vector field.
 
virtual shared_ptr< DatacreateData () const
 Create a data holder instance.
 

Public Attributes

const int nu_
 Control space dimension.
 
ManifoldPtr space_
 State space.
 
- Public Attributes inherited from aligator::dynamics::ContinuousDynamicsAbstractTpl< _Scalar >
ManifoldPtr space_
 State space.
 
const int nu_
 Control space dimension.
 

Detailed Description

template<typename _Scalar>
struct aligator::dynamics::ODEAbstractTpl< _Scalar >

Base class for ODE dynamics \( \dot{x} = f(x, u) \).

Formulated as a DAE (for ContinuousDynamicsAbstractTpl), this class models

\[ f(x, u) - \dot{x}. \]

Definition at line 15 of file ode-abstract.hpp.

Member Typedef Documentation

◆ Scalar

template<typename _Scalar >
using aligator::dynamics::ODEAbstractTpl< _Scalar >::Scalar = _Scalar

Definition at line 16 of file ode-abstract.hpp.

◆ Base

template<typename _Scalar >
using aligator::dynamics::ODEAbstractTpl< _Scalar >::Base = ContinuousDynamicsAbstractTpl<Scalar>

Definition at line 19 of file ode-abstract.hpp.

◆ Data

template<typename _Scalar >
using aligator::dynamics::ODEAbstractTpl< _Scalar >::Data = ODEDataTpl<Scalar>

Definition at line 20 of file ode-abstract.hpp.

Constructor & Destructor Documentation

◆ ~ODEAbstractTpl()

template<typename _Scalar >
virtual aligator::dynamics::ODEAbstractTpl< _Scalar >::~ODEAbstractTpl ( )
virtualdefault

Member Function Documentation

◆ ALIGATOR_DYNAMIC_TYPEDEFS()

template<typename _Scalar >
aligator::dynamics::ODEAbstractTpl< _Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS ( Scalar )

◆ forward()

◆ dForward()

◆ evaluate()

template<typename _Scalar >
void aligator::dynamics::ODEAbstractTpl< _Scalar >::evaluate ( const ConstVectorRef & x,
const ConstVectorRef & u,
const ConstVectorRef & xdot,
Data & data ) const
override

Declare overrides

◆ computeJacobians()

template<typename _Scalar >
void aligator::dynamics::ODEAbstractTpl< _Scalar >::computeJacobians ( const ConstVectorRef & x,
const ConstVectorRef & u,
const ConstVectorRef & xdot,
Data & data ) const
override

Member Data Documentation

◆ nu_

template<typename _Scalar >
const int aligator::dynamics::ContinuousDynamicsAbstractTpl< _Scalar >::nu_

Control space dimension.

Definition at line 28 of file continuous-dynamics-abstract.hpp.

◆ space_

template<typename _Scalar >
ManifoldPtr aligator::dynamics::ContinuousDynamicsAbstractTpl< _Scalar >::space_

State space.

Definition at line 26 of file continuous-dynamics-abstract.hpp.


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