|
|
|
|
derivation of 2D reflection matrix
|
(Derivation)
|
|
|
Let $\vx, \vy$ be perpendicular unit vectors in the plane. Suppose we want to reflect vectors (perpendicularly) over a line that makes an angle $\theta$ with the positive $\vx$
axis. More precisely, we are given a direction direction vector $\vu = \cos \theta \, \vx + \sin \theta \, \vy$ for the line of reflection. A unit vector perpendicular to $\vu$ is $\vv = -\sin \theta \, \vx + \cos \theta \, \vy$ (as is easily checked). Then to reflect an arbitrary vector $\vw$ , we write $\vw$ in terms of its components in the $\vu, \vv$ axes: $\vw = a\vu + b \vv$ , and the result of the reflection is
to be $\vw' = a\vu - b \vv$ .
We compute the matrix for such a reflection in the original $x,y$ coordinates.
Denote the reflection by $T$ . By the matrix change-of-coordinates formula, we have
where $[T]_{xy}$ and $[T]_{uv}$ denote the matrix representing $T$ with respect to the $x,y$ and $u,v$ coordinates respectively; $[I]_{uv}^{xy}$ is the matrix that changes from $u,v$ coordinates to $x,y$ coordinates, and $[I]_{xy}^{uv}$ is the matrix that changes coordinates the other way.
The three matrices on the right-hand side are all easily derived from the description we gave for the reflection $T$ :
Computing the matrix product (with the help of the double angle identity) yields: \begin{equation}\label{theta-matrix} [T]_{xy} = \begin{bmatrix} \cos 2\theta & \sin 2\theta \\ \sin 2\theta & -\cos 2\theta \end{bmatrix}\,. \end{equation} For the information of the reader, we note that there are other ways of ``deriving'' this result. One is by the use of a diagram, which would show that $(1,0)$ gets reflected to $(\cos 2\theta, \sin 2\theta)$ and $(0,1)$ gets reflected to $(\sin 2\theta, -\cos 2\theta)$ . Another way is to observe that we can
rotate an arbitrary mirror line onto the x-axis, then reflect across the x-axis, and rotate back. (The matrix product $[T]_{xy}$ can be seen as operating this way.) We took neither of these two approaches, because to justify them rigorously takes a bit of work, that is avoided by the pure linear algebra approach.
Note also that $[T]_{uv}$ and $[T]_{xy}$ are orthogonal matrices, with determinant $-1$ , as expected.
Suppose instead of being given an angle $\theta$ , we are given the unit direction vector $u$ to reflect the vector $w$ . We can derive the matrix for the reflection directly, without involving any trigonometric functions.
In the decomposition $\vw = a \vu + b\vv$ , we note that $b = \vw \cdot \vv$ . Therefore $$ \vw' = (a\vu + b\vv) - 2b\vv = \vw - 2(\vw \cdot \vv) \vv\,. $$ (In fact, this is the formula used in the source code to draw the diagram in this entry.) To derive the matrix with respect to $x,y$ coordinates, we resort to a trick: $$ \vw' = I\vw - 2\vv (\vw \cdot \vv) = I\vw - 2\vv (\transpose{\vv} \vw) = I\vw - 2(\vv \transpose{\vv}) \vw\,. $$ Therefore the matrix of the transformation is $$ I - 2\vv \transpose{\vv} = \begin{bmatrix} u_x^2 - u_y^2 & 2u_x u_y \\ 2u_x u_y & u_y^2 - u_x^2
\end{bmatrix}\,, \quad \vu = \transpose{(u_x, u_y)}\,, \quad \vv = \transpose{(-u_y, u_x)}\,. $$ If $u$ was not a unit vector to begin with, it of course suffices to divide by its magnitude before proceeding. Taking this into account, we obtain the following matrix for a reflection about a line with direction $\vu$ : \begin{equation} \label{u-matrix} \frac{1}{u_x^2 + u_y^2} \begin{bmatrix} u_x^2 - u_y^2 & 2u_x u_y \\ 2u_x u_y & u_y^2 - u_x^2 \end{bmatrix}\,. \end{equation}Notice that if we put $u_x = \cos \theta$ and $u_y = \sin \theta$ in matrix ( ), we get matrix ( ), as it should be.
There is another form for the matrix ( ). We set $m = \tan \theta$ to be the slope of the line of reflection and use the identities:
When these equations are substituted in matrix ( ), we obtain an alternate expression for it in terms of $m$ only: \begin{equation}\label{m-matrix} \frac{1}{m^2 + 1} \begin{bmatrix} 1-m^2 & 2m \\ 2m & m^2 - 1 \end{bmatrix}\,. \end{equation}Thus we have derived the matrix for a reflection about a line of slope $m$ .
Alternatively, we could have also substituted $u_x = 1$ and $u_y = m$ in matrix ( ) to arrive at the same result.
Of course, formula ( ) does not work literally when $m = \pm \infty$ (the line is vertical). However, that case may be derived by taking the limit $\abs{m} \to \infty$ -- this limit operation can be justified by considerations of the topology of the space of two-dimensional reflection matrices.
What is this topology? It is the one-dimensional projective plane $\RPone$ , or simply, the ``real projective line''. It is formed by taking the circle, and identifying opposite points, so that each pair of opposite points specify a unique mirror line of reflection in $\real^2$ . Formula ( ) is a parameterization of $\RPone$ . Note that ( ) involves the quantity $2\theta$ , not $\theta$ , because for a point $(\cos \theta, \sin \theta)$ on the circle, its opposite point $(\cos (\theta+\pi), \sin (\theta+\pi))$ specify the same reflection, so formula ( ) has to be invariant when $\theta$ is replaced by $\theta + \pi$ .
But ( ) might as well be written \begin{equation}\label{phi-matrix} [T]_{xy} = \begin{bmatrix} \cos \phi & \sin \phi \\ \sin \phi & -\cos \phi \end{bmatrix}\,. \end{equation}where $\phi = 2\theta$ . For this parameterization of $RP^1$ to be one-to-one, $\phi$ can range over interval $(0, 2\pi)$ , and the endpoints at $\phi = 0, 2\pi$
overlap just as for a circle, without identifying pairs of opposite points. What does this mean? It is the fact that $\RPone$ is homeomorphic to the circle $S^1$ .
The real projective line $\RPone$ is also the one-point compactification of $\real$ (i.e. $\RPone = \real \cup \{ \infty \}$ ), as shown by formula ( ); the number $m = \infty$ corresponds to a reflection across the vertical axis. Note that this ``$\infty$ '' is not the same as the usual $\pm \infty$ , because here $-\infty$ and $\infty$ are actually the same number, both representing the slope of a vertical line.
|
"derivation of 2D reflection matrix" is owned by stevecheng.
|
|
(view preamble | get metadata)
Cross-references: number, one-point compactification, projective line, real, homeomorphic, mean, endpoints, interval, range, one-to-one, invariant, points, opposite, circle, projective plane, topology, operation, limit, expression, equations, identities, slope, divide, transformation, decomposition, trigonometric functions, unit, determinant, orthogonal matrices, linear algebra, onto, rotate, diagram, double angle identity, matrix product, side, formula, coordinates, matrix, components, reflection, direction vector, axis, positive, angle, line, vectors, reflect, plane, unit vectors, perpendicular
There is 1 reference to this entry.
This is version 11 of derivation of 2D reflection matrix, born on 2005-07-25, modified 2006-03-13.
Object id is 7262, canonical name is DerivationOf2DReflectionMatrix.
Accessed 31277 times total.
Classification:
| AMS MSC: | 15-00 (Linear and multilinear algebra; matrix theory :: General reference works ) |
|
|
|
|
|
|
Pending Errata and Addenda
|
|
|
|
|
|
|
|
|
|
|