aligator  0.16.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
Loading...
Searching...
No Matches
aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar > Struct Template Reference

Discrete explicit linear dynamics. More...

#include <aligator/modelling/linear-discrete-dynamics.hpp>

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

Public Types

using Scalar = _Scalar
using Base = ExplicitDynamicsModelTpl<Scalar>
using Data = ExplicitDynamicsDataTpl<Scalar>
using VectorSpaceType = VectorSpaceTpl<Scalar, Eigen::Dynamic>
Public Types inherited from aligator::ExplicitDynamicsModelTpl< _Scalar >
using Scalar = _Scalar
using Data = ExplicitDynamicsDataTpl<Scalar>
using Manifold = ManifoldAbstractTpl<Scalar>

Public Member Functions

 ALIGATOR_DYNAMIC_TYPEDEFS (Scalar)
 LinearDiscreteDynamicsTpl (const MatrixXs &A, const MatrixXs &B, const VectorXs &c)
 Constructor with state manifold and matrices.
void forward (const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const
 Evaluate the forward discrete dynamics.
void dForward (const ConstVectorRef &, const ConstVectorRef &, Data &) const
 Compute the Jacobians of the forward dynamics.
shared_ptr< DatacreateData () const
Public Member Functions inherited from aligator::ExplicitDynamicsModelTpl< _Scalar >
 ALIGATOR_DYNAMIC_TYPEDEFS (Scalar)
 ExplicitDynamicsModelTpl (const polymorphic< Manifold > &space, const int nu)
 Constructor requires providing the next state's manifold.
const Manifoldspace () const
const Manifoldspace_next () const
int nx1 () const
int ndx1 () const
int nx2 () const
int ndx2 () const
virtual ~ExplicitDynamicsModelTpl ()=default

Public Attributes

const MatrixXs A_
const MatrixXs B_
const VectorXs c_
Public Attributes inherited from aligator::ExplicitDynamicsModelTpl< _Scalar >
polymorphic< Manifoldspace_
polymorphic< Manifoldspace_next_
int nu

Additional Inherited Members

Static Public Attributes inherited from aligator::ExplicitDynamicsModelTpl< _Scalar >
static constexpr bool is_explicit = true

Detailed Description

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

Discrete explicit linear dynamics.

Definition at line 12 of file linear-discrete-dynamics.hpp.

Member Typedef Documentation

◆ Scalar

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

Definition at line 13 of file linear-discrete-dynamics.hpp.

◆ Base

template<typename _Scalar>
using aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >::Base = ExplicitDynamicsModelTpl<Scalar>

Definition at line 19 of file linear-discrete-dynamics.hpp.

◆ Data

template<typename _Scalar>
using aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >::Data = ExplicitDynamicsDataTpl<Scalar>

Definition at line 20 of file linear-discrete-dynamics.hpp.

◆ VectorSpaceType

template<typename _Scalar>
using aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >::VectorSpaceType = VectorSpaceTpl<Scalar, Eigen::Dynamic>

Definition at line 21 of file linear-discrete-dynamics.hpp.

Constructor & Destructor Documentation

◆ LinearDiscreteDynamicsTpl()

template<typename _Scalar>
aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >::LinearDiscreteDynamicsTpl(const MatrixXs &A,
const MatrixXs &B,
const VectorXs &c )
inline

Constructor with state manifold and matrices.

Definition at line 24 of file linear-discrete-dynamics.hpp.

Member Function Documentation

◆ ALIGATOR_DYNAMIC_TYPEDEFS()

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

◆ forward()

template<typename _Scalar>
void aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >::forward(const ConstVectorRef &x,
const ConstVectorRef &u,
Data &data ) const
inlinevirtual

Evaluate the forward discrete dynamics.

Implements aligator::ExplicitDynamicsModelTpl< _Scalar >.

Definition at line 31 of file linear-discrete-dynamics.hpp.

◆ dForward()

template<typename _Scalar>
void aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >::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 linear-discrete-dynamics.hpp.

◆ createData()

template<typename _Scalar>
shared_ptr< Data > aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >::createData()const
inlinevirtual

Member Data Documentation

◆ A_

template<typename _Scalar>
const MatrixXs aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >::A_

Definition at line 15 of file linear-discrete-dynamics.hpp.

◆ B_

template<typename _Scalar>
const MatrixXs aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >::B_

Definition at line 16 of file linear-discrete-dynamics.hpp.

◆ c_

template<typename _Scalar>
const VectorXs aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >::c_

Definition at line 17 of file linear-discrete-dynamics.hpp.


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