#include <SO3.h>

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) |
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).
|
explicit |
|
explicit |
| Vector3 gtsam::so3::DexpFunctor::applyLeftJacobian | ( | const Vector3 & | v, |
| OptionalJacobian< 3, 3 > | H1 = {}, |
||
| OptionalJacobian< 3, 3 > | H2 = {} |
||
| ) | const |
Multiplies with leftJacobian(), with optional derivatives.
| Vector3 gtsam::so3::DexpFunctor::applyLeftJacobianInverse | ( | const Vector3 & | v, |
| OptionalJacobian< 3, 3 > | H1 = {}, |
||
| OptionalJacobian< 3, 3 > | H2 = {} |
||
| ) | const |
Multiplies with leftJacobianInverse(), with optional derivatives.
| Vector3 gtsam::so3::DexpFunctor::applyRightJacobian | ( | const Vector3 & | v, |
| OptionalJacobian< 3, 3 > | H1 = {}, |
||
| OptionalJacobian< 3, 3 > | H2 = {} |
||
| ) | const |
Multiplies with rightJacobian(), with optional derivatives.
| Vector3 gtsam::so3::DexpFunctor::applyRightJacobianInverse | ( | const Vector3 & | v, |
| OptionalJacobian< 3, 3 > | H1 = {}, |
||
| OptionalJacobian< 3, 3 > | H2 = {} |
||
| ) | const |
Multiplies with rightJacobian().inverse(), with optional derivatives.
|
inline |
| Matrix3 gtsam::so3::DexpFunctor::leftJacobianInverse | ( | ) | const |
For |omega|>pi uses leftJacobian().inverse(), as unstable beyond pi!
|
inline |
| Matrix3 gtsam::so3::DexpFunctor::rightJacobianInverse | ( | ) | const |
Inverse of right Jacobian For |omega|>pi uses rightJacobian().inverse(), as unstable beyond pi!