I am trying to understand how and why the angular velocity vector is related to the derivative of a rotation matrix.

I understand that for a rotation matrix $R(t)$ one has $R(t)R(t)^T = I $, so $\dot{R}R^T + R\dot{R}^T = 0$ which shows that the matrix $R(t)\dot{R}^T = \hat{\Omega}$ is skew symmetric. I understand that then we can write $\hat{\Omega}$ in vector form $\omega$ such that we get for all vectors $v$, $\hat{\Omega}v = \omega \times v$.

But what else do we need to show that that $\omega$ is the angular velocity vector? Can we assert that $\omega$ will be unique?


2 Answers 2


The transformation matrix $~\mathbf R~$ transformed the components of a vector from body system (Index B) to inertial system (Index I)

$$(\mathbf u)_I=\mathbf R\,(\mathbf u)_B$$

take the time derivative you obtain the velocity components $~\mathbf v~$ in inertial system

$$(\mathbf v)_I=\mathbf{\dot{R}}\,(\mathbf u)_B$$


$$\mathbf{\dot{R}}=\,\mathbf R\,\left[ \begin {array}{ccc} 0&-\omega_{{z}}&\omega_{{y}} \\ \omega_{{z}}&0&-\omega_{{x}}\\ -\omega_{{y}}&\omega_{{x}}&0\end {array} \right]$$


$$(\mathbf v)_I=\mathbf R\,\left(\mathbf\omega\times\mathbf u\right)_B $$


$$\underbrace{\mathbf R^T\,(\mathbf v)_I}_{(\mathbf v)_B}=\left(\mathbf\omega\times\mathbf u\right)_B$$

thus you obtain

$$\mathbf v=\mathbf\omega\times\mathbf u$$

with : \begin{align*} &\mathbf{\dot{R}}=\mathbf{R}\,\mathbf{\tilde{\omega}}\\ &\Rightarrow\\ &\mathbf{\tilde{\omega}}=\mathbf{R}^T\,\mathbf{\dot{R}}\quad \text{and}\quad \mathbf{\tilde{\omega}}+\mathbf{\tilde{\omega}}^T=\mathbf{0}\\ &\Rightarrow\\ &\mathbf{R}^T\,\mathbf{\dot{R}}+\,\mathbf{\dot{R}}^T\,\mathbf{R}=\mathbf{0}\\ &\text{or}\\ &\mathbf{R}^T\,\mathbf{R}=\mathbf{I} \end{align*}


Take any basis vector $\hat{u}$ that is riding on a rotating coordinate frame and find as far as the components as measured by the inertial frame you have

$$ \frac{\rm d}{{\rm d}t} \hat{u} = \vec{\omega} \times \hat{u} \tag{1}$$

Now recognize that the rotation matrix $\mathbf{R}$ just has the three basis vectors of the body frame in its columns

$$ \mathbf{R} = \left[ \begin{array}{c|c|c} \hat{i} & \hat{j} & \hat{k} \end{array} \right] \tag{2}$$

and the relationship

$$ \frac{\rm d}{{\rm d}t} \mathbf{R} = \vec{\omega} \times \mathbf{R} \tag{3}$$

is just a shortcut for

$$ \begin{aligned} \frac{\rm d}{{\rm d}t} \hat{i} & = \vec{\omega} \times \hat{i} \\ \frac{\rm d}{{\rm d}t} \hat{j} & = \vec{\omega} \times \hat{j} \\ \frac{\rm d}{{\rm d}t} \hat{k} & = \vec{\omega} \times \hat{k} \\ \end{aligned} $$

So your question is really how do you prove (1)?

My favorite method is stating that under rotations the length of the basis vector must remain one $\| \hat{u} \| = 1$, or in derivative form

$$ \frac{\rm d}{{\rm d}t} \sqrt{ \hat{u} \cdot \hat{u} } = 0 $$ which quickly simplifies to $$ \hat{u} \cdot \frac{\rm d}{{\rm d}t} \hat{u} = 0 $$

which is interpreted as the derivative must be perpendicular to the direction (pretty intuitive) and that one (or only way) to ensure this is to use a cross product to define the derivative as the cross product is guaranteed to be perpendicular to both arguments.

$$ \hat{u} \cdot ( \vec{\omega} \times \hat{u}) = 0 $$

The above leads to

$$ \frac{\rm d}{{\rm d}t} \vec{r} = \vec{v} = \vec{\omega} \times \vec{r} $$ for $\vec{r}$ riding on the body and $\vec{\omega}$ is the angular velocity vector.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.