aligator
0.10.0
A primal-dual augmented Lagrangian-type solver for nonlinear trajectory optimization.
|
#include </home/runner/work/aligator/aligator/bindings/python/include/aligator/python/functions.hpp>
Public Types | |
using | Scalar = typename FunctionBase::Scalar |
using | Data = StageFunctionDataTpl<Scalar> |
Public Types inherited from aligator::StageFunctionTpl< Scalar > | |
using | Scalar = _Scalar |
using | Data = StageFunctionDataTpl<Scalar> |
Public Member Functions | |
ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) | |
void | evaluate (const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const override |
Evaluate the function. | |
void | computeJacobians (const ConstVectorRef &x, const ConstVectorRef &u, Data &data) const override |
Compute Jacobians of this function. | |
void | computeVectorHessianProducts (const ConstVectorRef &x, const ConstVectorRef &u, const ConstVectorRef &lbda, Data &data) const override |
Compute the vector-hessian products of this function. | |
shared_ptr< Data > | createData () const override |
Instantiate a Data object. | |
shared_ptr< Data > | default_createData () const |
Public Member Functions inherited from aligator::StageFunctionTpl< Scalar > | |
ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) | |
StageFunctionTpl (const int ndx, const int nu, const int nr) | |
virtual | ~StageFunctionTpl ()=default |
Additional Inherited Members | |
Public Attributes inherited from aligator::StageFunctionTpl< Scalar > | |
const int | ndx1 |
Current state dimension. | |
const int | nu |
Control dimension. | |
const int | nr |
Function codimension. | |
Wrapper for the StageFunction class and any virtual children that avoids having to redeclare Python overrides for these children.
This implements the "trampoline" technique from Pybind11's docs: https://pybind11.readthedocs.io/en/stable/advanced/classes.html#combining-virtual-functions-and-inheritance
FunctionBase | The virtual class to expose. |
Definition at line 27 of file functions.hpp.
using aligator::python::PyStageFunction< FunctionBase >::Scalar = typename FunctionBase::Scalar |
Definition at line 31 of file functions.hpp.
using aligator::python::PyStageFunction< FunctionBase >::Data = StageFunctionDataTpl<Scalar> |
Definition at line 32 of file functions.hpp.
aligator::python::PyStageFunction< FunctionBase >::ALIGATOR_DYNAMIC_TYPEDEFS | ( | Scalar | ) |
|
inlineoverridevirtual |
Evaluate the function.
x | Current state. |
u | Controls. |
data | Data holding struct. |
Implements aligator::StageFunctionTpl< Scalar >.
Definition at line 36 of file functions.hpp.
|
inlineoverridevirtual |
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. |
Implements aligator::StageFunctionTpl< Scalar >.
Definition at line 41 of file functions.hpp.
|
inlineoverridevirtual |
Compute the vector-hessian products of this function.
x | Current state. |
u | Controls. |
y | Next state. |
lbda | Multiplier estimate. |
data | Data holding struct. |
Reimplemented from aligator::StageFunctionTpl< Scalar >.
Definition at line 47 of file functions.hpp.
|
inlineoverridevirtual |
Instantiate a Data object.
Reimplemented from aligator::StageFunctionTpl< Scalar >.
Definition at line 55 of file functions.hpp.
|
inline |
Definition at line 59 of file functions.hpp.