Rotation matrix

From Citizendium
Revision as of 09:12, 12 May 2009 by imported>Paul Wormer (→‎Explicit expression)
Jump to navigation Jump to search

A rotation of a 3-dimensional rigid body is a motion of the body that leaves one point, O, fixed. By Euler's theorem follows that then not only the point is fixed but also an axis—the rotation axis— through the fixed point. Write Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \hat{n}} for the unit vector along the rotation axis and φ for the angle over which the body is rotated, then the rotation is written as Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathcal{R}(\varphi, \hat{n}). }

Erect three Cartesian coordinate axes with the origin in the fixed point O and take unit vectors along the axes, then the rotation matrix is defined by its elements :

In a more condensed notation this equation is written as

Given a basis of a linear space, the association between a linear map and its matrix is one-to-one.

Properties of matrix

Since rotation conserves the shape of a rigid body, it leaves angles and distances invariant. In other words, for any pair of vectors Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{a}} and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{b}} in Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbb{R}^3} the inner product is invariant,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \left(\mathcal{R}(\vec{a}),\;\mathcal{R}(\vec{b}) \right) = \left(\vec{a},\;\vec{b}\right). }

A linear map with this property is called orthogonal. It is easily shown that a similar vector/matrix relation holds. First we define

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \vec{a} =\left(\hat{e}_x,\;\hat{e}_y,\;\hat{e}_z\right)\begin{pmatrix}a_x\\a_y\\a_z\end{pmatrix} \equiv\left(\hat{e}_x,\;\hat{e}_y,\;\hat{e}_z\right) \mathbf{a} \quad\hbox{and}\quad \vec{b} =\left(\hat{e}_x,\;\hat{e}_y,\;\hat{e}_z\right)\begin{pmatrix}b_x\\b_y\\b_z\end{pmatrix} \equiv \left(\hat{e}_x,\;\hat{e}_y,\;\hat{e}_z\right) \mathbf{b} }

and observe that the inner product becomes by virtue of the orthonormality of the basis vectors

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \left( \vec{a},\; \vec{b} \right) = \mathbf{a}^\mathrm{T} \mathbf{b}\equiv \left(a_x,\;a_y,\;a_z\right) \begin{pmatrix}b_x\\b_y\\b_z\end{pmatrix} \equiv a_xb_x+a_yb_y+a_zb_z. }

The invariance of the inner product under Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathcal{R}} leads to

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \big(\mathbf{R}\mathbf{a}\big)^\mathrm{T}\; \mathbf{R}\mathbf{b} = \mathbf{a}^\mathrm{T} \mathbf{R}^\mathrm{T}\; \mathbf{R}\mathbf{b} }

since this holds for any pair a and b it follows that a rotation matrix satisfies

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{R}^\mathrm{T} \mathbf{R} = \mathbf{E} }

where E is the 3×3 identity matrix. For finite-dimensional matrices one shows easily

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{R}^\mathrm{T} \mathbf{R} = \mathbf{E} \quad \Longleftrightarrow\quad\mathbf{R}\mathbf{R}^\mathrm{T} = \mathbf{E}. }

A matrix with this property is also called orthogonal. Writing out the two matrix products it follows that both the rows and the columns of the matrix are orthonormal (normalized and orthogonal). Indeed,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \begin{align} \mathbf{R}^\mathrm{T} \mathbf{R} &= \mathbf{E} \quad\Longrightarrow\quad \sum_{k=1}^{3} R_{ki}\, R_{kj} =\delta_{ij} \quad\hbox{(columns)} \\ \mathbf{R} \mathbf{R}^\mathrm{T} &= \mathbf{E} \quad\Longrightarrow\quad \sum_{k=1}^{3} R_{ik}\, R_{jk} =\delta_{ij} \quad\hbox{(rows)} \\ \end{align} }

where δij is the Kronecker delta.

Orthogonal matrices come in two flavors: proper (det = 1) and improper (det = −1) rotations. Invoking some properties of determinants, one can prove

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle 1=\det(\mathbf{E})=\det(\mathbf{R}^\mathrm{T}\mathbf{R}) = \det(\mathbf{R}^\mathrm{T})\det(\mathbf{R}) = \det(\mathbf{R})^2 \quad\Longrightarrow \quad \det(\mathbf{R}) = \pm 1. }

Compact notation

A compact way of presenting the same results is the following. Designate the columns of R by r1, r2, r3, i.e.,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{R} = \left(\mathbf{r}_1,\, \mathbf{r}_2,\, \mathbf{r}_3 \right) } .

The matrix R is orthogonal if

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{r}_i \cdot \mathbf{r}_j = \delta_{ij}, \quad i,j = 1,2,3 . }

The matrix R is a proper rotation matrix, if it is orthogonal and if r1, r2, r3 form a right-handed set, i.e.,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{r}_i \times \mathbf{r}_j = \sum_{k=1}^3 \, \varepsilon_{ijk} \mathbf{r}_k . }

Here the symbol × indicates a cross product and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \varepsilon_{ijk}} is the antisymmetric Levi-Civita symbol,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \begin{align} \varepsilon_{123} =&\; \varepsilon_{312} = \varepsilon_{231} = 1 \\ \varepsilon_{213} =&\; \varepsilon_{321} = \varepsilon_{132} = -1 \end{align} }

and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \varepsilon_{ijk} = 0} if two or more indices are equal.

The matrix R is an improper rotation matrix if its column vectors form a left-handed set, i.e.,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{r}_i \times \mathbf{r}_j = - \sum_{k=1}^3 \, \varepsilon_{ijk} \mathbf{r}_k \; . }

The last two equations can be condensed into one equation

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{r}_i \times \mathbf{r}_j = \det(\mathbf{R}) \sum_{k=1}^3 \; \varepsilon_{ijk} \mathbf{r}_k }

by virtue of the the fact that the determinant of a proper rotation matrix is 1 and of an improper rotation −1. This was proved above, an alternative proof is the following: The determinant of a 3×3 matrix with column vectors a, b, and c can be written as scalar triple product

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \det\left(\mathbf{a},\,\mathbf{b},\, \mathbf{c}\right) = \mathbf{a} \cdot (\mathbf{b}\times\mathbf{c}) } .

It was just shown that for a proper rotation the columns of R are orthonormal and satisfy,

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathbf{r}_1 \cdot (\mathbf{r}_2 \times \mathbf{r}_3 ) = \mathbf{r}_1 \cdot\left(\sum_{k=1}^3 \, \varepsilon_{23k} \, \mathbf{r}_k \right) = \varepsilon_{231} = 1 . }

Likewise the determinant is −1 for an improper rotation.

Explicit expression

Let Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \overrightarrow{OP} \equiv \vec{r}} be a vector pointing from the fixed point O of a rotating rigid body to an arbitrary point P of the body. A rotation of this arbitrary vector around the unit vector Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \hat{n}} over an angle φ can be written as

Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \mathcal{R}(\varphi, \hat{n})(\vec{r}\,) = \left[ \vec{r} -(\hat{n}\cdot\vec{r}\,)\; \hat{n}\right] \cos\varphi + (\hat{n} \times \vec{r}\,) \sin\varphi. }

where • indicates an inner product and the symbol × a cross product.

Rotation of vector Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \scriptstyle \vec{r}} around axis Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \scriptstyle \hat{n}} over an angle φ. The red vectors are in the plane of drawing spanned by Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \scriptstyle \vec{r}} and Failed to parse (SVG (MathML can be enabled via browser plugin): Invalid response ("Math extension cannot connect to Restbase.") from server "https://wikimedia.org/api/rest_v1/":): {\displaystyle \scriptstyle \hat{n}} . The blue vectors are rotated, the green cross product points away from the reader and is perpendicular to the plane of drawing.