I've recently enrolled in a Coursera aerial robotics course and i'm trying to understand how the rate of change of the angular momentum is computed from the inertia frame to the body-fixed frame.

According to the course:

enter image description here

From this picture, we can see that the rate of change of the angular momentum in the inertial frame (denoted with the super-script A) of the center of mass (denoted with the sub-script C) is equal to the net moment generated by a quad-rotor.

By computing this quantity in the body-fixed frame, this is translated to the rate of change of the angular momentum in the body-fixed frame (denoted with super-script B) plus a correction factor.

This correction factor is equal to the cross product of the angular velocity of the body B (denoted with the super-script B) in the inertial frame (denoted with the super-script A) with the angular momentum itself.

The professor talks about this correction factor as a well-known correction factor used in mechanics / kinematics and this i can't find anywhere in the net and doesn't seem to be very obvious to me.

Can you explain me the origin of that correction factor or maybe give me a resource i can document myself on ?

Thanks in advance.


The cross-product correction factor shows up any time we take the time derivative of a vector described in a moving frame.

When I teach this topic in my classes, I generally introduce it when talking about taking time derivatives of position vectors, because it's easier to visualize in that situation:

Start by considering the positions of two points $A$ and $B$, denoted by vectors $\vec{r}_{A}$ and $\vec{r}_{B}$. We can then take the relative position of $B$ with respect to $A$ as a vector $\vec{r}_{B/A} = \vec{r}_{B}-\vec{r}_{A}$ such that $\vec{r}_{B} = \vec{r}_{A} + \vec{r}_{B/A}$.

Now let's say that the vector $\vec{r}_{B/A}$ is fundamentally defined in a frame whose orientation is encoded by a rotation matrix $R_{AB}$, such that $\vec{r}_{B/A}=R_{AB}\ \vec{r}_{B/A}'$ (where $'$ indicates a vector defined in the rotated frame).

If we take the time derivative of the position of $B$, we then get \begin{equation} \frac{d}{dt} \vec{r}_{B} = \frac{d}{dt} \vec{r}_{A} + \left(\frac{d}{dt} R_{AB}\right)\ \vec{r}_{B/A}' + R_{AB} \left(\frac{d}{dt} \vec{r}_{B/A}'\right). \end{equation}

The time derivative of a rotation matrix is the product of its rotational velocity with itself, $\frac{d}{dt} R_{AB} = \vec{\Omega}_{AB} \times R_{AB}$, such that the total time derivative can be regrouped as $$ \frac{d}{dt} \vec{r}_{B} = \frac{d}{dt} \vec{r}_{A} + \vec{\Omega}_{AB} \times \left(\vphantom{\frac{d}{dt}}R_{AB}\ \vec{r}_{B/A}'\right) + R_{AB} \left(\frac{d}{dt} \vec{r}_{B/A}'\right). $$ If you think of $A$ and $B$ as being points on a piece of paper, the first term in the expansion says how the paper is moving at point $A$, which transfers to how it is moving at point $B$. The second term describes how rotation of the paper makes point $B$ orbit around $A$, and the third term describes how point $B$ moves on the paper relative to point $A$.

For your angular momentum problem, you can think of the angular momentum as a "free vector", i.e., saying that we only want the $\vec{r}_{B/A}$ component and not the $\vec{r}_{A}$ component. When we take the time derivative, we then get the latter two terms from the full equation, and thus the "time derivative as seen in the frame" plus the "frame-rotation cross product" terms.

In the standard expression from within the body frame, we then multiply all the terms by ${R}^{-1}_{AB}$. By a bit of algebra that I won't go into right now, it works out that $$ {R}^{-1}_{AB}\left[\vec{\Omega}_{AB} \times \left(\vphantom{\frac{d}{dt}}R_{AB}\ \vec{r}_{B/A}'\right)\right] = \vec{\Omega}_{AB}' \times \vec{r}_{B/A}' $$ so that $$ {R}^{-1}_{AB} \left(\frac{d}{dt} \vec{r}_{B}\right) = {R}^{-1}_{AB}\left(\frac{d}{dt} \vec{r}_{A}\right) + \vec{\Omega}_{AB}' \times \vec{r}_{B/A}' +\frac{d}{dt} \vec{r}_{B/A}', $$ in which the last two terms are the standard expression for the derivative of a free vector expressed in a rotating set of coordinates.

  • $\begingroup$ Very clear. Thanks you so much and sorry for the late reply $\endgroup$ – Mssm Feb 27 at 8:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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