gtsam
Loading...
Searching...
No Matches
gtsam::internal::ScalarTraits< Scalar > Struct Template Reference

Detailed Description

template<typename Scalar>
struct gtsam::internal::ScalarTraits< Scalar >

A helper that implements the traits interface for scalar vector spaces.

Usage: template<> struct traits<Type> : public ScalarTraits<Type> { };

Inheritance diagram for gtsam::internal::ScalarTraits< Scalar >:

Group

typedef additive_group_tag group_flavor
static Scalar Identity ()

Manifold

typedef Scalar ManifoldType
typedef Eigen::Matrix< double, 1, 1 > TangentVector
typedef OptionalJacobian< 1, 1 > ChartJacobian
static constexpr auto dimension = 1
static TangentVector Local (Scalar origin, Scalar other, ChartJacobian H1={}, ChartJacobian H2={})
static Scalar Retract (Scalar origin, const TangentVector &v, ChartJacobian H1={}, ChartJacobian H2={})

Static Public Member Functions

Testable
static void Print (Scalar m, const std::string &str="")
static bool Equals (Scalar v1, Scalar v2, double tol=1e-8)
Lie Group
static TangentVector Logmap (Scalar m, ChartJacobian H={})
static Scalar Expmap (const TangentVector &v, ChartJacobian H={})
static size_t GetDimension (const Scalar &)
static TangentVector Local (const Scalar &origin, const Scalar &other, ChartJacobian H1={}, ChartJacobian H2={})
static Scalar Retract (const Scalar &origin, const TangentVector &v, ChartJacobian H1={}, ChartJacobian H2={})
static TangentVector Logmap (const Scalar &m, ChartJacobian Hm={})
static Scalar Expmap (const TangentVector &v, ChartJacobian Hv={})
static Scalar Compose (const Scalar &v1, const Scalar &v2, ChartJacobian H1={}, ChartJacobian H2={})
static Scalar Between (const Scalar &v1, const Scalar &v2, ChartJacobian H1={}, ChartJacobian H2={})
static Scalar Inverse (const Scalar &v, ChartJacobian H={})
static LieAlgebra Hat (const TangentVector &v)
static TangentVector Vee (const LieAlgebra &X)
static Jacobian AdjointMap (const Scalar &)

Public Types

typedef vector_space_tag structure_category
typedef Eigen::Matrix< double, N, 1 > TangentVector
typedef OptionalJacobian< N, N > ChartJacobian
typedef Eigen::Matrix< double, N, N > Jacobian
typedef Eigen::Matrix< double, N, 1 > LieAlgebra

The documentation for this struct was generated from the following file:
  • /tmp/gtsam-4.3.0-doxygen.rsXPUS/source/gtsam/base/VectorSpace.h