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

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

Inheritance diagram for aligator::autodiff::CostFiniteDifferenceHelper< Scalar >:
[legend]
Collaboration diagram for aligator::autodiff::CostFiniteDifferenceHelper< Scalar >:
[legend]

Classes

struct  Data
 

Public Types

using Manifold = ManifoldAbstractTpl<Scalar>
 
using CostBase = CostAbstractTpl<Scalar>
 
using CostData = CostDataAbstractTpl<Scalar>
 
- Public Types inherited from aligator::CostAbstractTpl< Scalar >
using Scalar
 
using CostData
 
using Manifold
 

Public Member Functions

 ALIGATOR_DYNAMIC_TYPEDEFS (Scalar)
 
 CostFiniteDifferenceHelper (shared_ptr< CostBase > cost, const Scalar fd_eps)
 
void evaluate (const ConstVectorRef &x, const ConstVectorRef &u, CostData &data_) const override
 Evaluate the cost function.
 
void computeGradients (const ConstVectorRef &x, const ConstVectorRef &u, CostData &data_) const override
 Compute the cost gradients \((\ell_x, \ell_u)\).
 
void computeHessians (const ConstVectorRef &, const ConstVectorRef &, CostData &) const override
 Compute the cost Hessians \((\ell_{ij})_{i,j \in \{x,u\}}\).
 
shared_ptr< CostDatacreateData () const override
 
- Public Member Functions inherited from aligator::CostAbstractTpl< Scalar >
 ALIGATOR_DYNAMIC_TYPEDEFS (Scalar)
 
int nx () const
 
int ndx () const
 
 CostAbstractTpl (shared_ptr< Manifold > space, const int nu)
 
virtual ~CostAbstractTpl ()=default
 

Public Attributes

shared_ptr< CostBasecost_
 
Scalar fd_eps
 
- Public Attributes inherited from aligator::CostAbstractTpl< Scalar >
shared_ptr< Manifoldspace
 State dimension.
 
int nu
 Control dimension.
 

Detailed Description

template<typename Scalar>
struct aligator::autodiff::CostFiniteDifferenceHelper< Scalar >

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

Member Typedef Documentation

◆ Manifold

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

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

◆ CostBase

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

◆ CostData

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

Constructor & Destructor Documentation

◆ CostFiniteDifferenceHelper()

template<typename Scalar >
aligator::autodiff::CostFiniteDifferenceHelper< Scalar >::CostFiniteDifferenceHelper ( shared_ptr< CostBase > cost,
const Scalar fd_eps )
inline

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

Member Function Documentation

◆ ALIGATOR_DYNAMIC_TYPEDEFS()

template<typename Scalar >
aligator::autodiff::CostFiniteDifferenceHelper< Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS ( Scalar )

◆ evaluate()

template<typename Scalar >
void aligator::autodiff::CostFiniteDifferenceHelper< Scalar >::evaluate ( const ConstVectorRef & x,
const ConstVectorRef & u,
CostData & data ) const
inlineoverridevirtual

Evaluate the cost function.

Implements aligator::CostAbstractTpl< Scalar >.

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

◆ computeGradients()

template<typename Scalar >
void aligator::autodiff::CostFiniteDifferenceHelper< Scalar >::computeGradients ( const ConstVectorRef & x,
const ConstVectorRef & u,
CostData & data ) const
inlineoverridevirtual

Compute the cost gradients \((\ell_x, \ell_u)\).

Implements aligator::CostAbstractTpl< Scalar >.

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

◆ computeHessians()

template<typename Scalar >
void aligator::autodiff::CostFiniteDifferenceHelper< Scalar >::computeHessians ( const ConstVectorRef & ,
const ConstVectorRef & ,
CostData &  ) const
inlineoverridevirtual

Compute the cost Hessians \((\ell_{ij})_{i,j \in \{x,u\}}\).

Implements aligator::CostAbstractTpl< Scalar >.

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

◆ createData()

template<typename Scalar >
shared_ptr< CostData > aligator::autodiff::CostFiniteDifferenceHelper< Scalar >::createData ( ) const
inlineoverridevirtual

Reimplemented from aligator::CostAbstractTpl< Scalar >.

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

Member Data Documentation

◆ cost_

template<typename Scalar >
shared_ptr<CostBase> aligator::autodiff::CostFiniteDifferenceHelper< Scalar >::cost_

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

◆ fd_eps

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


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