2

$\newcommand\p[3]{{}^{#1}{p}^{#2}_{#3}} \newcommand\pdot[3]{{}^{#1}{\dot{p}}^{#2}_{#3}} \newcommand\pddot[3]{{}^{#1}{\ddot{p}}^{#2}_{#3}} \newcommand\R[2]{{}^{#1}{R}^{#2}} \newcommand\Rdot[2]{{}^{#1}{\dot{R}}^{#2}} \newcommand\Rddot[2]{{}^{#1}{\ddot{R}}^{#2}} \newcommand\w[2]{{}^{#1}{\omega}^{#2}}$Consider the following 3 frames:

  • The world frame $W = (0,(e_x,e_y,e_z))$, where $0$ is the zero vector in $\mathbb R^3$ and $(e_x,e_y,e_z)$ are the standard basis vectors in $\mathbb R^3$.
  • Frame $A = (O_A,(a_x,a_y,a_z))$, where $O_A \in \mathbb R^3$ is the origin of frame $A$ and $(a_x,a_y,a_z)$ is an orthonormal basis for frame $A$.
  • Frame $B = (O_B,(b_x,b_y,b_z))$ where $O_B \in \mathbb R^3$ is the origin of frame $B$ and $(b_z,b_y,b_z)$ is an orthonormal basis for frame $B$.

Let $\R{A}{W}$ ($\R{B}{W}$, respectively) be the rotation matrix that maps a vector expressed in the world frame $W$ to a vector expressed in frame $A$ ($B$, respectively).

That is, if the basis vectors $(a_x,a_y,a_z)$ and $(b_x,b_y,b_z)$ are expressed in the world frame as $\left(a_x^W,a_y^W,a_z^W\right)$ and $\left(b_x^W,b_y^W,b_z^W\right)$ respectively, then $$ \begin{align} \R{A}{W} &= \begin{bmatrix}a_x^W & a_y^W & a_z^W\end{bmatrix}^T \begin{bmatrix}e_x & e_y & e_z\end{bmatrix} \\ \R{B}{W} &= \begin{bmatrix}b_x^W & b_y^W & b_z^W\end{bmatrix}^T \begin{bmatrix}e_x & e_y & e_z\end{bmatrix} \end{align} $$ Additionally, let $\p{S}{U}{V}$ be a translation vector from the origin of frame $S$ to the origin of frame $U$ expressed in frame $V$.

We can derive the angular velocity vector $\w{A}{W}$ of frame $A$ relative to the world frame $W$ as follows: $$ \begin{align} \p{W}{A}{A} &= \R{A}{W} \cdot \p{W}{A}{W} \\ \pdot{W}{A}{A} &= \Rdot{A}{W} \cdot \p{W}{A}{W} + \R{A}{W} \cdot \pdot{W}{A}{W} \\ \pdot{W}{A}{A} &= \Rdot{A}{W} \cdot \R{W}{A} \cdot \p{W}{A}{A} + \R{A}{W} \cdot \pdot{W}{A}{W} \end{align} $$ The matrix $\Rdot{A}{W} \cdot \R{W}{A}$ is skew-symmetric, and so it always has the form $$ \Rdot{A}{W} \cdot \R{W}{A} = \begin{bmatrix}0 & -\omega_z(t) & \omega_y(t) \\ \omega_z(t) & 0 & -\omega_x(t) \\ -\omega_y(t) & \omega_x(t) & 0\end{bmatrix} $$ Hence, we let $$ \w{A}{W} = \begin{bmatrix}\omega_x(t) \\ \omega_y(t) \\ \omega_z(t)\end{bmatrix} \tag{1} $$ such that $$ \begin{align} \pdot{W}{A}{A} &= \Rdot{A}{W} \cdot \R{W}{A} \cdot \p{W}{A}{A} + \R{A}{W} \cdot \pdot{W}{A}{W} \\ &= \w{A}{W} \times \p{W}{A}{A} + \R{A}{W} \cdot \pdot{W}{A}{W} \end{align} $$ To summarize, we have derived the angular velocity vector $\w{A}{W}$ in $(1)$.

Question

I have read in several books and resources, such as here (see footnote a under the table), that $\w{A}{W}$ has an "expressed-in" frame, such as frame $X$ for example. That is, $\w{A}{W}$ should really be written as ${}^{A}\omega^W_X$. However, it is not clear to me why there should even be an "expressed-in" frame when none of the rotation matrices $\R{W}{A}$ and $\R{A}{W}$ and the derivative $\Rdot{A}{W}$ have an expressed-in frame.

In other words, since $\w{A}{W}$ is constructed from the elements of $\Rdot{A}{W} \cdot \R{W}{A}$, then it is not clear to me what the "expressed-in" frame should be.

Amit
  • 6,024
Mahmoud
  • 199
  • 6

1 Answers1

0

The answer can be traced back to how we express an arbitrary vector in a world frame. We usually start with this vector written as:

$$ \vec{r} = r_i \vec{e}_i $$

where the $\vec{e}_i$ are orthonormal basis vectors ($i=1,2,3$) for the world frame. But we need to remember that there's still a lot of freedom in choosing these basis vectors, in particular we may choose any arbitrary fixed orientation in space when picking up coordinates for them.

So that then when we go on, in the case of rigid rotation ($\dot{r}_i=0$), and find:

$$ \dot{\vec{r}} = r_i\dot{\vec e}_i = r_i \underbrace{\omega_{ij} \vec e_j}_{\Large=\ \dot{\vec e}_i} $$

and then finally, expressing the angular velocity vector via the same basis:

$$ \vec{\omega} = \frac{1}{2}\varepsilon_{ijk}\omega_{jk} \vec{e}_i, $$

the same freedom in choosing $\{\vec{e}_i\}$ still persists. I believe this is why to be very general one may add the "expressed in frame X" for the angular velocity vector.


Edit - In case it can be more convenient to see this in matrix notation rather than tensor notation:

We start with a rotation matrix relating an initial position vector at $t=0$ and the same position vector at some subsequent time $t$:

$$ \mathbf{R}(t)\vec{r}(0)=\vec{r}(t), $$

in the language of your post, we may also say that $\vec{r}(0)$ is any fixed vector in the body frame (i.e. a point on the rigid body), and $\mathbf{R}$ here is the transformation to the world frame, giving the time dependent version of this same vector, $\vec{r}(t)$, as measured in the world frame.

Differentiating with respect to time we find: $$ \dot{\mathbf{R}}(t)\vec{r}(0) = \dot{\vec{r}}(t)$$ Now $\mathbf{R}$ is an orthogonal matrix, so acting with the inverse/transpose on $\vec{r}(t)$ we can rewrite the left hand side as: $$ \dot{\mathbf{R}}(t)\mathbf{R}^{T}(t)\vec{r}(t) = \dot{\vec{r}}(t)$$

now $\mathbf{\Omega}(t)=\dot{\mathbf{R}}(t)\mathbf{R}^{T}(t)$ is what we define as the angular velocity tensor from which we also get the definition of the angular velocity vector, as you've already written in your post, and I denote here by $\vec{\omega}$.

But now what are the components of $\mathbf{\Omega}$? Like any matrix, it is written with respect to some basis. So clearly, in order for the above equations to make sense, it is precisely the same basis that $\vec{r}$ is written in! That's because at the end of the day $\mathbf{\Omega}$ will act on $\vec{r}=r_i\vec{e}_i$ and hence it must "know" how to act on each of the $\vec{e}_i$'s; The action of a matrix on the basis vectors is what determines its components in that basis. In fact it is a straightforward linear algebra exercise to show that the $ij$'th component of $\mathbf{\Omega}$ is:

$$ (\mathbf{\Omega})_{ij} = \vec{e}_i^{T} \mathbf{\Omega}\vec{e}_j, $$

where we make use of the fact that $\{\vec{e}_i\}$ is an orthonormal basis, as before.

So to reiterate the original point: despite the fact that $\vec{\omega}$ (and its matrix counterpart $\mathbf{\Omega}$) express an angular velocity as given between two specific frames, the freedom in choosing $\{\vec{e}_i\}$ implies we can use many different coordinate systems to express them in.

Amit
  • 6,024