gtsam
Loading...
Searching...
No Matches
gtsam::group_action::Orbit< Action > Struct Template Reference

Detailed Description

template<typename Action>
struct gtsam::group_action::Orbit< Action >

Orbit: The map g -> m, defined by fixing m0.

For Left Action: g -> g * m0 For Right Action: g -> m0 * g

Think of this as "partially applying" the action at a base point m0 to produce a function of the group element alone. This is often what is needed when you want to differentiate trajectories on the group while tracking a single point on the manifold.

Inheritance diagram for gtsam::group_action::Orbit< Action >:

Public Member Functions

 Orbit (const M &m)
 Orbit (const M &m, const Action &a)
 Constructor binding an explicit action instance (for stateful actions).
M operator() (const G &g) const
 Apply the orbit to a group element.
template<typename A = Action, typename = std::enable_if_t< std::is_invocable_r_v<M, const A&, const G&, const M&, OptionalJacobian<DimM, DimG>, OptionalJacobian<DimM, DimM>> || std::is_invocable_r_v<M, const A&, const M&, const G&, OptionalJacobian<DimM, DimM>, OptionalJacobian<DimM, DimG>>>>
M operator() (const G &g, OptionalJacobian< DimM, DimG > H) const

Public Attributes

M m0

Static Public Attributes

static constexpr int DimG = traits<G>::dimension
static constexpr int DimM = traits<M>::dimension

Public Types

using G = typename Action::Group
using M = typename Action::Manifold

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