MRPT  2.0.0
List of all members | Public Types | Static Public Member Functions | Static Public Attributes
mrpt::poses::Lie::SE< 2 > Struct Template Reference

Detailed Description

template<>
struct mrpt::poses::Lie::SE< 2 >

Traits for SE(2), rigid-body transformations in R^2 space.

See indidual members for documentation, or [1] for a general overview.

Definition at line 162 of file SE.h.

#include <mrpt/poses/Lie/SE.h>

Public Types

using tangent_vector = mrpt::math::CVectorFixedDouble< DOFs >
 
using manifold_vector = mrpt::math::CVectorFixedDouble< MANIFOLD_DIM >
 
using type = CPose2D
 
using light_type = mrpt::math::TPose2D
 
using matrix_TxT = mrpt::math::CMatrixDouble33
 Type for Jacobians between SO(n) transformations. More...
 
using matrix_MxM = mrpt::math::CMatrixDouble33
 In SE(3), this type represents Jacobians between SO(n) (sub)matrices in the manifold, but in SE(2) it simply models Jacobians between (x,y,phi) vectors. More...
 
using tang2mat_jacob = mrpt::math::CMatrixDouble33
 Type for Jacobian: tangent space -> SO(n) matrix. More...
 
using mat2tang_jacob = mrpt::math::CMatrixDouble33
 Type for Jacobian: SO(n) matrix -> tangent space. More...
 

Static Public Member Functions

static type exp (const tangent_vector &x)
 Exponential map in SE(2), takes [x,y,phi] and returns a CPose2D. More...
 
static tangent_vector log (const type &P)
 Logarithm map in SE(2), takes a CPose2D and returns [X,Y, phi]. More...
 
static manifold_vector asManifoldVector (const type &pose)
 Returns a vector with all manifold matrix elements in column-major order. More...
 
static type fromManifoldVector (const manifold_vector &v)
 The inverse operation of asManifoldVector() More...
 
static matrix_MxM jacob_dAB_dA (const type &A, const type &B)
 Jacobian of the pose composition A*B for SE(2) with respect to A. More...
 
static matrix_MxM jacob_dAB_dB (const type &A, const type &B)
 Jacobian of the pose composition A*B for SE(2) with respect to B. More...
 
static tang2mat_jacob jacob_dDexpe_de (const type &D)
 Jacobian d (D * e^eps) / d eps , with eps=increment in Lie Algebra. More...
 
static void jacob_dDinvP1invP2_de1e2 (const type &Dinv, const type &P1, const type &P2, mrpt::optional_ref< matrix_TxT > df_de1=std::nullopt, mrpt::optional_ref< matrix_TxT > df_de2=std::nullopt)
 Return one or both of the following 3x3 Jacobians, useful in graph-slam problems:

\[ \frac{\partial pseudoLn(D^{-1} P_1^{-1} P_2}{\partial \epsilon_1} \]

\[ \frac{\partial pseudoLn(D^{-1} P_1^{-1} P_2}{\partial \epsilon_1}\]

With $ \epsilon_1 $ and $ \epsilon_2 $ increments in the linearized manifold for P1 and P2. More...

 

Static Public Attributes

static constexpr size_t DOFs = 3
 Number of actual degrees of freedom for this transformation. More...
 
static constexpr size_t MANIFOLD_DIM = 3
 Dimensionality of the matrix manifold; this should be 3x3=9 for SE(2), but for efficiency, we define it as simply 3x1=3 and use the (x,y,phi) representation as well as the "manifold". More...
 



Page generated by Doxygen 1.8.14 for MRPT 2.0.0 Git: b38439d21 Tue Mar 31 19:58:06 2020 +0200 at miƩ abr 1 00:50:30 CEST 2020