aligator
0.10.0
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 ndx, const int nu, const int nr) | |
virtual void | evaluate (const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const =0 |
Evaluate the function. | |
virtual void | computeJacobians (const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const =0 |
Compute Jacobians of this function. | |
virtual void | computeVectorHessianProducts (const ConstVectorRef &x, const ConstVectorRef &u, 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 | nr |
Function codimension. | |
Class representing ternary functions \(f(x,u,x')\).
using aligator::StageFunctionTpl< Scalar >::Scalar = _Scalar |
Definition at line 14 of file function-abstract.hpp.
using aligator::StageFunctionTpl< Scalar >::Data = StageFunctionDataTpl<Scalar> |
Definition at line 16 of file function-abstract.hpp.
aligator::StageFunctionTpl< Scalar >::StageFunctionTpl | ( | const int | ndx, |
const int | nu, | ||
const int | nr ) |
|
virtualdefault |
aligator::StageFunctionTpl< Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS | ( | Scalar | ) |
|
pure virtual |
Evaluate the function.
x | Current state. |
u | Controls. |
data | Data holding struct. |
Implemented in aligator::detail::StateOrControlErrorResidual< Scalar, 0 >, aligator::detail::StateOrControlErrorResidual< Scalar, 1 >, aligator::FunctionSliceXprTpl< Scalar, StageFunctionTpl< Scalar > >, aligator::LinearFunctionTpl< Scalar >, aligator::python::PyStageFunction< FunctionBase >, and aligator::UnaryFunctionTpl< _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::detail::StateOrControlErrorResidual< Scalar, 0 >, aligator::detail::StateOrControlErrorResidual< Scalar, 1 >, aligator::FunctionSliceXprTpl< Scalar, StageFunctionTpl< Scalar > >, aligator::LinearFunctionTpl< Scalar >, aligator::python::PyStageFunction< FunctionBase >, and aligator::UnaryFunctionTpl< _Scalar >.
|
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::FunctionSliceXprTpl< Scalar, StageFunctionTpl< Scalar > >, aligator::python::PyStageFunction< FunctionBase >, and aligator::UnaryFunctionTpl< _Scalar >.
|
virtual |
Instantiate a Data object.
Reimplemented in aligator::AngularAccelerationResidualTpl< _Scalar >, aligator::AngularMomentumResidualTpl< _Scalar >, aligator::autodiff::FiniteDifferenceHelper< _Scalar >, aligator::CenterOfMassTranslationResidualTpl< _Scalar >, aligator::CenterOfMassVelocityResidualTpl< _Scalar >, aligator::CentroidalAccelerationResidualTpl< _Scalar >, aligator::CentroidalCoMResidualTpl< _Scalar >, aligator::CentroidalFrictionConeResidualTpl< _Scalar >, aligator::CentroidalMomentumDerivativeResidualTpl< _Scalar >, aligator::CentroidalMomentumResidualTpl< _Scalar >, aligator::CentroidalWrapperResidualTpl< _Scalar >, aligator::CentroidalWrenchConeResidualTpl< _Scalar >, aligator::DCMPositionResidualTpl< _Scalar >, aligator::detail::linear_func_composition_impl< StageFunctionTpl< _Scalar > >, aligator::detail::linear_func_composition_impl< UnaryFunctionTpl< _Scalar > >, aligator::FramePlacementResidualTpl< _Scalar >, aligator::FrameTranslationResidualTpl< _Scalar >, aligator::FrameVelocityResidualTpl< _Scalar >, aligator::FunctionSliceXprTpl< Scalar, StageFunctionTpl< Scalar > >, aligator::FunctionSliceXprTpl< Scalar, UnaryFunctionTpl< Scalar > >, aligator::GravityCompensationResidualTpl< _Scalar >, aligator::LinearFunctionCompositionTpl< _Scalar >, aligator::LinearFunctionTpl< Scalar >, aligator::LinearMomentumResidualTpl< _Scalar >, aligator::LinearUnaryFunctionCompositionTpl< _Scalar >, aligator::python::PyStageFunction< FunctionBase >, and aligator::python::PyUnaryFunction< UFunction >.
const int aligator::StageFunctionTpl< Scalar >::ndx1 |
Current state dimension.
Definition at line 19 of file function-abstract.hpp.
const int aligator::StageFunctionTpl< Scalar >::nu |
Control dimension.
Definition at line 21 of file function-abstract.hpp.
const int aligator::StageFunctionTpl< Scalar >::nr |
Function codimension.
Definition at line 23 of file function-abstract.hpp.