Matrix of reflection in $R^3$

2.2k Views Asked by At

Please, can you explain me how do we get this formula $$ A = I - 2nn^{T} $$ in $$ R^{3} $$? This should be matrix of reflection, but I don't know how to prove that.

2

There are 2 best solutions below

0
On

This is maybe more of a trick than of a proof, but I find this approach much easier to memorize.

Let $x_1, x_2, x_3$ be the Cartesian coordinates of the space. It is clear that the reflection around the plane $x_1x_2$ is the map $$ (x_1, x_2, x_3)\mapsto (x_1, x_2, -x_3), $$ and this is a linear map that can be written in matrix form as $$ A_{(0,0,1)}\begin{bmatrix} x_1 \\ x_2 \\ x_3\end{bmatrix} = \left( I-\begin{bmatrix} 0 & 0 &0\\ 0 & 0 & 0 \\ 0 & 0 & 2\end{bmatrix}\right)\begin{bmatrix}x_1\\ x_2 \\ x_3\end{bmatrix},$$ that is, $$ A_{(0,0,1)}=I-2\begin{bmatrix} 0 \\ 0 \\ 1\end{bmatrix}\begin{bmatrix} 0 &0 &1\end{bmatrix}.$$

We write $$\tag{1} A_{(0,0,1)}\vec x = \vec y.$$

Now, to obtain the formula for the reflection around the plane having $\vec{n}$ as normal vector, we change variables; $$ \vec x = R\vec x ', \quad \vec y = R\vec y', $$ where $R$ is a rotation matrix such that $$ R\vec n = \begin{bmatrix} 0 \\0 \\ 1\end{bmatrix}.$$ Applying this change of variable in (1) yields $$\tag{2} A_{\vec n}\vec x ' =\vec y ',$$ where $A_{\vec n}$ is the reflection matrix we want to compute. And now it is a matter of unwrapping $\vec x', \vec y'$ in (2) and computing, using the fact that $R^TR=I$, because $R$ is a rotation.

1
On

Let $a,b,n$ be unit vectors orthogonal to each other - $a,b$ basis for the plane, $n$ orthogonal to the plane.

You can easily check that any vector $v$ is represented in the basis {$a,b,n$} as

$v=a(a^Tv)+b(b^Tv)+n(n^Tv)=(aa^T+bb^T+nn^T)v$

($a^Tv, b^Tv, n^Tv$ are here scalars)

hence $aa^T+bb^T+nn^T=I$.

During the reflection components in the plane are unchanged, component orthogonal to the plane is negated.

Hence we have $w= (aa^T+bb^T-nn^T)v=(I-2nn^T)v$.