Is the time derative of the rotation vector the angular velocity?

271 Views Asked by At

Some Preliminaries:

The rotation vector $\phi \in \mathbb{R}^3$ can be converted to rotation matrix $\mathbb{R}^3 \in SO(3)$ by the Rodrigues formula:

$$R(\phi) = I + \frac{\sin\theta}\theta \phi_\times + \frac{(1-\cos\theta)}{\theta^2}(\phi_\times)^2,$$

where $\theta = \vert|\phi\vert|$ and $\phi_\times$ is the skew-symmetric matrix formed from $\phi$.

The angular velocity $\omega \in \mathbb{R}^3$ (w.r.t the body frame) is related to the rotation matrix via:

$$\dot{R} = R \omega_\times$$

Question: I wonder if $\omega = \dot{\phi}$ (or $\omega = R^T\dot{\phi}$ ?).

If $\omega \neq \dot{\phi}$ could you please provide a formula that relates these two quantities?

Thanks!

Edit:

As pointed out in an example by @user7530 below. It seems like the relationship is more complex than just $\omega = \dot{\phi}$ or $\omega = R^T\dot{\phi}$.

According to Result 1 in A compact formula for the derivative of a 3D rotation in exponential coordinates, I suppose we have

$$R \omega_\times = \dot{R} = \frac{\partial R}{\partial t} = \frac{\partial R}{\partial \phi} \frac{\partial \phi}{\partial t} = \frac{\partial R}{\partial \phi} \dot{\phi} = -R\dot{\phi}_\times \frac{\phi\phi^T + (R^T-I)\phi_\times}{\|\phi\|^2} $$

Multiplying both sides with $R^T$, we get:

$$\omega_\times = - \dot{\phi}_\times \frac{\phi\phi^T + (R^T-I)\phi_\times}{\|\phi\|^2}$$

Now if the above is true the the matrix on the RHS must have the 1,1 entry equal 0 as the same entry in the skew symetric matrix on the LHS is 0. However it does not seem to be the case when I try with an example of $\phi$ and $\dot{\phi}$.

Where could I have been wrong?

1

There are 1 best solutions below

1
On

No.

Orient your body coordinates so that your $y$-axis points from your feet to your head; and the world coordinates so that $y$ points up out of the ground.

Lie down on the ground and roll. $\omega \propto \hat{y}$ (since you are spinning about your body's $y$-axis). $\dot \theta$ is... complicated. At every moment during your roll, your orientation $R(t)$ consists of a composition of the rotation that spins you so that you are lying down parallel to the ground instead of upright, and the rotation that spins you about your body's $y$-axis. At every moment in time, there exists some axis-angle $\phi(t)$ about which you can spin your original, upright body, to end up at the rolled orientation $R(t)$; but the direction of this axis evolves in a complicated and unintuitive way as you roll.

The root problem here is that rotations in 3D don't commute, or equivalently, the exponential map on $\mathfrak{so}(3)$ is not multiplicative; $R(\phi_1+\phi_2) \neq R(\phi_1)R(\phi_2)$. Unfortunately.

You can of course derive an expression for $\omega$ directly from your relationship $\frac{d}{dt} R(\phi) = R(\phi) [\omega]_\times$ and the chain rule. But note that (1) $\omega$ depends on both $\phi$ and $\dot\phi$, not just $\dot\phi$, and (2) the formula requires taking an (extremely unpleasant) derivative of the Rodrigues Rotation Formula:

$$\omega = T(\phi)\dot\phi,$$ where $$T(\phi) = \begin{cases}I, & \|\phi\| = 0\\ \frac{\phi\phi^T + (R[-\phi]-I)[\phi]_\times}{\|\phi\|^2}, & \|\phi\| > 0.\end{cases}$$

For the derivation see Gallego and Yezzi, A Compact Formula for the Derivative of a 3-D Rotation in Exponential Coordinates. Journal of Mathematical Imaging and Vision, Volume 51 Issue 3, March 2015, 378–384.