template<typename _Derived>
BundleBase struct
The base class of the Bundle group.
Base classes
-
template<class _Derived>struct LieGroupBase<_Derived>
- Base class for Lie groups. Defines the minimum common API.
Public types
-
using Elements = typename internal::
traits<_Derived>::Elements -
template<int Idx>using Element = typename internal::
traits<_Derived>::template Element<Idx> -
template<int Idx>using MapElement = typename internal::
traits<_Derived>::template MapElement<Idx> -
template<int Idx>using MapConstElement = typename internal::
traits<_Derived>::template MapConstElement<Idx> -
using Transformation = typename internal::
traits<_Derived>::Transformation
Public static variables
- static std::size_t BundleSize constexpr
- Number of elements in bundle.
Public functions
- auto inverse(OptJacobianRef J_minv_m = {}) const -> LieGroup
- Get the inverse of this.
- auto log(OptJacobianRef J_t_m = {}) const -> Tangent
- Get the corresponding Lie algebra element.
- auto lift(OptJacobianRef J_t_m = {}) const -> MANIF_DEPRECATED Tangent
- This function is deprecated. Please consider using log instead.
-
template<typename _DerivedOther>auto compose(const LieGroupBase<_DerivedOther>& m, OptJacobianRef J_mc_ma = {}, OptJacobianRef J_mc_mb = {}) const -> LieGroup
- Composition of this and another Bundle element.
- auto act(const Vector& v, tl::optional<Eigen::Ref<Eigen::Matrix<Scalar, Dim, DoF>>> J_vout_m = {}, tl::optional<Eigen::Ref<Eigen::Matrix<Scalar, Dim, Dim>>> J_vout_v = {}) const -> Vector
- Bundle group action.
- auto adj() const -> Jacobian
- Get the adjoint matrix at this.
- auto transform() const -> Transformation
- Get the element-diagonal transformation matrix.
-
template<int _Idx>auto element() -> MapElement<_Idx>
- Access Bundle element as Map.
-
template<int _Idx>auto element() const -> MapConstElement<_Idx>
- Access Bundle element as Map to const.
-
template<int ... _Idx>auto act_impl(const typename BundleBase<_Derived>::Vector& v, tl::optional<Eigen::Ref<Eigen::Matrix<Scalar, Dim, DoF>>> J_vout_m, tl::optional<Eigen::Ref<Eigen::Matrix<Scalar, Dim, Dim>>> J_vout_v, internal::
intseq<_Idx...>) const -> BundleBase<_Derived>::Vector -
template<int _Idx>auto element() -> MapElement< _Idx > -> auto
-
template<int _Idx>auto element() const -> MapConstElement< _Idx > -> auto
- auto coeffs() -> DataType&
- Access the underlying data by const reference.
- auto coeffs() const -> const DataType&
- Access the underlying data by const reference.
Protected functions
-
template<int ... _Idx>auto inverse_impl(OptJacobianRef, internal::
intseq<_Idx...>) const -> LieGroup -
template<int ... _Idx>auto log_impl(OptJacobianRef, internal::
intseq<_Idx...>) const -> Tangent -
template<typename _DerivedOther, int ... _Idx>auto compose_impl(const LieGroupBase<_DerivedOther>& m, OptJacobianRef J_mc_ma, OptJacobianRef J_mc_mb, internal::
intseq<_Idx...>) const -> LieGroup -
template<int ... _Idx>auto act_impl(const Vector& v, tl::optional<Eigen::Ref<Eigen::Matrix<Scalar, Dim, DoF>>> J_vout_m, tl::optional<Eigen::Ref<Eigen::Matrix<Scalar, Dim, Dim>>> J_vout_v, internal::
intseq<_Idx...>) const -> Vector -
template<int ... _Idx>auto adj_impl(internal::
intseq<_Idx...>) const -> Jacobian -
template<int ... _Idx>auto transform_impl(internal::
intseq<_Idx...>) const -> Transformation - auto derived() & -> _Derived& noexcept
- auto derived() const & -> const _Derived& noexcept
Function documentation
template<typename _Derived>
Tangent manif:: BundleBase<_Derived>:: log(OptJacobianRef J_t_m = {}) const
Get the corresponding Lie algebra element.
Returns | The tangent of this. |
---|
template<typename _Derived>
template<typename _DerivedOther>
LieGroup manif:: BundleBase<_Derived>:: compose(const LieGroupBase<_DerivedOther>& m,
OptJacobianRef J_mc_ma = {},
OptJacobianRef J_mc_mb = {}) const
Composition of this and another Bundle element.
Parameters | |
---|---|
m in | Another Bundle element. |
J_mc_ma | |
J_mc_mb | |
Returns | The composition of 'this . m'. |
template<typename _Derived>
Vector manif:: BundleBase<_Derived>:: act(const Vector& v,
tl::optional<Eigen::Ref<Eigen::Matrix<Scalar, Dim, DoF>>> J_vout_m = {},
tl::optional<Eigen::Ref<Eigen::Matrix<Scalar, Dim, Dim>>> J_vout_v = {}) const
Bundle group action.
Parameters | |
---|---|
v | vector. |
J_vout_m | |
J_vout_v | |
Returns | The translated vector. |