|
aligator 0.16.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
|
Residual enforcing equality between two Pinocchio frames. More...
#include <aligator/modelling/multibody/frame-equality.hpp>
Public Types | |
| using | Scalar = _Scalar |
| using | BaseData = StageFunctionDataTpl<Scalar> |
| using | Model = pinocchio::ModelTpl<Scalar> |
| using | PolyManifold = xyz::polymorphic<ManifoldAbstractTpl<Scalar>> |
| using | SE3 = pinocchio::SE3Tpl<Scalar> |
| using | Data = FrameEqualityDataTpl<Scalar> |
Public Types inherited from aligator::UnaryFunctionTpl< _Scalar > | |
| using | Scalar = _Scalar |
| using | Base = StageFunctionTpl<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) | |
| ALIGATOR_UNARY_FUNCTION_INTERFACE (Scalar) | |
| FrameEqualityResidualTpl (const int ndx, const int nu, const Model &model, const pinocchio::FrameIndex frame_id1, const pinocchio::FrameIndex frame_id2, const SE3 &f1Mf2_ref=SE3::Identity()) | |
| pinocchio::FrameIndex | getFrame1Id () const |
| void | setFrame1Id (const std::size_t id) |
| pinocchio::FrameIndex | getFrame2Id () const |
| void | setFrame2Id (const std::size_t id) |
| const SE3 & | getReference () const |
| void | setReference (const SE3 &f1Mf2_ref) |
| void | evaluate (const ConstVectorRef &x, BaseData &data) const |
| void | computeJacobians (const ConstVectorRef &x, BaseData &data) const |
| shared_ptr< BaseData > | createData () const |
| Instantiate a Data object. | |
Public Member Functions inherited from aligator::UnaryFunctionTpl< _Scalar > | |
| ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) | |
| virtual void | computeVectorHessianProducts (const ConstVectorRef &, const ConstVectorRef &, Data &) const |
| void | evaluate (const ConstVectorRef &x, const ConstVectorRef &, Data &data) const override |
| Evaluate the function. | |
| void | computeJacobians (const ConstVectorRef &x, const ConstVectorRef &, Data &data) const override |
| Compute Jacobians of this function. | |
| void | computeVectorHessianProducts (const ConstVectorRef &x, const ConstVectorRef &, const ConstVectorRef &lbda, Data &data) const override |
| Compute the vector-hessian products of this function. | |
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 |
Public Attributes | |
| Model | pin_model_ |
Public Attributes inherited from aligator::StageFunctionTpl< _Scalar > | |
| const int | ndx1 |
| Current state dimension. | |
| const int | nu |
| Control dimension. | |
| const int | nr |
| Function codimension. | |
Protected Attributes | |
| pinocchio::FrameIndex | pin_frame_id1_ |
| pinocchio::FrameIndex | pin_frame_id2_ |
| SE3 | f1MR_ref_ |
Residual enforcing equality between two Pinocchio frames.
Computes the 6D log error between frame frame_id1 and frame frame_id2. The residual is:
r = log6( f1^{-1} * f1Mf2_ref * f2 )
where:
All computations (residual and Jacobians) are expressed in an R frame attached to f1 (f1 -> f1Mf2_ref -> R -> error -> f2)
Definition at line 31 of file frame-equality.hpp.
| using aligator::FrameEqualityResidualTpl< _Scalar >::Scalar = _Scalar |
Definition at line 34 of file frame-equality.hpp.
| using aligator::FrameEqualityResidualTpl< _Scalar >::BaseData = StageFunctionDataTpl<Scalar> |
Definition at line 37 of file frame-equality.hpp.
| using aligator::FrameEqualityResidualTpl< _Scalar >::Model = pinocchio::ModelTpl<Scalar> |
Definition at line 38 of file frame-equality.hpp.
| using aligator::FrameEqualityResidualTpl< _Scalar >::PolyManifold = xyz::polymorphic<ManifoldAbstractTpl<Scalar>> |
Definition at line 39 of file frame-equality.hpp.
| using aligator::FrameEqualityResidualTpl< _Scalar >::SE3 = pinocchio::SE3Tpl<Scalar> |
Definition at line 40 of file frame-equality.hpp.
| using aligator::FrameEqualityResidualTpl< _Scalar >::Data = FrameEqualityDataTpl<Scalar> |
Definition at line 41 of file frame-equality.hpp.
|
inline |
Definition at line 45 of file frame-equality.hpp.
| aligator::FrameEqualityResidualTpl< _Scalar >::ALIGATOR_DYNAMIC_TYPEDEFS | ( | Scalar | ) |
| aligator::FrameEqualityResidualTpl< _Scalar >::ALIGATOR_UNARY_FUNCTION_INTERFACE | ( | Scalar | ) |
|
inline |
Definition at line 56 of file frame-equality.hpp.
|
inline |
Definition at line 57 of file frame-equality.hpp.
|
inline |
Definition at line 58 of file frame-equality.hpp.
|
inline |
Definition at line 59 of file frame-equality.hpp.
|
inline |
Definition at line 61 of file frame-equality.hpp.
|
inline |
Definition at line 62 of file frame-equality.hpp.
|
virtual |
Implements aligator::UnaryFunctionTpl< _Scalar >.
|
virtual |
Implements aligator::UnaryFunctionTpl< _Scalar >.
|
inlinevirtual |
Instantiate a Data object.
Reimplemented from aligator::StageFunctionTpl< _Scalar >.
Definition at line 68 of file frame-equality.hpp.
| Model aligator::FrameEqualityResidualTpl< _Scalar >::pin_model_ |
Definition at line 43 of file frame-equality.hpp.
|
protected |
Definition at line 73 of file frame-equality.hpp.
|
protected |
Definition at line 74 of file frame-equality.hpp.
|
protected |
Definition at line 75 of file frame-equality.hpp.