|
aligator 0.19.0
A versatile and efficient C++ library for real-time constrained trajectory optimization.
|
Tangent bundle of a base manifold M. More...
#include <aligator/modelling/spaces/tangent-bundle.hpp>
Public Types | |
| using | Self = TangentBundleTpl<Base> |
| using | Scalar = typename Base::Scalar |
| using | ManifoldBase = ManifoldAbstractTpl<Scalar> |
| Public Types inherited from aligator::ManifoldAbstractTpl< Base::Scalar > | |
| using | Scalar |
| using | TangentSpaceType |
| Typedef for the tangent space, as a manifold. | |
Public Member Functions | |
| ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) | |
| TangentBundleTpl (const Base &base) | |
| Constructor using base space instance. | |
| template<typename... BaseCtorArgs> | |
| TangentBundleTpl (BaseCtorArgs... args) | |
| Constructor using base space constructor. | |
| bool | isNormalized (const ConstVectorRef &x) const |
Check if the input vector x is a viable element of the manifold. | |
| const Base & | getBaseSpace () const |
| template<typename Point> | |
| Point::ConstSegmentReturnType | getBasePoint (const Eigen::MatrixBase< Point > &x) const |
| template<typename Point> | |
| Point::SegmentReturnType | getBasePointWrite (const Eigen::MatrixBase< Point > &x) const |
| template<typename Tangent> | |
| Tangent::ConstSegmentReturnType | getBaseTangent (const Tangent &v) const |
| template<typename Tangent> | |
| Tangent::SegmentReturnType | getTangentHeadWrite (const Eigen::MatrixBase< Tangent > &v) const |
| template<typename Jac> | |
| Eigen::Block< Jac, Eigen::Dynamic, Eigen::Dynamic > | getBaseJacobian (const Eigen::MatrixBase< Jac > &J) const |
| int | ndx () const |
| Get manifold tangent space dimension. | |
| int | nx () const |
| Get manifold representation dimension. | |
| Public Member Functions inherited from aligator::ManifoldAbstractTpl< Base::Scalar > | |
| ALIGATOR_DYNAMIC_TYPEDEFS (Scalar) | |
| Scalar type. | |
| ManifoldAbstractTpl (int nx, int ndx) | |
| virtual | ~ManifoldAbstractTpl ()=default |
| int | nx () const |
| Get manifold representation dimension. | |
| int | ndx () const |
| Get manifold tangent space dimension. | |
| VectorXs | neutral () const |
| Get the neutral element \(e \in M\) from the manifold (if this makes sense). | |
| VectorXs | rand () const |
| Sample a random point \(x \in M\) on the manifold. | |
| TangentSpaceType | tangentSpace () const |
| Return an object representing the tangent space as a manifold. | |
| void | integrate (const ConstVectorRef &x, const ConstVectorRef &v, VectorRef out) const |
| Manifold integration operation \(x \oplus v\). | |
| void | Jintegrate (const ConstVectorRef &x, const ConstVectorRef &v, MatrixRef Jout, int arg) const |
| Jacobian of the integation operation. | |
| void | JintegrateTransport (const ConstVectorRef &x, const ConstVectorRef &v, MatrixRef Jout, int arg) const |
| Perform the parallel transport operation. | |
| void | difference (const ConstVectorRef &x0, const ConstVectorRef &x1, VectorRef out) const |
| Manifold difference/retraction operation \(x_1 \ominus x_0\). | |
| void | Jdifference (const ConstVectorRef &x0, const ConstVectorRef &x1, MatrixRef Jout, int arg) const |
| Jacobian of the retraction operation. | |
| void | interpolate (const ConstVectorRef &x0, const ConstVectorRef &x1, const Scalar &u, VectorRef out) const |
Static Public Attributes | |
| static constexpr int | Options = Base::Options |
Protected Member Functions | |
Implementations of operators | |
| void | neutral_impl (VectorRef out) const |
| void | rand_impl (VectorRef out) const |
| void | integrate_impl (const ConstVectorRef &x, const ConstVectorRef &dx, VectorRef out) const |
| Perform the manifold integration operation. | |
| void | difference_impl (const ConstVectorRef &x0, const ConstVectorRef &x1, VectorRef out) const |
| Implementation of the manifold retraction operation. | |
| void | Jintegrate_impl (const ConstVectorRef &x, const ConstVectorRef &v, MatrixRef Jout, int arg) const |
| void | JintegrateTransport_impl (const ConstVectorRef &x, const ConstVectorRef &v, MatrixRef Jout, int arg) const |
| void | Jdifference_impl (const ConstVectorRef &x0, const ConstVectorRef &x1, MatrixRef Jout, int arg) const |
| void | interpolate_impl (const ConstVectorRef &x0, const ConstVectorRef &x1, const Scalar &u, VectorRef out) const |
| Interpolation operation. | |
Protected Attributes | |
| Base | base_ |
| Protected Attributes inherited from aligator::ManifoldAbstractTpl< Base::Scalar > | |
| int | nx_ |
| int | ndx_ |
Tangent bundle of a base manifold M.
Definition at line 9 of file tangent-bundle.hpp.
| using aligator::TangentBundleTpl< Base >::Self = TangentBundleTpl<Base> |
Definition at line 14 of file tangent-bundle.hpp.
| using aligator::TangentBundleTpl< Base >::Scalar = typename Base::Scalar |
Definition at line 15 of file tangent-bundle.hpp.
| using aligator::TangentBundleTpl< Base >::ManifoldBase = ManifoldAbstractTpl<Scalar> |
Definition at line 18 of file tangent-bundle.hpp.
|
inline |
Constructor using base space instance.
Definition at line 23 of file tangent-bundle.hpp.
|
inline |
Constructor using base space constructor.
Definition at line 29 of file tangent-bundle.hpp.
| aligator::TangentBundleTpl< Base >::ALIGATOR_DYNAMIC_TYPEDEFS | ( | Scalar | ) |
|
inlinevirtual |
Check if the input vector x is a viable element of the manifold.
Reimplemented from aligator::ManifoldAbstractTpl< Base::Scalar >.
Definition at line 36 of file tangent-bundle.hpp.
|
inline |
Definition at line 41 of file tangent-bundle.hpp.
|
inline |
Get base point of an element of the tangent bundle. This map is exactly the natural projection.
Definition at line 47 of file tangent-bundle.hpp.
|
inline |
Definition at line 53 of file tangent-bundle.hpp.
|
inline |
Definition at line 59 of file tangent-bundle.hpp.
|
inline |
Definition at line 65 of file tangent-bundle.hpp.
|
inline |
Definition at line 71 of file tangent-bundle.hpp.
|
protectedvirtual |
Reimplemented from aligator::ManifoldAbstractTpl< Base::Scalar >.
|
protectedvirtual |
Reimplemented from aligator::ManifoldAbstractTpl< Base::Scalar >.
|
protectedvirtual |
Perform the manifold integration operation.
Implements aligator::ManifoldAbstractTpl< Base::Scalar >.
|
protectedvirtual |
Implementation of the manifold retraction operation.
Implements aligator::ManifoldAbstractTpl< Base::Scalar >.
|
protectedvirtual |
Implements aligator::ManifoldAbstractTpl< Base::Scalar >.
|
protectedvirtual |
Implements aligator::ManifoldAbstractTpl< Base::Scalar >.
|
protectedvirtual |
Implements aligator::ManifoldAbstractTpl< Base::Scalar >.
|
protectedvirtual |
Interpolation operation.
Reimplemented from aligator::ManifoldAbstractTpl< Base::Scalar >.
|
inline |
Get manifold tangent space dimension.
Definition at line 27 of file manifold-base.hpp.
|
inline |
Get manifold representation dimension.
Definition at line 25 of file manifold-base.hpp.
|
protected |
Definition at line 11 of file tangent-bundle.hpp.
|
staticconstexpr |
Definition at line 16 of file tangent-bundle.hpp.