What is the derivative of a time varying vector multiplied by a time varying rotation matrix

479 Views Asked by At

Suppose $f(t) = R(t)\, v(t)$, where $R(t)$ is a rotation matrix and $v(t)$ a vector. Does the product rule apply: $$ f'(t)=R'(t) \, v(t) + R(t) \, v'(t) ? $$ I was expecting an omega to show up, but I am not sure what the derivative of a matrix means.

2

There are 2 best solutions below

0
On

The derivative of a matrix $R$ is just the derivative of each entry. So, if $f(t)=R(t)v(t)$, then you are right, the product rule gives $\dot{f}(t)=\dot{R}(t)v(t)+R(t)\dot{v}(t)$. The only way an omega will show up if it is an element of the rotation matrix (which I assume it is) or the vector $v$ itself.

0
On

You are almost there

$$ \begin{aligned} f'(t) & =R'(t) \, v(t) + R(t) \, v'(t) \\ & = \Omega \times R(t)\,v(t) + R(t) \, v'(t) \end{aligned}$$

The matrix $R(t)$ contains the direction vectors for the local coordinate system in it's columns. Just as the derivative of a rotating vector $a$ is $a' = \Omega \times a$, so are all the columns of $R(t)$. So the derivative of the rotation vector is

$$ R'(t) = \Omega \times R(t) $$

This also works backwards. Any time you see a $\Omega \times \square$ term think derivative $\square'$.


You can use this for example to derive the kinematic relationship between two connected bodies. Imagine two bodies with rotation matrices $R_1$ and $R_2$ that are related by a single rotation $R$ about some axis $\boldsymbol{z}$ and angle $\theta$. The rotation axis $\boldsymbol{z}$ is riding on the first body, and the components are expressed in local coordinates.

$$ R_2 = R_1\, R $$

The individual derivatives are

$$ \begin{aligned} R_2' & = \boldsymbol{\omega}_2 \times R_2 \\ R_1' & = \boldsymbol{\omega}_1 \times R_1 \\ R' &= (\boldsymbol{z} \dot{\theta}) \times R \end{aligned}$$

The product rule for the rotational kinematics is

$$ \begin{aligned} R_2' & = R_1'\, R + R_1\, R' \\ \boldsymbol{\omega}_2 \times R_2 &= \boldsymbol{\omega}_1 \times R_1\,R + R_1 \left( (\boldsymbol{z}\, \dot{\theta} )\times R\right) \\ & = \boldsymbol{\omega}_1 \times R_2 + \left( (R_1 \boldsymbol{z} \,\dot{\theta}) \times (R_1 R) \right) \\ & = \left( \boldsymbol{\omega}_1 + R_1 \boldsymbol{z}\, \dot{\theta} \right) \times R_2 \end{aligned} $$

or

$$ \boldsymbol{\omega}_2 = \boldsymbol{\omega}_1 + R_1 \boldsymbol{z} \,\dot{\theta} $$

In fact, if $\boldsymbol{z}$ is expressed not in the local coordinate system, but in the world coordinates the rotational kinematics are

$$ \boldsymbol{\omega}_2 = \boldsymbol{\omega}_1 + \boldsymbol{z} \,\dot{\theta} $$