Public Member Functions | Public Attributes | List of all members
gtsam::so3::DexpFunctor Struct Reference

#include <SO3.h>

Inheritance diagram for gtsam::so3::DexpFunctor:
Inheritance graph
[legend]

Public Member Functions

Vector3 applyLeftJacobian (const Vector3 &v, OptionalJacobian< 3, 3 > H1={}, OptionalJacobian< 3, 3 > H2={}) const
 Multiplies with leftJacobian(), with optional derivatives. More...
 
Vector3 applyLeftJacobianInverse (const Vector3 &v, OptionalJacobian< 3, 3 > H1={}, OptionalJacobian< 3, 3 > H2={}) const
 Multiplies with leftJacobianInverse(), with optional derivatives. More...
 
Vector3 applyRightJacobian (const Vector3 &v, OptionalJacobian< 3, 3 > H1={}, OptionalJacobian< 3, 3 > H2={}) const
 Multiplies with rightJacobian(), with optional derivatives. More...
 
Vector3 applyRightJacobianInverse (const Vector3 &v, OptionalJacobian< 3, 3 > H1={}, OptionalJacobian< 3, 3 > H2={}) const
 Multiplies with rightJacobian().inverse(), with optional derivatives. More...
 
 DexpFunctor (const Vector3 &omega)
 Constructor with element of Lie algebra so(3) More...
 
 DexpFunctor (const Vector3 &omega, double nearZeroThresholdSq, double nearPiThresholdSq)
 Constructor with custom thresholds (advanced) More...
 
Matrix3 leftJacobian () const
 
Matrix3 leftJacobianInverse () const
 For |omega|>pi uses leftJacobian().inverse(), as unstable beyond pi! More...
 
Matrix3 rightJacobian () const
 
Matrix3 rightJacobianInverse () const
 
- Public Member Functions inherited from gtsam::so3::ExpmapFunctor
Matrix3 expmap () const
 Rodrigues formula. More...
 
 ExpmapFunctor (const Vector3 &axis, double angle)
 Constructor with axis-angle. More...
 
 ExpmapFunctor (const Vector3 &omega)
 Constructor with element of Lie algebra so(3) More...
 
 ExpmapFunctor (double nearZeroThresholdSq, const Vector3 &axis)
 Constructor with threshold (advanced) More...
 

Public Attributes

double C
 
double D
 
double E
 
double F
 
const Vector3 omega
 
- Public Attributes inherited from gtsam::so3::ExpmapFunctor
double A
 
double B
 
bool nearZero { false }
 
const double theta
 
const double theta2
 
const Matrix3 W
 
const Matrix3 WW
 

Additional Inherited Members

- Protected Member Functions inherited from gtsam::so3::ExpmapFunctor
void init (double nearZeroThresholdSq)
 

Detailed Description

Functor that implements Exponential map and its derivatives Math extends Ethan theme of elegant I + aW + bWW expressions. See https://www.ethaneade.org/lie.pdf expmap (82) and left Jacobian (83).

Definition at line 165 of file SO3.h.

Constructor & Destructor Documentation

◆ DexpFunctor() [1/2]

gtsam::so3::DexpFunctor::DexpFunctor ( const Vector3 omega)
explicit

Constructor with element of Lie algebra so(3)

Definition at line 144 of file SO3.cpp.

◆ DexpFunctor() [2/2]

gtsam::so3::DexpFunctor::DexpFunctor ( const Vector3 omega,
double  nearZeroThresholdSq,
double  nearPiThresholdSq 
)
explicit

Constructor with custom thresholds (advanced)

Definition at line 114 of file SO3.cpp.

Member Function Documentation

◆ applyLeftJacobian()

Vector3 gtsam::so3::DexpFunctor::applyLeftJacobian ( const Vector3 v,
OptionalJacobian< 3, 3 >  H1 = {},
OptionalJacobian< 3, 3 >  H2 = {} 
) const

Multiplies with leftJacobian(), with optional derivatives.

Definition at line 190 of file SO3.cpp.

◆ applyLeftJacobianInverse()

Vector3 gtsam::so3::DexpFunctor::applyLeftJacobianInverse ( const Vector3 v,
OptionalJacobian< 3, 3 >  H1 = {},
OptionalJacobian< 3, 3 >  H2 = {} 
) const

Multiplies with leftJacobianInverse(), with optional derivatives.

Definition at line 209 of file SO3.cpp.

◆ applyRightJacobian()

Vector3 gtsam::so3::DexpFunctor::applyRightJacobian ( const Vector3 v,
OptionalJacobian< 3, 3 >  H1 = {},
OptionalJacobian< 3, 3 >  H2 = {} 
) const

Multiplies with rightJacobian(), with optional derivatives.

Definition at line 158 of file SO3.cpp.

◆ applyRightJacobianInverse()

Vector3 gtsam::so3::DexpFunctor::applyRightJacobianInverse ( const Vector3 v,
OptionalJacobian< 3, 3 >  H1 = {},
OptionalJacobian< 3, 3 >  H2 = {} 
) const

Multiplies with rightJacobian().inverse(), with optional derivatives.

Definition at line 177 of file SO3.cpp.

◆ leftJacobian()

Matrix3 gtsam::so3::DexpFunctor::leftJacobian ( ) const
inline

Definition at line 193 of file SO3.h.

◆ leftJacobianInverse()

Matrix3 gtsam::so3::DexpFunctor::leftJacobianInverse ( ) const

For |omega|>pi uses leftJacobian().inverse(), as unstable beyond pi!

Definition at line 152 of file SO3.cpp.

◆ rightJacobian()

Matrix3 gtsam::so3::DexpFunctor::rightJacobian ( ) const
inline

Definition at line 190 of file SO3.h.

◆ rightJacobianInverse()

Matrix3 gtsam::so3::DexpFunctor::rightJacobianInverse ( ) const

Inverse of right Jacobian For |omega|>pi uses rightJacobian().inverse(), as unstable beyond pi!

Definition at line 147 of file SO3.cpp.

Member Data Documentation

◆ C

double gtsam::so3::DexpFunctor::C

Definition at line 169 of file SO3.h.

◆ D

double gtsam::so3::DexpFunctor::D

Definition at line 172 of file SO3.h.

◆ E

double gtsam::so3::DexpFunctor::E

Definition at line 175 of file SO3.h.

◆ F

double gtsam::so3::DexpFunctor::F

Definition at line 176 of file SO3.h.

◆ omega

const Vector3 gtsam::so3::DexpFunctor::omega

Definition at line 166 of file SO3.h.


The documentation for this struct was generated from the following files:


gtsam
Author(s):
autogenerated on Wed May 28 2025 03:15:42