aligator
0.9.0
A primal-dual augmented Lagrangian-type solver for nonlinear trajectory optimization.
|
Euclidean quadratic cost. More...
#include <aligator/modelling/costs/quad-costs.hpp>
Public Types | |
using | Scalar = _Scalar |
using | Base = CostAbstractTpl<Scalar> |
using | CostData = CostDataAbstractTpl<Scalar> |
using | Data = QuadraticCostDataTpl<Scalar> |
using | VectorSpace = proxsuite::nlp::VectorSpaceTpl<Scalar, Eigen::Dynamic> |
using | Manifold = proxsuite::nlp::ManifoldAbstractTpl<Scalar> |
Public Types inherited from aligator::CostAbstractTpl< _Scalar > | |
using | Scalar |
using | CostData |
using | Manifold |
Public Member Functions | |
ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) | |
QuadraticCostTpl (const ConstMatrixRef &w_x, const ConstMatrixRef &w_u, const ConstVectorRef &interp_x, const ConstVectorRef &interp_u) | |
QuadraticCostTpl (const ConstMatrixRef &w_x, const ConstMatrixRef &w_u, const ConstMatrixRef &w_cross, const ConstVectorRef &interp_x, const ConstVectorRef &interp_u) | |
QuadraticCostTpl (const ConstMatrixRef &w_x, const ConstMatrixRef &w_u) | |
QuadraticCostTpl (const ConstMatrixRef &w_x, const ConstMatrixRef &w_u, const ConstMatrixRef &w_cross) | |
void | evaluate (const ConstVectorRef &x, const ConstVectorRef &u, CostData &data) const |
void | computeGradients (const ConstVectorRef &, const ConstVectorRef &, CostData &data) const |
void | computeHessians (const ConstVectorRef &, const ConstVectorRef &, CostData &) const |
shared_ptr< CostData > | createData () const |
ConstMatrixRef | getCrossWeights () const |
void | setCrossWeight (const ConstMatrixRef &w) |
bool | hasCrossTerm () const |
Whether a cross term exists. | |
Public Member Functions inherited from aligator::CostAbstractTpl< _Scalar > | |
ALIGATOR_DYNAMIC_TYPEDEFS (_Scalar) | |
int | nx () const |
int | ndx () const |
CostAbstractTpl (U &&space, const int nu) | |
virtual void | evaluate (const ConstVectorRef &x, const ConstVectorRef &u, CostData &data) const |
Evaluate the cost function. | |
virtual void | computeGradients (const ConstVectorRef &x, const ConstVectorRef &u, CostData &data) const |
Compute the cost gradients \((\ell_x, \ell_u)\). | |
virtual void | computeHessians (const ConstVectorRef &x, const ConstVectorRef &u, CostData &data) const |
Compute the cost Hessians \((\ell_{ij})_{i,j \in \{x,u\}}\). | |
virtual | ~CostAbstractTpl ()=default |
Static Public Member Functions | |
static auto | get_vector_space (Eigen::Index nx) |
Public Attributes | |
MatrixXs | Wxx_ |
Weight \( Q \). | |
MatrixXs | Wuu_ |
Weight \( R \). | |
VectorXs | interp_x |
Affine term in \( x\). | |
VectorXs | interp_u |
Affine term in \( u\). | |
Public Attributes inherited from aligator::CostAbstractTpl< _Scalar > | |
xyz::polymorphic< Manifold > | space |
State dimension. | |
int | nu |
Control dimension. | |
Protected Attributes | |
MatrixXs | Wxu_ |
Weight N for term \( x^\top N u \). | |
bool | has_cross_term_ |
Whether a cross term exists. | |
Euclidean quadratic cost.
Definition at line 13 of file quad-costs.hpp.
using aligator::QuadraticCostTpl< _Scalar >::Scalar = _Scalar |
Definition at line 15 of file quad-costs.hpp.
using aligator::QuadraticCostTpl< _Scalar >::Base = CostAbstractTpl<Scalar> |
Definition at line 17 of file quad-costs.hpp.
using aligator::QuadraticCostTpl< _Scalar >::CostData = CostDataAbstractTpl<Scalar> |
Definition at line 18 of file quad-costs.hpp.
using aligator::QuadraticCostTpl< _Scalar >::Data = QuadraticCostDataTpl<Scalar> |
Definition at line 20 of file quad-costs.hpp.
using aligator::QuadraticCostTpl< _Scalar >::VectorSpace = proxsuite::nlp::VectorSpaceTpl<Scalar, Eigen::Dynamic> |
Definition at line 21 of file quad-costs.hpp.
using aligator::QuadraticCostTpl< _Scalar >::Manifold = proxsuite::nlp::ManifoldAbstractTpl<Scalar> |
Definition at line 22 of file quad-costs.hpp.
|
inline |
Definition at line 43 of file quad-costs.hpp.
|
inline |
Definition at line 53 of file quad-costs.hpp.
|
inline |
Definition at line 63 of file quad-costs.hpp.
|
inline |
Definition at line 67 of file quad-costs.hpp.
aligator::QuadraticCostTpl< _Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS | ( | Scalar | ) |
|
inlinestatic |
Definition at line 39 of file quad-costs.hpp.
|
inline |
Definition at line 72 of file quad-costs.hpp.
|
inline |
Definition at line 88 of file quad-costs.hpp.
|
inline |
Definition at line 95 of file quad-costs.hpp.
|
inlinevirtual |
Reimplemented from aligator::CostAbstractTpl< _Scalar >.
Definition at line 98 of file quad-costs.hpp.
|
inline |
Definition at line 107 of file quad-costs.hpp.
|
inline |
Definition at line 108 of file quad-costs.hpp.
|
inline |
Whether a cross term exists.
Definition at line 115 of file quad-costs.hpp.
MatrixXs aligator::QuadraticCostTpl< _Scalar >::Wxx_ |
Weight \( Q \).
Definition at line 25 of file quad-costs.hpp.
MatrixXs aligator::QuadraticCostTpl< _Scalar >::Wuu_ |
Weight \( R \).
Definition at line 27 of file quad-costs.hpp.
|
protected |
Weight N for term \( x^\top N u \).
Definition at line 31 of file quad-costs.hpp.
VectorXs aligator::QuadraticCostTpl< _Scalar >::interp_x |
Affine term in \( x\).
Definition at line 35 of file quad-costs.hpp.
VectorXs aligator::QuadraticCostTpl< _Scalar >::interp_u |
Affine term in \( u\).
Definition at line 37 of file quad-costs.hpp.
|
protected |
Whether a cross term exists.
Definition at line 119 of file quad-costs.hpp.