aligator  0.9.0
A primal-dual augmented Lagrangian-type solver for nonlinear trajectory optimization.
Loading...
Searching...
No Matches
aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar > Struct Template Reference

#include <aligator/modelling/autodiff/finite-difference.hpp>

Inheritance diagram for aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >:
[legend]
Collaboration diagram for aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >:
[legend]

Public Types

using Scalar = _Scalar
 
using DynamicsModel = DynamicsModelTpl<Scalar>
 
using Manifold = ManifoldAbstractTpl<Scalar>
 
using Impl = internal::finite_difference_impl<Scalar, DynamicsModelTpl>
 
using Data = typename Impl::Data
 
using BaseData = DynamicsDataTpl<Scalar>
 
- Public Types inherited from aligator::DynamicsModelTpl< _Scalar >
using Scalar
 
using Data
 
using Manifold
 

Public Member Functions

 ALIGATOR_DYNAMIC_TYPEDEFS (_Scalar)
 
 DynamicsFiniteDifferenceHelper (xyz::polymorphic< Manifold > space, xyz::polymorphic< DynamicsModel > func, const Scalar fd_eps)
 
void evaluate (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xn, BaseData &data) const
 
void computeJacobians (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &xn, BaseData &data) const
 
shared_ptr< BaseDatacreateData () 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.
 
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 ~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<typename _Scalar>
struct aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >

Definition at line 223 of file finite-difference.hpp.

Member Typedef Documentation

◆ Scalar

template<typename _Scalar >
using aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::Scalar = _Scalar

Definition at line 224 of file finite-difference.hpp.

◆ DynamicsModel

template<typename _Scalar >
using aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::DynamicsModel = DynamicsModelTpl<Scalar>

Definition at line 226 of file finite-difference.hpp.

◆ Manifold

template<typename _Scalar >
using aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::Manifold = ManifoldAbstractTpl<Scalar>

Definition at line 227 of file finite-difference.hpp.

◆ Impl

template<typename _Scalar >
using aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::Impl = internal::finite_difference_impl<Scalar, DynamicsModelTpl>

Definition at line 228 of file finite-difference.hpp.

◆ Data

template<typename _Scalar >
using aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::Data = typename Impl::Data

Definition at line 229 of file finite-difference.hpp.

◆ BaseData

template<typename _Scalar >
using aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::BaseData = DynamicsDataTpl<Scalar>

Definition at line 230 of file finite-difference.hpp.

Constructor & Destructor Documentation

◆ DynamicsFiniteDifferenceHelper()

template<typename _Scalar >
aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::DynamicsFiniteDifferenceHelper ( xyz::polymorphic< Manifold > space,
xyz::polymorphic< DynamicsModel > func,
const Scalar fd_eps )
inline

Definition at line 234 of file finite-difference.hpp.

Member Function Documentation

◆ ALIGATOR_DYNAMIC_TYPEDEFS()

template<typename _Scalar >
aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS ( _Scalar )

◆ evaluate()

template<typename _Scalar >
void aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::evaluate ( const ConstVectorRef & x,
const ConstVectorRef & u,
const ConstVectorRef & xn,
BaseData & data ) const
inline

Definition at line 239 of file finite-difference.hpp.

◆ computeJacobians()

template<typename _Scalar >
void aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::computeJacobians ( const ConstVectorRef & x,
const ConstVectorRef & u,
const ConstVectorRef & xn,
BaseData & data ) const
inline

Definition at line 244 of file finite-difference.hpp.

◆ createData()

template<typename _Scalar >
shared_ptr< BaseData > aligator::autodiff::DynamicsFiniteDifferenceHelper< _Scalar >::createData ( ) const
inlinevirtual

Reimplemented from aligator::DynamicsModelTpl< _Scalar >.

Definition at line 249 of file finite-difference.hpp.


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