2021년 11월 20일 토요일

평면의 방정식(Equation of Plane)

[경고] 아래 글을 읽지 않고 "평면의 방정식"을 보면 바보로 느껴질 수 있습니다.


평평한 면을 나타내는 평면(平面, plane)은 기본 개념이 아주 쉽지만 수학 공식으로 평면을 표현하려면 어려움이 크다. 3차원 공간의 평면을 공식화하는 방법은 많이 있지만, 고급 개념인 벡터(vector)를 쓰면 평면의 방정식이 바로 얻어진다.

[그림 1] 3차원 공간 상의 평면 모습(출처: wikipedia.org)

벡터 개념으로 평면의 방정식을 유도하기 위해 [그림 1]과 같은 그림을 상상한다. 평면 상에 존재하는 임의의 점을 $\bar r$ = $(x, y, z)$, 우리가 위치를 알고 있는 평면 상의 고정된 점은 $\bar r_0$ = $(x_0, y_0, z_0)$이라 쓴다. 그러면 $\bar r$과 $\bar r_0$이 만드는 벡터는 평면에 항상 수직인 법선 벡터(normal vector) $\bar n$과의 벡터 내적(inner product)이 항상 0이다.

                  (1)

여기서 $\bar n$ = $(a, b, c)$이다. 결과적으로 식 (1)은 법선 벡터 $\bar n$을 가진 평면을 위한 대수 방정식이 된다.
식 (1)에 제시한 평면의 방정식을 이용해 3차원 곡면의 접평면(接平面, tangent plane)도 정의할 수 있다[1]. 구배(gradient) 연산자를 쓰면, 임의의 곡면 $f(x, y, z)$ = $0$에 대한 접평면의 방정식을 쉽게 유도할 수 있다.

[그림 2] 구에 접하는 평면 혹은 접평면(출처: wikipedia.org)

[접평면의 방정식]
곡면 $f(x, y, z)$ = $0$ 위의 점 $\bar r_0$ = $(x_0, y_0, z_0)$에 접하는 평면의 방정식은 다음과 같다.

                  (2)

[증명]
구배는 스칼라 함수가 최대로 변하는 방향이므로, $\bar \nabla f$는 자동적으로 곡면의 법선 벡터와 평행하게 된다. 따라서 $\bar n$ = $\bar \nabla f$를 식 (1)에 대입해서 정리하면 식 (2)가 바로 얻어진다.
______________________________

만약 곡면을 $z$ = $f(x, y)$로 표현하면, $F(x, y, z)$ = $f(x, y) - z$ = $0$으로 생각해서 식 (2)에 대입한다. 그러면 $z$ = $f(x, y)$의 접평면의 방정식도 얻을 수 있다.

             (3)

여기서 $z_0$ = $f(x_0, y_0)$이다.

[그림 3] 점과 평면 사이의 거리

점과 직선 사이의 거리처럼 점과 평면 사이의 거리를 유도할 때도 벡터 개념이 매우 유리하다.

[점과 평면 사이의 거리(distance from a point to a plane)]
점 $\bar r_0$ = $(x_0, y_0, z_0)$과 평면 $ax+by+cz+d$ = $0$ 사이의 거리 $D$는 다음과 같다.

                              (4)

여기서 점과 평면 사이의 거리는 최단 거리 혹은 수직인 거리로 정한다.

[증명]
[그림 3]에 있는 평면의 방정식 일반형 $ax+by+cz+d$ = $0$을 바꾸어서 식 (1)과 같은 평면의 방정식 표준형 $a(x-x_1)+b(y-y_1)+c(z-z_1)$ = $0$을 만든다. 여기서 법선 벡터는 $\bar n$ = $(a, b, c)$, $\bar r_1$ = $(x_1, y_1, z_1)$은 평면 위의 점이다. 점과 직선 사이의 거리처럼 벡터 $\bar n$과 $\bar u$ = $\bar r_0 - \bar r_1$ = $(x_0, y_0, z_0) - (x_1, y_1, z_1)$ 사이의 내적을 계산해서 식 (4)를 증명한다.

                              (5)
______________________________

[그림 4] 헤세 표준형을 위한 기하 구조(출처: wikipedia.org)

원점에서 시작하는 법선 벡터 $\bar n$을 가진 [그림 4]는 식 (1)을 바라보는 새 관점을 알려준다. 원점과 평면 사이의 거리를 $D$로 두면, $\bar n$ = $D \hat n$으로 표현 가능하다. 또한 $\bar r_0$는 평면 위의 점이므로 $\bar n$ = $\bar r_0$이 되게 한다. 그러면 식 (1)에 기술한 평면의 방정식은 점과 평면 사이의 거리를 결정하는 공식으로 바뀌게 된다.

                              (6)

여기서 $\bar r_0$ = $(a, b, c)$, $\hat n$ = $(a, b, c) \mathbin{/} \sqrt{a^2 + b^2 + c^2}$, $\bar r$ = $(x, y, z)$이다. 거리 정보를 담고 있는 식 (6)은 제안자 헤세Ludwig Otto Hesse(1811–1874)의 이름을 따서 헤세 표준형(Hesse normal form)이라 부른다. 헤세는 다차원 구배(gradient)를 계산하는 헤세 행렬(Hessian matrix)로도 유명하다. 식 (6)을 식 (4)와 같은 방식으로 바꿀 때는 원래 점 $(x_0, y_0, z_0)$를 평행 이동하여 원점으로 보낸다. 이때 평면의 방정식은 $a(x+x_0) + b(y+y_0) + c(z+z_0) + d$ = $0$으로 변형된다. 그러면 식 (6)을 따라 $\hat n \cdot \bar r$ = $(ax+by+cz) / \sqrt{a^2 + b^2 + c^2}$ = $- (ax_0+b y_0 + cz_0 + d) / \sqrt{a^2 + b^2 + c^2}$ = $D$가 손쉽게 얻어진다.
우리가 고려하는 평면은 3차원 공간에 있지만, 식 (1)과 (2)를 보면 3차원보다 큰 다차원 공간의 평면도 가능할 것 같다. 예를 들어, 식 (1)에 따라 $n$차원 공간에 존재하는 평면의 방정식은 다음처럼 쓸 수 있다.

                              (7)

여기서 $\bar n$ = $(a_1, a_2, \cdots, a_n)$, $\bar r$ = $(x_1, x_2, \cdots, x_n)$, $\bar r_0$ = $(b_1, b_2, \cdots, b_n)$이다. 평면을 일반화시킨 기하학적 대상체는 초평면(超平面, hyperplane)이라 부른다. 일반적으로 초평면은 현재 물체가 놓인 $n$차원보다 하나만큼 차원이 작은 $n-1$차원 공간을 뜻한다. 식 (7)에 의하면, 어떤 좌표 성분 하나는 다른 모든 좌표 성분으로 표현되어서 선형 종속(linear independence)이 된다. 따라서 식 (7)은 $n$차원보다 하나 작은 $n-1$차원을 나타내므로 초평면이 된다. 초평면 개념을 식 (4)에 적용할 수 있다. 벡터와 내적을 $n$차원으로 확장해서 $n$차원 공간의 점 $\bar y$ = $(y_1, y_2, \cdots, y_n)$과 초평면 사이의 거리를 다음과 같이 정의할 수 있다.

                              (8)

여기서 $\bar r_0$ = $(x_1, x_2, \cdots, x_n)$은 평면 위에 있다. 식 (8)을 섬세하게 음미하면, 현실에서 만나거나 상상할 수 없는 $n$차원 공간을 기하학적으로 자유롭게 다룰 수 있게 하는 수학적 추상화의 힘을 느낄 수 있다.

[그림 5] 평면에 대한 영상 $\bar r_0'$ = $(x_0', y_0', z_0')$

[평면에 대한 영상(image for a plane)]
점 $\bar r_0$ = $(x_0, y_0, z_0)$이 평면 $ax+by+cz+d$ = $0$에 대해 만드는 영상(image) $\bar r_0'$ = $(x_0', y_0', z_0')$의 공식은 다음과 같다.

                              (9)

여기서 영상 $\bar r_0'$은 평면 기준으로 $\bar r_0$과 같은 거리만큼 떨어지면서도 $\bar r_0$과 반대편에 있는 점, $\bar n$ = $(a, b, c)$, $\hat n$ = $\bar n \mathbin{/} |\bar n|$, $\bar r_1$ = $(x_1, y_1, z_1)$은 평면 위의 임의 점이다.

[증명: 벡터 연산]
[그림 5]에 따라 평면에서 점 $\bar r_0$에 가는 벡터는 $\bar r_0 - \bar r_1$이다. 이 벡터가 가진 성분 중에서 $\hat n$ 방향은 $\hat n \cdot (\bar r_0 - \bar r_1)$이다. 이 값을 $\bar r_0$에서 2배만큼 빼주면, 평면 기준으로 $\bar r_0$에서 반대 방향에 있으면서도 떨어진 거리는 같은 영상이 얻어진다.

[증명: 직선의 방정식]
점 $\bar r_0$과 영상 $\bar r_0'$의 중점은 평면상에 있어서 다음과 같은 방정식을 만족한다.

                  (10)

또한 $\bar r_0' - \bar r_0$은 평면에 수직하며 $\hat n$과 같은 방향이므로, 다음과 같은 직선의 방정식이 성립한다.

                  (11)

식 (10)과 (11)을 연립해서 비례 상수 $k$를 결정한다.

                  (12)

식 (12)를 식 (11)에 넣어서 확정한 영상은 $\bar r_0'$ = $\bar r_0 + k \bar n$으로 나온다. 여기서 $d$ = $-\bar n \cdot \bar r_1$이다.
______________________________

평면에 대한 영상은 빛의 반사를 직선으로 추적할 때에 유용하게 사용된다. 평면을 표현하는 단위 법선 벡터 $\hat n$은 식 (9)에서 제곱 특성을 가져서 $-\hat n$을 써도 문제없다.

[그림 6] 두 볼록 집합을 초평면으로 자른 모습(출처: wikipedia.org)

초평면 개념이 신비롭게 적용되는 예는 초평면 분리 정리(hyperplane separation theorem)이다[2]. [그림 6]에 소개한 모양을 가진 두 집합을 초평면으로 항상 분리할 수 있다는 놀라운 성질이 초평면 분리 정리에 있다. 이 정리를 증명하려면 $n$차원 좌표 $\mathbb{R}^n$에서 점들을 모아서 만드는 여러 집합을 상세히 분간해야 한다.

[그림 7] 개집합 혹은 열린 집합

[그림 7]은 전형적인 개집합 혹은 열린 집합(open set)의 모습을 보여준다. 점선(dotted line)으로 표시한 경계(boundary)는 개집합 $A$에 포함되지 않고, 파란색으로 표시한 내부의 점들은 $A$에 속한다. 눈으로 보면 개집합 개념이 명확하지만, 수학적으로 정의하려면 난감하다. 경계는 제외하고 내부는 들어있는 개집합은 어떻게 나타내야 하나? 이런 어려움은 [그림 7]에서 노란색으로 보인 근방(neighbor)을 정의해서 해결한다. $n$차원 좌표 $\mathbb{R}^n$의 부분 집합(subset) $A$에서 뽑은 임의의 원소를 $\bar x$ = $(x_1, x_2, \cdots, x_n)$으로 둔다. 임의점 $\bar x$를 중심으로 하는 초구(hypersphere)를 $\bar x$의 근방으로 정의한 후, 초구의 반지름 $r$을 $r < \epsilon$만큼 줄일 때에 이 영역이 집합 $A$에 속하면 $A$를 개집합이라 한다. 여기서 $\epsilon$은 적당히 작은 양수이다. 즉, 개집합의 정의에 점의 근방을 뜻하는 작은 초구를 잣대로 사용한다. 이 초구를 줄여서 원래 집합에 속하게 만들 수 있어야 개집합이 된다. 개집합을 도입하면 집합 내부에 자유롭게 근방을 만들 수 있다. 개집합의 경계만 모은 집합은 경계 집합(boundary set)이 된다. 경계 집합에 만든 초구는 아무리 반지름을 줄여도 부분적으로만 이 집합에 속한다. 개집합에 반대되는 폐집합 혹은 닫힌 집합(closed set)은 개집합의 여집합(complement)으로 정의한다. 예를 들어, [그림 7]에 나온 개집합 $A$의 여집합은 $A^C$이므로, $A^C$는 폐집합이다. 다른 관점으로 개집합과 그 경계 집합의 합집합(unio)은 폐집합을 구성한다. 왜냐하면 이 집합의 여집합은 새로운 개집합이기 때문이다. 개집합이나 폐집합의 원소 크기가 유한한 경우는 유계 집합(bounded set)으로 표현한다. 폐집합과 유계 집합이 동시에 성립하는 집합은 옹골찬 혹은 콤팩트 집합(compact set)으로 명한다. 옹골찬 집합이란 이름에도 풍기듯이, 이 집합은 자기 영역이 구멍없이 꽉 차있고 경계점이나 끝점까지 모두 이 집합에 속한다. 끝점도 옹골찬 집합에 속하는 성질로 인해, 무한대로 발산하는 집합은 끝이 계속 커져서 옹골찬 집합이 될 수 없다.
제한 조건이 많지만 수학적으로 편리한 옹골찬 집합으로 만든 서로소(disjoint)인 집합을 만든다. 이 집합의 원소를 각각 뽑아서 잰 거리는 최대값과 최소값의 존재한다는 유용한 성질을 증명한다.

[서로소인 두 옹골찬 집합의 원소간 거리]
서로소인 두 옹골찬 집합의 원소간 거리는 최대값과 최소값이 있으며, 이 값을 만드는 원소는 두 집합의 경계 집합에 각각 존재한다.

[증명]
옹골찬 집합 $A, B$에서 뽑은 원소를 각각 $\bar x$ = $(x_1, x_2, \cdots, x_n)$, $\bar y$ = $(y_1, y_2, \cdots, y_n)$으로 정한다. 이 두 원소간 거리는 $R$ = $|\bar y - \bar x|$ = $\sqrt{(y_1 - x_1)^2 + \cdots + (y_n - x_n)^2}$이다. 옹골찬 집합에 있는 원소는 좌표별로 최대값과 최소값이 있고, $|y_i - x_i|$도 최대값과 최소값을 가진다. 먼저 각 좌표 $|y_i - x_i|$가 만드는 최대값을 $M_i$라 둔다. 그러면 다음 차이가 항상 0보다 크거나 같다. 따라서 모든 원소에 대해 계산한 거리는 최대값이 있다.

                  (13)

여기서 $M_i \ge |y_i - x_i|$이다. 식 (13)에서 등호가 성립하는 경우는 각 좌표의 끝점이다. 이는 최대값이 각 좌표의 종단에 있고, 구간의 끝에 있는 좌표들을 모두 모아 만든 $\bar x, \bar y$는 두 집합의 경계 집합에 있다는 뜻이다. 마찬가지로 최소값과 그 원소에 대해 같은 방식을 적용해도 이 결과가 성립한다.
______________________________

[그림 8] 서로소인 볼록 집합에 접하는 초평면 $L_A, L_B$(출처: wikipedia.org)

옹골찬 집합만큼 강력한 조건인 볼록 집합(convex set)에 대해 [그림 6]에 소개한 초평면 분리 정리가 성립한다. 볼록 집합은 내부의 두 점을 연결한 선분이 항상 이 집합에 속하는 특성이 있다. 그래서 볼록 집합은 구멍이 있는 [그림 7]과 다르게 [그림 8]처럼 파란색 볼록 다각형(convex polygon)의 내부가 점들로 조밀하게 채워진다.

[초평면 분리 정리]
서로소인 두 옹골찬 볼록 집합(compact convex set) $A, B$는 초평면의 단위 법선 벡터 $\hat n$인 분리축 방향으로 서로 분리된다. 이때 $A, B$에서 각각 선택한 원소 $\bar x, \bar y$에 대해 $\bar x \cdot \hat n < c$, $\bar y \cdot \hat n > c$ 혹은 $(\bar y - \bar x)\cdot \hat n > 0$을 만족한다. 여기서 $c$는 적당한 실수이다.

[증명]
서로소인 두 옹골찬 집합의 원소들이 만드는 최소 거리와 경계점이 반드시 존재하므로, [그림 8]처럼 최소 거리를 만드는 볼록 집합 $A, B$의 원소를 각각 $\bar a_0, \bar b_0$이라 정의한다. 그러면 $\bar b_0 - \bar a_0$ 방향으로 $\hat n$이 있다고 생각해서 초평면 $L_A, L_B$를 그린다. 볼록성(convexity)을 가진 $A, B$는 경계점 $\bar a_0, \bar b_0$에 초평면을 항상 만들 수 있다. 여기서 $L_A, L_B$ 사이의 거리는 식 (8)처럼 양수인 $D$로 정한다. 그러면 식 (6)의 일반화인 초평면의 방정식에 의해 $(\bar a - \bar a_0)\cdot \hat n$ = $0$, $(\bar b - \bar b_0)\cdot \hat n$ = $0$, $\bar b_0 - \bar a_0$ = $D \hat n$이 성립한다. 여기서 $\bar a, \bar b$는 $L_A, L_B$ 위의 점이다. 따라서 모든 $\bar x, \bar y$는 $\bar a, \bar b$에서 $\hat n$방향으로 평행 이동한 $\bar x$ = $\bar a - k_A \hat n$, $\bar y$ = $\bar b + k_B \hat n$과 같다. 여기서 $k_A \ge 0$, $k_B \ge 0$이다. 최종적으로 이 결과를 빼서 다음 부등식을 얻는다.

                  (14)
______________________________

초평면 분리 정리는 어려워 보이지만, [그림 6, 8]처럼 기하학적으로 보면 매우 쉽다. 만나지 않는 볼록한 도형들은 가운데에 공간이 항상 있어서 접평면을 넣을 수 있고, 두 도형의 모든 점은 두 접평면의 거리 이상 떨어져있다.

[그림 9] SVM을 적용해서 자료 분류(출처: wikipedia.org)

초평면 분리 정리가 적극적으로 채용되는 알고리즘인 지원 벡터 기계 혹은 서포트 벡터 머신(support vector machine, SVM)이 기계 학습(machine learning) 분야에 많이 사용된다. 지원 벡터는 [그림 9]와 같이 노란색 영역을 이동하는 초평면과 만나는 접점이다. [그림 9]에서 파란점 2개와 초록점 1개가 바로 분류를 도와주는 지원 벡터가 된다. SVM의 시작은 도형의 빈 공간에 만드는 초평면이다. 빨간선으로 표시한 초평면 $\bar w \cdot \bar x - b$ = $0$은 어느 자료점(data points)과도 만나지 않아서 좋은 출발점이 된다. 평면 방정식의 우변값 $r$을 키우거나 줄이면서 초평면을 이동시킨다. 이 초평면은 법선 벡터 $\bar w$에 고정되므로, $\bar w$를 따라 이 방향으로만 움직인다. 예를 들어서 [그림 9]처럼 $r$ = $1$과 $-1$에서 파란색초록색 자료점 혹은 지원 벡터를 만난다고 가정한다. 그러면 식 (8)에 따라 검정색 파선(破線, dashed line)으로 그린 초평면과 빨간색 초평면 위의 점 $\bar x$간의 거리 $D(r)$이 정해진다.

                  (15)

여기서 $r$ = $\pm 1$이며 두 파선간 거리는 $2 \mathbin{/} |\bar w|$이다. 또한 식 (8)을 이용해 빨간색 초평면과 원점 사이 거리는 $D$ = $|b| \mathbin{/} |\bar w|$로 계산한다. 따라서 $\bar w$와 $b$를 조정해 두 파선간 거리를 넓힐수록, 자료가 많이 떨어져서 분류가 잘 된다. SVM에서는 [그림 9]에 나온 노란색 영역을 여유(margin)로 정의한다. 여유를 기준으로 $r \ge 1$과 $r \le -1$인 자료점의 표지(label)를 $1$과 $-1$로 각각 붙인다. 각 분류를 나타내는 부호(sign) 상수 $y_i$도 정의한다.

                  (16)

여기서 $i$ = $1, 2, \cdots, M$; $M$은 자료점의 개수이다. 이 개념을 전체적으로 합쳐서 SVM을 최적화(optimization) 관점으로 공식화한다.

                              (17)

여기서 $\bar x_i$는 두 덩이의 볼록 집합을 이루며, 훈련(training)에 쓰이는 $\bar x_i$는 이미 분류되어서 표지 혹은 $y_i$가 $1$ 혹은 $-1$로 정해져 있다. 자료 분류하기가 벡터 크기 $|\bar w|$의 최소화인 이유는 식 (15)에 따라 분모가 작아질수록 여유가 커지기 때문이다. 분류 훈련이 끝나면 주어진 $\bar w, b$에 새로운 $\bar x_i$를 대입해서 나오는 부호로 표지를 붙인다. 이런 SVM 알고리즘은 여유를 원칙대로 계산하는 절차에서 유추해 경성 여유(hard-margin) SVM 혹은 경성 여유 분류자(hard-margin classifier)로 부른다. 초평면 분리 정리에 의해, 어떤 차원의 $\bar x$를 정의하든지 볼록 집합에 속하는 자료점의 경성 여유 SVM은 항상 답이 나온다.

[참고문헌]
[1] M. Corral, Tangent Plane to a Surface, Vector Calculus, Schoolcraft College, Jan. 2021.
[2] A. A. Ahmadi, "Separating hyperplane theorems, the Farkas lemma, and strong duality of linear programming," Convex and Conic Optimization, Princeton University, USA, 2024. (방문일 2024-05-05)

[다음 읽을거리]

2021년 11월 19일 금요일

구의 방정식(Equation of Sphere)

[경고] 아래 글을 읽지 않고 "구의 방정식"을 보면 바보로 느껴질 수 있습니다.


[그림 1] 3차원 공간에 그린 구(출처: wikipedia.org)

2차원에서 가장 완벽한 도형이 (圓, circle)이라면, 원에 대응하는 3차원 도형은 (球, sphere)이다. 구는 중심에서 반지름이 일정한 점의 3차원 자취이다. 구의 정의에 따라 구의 방정식은 다음과 같이 기술한다.

                  (1)

여기서 구의 중심은 $(a, b, c)$, 반지름은 $r$이다. 원의 매개변수 표현식을 참고해서 구의 매개변수 표현식도 쉽게 유도할 수 있다. 먼저 3차원이 아닌 2차원으로 한정해서 $(x-a)^2 + (y-b)^2$ = $\rho^2$이라 둔다. 그러면 반지름 $r$에 대해 다음 관계가 성립해야 한다.

                  (2)

여기서 $\sin^2 \theta + \cos^2 \theta$ = $1$, $\rho$는 $x, y$에 대한 2차원 반지름이다. 2차원 반지름 $\rho$는 음수가 아니므로, 새로운 각도 $\theta$의 변화 범위는 $0 \le \theta \le \pi$가 되어야 한다. 식 (2)에 따라 점 $(x, y, z)$를 매개변수 $(r, \theta ,\phi)$로 표현할 수 있다.

                  (3)

새로운 매개변수 $(r, \theta ,\phi)$는 구 좌표계(spherical coordinate system)의 좌표 성분에 쓰인다. 2차원 각도 $\phi$는 평면에서의 방향[예를 들어, 동쪽 혹은 서쪽]을 가리키는 방위각(方位角, azimuth)이며, 3차원 각도 $\theta$는 극고도각(極高度角, polar angle)이라 부른다. 흔히 쓰는 고도각(高度角, elevation angle)은 적도[= $0^\circ$]에서 시작해 북극[= $90^\circ$]으로 올라가지만, 극고도각은 북극[$\theta$ = $0$]에서 출발해 적도[$\theta$ = $\pi/2$]를 거쳐 남극[$\theta$ = $\pi$]으로 간다. 그래서 고도각과 극고도각은 꼭 구별해서 써야 한다. 또한 극고도각 $\theta$의 변화 방향은 방위각 $\phi$의 변화에 직교하도록 정한다. 서로 직교하는 좌표 성분으로 구성한 편리한 좌표계를 직교 좌표계(直交座標系, orthogonal coordinate system)라고 부른다. 그래서 $(r, \theta ,\phi)$로 만든 직교 좌표계는 구의 속성을 표현하고 있어서 당연히 구 좌표계가 된다.
반지름 $r$을 고정하고 각도 $\theta, \phi$를 바꾸면서 구의 표면적 $S$를 계산한다. 각도 $\theta, \phi$에 대응하는 호의 길이(arc length)를 각각 $r d \theta, \rho d\phi$라 둔다. 그 다음에 서로 직교하는 두 호의 길이를 적분해서 구의 표면적 $S$를 유도한다.

                  (4)

구의 표면적 $S$를 반지름 $r$에 대해 양파 껍질 적분법(onion skin integration)을 적용하면, 그 적분값은 구의 부피 $V$가 된다.

                  (5)

식 (4)와 (5)에 따라 표면적과 부피는 서로 미적분 관계에 있다.

                  (6)

원과 호의 길이로 정의한 라디안(radian)의 개념을 확장해서 3차원 공간에 쓸 수 있는 입체각(立體角, solid angle) $\Omega$를 정의한다. 먼저 식 (4)에 따라 미소 표면적 $dS$를 반지름 제곱으로 나눈 값인 미소 입체각 $d\Omega$를 도입한다.

                  (7)

내적(inner product)을 이용해 임의의 미소 면적 $d \bar a$를 구의 표면으로 정사영하면, 입체각으로 임의의 3차원 각도를 측정할 수 있다. 즉, 구의 표면을 뚫고 나오는 단위 벡터(unit vector) $\hat r$과 미소 면적 $d \bar a$를 내적해서 임의의 3차원 각도를 재는 입체각 $\Omega$를 새롭게 정의한다.

                  (8)

입체각을 헤아리는 단위는 스테라디안(steradian, sr)이라 부른다. 스테라디안은 입체를 뜻하는 스테레오스(στερεός)와 빛줄기를 말하는 라디우스(radius)의 합성어이다. 식 (7)에 의해 전체 3차원 공간에 대한 입체각은 $4 \pi$ sr이다.

구의 방정식을 이용해서 여러 가지 구의 성질을 다소 쉽게 증명할 수 있다.

[그림 2] 구에 접하는 평면 혹은 접평면(원본 출처: wikipedia.org)

[구의 접평면(tangent plane to a sphere)]
구의 접평면은 항상 구에 수직이다.

[증명]
구의 방정식을 변형해서 구 표면을 $f(x, y, z)$ = $x^2+y^2+z^2 - r^2$ = $0$으로 표현한다. 여기서 구의 중심은 $(x_0, y_0, z_0)$ = $(0, 0, 0)$이다. 접평면의 방정식을 적용해서 구 표면 위의 점 $(x_1, y_1, z_1)$에서 구의 접평면을 구한다.

                  (9)

접평면의 법선 벡터 $(x_1, y_1, z_1)$은 구의 중심에서 구 표면으로 가는 위치 벡터(position vector)이기도 하므로, 구의 접평면은 구에 항상 수직이다.
______________________________

구의 방정식과 접평면을 쓰면, 원을 이용해서 증명한 점과 직선 사이의 거리 관계를 3차원으로 확장할 수 있다.

[점과 평면 사이의 거리(distance from a point to a plane)]
점 $(x_0, y_0, z_0)$에서 직선 $ax+by+cz+d = 0$ 사이의 거리 $D$는 다음과 같다.

                              (10)

여기서 점과 평면 사이의 거리는 최단 거리 혹은 수직인 거리로 정한다.

[증명]
[그림 2]처럼 점 $(x_0, y_0, z_0)$를 중심으로 하는 구를 그려서 평면 $ax+by+cz+d$ = $0$에 접하게 한다. 그러면 식 (9)에 있는 구의 접평면 방정식은 다음과 같아진다.

                              (11)

평면의 방정식을 바꾸어서 $a(x-x_1) + b(y-y_1) + c(z-z_1)$ = $0$으로 쓰면, 평면의 법선 벡터 $\bar n$은 $(a, b, c)$가 된다. 다음 단계로 구의 중심에서 평면의 접점으로 가는 벡터 $\bar v$ = $(x_1, y_1, z_1) - (x_0, y_0, z_0)$는 $\bar n$에 평행해서 $\bar v$ = $-k \bar n$로 둔다. 여기서 $\bar n, \bar v$의 크기에 따라 스칼라 $k$의 크기는 $|k|$ = $r/\sqrt{a^2 + b^2 + c^2}$이다. 최종적으로 구의 반지름 $r$ 혹은 점과 평면 사이의 거리 $D$는 다음처럼 표현된다.

                              (12)
______________________________

식 (10)을 위한 증명은 초구(超球, hypersphere)에 접하는 초평면(超平面, hyperplane)까지 확장되어 다차원에 있는 점과 초평면 사이의 거리까지 유도할 수 있다.

[다음 읽을거리]

2021년 9월 26일 일요일

푸리에 사인 및 코사인 변환(Fourier Sine and Cosine Transforms)

[경고] 아래 글을 읽지 않고 "푸리에 사인 및 코사인 변환"을 보면 바보로 느껴질 수 있습니다.


[그림 1] 푸리에 코사인 변환의 이산화와 필터 스펙트럼(filter spectrum) 특성(출처: wikipedia.org)

기함수(奇函數, odd function)우함수(偶函數, even function)에 대해 푸리에 급수(Fourier series)가 푸리에 사인 및 코사인 급수(Fourier sine and cosine series)로 바뀌는 성질처럼, 푸리에 변환(Fourier transform)도 기함수와 우함수 조건에 따라 적분 변환(integral transform)이 약간 달라질 수 있다. 먼저 함수 $f(t)$가 기함수라 가정한다. 그러면 $f(-t)$ = $-f(t)$인 조건에 따라 푸리에 변환은 다음처럼 변형된다.

                       (1)

                       (2)

식 (2)에서 새롭게 정의한 $S(\omega)$를 푸리에 사인 변환(Fourier sine transform)이라 부른다. 푸리에 사인 변환은 $\omega$에 대해 기함수가 된다. 푸리에 역변환(inverse Fourier transform)에 따라 푸리에 사인 역변환(inverse Fourier sine transform)도 쉽게 정의된다.

                       (3)

식 (2)와 (3)의 결과를 모아서 푸리에 사인 변환쌍(Fourier sine transform pair)을 공식화한다.

                       (4)

푸리에 사인 변환된 함수를 역변환하면 다시 원래 함수로 돌아와야 하므로, 식 (4)로부터 다음과 같은 디랙 델타 함수(Dirac delta function) 관계도 얻을 수 있다.

                       (5)

비슷한 방식으로 푸리에 코사인 변환(Fourier cosine transform)도 정의한다. 이번에는 함수 $f(t)$를 우함수라 가정하면 $f(-t)$ = $f(t)$인 관계가 성립한다. 따라서 우함수의 푸리에 변환은 다음과 같아진다.

                       (6)

여기서 $C(\omega)$는 우함수 $f(t)$의 푸리에 변환의 일종인 푸리에 코사인 변환이 된다. 푸리에 코사인 변환은 우함수 성질을 가져서 식 (3)처럼 푸리에 코사인 역변환(inverse Fourier cosine transform)도 쉽게 구해진다.

                       (7)

식 (6)과 (7)을 합쳐서 푸리에 코사인 변환쌍(Fourier cosine transform pair)과 이에 관련된 디랙 델타 함수도 기술한다.

                       (8)

                       (9)

따라서 주어진 함수가 기함수 혹은 우함수인 경우는 푸리에 사인과 코사인 변환을 각각 적용해서 더욱 편리하게 주파수 특성을 분석할 수 있다.
푸리에 사인과 코사인 변환을 동시에 써서 $f(x)$를 바꾼 경우는 혼합 푸리에 변환(mixed Fourier transform, MFT)이라 명한다[1].

                       (10)

여기서 $\alpha$는 경계 조건을 표현하는 복소수인 혼합 계수(mixed coefficient), $x$가 무한대로 갈 때에 $f(x)$는 0으로 수렴한다. 혼합 푸리에 변환의 진정한 의미를 이해하고 싶으면, 식 (10)에 부분 적분을 적용해서 푸리에 사인 변환으로 형태를 바꾼다.

                       (11a)

                       (11b)

여기서 $\alpha$는 $m(0)$ = $0$을 만족시킨다. 경계 조건 $\alpha$ = $-f'(0)/f(0)$으로 인해, 물리학에서 $\alpha$는 임피던스 경계 조건(impedance boundary condition)에 사용하는 임피던스(impedance) 역할이다. MFT를 적용한 $F(p)$의 역변환은 다소 복잡하다. 먼저 식 (11b)에 푸리에 사인 역변환을 적용한다.

                       (12)

여기서 $f_p(x), f_g(x)$는 각각 선형 상미분 방정식(linear ordinary differential equation)에 나오는 특수해(particular solution)와 일반해(general solution)이다. 함수 $F(p)$는 푸리에 사인 및 코사인 변환의 결과임을 기억해서 $f_p(x)$를 푸리에 사인 및 코사인 역변환으로 표현한다.

                       (13)

식 (12)로부터 일반해 $f_g(x)$는 $B e^{-\alpha x}$임을 쉽게 알 수 있다. 만약 $\Re[\alpha] \le 0$이면, $x$가 커질 때에 상수거나 발산해서 $f(x)$의 경계 조건을 만족 못한다. 이로 인해 $B$ = $0$으로 정해진다. 반면에 $\Re[\alpha] > 0$ 조건은 $f_g(x)$를 살린다. 상수 $B$를 구하기 위해 아래와 같은 지수와 삼각 함수의 직교성을 식 (12)에 곱한다.

                       (14)

                       (15)

여기서 $a > 0$, $\Re[\alpha] > 0$이다. 식 (13), (15)를 식 (12)에 대입해서 혼합 푸리에 역변환을 완성한다.

                       (16)

다만 $\Re[\alpha] > 0$인 경우는 $F(p)$를 적분해서 $f(x)$를 결정할 수 없고, 그 역변환은 $f(x)$에 대한 적분 방정식(integral equation)을 내부에 포함한다.

[참고문헌]
[1] J. R. Kuttler and R. Janaswamy, "Improved Fourier transform methods for solving the parabolic wave equation," Radio Sci., vol. 37, no. 2, pp. 5-1–5-11, Apr. 2002.

[다음 읽을거리]