본문 바로 가기

수학

좌표 공간에서 직선에의 대칭 변환 행렬

  대칭 이동이란 좌표 평면 또는 좌표 공간에서 도형을 점이나 직선에 대칭인 도형으로 옮기는 이동을 말합니다. 대칭 변환은 점을 점이나 직선에 대칭 이동한 점으로 옮기는 변환을 말하며, 일반적으로 원점에의 대칭 변환과 원점을 지나는 직선에의 대칭 변환은 선형 변환임이 알려져 있습니다. 정사각 행렬 \(A\)에 대하여 대칭 변환 \(f(\overrightarrow{x})=A\overrightarrow{x}\)과 같이 나타날 때 \(A\)를 \(f\)의 행렬, 또는 대칭 변환 행렬이라고 부릅니다.

 

 먼저 평면에서의 대칭 변환 행렬을 다루겠습니다.

 \(x=0\)에의 대칭 변환 행렬은 \(\left[\begin{matrix}-1&0\\0&1\end{matrix}\right]\)임이 알려져 있습니다. 더불어, \(y=0\)에의 대칭 변환 행렬은 \(\left[\begin{matrix}1&0\\0&-1\end{matrix}\right]\), \(y=x\)에의 대칭 변환 행렬은 \(\left[\begin{matrix}0&1\\1&0\end{matrix}\right]\)임이 알려져 있습니다. 더 나아가 원점을 지나는 임의의 직선 \(y=mx\)에의 대칭 변환 행렬을 일반적으로 구할 수 있습니다.

 

 직선 \(y=mx\)에의 대칭 변환은 선형 변환입니다. \(y=mx\)를 \(x'\)축으로 하는 새 축을 잡으면 어떤 점 \(\mathrm{P}(a,b)\)는 점 \(\mathrm{P}(a,-b)\)로 옮겨지므로 새 축에 대한 \(x'\)축 대칭 변환이 되고, 이 변환은 선형 변환임을 쉽게 알 수 있습니다. 

 

 

 어떤 변환 \(f(\overrightarrow{x})\)가 선형 변환이라는 사실은 임의의 벡터 \(\overrightarrow{x_1}\), \(\overrightarrow{x_2}\)와 임의의 실수 \(k\)에 대하여 \(f(\overrightarrow{x_1}+\overrightarrow{x_2})=f(\overrightarrow{x_1})+f(\overrightarrow{x_2})\)이고 \(f(k\overrightarrow{x_1})=kf(\overrightarrow{x_1})\)임을 뜻합니다. \(x'\)축에 대한 대칭 변환은 \(x''=x', y''=-y'\)와 같이 나타나므로 선형 변환입니다. 마찬가지로, 선형 변환 \(f\)는 정사각 행렬 \(A\)에 대하여 \(f(\overrightarrow{x})=A\overrightarrow{x}\)와 같이 나타낼 수 있습니다. 여기서 행렬 \(A\)는 \(f\)의 행렬이라고 표현합니다.

 

 이제 \(y=mx\)에의 대칭 변환 행렬을 구하겠습니다. 먼저 점 \(\mathrm{P}(x,y)\)와 점 \(\mathrm{P'}(x',y')\)가 \(y=mx\)을 기준으로 서로 대칭임을 이용합니다. 먼저 \(\overline{\mathrm{PP'}}\)의 중점 \(M(\frac{x+x'}{2},\frac{y+y'}{2})\)이 \(y=mx\) 위에 있으므로, $$\begin{equation}\tag{1}y+y'=m(x+x')\end{equation}$$

 또한, \(y=mx\)와 \(\overleftrightarrow{\mathrm{PP'}}\)가 서로 수직하므로, $$\begin{equation}\tag{2}(y-y')m=x'-x\end{equation}$$

 \(m\times (1)+(2)\)을 정리하여, $$2my=(m^2-1)x+(m^2+1)x'$$

 \((1)-m\times (2)\)를 정리하여, $$-(m^2-1)y+(m^2+1)y'=2mx$$

 따라서 \(\begin{cases}x'=-\frac{m^2-1}{m^2+1}x+\frac{2m}{m^2+1}y\\y'=\frac{m^2-1}{m^2+1}y+\frac{2m}{m^2+1}x\end{cases}\), 구하는 행렬 \(A\)는 \(\left[\begin{matrix}-\frac{m^2-1}{m^2+1}&\frac{2m}{m^2+1}\\\frac{2m}{m^2+1}&\frac{m^2-1}{m^2+1}\end{matrix}\right]\).

 

 삼각 함수를 이용한 방법도 있습니다. 다음 그림과 같이 \(y=mx\)와 \(x\)축 양의 방향이 이루는 각을 \(\theta\), \(\overline{\mathrm{OP}}\)와 \(x\)축 양의 방향이 이루는 각을 \(\alpha\)라고 합시다.

 

 여기에서 \(\overline{\mathrm{OP}}\)와 \(y=mx\)가 이루는 각은 \(\alpha-\theta\)입니다. 점 \(\mathrm{P'}\)는 점 \(\mathrm{P}\)의 \(y=mx\)를 기준으로 한 대칭점이므로, \(\overline{\mathrm{OP'}}\)와 \(y=mx\)가 이루는 각은 \(\theta-\alpha\)입니다. 따라서, \(\overline{\mathrm{OP'}}\)와 \(x\)축 양의 방향이 이루는 각은 \(2\theta-\alpha\)입니다.

 \(\overline{\mathrm{OP}}=\overline{\mathrm{OP'}}\)이므로 점 \(\mathrm{P'}\)는 점 \(\mathrm{P}\)를 \(x\)축에 대칭 변환한 뒤 \(2\theta\)만큼 회전 변환한 점입니다. 따라서 \(y=mx\)에의 대칭 변환은 \(x\)축에의 대칭 변환과 \(2\theta\)만큼의 회전 변환의 합성 변환입니다. \(x\)축에의 대칭 변환의 행렬은 \(\left[\begin{matrix}1&0\\0&-1\end{matrix}\right]\)이고 \(2\theta\)만큼의 회전 변환의 행렬은 \(\left[\begin{matrix}\cos2\theta&-\sin2\theta\\\sin2\theta&\cos2\theta\end{matrix}\right]\)이므로 $$\begin{align}A&=\left[\begin{matrix}\cos2\theta&-\sin2\theta\\\sin2\theta&\cos2\theta\end{matrix}\right]\left[\begin{matrix}1&0\\0&-1\end{matrix}\right]\\&=\left[\begin{matrix}\cos2\theta&\sin2\theta\\\sin2\theta&-\cos2\theta\end{matrix}\right]\end{align}$$

 \(\theta=\tan^{-1}m\)이므로 \(\sin\theta=\frac{m}{\sqrt{m^2+1}}\), \(\cos\theta=\frac{1}{\sqrt{m^2+1}}\), 곧 \(\sin2\theta=\frac{2m}{m^2+1}\), \(\cos2\theta=-\frac{m^2-1}{m^2+1}\). 구하는 행렬 \(A\)는 \(\left[\begin{matrix}-\frac{m^2-1}{m^2+1}&\frac{2m}{m^2+1}\\\frac{2m}{m^2+1}&\frac{m^2-1}{m^2+1}\end{matrix}\right]\).

 

 두 가지 방법으로 \(y=mx\)에의 대칭 변환 행렬 \(\frac{1}{m^2+1}\left[\begin{matrix}1-m^2&2m\\2m&m^2-1\end{matrix}\right]\)을 구했습니다. 이 행렬의 고윳값을 계산할 수 있습니다.

$$\begin{align}|A-\lambda I|&=\left|\begin{matrix}-\frac{m^2-1}{m^2+1}-\lambda&\frac{2m}{m^2+1}\\\frac{2m}{m^2+1}&\frac{m^2-1}{m^2+1}-\lambda\end{matrix}\right|\\&=\lambda^2-(\frac{m^2-1}{m^2+1})^2-(\frac{2m}{m^2+1})^2\\&=0\end{align}$$

 곧, \(\lambda=\sqrt{(\frac{m^2-1}{m^2+1})^2+(\frac{2m}{m^2+1})^2}=\pm1\). \(A\)의 고윳값은 1과 -1입니다. 여기서 \(A\)의 고유 벡터를 구하고 \(A\)의 대각화를 시도할 수 있습니다.

 고윳값이 1일 때 \(\left[\begin{matrix}-\frac{2m^2}{m^2+1}&\frac{2m}{m^2+1}\\\frac{2m}{m^2+1}&-\frac{2}{m^2+1}\end{matrix}\right]\overrightarrow{x}=O\), 곧 \(k\neq0\)일 때 고유 벡터 \(\overrightarrow{x}=k\left[\begin{matrix}1\\m\end{matrix}\right]\).

 고윳값이 -1일 때 \(\left[\begin{matrix}\frac{2}{m^2+1}&\frac{2m}{m^2+1}\\\frac{2m}{m^2+1}&\frac{2m^2}{m^2+1}\end{matrix}\right]\overrightarrow{x}=O\), 곧 \(k\neq0\)일 때 고유 벡터 \(\overrightarrow{x}=k\left[\begin{matrix}-m\\1\end{matrix}\right]\).

 두 경우 모두에서 \(k=\frac{1}{\sqrt{m^2+1}}\)를 선택해 두 고유 벡터를 열벡터로 가지는 행렬 \(P\)를 잡으면 \(P=\left[\begin{matrix}\frac{1}{\sqrt{m^2+1}}&-\frac{m}{\sqrt{m^2+1}}\\\frac{m}{\sqrt{m^2+1}}&\frac{1}{\sqrt{m^2+1}}\end{matrix}\right]\)이므로 \(A\)를 대각화할 수 있습니다.

$$A=PDP^{-1}=\left[\begin{matrix}\frac{1}{\sqrt{m^2+1}}&-\frac{m}{\sqrt{m^2+1}}\\\frac{m}{\sqrt{m^2+1}}&\frac{1}{\sqrt{m^2+1}}\end{matrix}\right]\left[\begin{matrix}1&0\\0&-1\end{matrix}\right]\left[\begin{matrix}\frac{1}{\sqrt{m^2+1}}&-\frac{m}{\sqrt{m^2+1}}\\\frac{m}{\sqrt{m^2+1}}&\frac{1}{\sqrt{m^2+1}}\end{matrix}\right]^{-1}$$

 

 그런데 \(P^{-1}\)는 \(-\tan^{-1}m\)만큼의 회전 변환 행렬, \(D\)는 \(x\)축에의 대칭 변환 행렬, \(P\)는 \(\tan^{-1}m\)만큼의 회전 변환 행렬입니다. 따라서 \(f\)는 세 행렬이 나타내는 변환의 합성 변환이며, 이는 \(f\)가 글 처음의 그림에서 \(x'\)축에의 대칭 변환 행렬임을 뜻합니다. 한 점을 \(-\tan^{-1}m\)만큼 회전한 뒤 \(x\)축에 대칭하고, 다시 \(\tan^{-1}m\)만큼 회전하면 \(y=mx\)에 대칭한 점을 얻을 수 있습니다. 이것을 좌표 공간에도 적용할 수 있습니다.

 

 

 좌표 공간에서 직선 \(l:x=\frac{y}{m}=\frac{z}{n}\)에의 대칭 변환 행렬을 구합니다. 마찬가지로 이 대칭 변환은 선형 변환입니다. 직선 \(l\)을 \(x'\)축으로 하는 새 축을 잡으면 어떤 점 \(\mathrm{P}(a,b,c)\)는 점 \(\mathrm{P'}(a,-b,-c)\)로 옮겨지므로 새 축에 대한 \(x'\)축 대칭 변환이 되고, 이 변환 또한 선형 변환입니다. 이 선형 변환을 \(g\)라고 하면, \(g\)의 \(B\)는 (1) 직선 \(l\)을 \(xy\)평면 위의 직선 \(l'\)로 옮기는 회전 변환, (2) 직선 \(l'\)을 \(x\)축으로 옮기는 회전 변환, (3) \(x\)축에의 대칭 변환, (4) \(x\)축을 직선 \(l'\)로 옮기는 회전 변환, (5) 직선 \(l'\)을 직선 \(l\)로 옮기는 회전 변환의 합성 변환입니다.

 

 먼저 직선 \(l\)을 \(xz\)평면으로 정사영한 직선 \(p\)를 생각합니다. 직선 \(p\)는 직선 \(l\)에서 \(y\) 성분이 없으므로 \(m:\begin{cases}z=xn\\y=0\end{cases}\). 이떄 직선 \(l\)과 직선 \(p\)가 결정하는 유일한 평면 \(C\)는 \(xz\)평면과 수직합니다. 이 평면이 \(xy\)평면이 되는 회전 변환은 어렵지 않게 구할 수 있습니다. \(y\) 성분은 바꾸지 않은 채 \(x\) 성분과 \(z\) 성분만을 \(-tan^{-1}n\)만큼 회전 변환하면 직선 \(l\)을 \(xy\)평면 위의 직선 \(l'\)로 옮기는 회전 변환 행렬은 \(X_1=\left[\begin{matrix}\frac{1}{\sqrt{n^2+1}}&0&\frac{n}{\sqrt{n^2+1}}\\0&1&0\\-\frac{n}{\sqrt{n^2+1}}&0&\frac{1}{\sqrt{n^2+1}}\end{matrix}\right]\)이고 직선 \(l'\)을 직선 \(l\)로 옮기는 회전 변환 행렬은 \(X_5=\left[\begin{matrix}\frac{1}{\sqrt{n^2+1}}&0&-\frac{n}{\sqrt{n^2+1}}\\0&1&0\\\frac{n}{\sqrt{n^2+1}}&0&\frac{1}{\sqrt{n^2+1}}\end{matrix}\right]\)입니다. 이 변환에 의해 평면 \(C\)는 \(xy\)평면이 되며 직선 \(l\)은 \(xy\)평면상의 직선 \(l'\)이 됩니다. 직선 \(l\)의 방향 벡터 \((1,m,n)\)은 벡터 \((\sqrt{n^2+1},m,0)\)으로 옮겨지므로 직선 \(l': \begin{cases}y=\frac{m}{\sqrt{n^2+1}}x\\z=0\end{cases}\).

 

 위의 변환으로 얻은 직선 \(l'\)의 기울기가 \(\frac{m}{\sqrt{n^2+1}}\)이므로 위에서 말한 좌표 평면에서의 대칭 변환 행렬에 그대로 대입할 수 있습니다. 그러면 직선 \(l'\)을 \(x\)축으로 옮기는 회전 변환의 행렬은 \(X_2=\left[\begin{matrix}\frac{\sqrt{n^2+1}}{\sqrt{m^2+n^2+1}}&\frac{m}{\sqrt{m^2+n^2+1}}&0\\-\frac{m}{\sqrt{m^2+n^2+1}}&\frac{\sqrt{n^2+1}}{\sqrt{m^2+n^2+1}}&0\\0&0&1\end{matrix}\right]\), \(x\)축에의 대칭 변환 행렬은 \(X_3=\left[\begin{matrix}1&0&0\\0&-1&0\\0&0&-1\end{matrix}\right]\)이며 \(x\)축을 직선 \(l'\)로 옮기는 회전 변환 행렬은 \(X_4=\left[\begin{matrix}\frac{\sqrt{n^2+1}}{\sqrt{m^2+n^2+1}}&-\frac{m}{\sqrt{m^2+n^2+1}}&0\\\frac{m}{\sqrt{m^2+n^2+1}}&\frac{\sqrt{n^2+1}}{\sqrt{m^2+n^2+1}}&0\\0&0&1\end{matrix}\right]\)입니다.

 

 따라서, 앞서 말한 것처럼 구하는 변환 \(g\)는 다섯 변환의 합성 변환이므로 \(B=X_5X_4X_3X_2X_1\).

$$\begin{align}B&=X_5X_4X_3X_2X_1\\&=\left[\begin{matrix}\frac{1}{\sqrt{n^2+1}}&0&-\frac{n}{\sqrt{n^2+1}}\\0&1&0\\\frac{n}{\sqrt{n^2+1}}&0&\frac{1}{\sqrt{n^2+1}}\end{matrix}\right]\left[\begin{matrix}\frac{\sqrt{n^2+1}}{\sqrt{m^2+n^2+1}}&-\frac{m}{\sqrt{m^2+n^2+1}}&0\\\frac{m}{\sqrt{m^2+n^2+1}}&\frac{\sqrt{n^2+1}}{\sqrt{m^2+n^2+1}}&0\\0&0&1\end{matrix}\right]\left[\begin{matrix}1&0&0\\0&-1&0\\0&0&-1\end{matrix}\right]\\&\quad\,\,\left[\begin{matrix}\frac{\sqrt{n^2+1}}{\sqrt{m^2+n^2+1}}&\frac{m}{\sqrt{m^2+n^2+1}}&0\\-\frac{m}{\sqrt{m^2+n^2+1}}&\frac{\sqrt{n^2+1}}{\sqrt{m^2+n^2+1}}&0\\0&0&1\end{matrix}\right]\left[\begin{matrix}\frac{1}{\sqrt{n^2+1}}&0&\frac{n}{\sqrt{n^2+1}}\\0&1&0\\-\frac{n}{\sqrt{n^2+1}}&0&\frac{1}{\sqrt{n^2+1}}\end{matrix}\right]\\&=\left[\begin{matrix}-\frac{m^2+n^2-1}{m^2+n^2+1}&\frac{2m}{m^2+n^2+1}&\frac{2n(n^2+1)}{m^2+n^2+1}\\\frac{2m}{m^2+n^2+1}&\frac{m^2-n^2-1}{m^2+n^2+1}&\frac{2mn}{m^2+n^2+1}\\\frac{2n(n^2+1)}{m^2+n^2+1}&\frac{2mn}{m^2+n^2+1}&-\frac{m^2-n^2+1}{m^2+n^2+1}\end{matrix}\right]\\&=\frac{1}{m^2+n^2+1}\left[\begin{matrix}-m^2-n^2+1&2m&2n(n^2+1)\\2m&m^2-n^2-1&2mn\\2n(n^2+1)&2mn&-m^2+n^2-1\end{matrix}\right]\end{align}$$

 

 좌표 공간에서 직선 \(l\)에의 대칭 변환 행렬을 구했습니다. 더 나아가 \(X_3=\left[\begin{matrix}1&0&0\\0&\cos\theta&-\sin\theta\\0&\sin\theta&\cos\theta\end{matrix}\right]\)로 잡으면 좌표 공간에서 직선 \(l\)에의 회전 변환 행렬 역시 구할 수 있습니다.