aligator
0.6.1
A primal-dual augmented Lagrangian-type solver for nonlinear trajectory optimization.
|
Class representing ternary functions \(f(x,u,x')\). More...
#include <aligator/core/function-abstract.hpp>
Public Types | |
using | Scalar = _Scalar |
using | Data = StageFunctionDataTpl<Scalar> |
Public Member Functions | |
ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) | |
StageFunctionTpl (const int ndx1, const int nu, const int ndx2, const int nr) | |
StageFunctionTpl (const int ndx, const int nu, const int nr) | |
Constructor where ndx2 = ndx1. | |
virtual void | evaluate (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &y, Data &data) const =0 |
Evaluate the function. | |
virtual void | computeJacobians (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &y, Data &data) const =0 |
Compute Jacobians of this function. | |
virtual void | computeVectorHessianProducts (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &y, const ConstVectorRef &lbda, Data &data) const |
Compute the vector-hessian products of this function. | |
virtual | ~StageFunctionTpl ()=default |
virtual shared_ptr< Data > | createData () const |
Instantiate a Data object. | |
Public Attributes | |
const int | ndx1 |
Current state dimension. | |
const int | nu |
Control dimension. | |
const int | ndx2 |
Next state dimension. | |
const int | nr |
Function codimension. | |
Class representing ternary functions \(f(x,u,x')\).
Definition at line 16 of file function-abstract.hpp.
using aligator::StageFunctionTpl< _Scalar >::Scalar = _Scalar |
Definition at line 19 of file function-abstract.hpp.
using aligator::StageFunctionTpl< _Scalar >::Data = StageFunctionDataTpl<Scalar> |
Definition at line 21 of file function-abstract.hpp.
aligator::StageFunctionTpl< _Scalar >::StageFunctionTpl | ( | const int | ndx1, |
const int | nu, | ||
const int | ndx2, | ||
const int | nr ) |
aligator::StageFunctionTpl< _Scalar >::StageFunctionTpl | ( | const int | ndx, |
const int | nu, | ||
const int | nr ) |
Constructor where ndx2 = ndx1.
|
virtualdefault |
aligator::StageFunctionTpl< _Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS | ( | Scalar | ) |
|
pure virtual |
Evaluate the function.
x | Current state. |
u | Controls. |
y | Next state. |
data | Data holding struct. |
Implemented in aligator::detail::StateOrControlErrorResidual< _Scalar, arg >, aligator::detail::StateOrControlErrorResidual< Scalar, 0 >, aligator::detail::StateOrControlErrorResidual< Scalar, 1 >, aligator::UnaryFunctionTpl< _Scalar >, aligator::UnaryFunctionTpl< Scalar >, aligator::LinearFunctionCompositionTpl< _Scalar >, aligator::FunctionSliceXprTpl< Scalar, Base >, and aligator::LinearFunctionTpl< Scalar >.
|
pure virtual |
Compute Jacobians of this function.
This computes the Jacobians \( (\frac{\partial f}{\partial x}, \frac{\partial f}{\partial u}, \frac{\partial f}{\partial x'}) \)
x | Current state. |
u | Controls. |
y | Next state. |
data | Data holding struct. |
Implemented in aligator::LinearFunctionTpl< Scalar >, aligator::detail::StateOrControlErrorResidual< _Scalar, arg >, aligator::detail::StateOrControlErrorResidual< Scalar, 0 >, aligator::detail::StateOrControlErrorResidual< Scalar, 1 >, aligator::UnaryFunctionTpl< _Scalar >, aligator::UnaryFunctionTpl< Scalar >, aligator::LinearFunctionCompositionTpl< _Scalar >, and aligator::FunctionSliceXprTpl< Scalar, Base >.
|
virtual |
Compute the vector-hessian products of this function.
x | Current state. |
u | Controls. |
y | Next state. |
lbda | Multiplier estimate. |
data | Data holding struct. |
Reimplemented in aligator::UnaryFunctionTpl< _Scalar >, aligator::UnaryFunctionTpl< Scalar >, and aligator::FunctionSliceXprTpl< Scalar, Base >.
|
virtual |
Instantiate a Data object.
Reimplemented in aligator::ExplicitDynamicsModelTpl< _Scalar >, aligator::AngularAccelerationResidualTpl< _Scalar >, aligator::AngularMomentumResidualTpl< _Scalar >, aligator::CentroidalAccelerationResidualTpl< _Scalar >, aligator::CentroidalCoMResidualTpl< _Scalar >, aligator::CentroidalWrapperResidualTpl< _Scalar >, aligator::FrictionConeResidualTpl< _Scalar >, aligator::LinearMomentumResidualTpl< _Scalar >, aligator::WrenchConeResidualTpl< _Scalar >, aligator::dynamics::IntegratorAbstractTpl< _Scalar >, aligator::dynamics::ExplicitIntegratorAbstractTpl< _Scalar >, aligator::dynamics::IntegratorMidpointTpl< _Scalar >, aligator::dynamics::IntegratorRK2Tpl< _Scalar >, aligator::dynamics::IntegratorSemiImplEulerTpl< _Scalar >, aligator::dynamics::LinearDiscreteDynamicsTpl< _Scalar >, aligator::detail::linear_func_composition_impl< StageFunctionTpl< _Scalar > >, aligator::detail::linear_func_composition_impl< UnaryFunctionTpl< _Scalar > >, aligator::LinearFunctionCompositionTpl< _Scalar >, aligator::LinearUnaryFunctionCompositionTpl< _Scalar >, aligator::LinearFunctionTpl< Scalar >, aligator::CenterOfMassTranslationResidualTpl< _Scalar >, aligator::CenterOfMassVelocityResidualTpl< _Scalar >, aligator::CentroidalMomentumDerivativeResidualTpl< _Scalar >, aligator::CentroidalMomentumResidualTpl< _Scalar >, aligator::FlyHighResidualTpl< _Scalar >, aligator::FramePlacementResidualTpl< _Scalar >, aligator::FrameTranslationResidualTpl< _Scalar >, aligator::FrameVelocityResidualTpl< _Scalar >, aligator::DirectSumExplicitDynamicsTpl< _Scalar >, aligator::FunctionSliceXprTpl< Scalar, Base >, and aligator::FunctionSliceXprTpl< Scalar, UnaryFunctionTpl< Scalar > >.
const int aligator::StageFunctionTpl< _Scalar >::ndx1 |
Current state dimension.
Definition at line 24 of file function-abstract.hpp.
const int aligator::StageFunctionTpl< _Scalar >::nu |
Control dimension.
Definition at line 26 of file function-abstract.hpp.
const int aligator::StageFunctionTpl< _Scalar >::ndx2 |
Next state dimension.
Definition at line 28 of file function-abstract.hpp.
const int aligator::StageFunctionTpl< _Scalar >::nr |
Function codimension.
Definition at line 30 of file function-abstract.hpp.