Reading and display settings

Appearance

System follows your operating system and keeps following it, even if you change it later. The header's sun, moon and monitor cycle the same three options.

Text size (%) 100%

Default. Scales every text size on the site, equations and tables included.

Reading width 70ch

How much text runs across one line of prose. Narrower is easier to track; wider fits more on screen.

Line spacing 1.6

The leading on body text. Taller leading helps a tired eye stay on the line.

Density

Padding and gaps around controls, cards, and tables — how much breathing room the layout leaves itself.

Motion

System follows your operating system. Reduced removes every transition on this site. Full keeps them on unless your system asks for less.

1

Rules for any Lie group

Plus / minus (right)$X\oplus\tau = X\operatorname{Exp}(\tau)$, $\quad Y\ominus X = \operatorname{Log}(X^{-1}Y)$
Plus / minus (left)$\tau\oplus X = \operatorname{Exp}(\tau)X$, $\quad Y\ominus X = \operatorname{Log}(YX^{-1})$
Adjoint$X\operatorname{Exp}(\tau) = \operatorname{Exp}(\operatorname{Ad}_X\tau)X$, $\quad \operatorname{Ad}_{XY} = \operatorname{Ad}_X\operatorname{Ad}_Y$, $\quad \operatorname{Ad}_{X^{-1}} = \operatorname{Ad}_X^{-1}$
Exp Jacobians$\operatorname{Exp}(\tau+\delta)\approx\operatorname{Exp}(\tau)\operatorname{Exp}(J_r(\tau)\delta) \approx \operatorname{Exp}(J_l(\tau)\delta)\operatorname{Exp}(\tau)$, $\quad J_l(\tau) = J_r(-\tau) = \operatorname{Ad}_{\operatorname{Exp}\tau}J_r(\tau)$
Log Jacobian$\operatorname{Log}(\operatorname{Exp}(\tau)\operatorname{Exp}(\delta))\approx\tau + J_r^{-1}(\tau)\,\delta$
BCH$\operatorname{Log}(\operatorname{Exp}a\operatorname{Exp}b) = a + b + \tfrac12[a,b] + \tfrac1{12}([a,[a,b]] + [b,[b,a]]) + \cdots$
Elementary Jacobians$\partial X^{-1}/\partial X = -\operatorname{Ad}_X$; $\quad \partial(XY)/\partial X = \operatorname{Ad}_Y^{-1}$; $\quad \partial(XY)/\partial Y = I$; $\quad \partial\operatorname{Log}X/\partial X = J_r^{-1}(\operatorname{Log}X)$; $\quad \partial(Y\ominus X)/\partial X = -J_l^{-1}(\tau)$, $\partial(Y\ominus X)/\partial Y = J_r^{-1}(\tau)$ with $\tau = Y\ominus X$
Chain rule$\dfrac{\partial f(g(X))}{\partial X} = \dfrac{\partial f}{\partial g}\dfrac{\partial g}{\partial X}$
Covariance$X = \bar X\operatorname{Exp}(\varepsilon)$, $\varepsilon\sim\mathcal{N}(0,\Sigma)$; $\quad\Sigma_{f(X)} \approx J\Sigma J^\top$; $\quad \Sigma_{\text{left}} = \operatorname{Ad}_{\bar X}\Sigma_{\text{right}}\operatorname{Ad}_{\bar X}^\top$
Motion model$X_{k+1} = X_k\operatorname{Exp}(u+n)$: $\ \Sigma_{k+1} = \operatorname{Ad}^{-1}_{\operatorname{Exp}u}\Sigma_k\operatorname{Ad}^{-\top}_{\operatorname{Exp}u} + J_r(u)QJ_r(u)^\top$
Gauss–Newton step$(\sum J_i^\top J_i)\,\delta = -\sum J_i^\top r_i$, $\quad X\leftarrow X\oplus\delta$
2

SO(2): planar rotations

Element$R(\theta) = \begin{bmatrix}\cos\theta & -\sin\theta\\ \sin\theta & \cos\theta\end{bmatrix}$, or $z = e^{i\theta}$; dimension 1
Hat / vee$\theta^\wedge = \theta E$, $E = \begin{bmatrix}0&-1\\1&0\end{bmatrix}$, $E^2 = -I$
Exp / Log$\operatorname{Exp}(\theta) = R(\theta)$; $\quad\operatorname{Log}(R) = \operatorname{atan2}(R_{21}, R_{11})\in(-\pi,\pi]$
Plus / minusangle addition and subtraction, wrapped into $(-\pi,\pi]$
Ad, $J_r$, $J_l$all equal to $1$ (commutative group)
Action$\partial(Rp)/\partial\theta = R\,E\,p$, $\quad\partial(Rp)/\partial p = R$
3

SO(3): 3D rotations

Element$R\in\mathbb{R}^{3\times3}$, $R^\top R = I$, $\det R = 1$; dimension 3
Hat / vee$[\phi]_\times = \begin{bmatrix}0&-\phi_3&\phi_2\\ \phi_3&0&-\phi_1\\ -\phi_2&\phi_1&0\end{bmatrix}$, $\quad[\phi]_\times v = \phi\times v$, $\quad[a,b] = a\times b$
Exp$I + \dfrac{\sin\theta}{\theta}[\phi]_\times + \dfrac{1-\cos\theta}{\theta^2}[\phi]_\times^2$ (small $\theta$: $I + [\phi]_\times + \tfrac12[\phi]_\times^2$)
Log$\theta = \operatorname{atan2}\bigl(\tfrac12\lVert(R-R^\top)^\vee\rVert,\ \tfrac12(\operatorname{tr}R-1)\bigr)$, $\ \phi = \dfrac{\theta}{2\sin\theta}(R-R^\top)^\vee$; near $\theta=0$ use $\tfrac12+\theta^2/12$; near $\pi$ read $k$ from $kk^\top = \dfrac{\operatorname{sym}R - \cos\theta\,I}{1-\cos\theta}$
Adjoint$\operatorname{Ad}_R = R$
$J_r$$I - \dfrac{1-\cos\theta}{\theta^2}[\phi]_\times + \dfrac{\theta-\sin\theta}{\theta^3}[\phi]_\times^2$ (small $\theta$: $I - \tfrac12[\phi]_\times + \tfrac16[\phi]_\times^2$)
$J_r^{-1}$$I + \tfrac12[\phi]_\times + \Bigl(\dfrac1{\theta^2} - \dfrac{1+\cos\theta}{2\theta\sin\theta}\Bigr)[\phi]_\times^2$ (small $\theta$: coefficient $\tfrac1{12}$)
$J_l$, $J_l^{-1}$$J_l(\phi) = J_r(-\phi) = R\,J_r(\phi)$, $\quad J_l^{-1}(\phi) = J_r^{-1}(-\phi)$
Action$\partial(Rp)/\partial\delta = -R[p]_\times$ (right), $\ -[Rp]_\times$ (left); $\quad\partial(Rp)/\partial p = R$
Kinematics$\dot R = R[\omega_b]_\times = [\omega_s]_\times R$, $\ \omega_s = R\,\omega_b$; exact step $R\leftarrow R\operatorname{Exp}(\omega_b\Delta t)$
Quaternion$q = (\cos\tfrac\theta2, \sin\tfrac\theta2\,\hat\phi)$; $\ q$ and $-q$ are the same rotation; $\ v' = qvq^*$
Distancesgeodesic $\lVert\operatorname{Log}(R_1^\top R_2)\rVert$; chordal $\lVert R_1 - R_2\rVert_F = 2\sqrt2\sin(\theta/2)$
4

SE(2): planar poses

Element$T = \begin{bmatrix}R(\theta) & t\\ 0 & 1\end{bmatrix}$; $\tau = (\rho_1,\rho_2,\theta)$; dimension 3
Hat$\tau^\wedge = \begin{bmatrix}\theta E & \rho\\ 0 & 0\end{bmatrix}$
Exp$\begin{bmatrix}R(\theta) & V(\theta)\rho\\ 0 & 1\end{bmatrix}$, $\quad V(\theta) = \dfrac1\theta\begin{bmatrix}\sin\theta & -(1-\cos\theta)\\ 1-\cos\theta & \sin\theta\end{bmatrix}$
Log$\theta = \operatorname{atan2}(R_{21},R_{11})$, $\ \rho = V(\theta)^{-1}t$
Inverse$T^{-1} = \begin{bmatrix}R^\top & -R^\top t\\ 0 & 1\end{bmatrix}$
Adjoint$\operatorname{Ad}_T = \begin{bmatrix} R & -E\,t\\ 0 & 1\end{bmatrix}$ (i.e. last column $(t_2, -t_1, 1)$)
$J_r$$\begin{bmatrix}\frac{\sin\theta}{\theta} & \frac{1-\cos\theta}{\theta} & \frac{\theta\rho_1-\rho_2+\rho_2\cos\theta-\rho_1\sin\theta}{\theta^2}\\ \frac{\cos\theta-1}{\theta} & \frac{\sin\theta}{\theta} & \frac{\rho_1+\theta\rho_2-\rho_1\cos\theta-\rho_2\sin\theta}{\theta^2}\\ 0&0&1\end{bmatrix}$
$J_l$$\begin{bmatrix}\frac{\sin\theta}{\theta} & \frac{\cos\theta-1}{\theta} & \frac{\theta\rho_1+\rho_2-\rho_2\cos\theta-\rho_1\sin\theta}{\theta^2}\\ \frac{1-\cos\theta}{\theta} & \frac{\sin\theta}{\theta} & \frac{-\rho_1+\theta\rho_2+\rho_1\cos\theta-\rho_2\sin\theta}{\theta^2}\\ 0&0&1\end{bmatrix}$
Action$\partial(Tp)/\partial\tau = \bigl[\,R\ \ R\,E\,p\,\bigr]$ $(2\times3)$
5

SE(3): rigid-body poses

Element$T = \begin{bmatrix}R & t\\ 0^\top & 1\end{bmatrix}$; $\tau = (\rho,\phi)\in\mathbb{R}^6$; dimension 6
Hat$\tau^\wedge = \begin{bmatrix}[\phi]_\times & \rho\\ 0^\top & 0\end{bmatrix}$
Exp$\begin{bmatrix}\operatorname{Exp}(\phi) & V(\phi)\rho\\ 0^\top & 1\end{bmatrix}$, $\quad V(\phi) = J_l^{SO(3)}(\phi)$
Log$\phi = \operatorname{Log}(R)$, $\ \rho = J_l^{-1}(\phi)\,t$
Screwaxis $\hat\phi$ through $q = \phi\times\rho/\theta^2$, pitch $h = \phi\cdot\rho/\theta^2$
Adjoint$\operatorname{Ad}_T = \begin{bmatrix}R & [t]_\times R\\ 0 & R\end{bmatrix}$; $\quad\operatorname{ad}_\tau = \begin{bmatrix}[\phi]_\times & [\rho]_\times\\ 0 & [\phi]_\times\end{bmatrix}$
$J_l$, $J_r$$J_l(\tau) = \begin{bmatrix}J_l(\phi) & Q(\rho,\phi)\\ 0 & J_l(\phi)\end{bmatrix}$, $\quad J_r(\tau) = J_l(-\tau)$
$Q(\rho,\phi)$$\tfrac12 P + c_1(\Phi P + P\Phi + \Phi P\Phi) + c_2(\Phi^2P + P\Phi^2 - 3\Phi P\Phi) + c_3(\Phi P\Phi^2 + \Phi^2P\Phi)$, with $P = [\rho]_\times$, $\Phi = [\phi]_\times$, $c_1 = \frac{\theta-\sin\theta}{\theta^3}$, $c_2 = \frac{\theta^2+2\cos\theta-2}{2\theta^4}$, $c_3 = \frac{2\theta-3\sin\theta+\theta\cos\theta}{2\theta^5}$
Action$\partial(Tp)/\partial\tau = \bigl[\,R\ \ -R[p]_\times\,\bigr]$ (right); $\ \partial(T^{-1}p)/\partial\tau = \bigl[\,-I\ \ [T^{-1}p]_\times\,\bigr]$
6

Conventions to check

Tangent order
Translation first here, and in Solà/manif, Barfoot and Sophus. Rotation first in GTSAM Pose3. Reorder with a permutation on both sides of Jacobians and covariances.
Perturbation side
Right here and in manif (default) and GTSAM; left in Barfoot. Convert with $\operatorname{Ad}_X$.
Quaternion order
$(w,x,y,z)$ in most papers and Sophus; $(x,y,z,w)$ in Eigen storage and ROS messages.
Quaternion product
Hamilton ($ij=k$) almost everywhere; JPL ($ij=-k$) in parts of the aerospace and VIO literature.
Pose meaning
$T_{AB}$ maps $B$-coordinates to $A$-coordinates here; check whether a source means the pose of $B$ in $A$ or the reverse.
7

Calculator

Evaluate any formula above

Choose a group and a tangent vector. The calculator evaluates Exp, Log (and the round trip), the adjoint of $\operatorname{Exp}(\tau)$, and both Jacobians. It also compares $J_r$ with a central-difference estimate, so you can use it to check your own implementation's numbers.