# Manifold Geometry with Fast Automatic Derivatives and Coordinate Frame Semantics Checking in C++

arXiv: https://arxiv.org/abs/1805.01810 · HTML: https://mlsanity.com/paper/1805.01810/

## Key facts

- Cited by 3 papers in the map (data through 14 Oct 2026).
- First posted on arXiv 4 May 2018.

## Built on by (most cited first, 3 of 3)

- [Tangent Space Backpropagation for 3D Transformation Groups](https://mlsanity.com/paper/2103.12032/) (2021)
- [Automatic differentiation for Riemannian optimization on low-rank matrix and tensor-train manifolds](https://mlsanity.com/paper/2103.14974/) (2021)
- [SymForce: Symbolic Computation and Code Generation for Robotics](https://mlsanity.com/paper/2204.07889/) (2022)

## Abstract (arXiv)

Computer vision and robotics problems often require representation and estimation of poses on the SE(3) manifold. Developers of algorithms that must run in real time face several time-consuming programming tasks, including deriving and computing analytic derivatives and avoiding mathematical errors when handling poses in multiple coordinate frames. To support rapid and error-free development, we present wave_geometry, a C++ manifold geometry library with two key contributions: expression template-based automatic differentiation and compile-time enforcement of coordinate frame semantics. We contrast the library with existing open source packages and show that it can evaluate Jacobians in forward and reverse mode with little to no runtime overhead compared to hand-coded derivatives. The library is available at https://github.com/wavelab/wave_geometry .
