2021년 1월 17일 일요일

등각 사상(等角寫像, Conformal Mapping)

[경고] 아래 글을 읽지 않고 "등각 사상"을 보면 바보로 느껴질 수 있습니다.


[그림 1] 등각 사상의 예시(출처: wikipedia.org)

복소 함수(complex function)가 가진 놀라운 성질 중의 하나는 등각 사상(等角寫像, conformal mapping)이다. 등각 사상은 정의역에 있는 곡선의 국소적인 각도를 보존하면서 치역으로 사상한다. 즉, 등각 사상에서는 곡선의 국소적 각도 분포가 정의역과 치역에서 서로 같다. 다만 정의역에서 치역으로 갈 때, 곡선의 국소적 길이는 변할 수 있다. [그림 1]은 왼쪽에 있는 직선이 오른쪽에 있는 원으로 변환되는 등각 사상을 보여준다. 곡선의 모양이 많이 바뀌지만, 두 곡선이 만나는 각도는 왼쪽과 오른쪽이 90˚로 모두 동일하다. 그래서 [그림 1]은 등각 사상의 실제적인 특성을 잘 보여준다.
등각 사상의 이해에는 해석 함수(解析函數, analytic function)정칙 함수(正則函數, holomorphic function)의 개념이 필요하다. 해석적인 복소 함수(complex analytic function)필연적으로 정칙 함수가 되기 때문에, 어느 방향으로 미분하더라도 복소 함수의 미분은 동일하다. 그래서 $z$ = $z_0$ 근방에서 $z$와 $f(z)$는 다음과 같이 서로 연결되어 있다.

                  (1)

만약 $f'(z_0)$는 $0$이 아니라면, $z - z_0$의 각도가 변하는 특성은 극형식(polar form)에 의해 다음처럼 $f(z) - f(z_0)$의 각도 변화에 정확히 연결된다.

                  (2)

여기서 $z - z_0$ = $|z - z_0|e^{i \phi}$, $f(z) - f(z_0)$ = $|f(z) - f(z_0)|e^{i \varphi}$, $f'(z_0)$ = $|f'(z_0)| e^{i \varphi_0}$이다. 이러한 결과로 인해 해석적인 복소 함수는 국소적인 각도가 보존되는 등각 사상이 된다. 또한 $f'(z_0)$ = $0$이면, $z - z_0$에 관계없이 식 (1)이 성립한다. 그래서 임계점(臨界點, critical point)이라 부르는 $f'(z_0)$ = $0$인 조건에서는 $z - z_0$와 $f(z) - f(z_0)$는 서로 상관 관계가 없어진다. 즉, 임계점에서는 식 (2)와 같은 등각 사상이 성립하지 않는다.
등각 사상인 $f(z)$의 기하학적 특성을 단위 접선 벡터(unit tangential vector)의 사상(寫像, mapping) 관점에서 새롭게 고찰할 수도 있다. 복소 평면 상에 정의한 곡선 $z$의 단위 접선 벡터 $\hat t$은 다음과 같은 미분으로 표현된다.

                  (3)

마찬가지로 곡선 $z$의 등각 사상인 곡선 $f(z)$의 단위 접선 벡터를 $\hat \tau$라 한다.

                  (4)

그러면 임계점이 아닌 위치에서 단위 법선 벡터간의 편각 관계는 다음과 같다.

                  (5)

식 (5)에 의해 $\hat \tau$와 $\hat t$의 변화 특성은 $f'(z)$의 편각만큼만 차이난다. 식 (5)의 결과는 식 (2)와 동일하기 때문에, 등각 사상을 단위 법선 벡터의 변화로 간주할 수도 있다. 
등각 사상은 라플라스 방정식(Laplace's equation)을 푸는 새로운 해법이기도 하다. 등각 사상은 당연히 해석적인 복소 함수이므로, 코쉬–리만 방정식(Cauchy–Riemann equation)이 성립한다. 복소 함수 $f(z)$[= $u(x, y) + i v(x, y)$]의 실수부 $u(x, y)$와 허수부 $v(x, y)$를 따로 편미분하면 다음과 같은 $u(x, y)$에 대한 2차원 라플라스 방정식을 만들 수 있다.

                        (6)

                        (7)

허수부 $v(x, y)$를 기준으로 식 (7)과 동일한 방법을 적용하면 $v(x, y)$에 대한 2차원 라플라스 방정식도 얻는다.

                        (8)

또한 코쉬–리만 방정식에 의해 $u(x, y)$와 $v(x, y)$의 구배(gradient)는 항상 서로 직교하는 성질이 있다.

                        (9)

함수 $u(x, y)$와 $v(x, y)$의 구배 크기는 $|\bar \nabla u|$ = $|\bar \nabla v|$ = $|f'(z)|$인 관계도 성립한다. 따라서 2차원 라플라스 방정식을 풀 때는 보통 등각 사상의 개념으로 경계 조건을 다룬다. 그러면 굉장히 쉽게 원하는 해를 찾을 수 있다.
해석적인 복소 함수는 자유롭게 구성할 수 있기 때문에, 복소 함수론에 나오는 등각 사상은 무한개가 존재한다. 여러 종류의 등각 사상 중에서 간단하면서도 정말 중요한 예시는 [그림 1]에 나오는 뫼비우스 변환(Möbius transformation) 혹은 쌍일차 변환(雙一次變換, bilinear transform)이다. [그림 1]과 같은 뫼비우스 변환[= $(z-1)/(z+1)$]은 무한 반평면을 작은 원 내부로 사상한다. 따라서 뫼비우스 변환은 상상하기 힘든 무한대 범위를 유한한 원 내부로 바꾸어준다. 간단하지만 강력한 뫼비우스 변환의 일반형은 다음과 같다.

                  (10)

뫼비우스 변환이 유리 함수 형태로 남으려면 약분이 되어서는 안된다. 다음과 같은 과정에 따라, 뫼비우스 변환이 존재하지 않는 조건은 $ad - bc$ = $0$이 된다.

                  (11)

여기서 $p$는 복소수인 상수이다. 거꾸로 뫼비우스 변환이 성립하는 조건은 $ad - bc$ $\ne$ $0$이다. 이 조건은 직선 $az + b$와 $cz + d$가 평행이 되지 않는 조건과 등가이다.

[그림 2] 슈바르츠–크리스토펠 사상의 예시(출처: wikipedia.org)

등각 사상의 또 다른 재미난 결과는 [그림 2]에 예시로 나타낸 슈바르츠–크리스토펠 사상(Schwarz–Christoffel mapping)이다[4]. 다음과 같은 슈바르츠–크리스토펠 사상은 허수부가 $0$보다 항상 큰 상반평면(上半平面, upper half-plane) 전체를 볼록 다각형의 내부로 변환한다.

[그림 3] 슈바르츠–크리스토펠 사상과 영역 변환

[슈바르츠–크리스토펠 사상]

                  (12)

여기서 $C, K$는 상수, $f(0)$ = $C$, $a < b < c < \cdots$는 정의역 $z$의 실수축에 있는 점, 실수인 $\alpha, \beta, \gamma, \cdots$는 치역 $f(z)$에 만들어진 볼록 다각형의 끼인각(included angle)이다. 슈바르츠–크리스토펠 사상에서 실수 점 $a, b, c, \cdots$는 볼록 다각형의 꼭지점으로 사상되며, 이 꼭지점에 있는 각도는 $\alpha, \beta, \gamma, \cdots$가 된다.

[증명]
식 (12)의 증명을 간략화하기 위해서 [그림 3]의 왼쪽처럼 실수축 위에 있는 3개의 점만 고려한다. 그러면 다음 복소 함수를 정의할 수 있다.

                  (13)

식 (13)을 이용해 복소 함수 $f'(\zeta)$의 편각을 식 (2)처럼 기술한다.

                  (14)

실수축 위에 있는 $\zeta$가 $a$보다 작으면, $f'(\zeta)$의 편각은 항상 다음과 같은 상수가 된다.

                  (15)

여기서 ${\rm arg}(\zeta - a)$ = ${\rm arg}(\zeta - b)$ = ${\rm arg}(\zeta - c)$ = $\pi$이다. 식 (13)을 실수축 위에서 움직이는 $\zeta$에 대해 적분해서 복소 함수 $f(z)$의 변화도 관찰한다.

                  (16)

여기서 $z_0 < z < a$, ${\rm arg}[f'(\zeta)]$ = $\varphi_0$이다. 식 (16)의 마지막식에 나타난 적분은 실수이므로, $f(z)$의 편각은 변하지 않는다. 즉, 실수축 위에서 변하는 $a$보다 작은 $z$에 대해, [그림 3]의 오른쪽처럼 $f(z)$는 복소 평면 상에서 직선처럼 움직인다. 실수 $\zeta$가 $a$를 지나서 $a < \zeta < b$라면, 식 (15)의 편각은 다음처럼 $\pi - \alpha$만큼 증가한다.

                  (17)

여기서 ${\rm arg}(\zeta - a)$ = $0$이다. 따라서 실수축을 따라 변하는 $z$가 $a$를 지나면, 직선 $f(z)$의 편각은 [그림 3]의 오른쪽처럼 $\pi - \alpha$만큼 커진다. 이러한 기하학적 관계로 인해, $\alpha$는 편각이 식 (15)와 (17)인 두 직선 사이의 끼인각이다. 혹은 등각 사상에 대한 단위 법선 벡터의 관계인 식 (5)를 이용할 수도 있다. 입력 변수 $z$는 실수축에만 있으므로, 단위 법선 벡터 $\hat t$는 항상 $1$이며 편각은 $0$이다. 그래서 식 (5)에 의해 $f(z)$의 단위 법선 벡터인 $\hat \tau$의 편각은 ${\rm arg}[f'(z)]$와 같다. 비슷한 논증을 $z$ = $b$와 $c$에 대해서도 실행하면, 실수축에서 변하는 $z$의 사상 $f(z)$의 궤적은 사각형을 이룬다. 복소 평면에 형성된 사각형의 세 꼭지점은 $f(a)$, $f(b)$, $f(c)$이다. 나머지 한 꼭지점은 $\lim_{z \to \pm \infty}f(z)$이다. 또한 사각형은 볼록 다각형이므로 항상 $1 - \alpha / \pi > 0$, $1 - \beta / \pi > 0$, $1 - \gamma / \pi > 0$, $\alpha + \beta + \gamma$ $<$ $2 \pi$가 성립한다.
실수에서 복소수로 $z$를 확장하려면, 식 (12)의 분모에 있는 멱함수(power function)를 해석적으로 만들기 위한 가지 자름(branch cut)이 필요하다. 예를 들어, $z$ = $a$ 근방에서 멱함수는 다음처럼 표현된다.

                  (17)

여기서 $\phi$ = ${\rm arg}(\zeta - a)$이다. 식 (15)와 (17)을 유도할 때, $\phi$는 $0$에서 $\phi$까지 변한다고 자연스럽게 가정한다. 그러면 $z$의 편각은 $0$에서 $\pi$까지 연속적으로 변해야 한다. 이를 위해 $z$ = $a$ 근방의 멱함수가 해석적이기 위한 가지 자름을 [그림 4]처럼 정의한다. 여기서 $-\pi/2 < \phi < 3 \pi/2$를 만족한다.

[그림 4] 점 $z$ = $a$의 근방을 표현하기 위한 가지 자름

[그림 4]와 같은 가지 자름은 $z$ = $b$와 $c$에도 나타나므로, [그림 3]의 왼쪽에서 해석적인 영역은 당연히 $\Im[z] > 0$이다. 또한 $|z|$이 매우 커지는 영역에서 $f(z)$의 수렴을 확인한다. 먼저 $a, b, c$의 절대값보다 매우 큰 값을 $R$이라 한다. 그러면 $|z| > R$에 대해 다음 부등식이 성립한다.

                  (18)

여기서 $|a| \ll R$이다. 다른 점 $b, c$에 대해서도 식 (18)이 성립하므로, $f'(z)$의 크기는 다음과 같이 제한된다.

                  (19)

여기서 $M$은 적당히 큰 양의 실수이다. 다음 단계로 식 (19)를 이용해 식 (12)의 크기를 구한다.

                  (20)

여기서 $\alpha, \beta, \gamma$는 볼록 다각형의 끼인각이라서 $\alpha + \beta + \gamma$ $<$ $2 \pi$이다. 따라서 $R$이 계속 커지더라도 $f(z)$는 잘 수렴한다. 이의 결과로써 식 (12)는 $\Im[z] > 0$인 영역에서 해석적으로 잘 정의된다.
지금까지 실수축 위의 3개의 점만 고려했지만, [그림 3]처럼 실수인 점이 3개를 초과하더라도 위와 동일한 증명 방식을 이용해 실수축 위의 점이 볼록 다각형으로 사상됨을 쉽게 증명할 수 있다.
______________________________

식 (12)를 이용해서 [그림 2]를 위한 슈바르츠–크리스토펠 사상의 관계식을 쉽게 유도할 수 있다. 실수축 위의 점은 2개이며 $a$ = $-1$, $b$ = $1$이라 한다. 또한 끼인각 $\alpha, \beta$는 서로 같으므로 $\alpha$ = $\beta$ = $\pi/2$가 된다. 이 결과를 식 (12)에 대입해서 정리한다.

                  (21)

만약 $f(1)$ = $0$, $f(-1)$ = $\pi i$라면, $K$ = $1$, $C$ = $0$이 되어야 한다. 즉, [그림 2]와 같은 등각 사상은 매우 간단하게 $f(z)$ = $\cosh^{-1} z$로 표현된다.

[참고문헌]
[1] J. W. Brown and R. V. Churchill, Complex Variables and Applications, 8th ed., New York, USA: McGraw-Hill, 2004.
[2] C. K. Koc and P. F. Ordung, "Schwarz-Christoffel transformation for the simulation of two-dimensional capacitance," IEEE Trans. Comput.-Aided Design Integr. Circuits Syst., vol. 8, no. 9, pp. 1025–1027, Sept. 1989.
[3] W. P. Calixto, B. Alvarenga, J. C. da Mota, L. d. C. Brito, M. Wu, A. J. Alves, L. M. Neto, and C. F. R. L. Antunes, "Electromagnetic problems solving by  conformal mapping: a mathematical operator for optimization," Math. Probl. Eng., 2010, art. ID 742039.
[4] H. A. Schwarz, Ueber einige Abbildungsaufgaben (About some mapping problems), Gesammelte Mathematische Abhandlungen (Collected Mathematical Treatises), vol. 2, Berlin: Springer, 1890, pp. 65–83. (방문일 2022-11-06)
[5] P. K. Kythe, Handbook of Conformal Mappings and Applications, New York: CRC Press, 2019.

[다음 읽을거리]

2021년 1월 16일 토요일

편각 원리(偏角原理, Argument Principle)

[경고] 아래 글을 읽지 않고 "편각 원리"를 보면 바보로 느껴질 수 있습니다.


[그림 1] 복소 함수의 영점[파랑]과 극점[빨강] 표현(출처: wikipedia.org)

복소 함수(complex function)편각 원리(偏角原理, argument principle)는 [그림 1]처럼 닫힌 경로 내부에 존재하는 유리형 함수(meromorphic function)의 영점(zero)극점(pole)을 판별할 때 유용하다. 편각 원리는 구체적으로 코쉬의 편각 원리(Cauchy's argument principle)라고도 한다. 로그 함수(logarithmic function)의 미분에 바탕을 두고 편각 원리를 표현하면 다음과 같다.

[편각 원리]

                  (1)

여기서 $f'(z)$는 $f(z)$의 미분인 $df(z)/dz$, $c$는 반시계 방향으로 도는 닫힌 경로, $Z$와 $P$는 각각 닫힌 경로 $c$ 안에 존재하는 영점과 극점 차수(order)의 총합이다.

[증명]
복소 함수 $f(z)$의 제$m$번째 영점 $z_m$에 대해 $f(z)$ = $(z-z_m)^{Z_m} g(z)$를 정의한다. 여기서 $Z_m$은 영점의 차수, $g(z_m)$ $\ne$ $0$이다. 이 경우 식 (1)의 피적분 함수처럼 로그 함수 $\log f(z)$의 미분을 계산한다.

                  (2)

점 $z$ = $z_m$이 중심인 닫힌 경로 $c_m$에 대해 식 (2)를 복소 적분한 후 유수 정리(residue theorem)를 적용한다.

                  (3)

여기서 $g'(z)/g(z)$는 $z$ = $z_m$에서 해석적이어서 유수가 없다. 모든 영점에 대해 식 (3)을 연속적으로 적용해서 정리한다.

                  (4)

여기서 $M$은 $c$ 안에 있는 영점의 개수, $Z$는 영점 차수의 총합이다. 식 (2)와 비슷하게 제$n$번째 극점 $z$ = $p_n$ 근방에서 $f(z)$ = $h(z)/(z - p_n)^{P_n}$이라 둔다. 여기서 영점처럼 $h(p_n)$ $\ne$ $0$이다. 그러면 극점에 대해서도 다음 관계가 성립한다.

                  (5)

따라서 모든 극점에 대해 극점 차수의 총합 $P$를 다음처럼 구한다.

                  (6)

여기서 $N$은 $c$ 내부에 존재하는 극점의 개수, $d_n$은 제$n$번째 극점 $z$ = $p_n$ 주변을 도는 닫힌 경로이다. 최종적으로 식 (4)와 (5)를 합쳐서 식 (1)을 증명한다.
______________________________

닫힌 경로 $c$ 내부에 단순 영점(simple zero)[차수가 $1$인 $z - z_m$ 형태의 영점]과 단순 극점(simple pole)[차수가 $1$인 $1/(z - z_n)$ 형태의 극점]만 있다면, $Z$와 $P$는 각각 영점과 극점의 개수인 $M$과 $N$이 된다. 식 (1)이 편각 원리인 이유는 로그 함수의 성질에 의해 $f(z)$의 편각(argument)만 적분에 남기 때문이다.

                  (7)

여기서 $|f(z)|$의 적분은 한 바퀴를 돌 경우 크기가 같아서 항상 $0$이 된다. 식 (1)에 있는 편각의 원리를 조금 더 일반화해서 해석 함수 $g(z)$의 복소 적분을 급수 형태로 쉽게 전환할 수 있다.

                  (8)

식 (8)을 이용하면 복소 적분에 바탕을 두고 무한 급수를 적분으로 바꾸는 아벨–플라나 공식(Abel–Plana formula)을 증명할 수 있다[1].

[그림 2] 아벨–플라나 공식을 위한 적분 경로(출처: wikipedia.org)

[아벨–플라나 공식]

                  (9)

여기서 $f(z)$는 경로 $c$와 $c$의 내부에서 해석적이며, 양의 실수인 적절한 $M$과 $\epsilon$에 대해 $\lim_{R \to \infty} f(z)$ $\sim$ $M/|z|^{1+\epsilon}$이 성립한다.

[증명]
식 (8)에 필요한 닫힌 적분 경로 $c$를 [그림 2]와 같이 선택해서 복소 적분을 정의한다.

                  (10)

여기서 $\sin (\pi z)$는 $z$ = $0, 1, \cdots$에서 단순 영점(simple zero)을 가진다. 식 (10)에 나온 코탄젠트 함수는 적분 경로에 따라 다르게 표현한다.

                  (11)

식 (11)을 식 (10)에 대입해서 각 경로에 대해 복소 적분을 한다.

                  (12)

                  (13)

여기서 $R \to \infty$, $r$은 임의로 작은 양의 실수, $c_1$과 $c_5$ 상의 경로 적분은 조르당의 보조 정리(Jordan's lemma)에 의해 $0$이다. 양의 실수 $r$을 $0$으로 보내면서 경로 $c_3$에 대한 복소 적분도 한다.

                  (14)

식 (14)와 비슷하게 식 (12), (13)에 있는 $r$도 $0$으로 가는 극한을 취한다. 마지막으로 식 (12)–(14)를 모두 합치면 식 (9)가 증명된다.
______________________________

아벨–플라나 공식의 기본 개념은 오일러–매클로린 공식(Euler–Maclaurin formula)과 동일하다. 다만 아벨–플라나 공식은 복소 함수에 대한 복소 적분이 바탕이고, 오일러–매클로린 공식은 기초적인 실수 함수를 사용한다.

[참고문헌]
[1] N. H. Abel, "Opløsning af et Par Opgaver ved Hjælp af bestemte Integraler (Solving a few tasks using specific integrals)," Magazin for Naturvidenskaberne (Magazine for the Natural Sciences), vol. 2, pp. 55–68, 1823. (방문일 2021-01-17)

복소 함수의 표현법(Representation Method of Complex Function)

[경고] 아래 글을 읽지 않고 "복소 함수의 표현법"을 보면 바보로 느껴질 수 있습니다.


복소 함수(complex function)는 정의역(domain)과 치역(range)이 모두 복소수(complex number)인 함수이다. 복소수를 하나의 수로 보면, 복소 함수는 정의역에서 치역으로 가는 단순한 함수 관계를 가진다. 그래서 복소 함수는 개념적으로 실수 함수 혹은 실함수(real function)와 완전히 동일하다. 하지만 복소 함수를 2차원 평면에 그릴 때는 실수 함수와는 전혀 다른 문제점이 생긴다. 정의역 $x$와 치역 $y$가 모두 실수인 실수 함수 $y = f(x)$는 좌표점 $(x, y)$로 쓸 수 있으므로, 2차원에 시각적인 그래프(graph)를 쉽게 그릴 수 있다. 복소 함수도 비슷한 방식이 가능할까? 복소수는 원래부터 $z$ = $x + yi$처럼 두 숫자의 배열이라서 복소 함수를 2차원 평면에 그릴 수가 없다. 왜냐하면 정의역과 치역이 각각 2차원이라서 전체 그래프를 그릴려면 4차원이 필요하기 때문이다. 그렇다고 복소 함수의 전체 모습을 눈으로 보지 않고 대수적으로 계산만 해서는 우리의 수학적 이해도를 높이기가 매우 어렵다. 이러한 문제점을 해결하기 위한 유용한 접근 방식이 바로 복소 함수의 표현법(representation method of complex function)이다.

[그림 1] 복소 함수의 등각 사상(출처: wikipedia.org)

  • 등각 사상(conformal mapping)
복소 함수를 하나의 그래프로 그리기가 어렵기 때문에, 등각 사상(等角寫像, conformal mapping)에 바탕으로 두고 정의역과 치역을 2차원 평면에 각각 그릴 수 있다. 즉, 정의역 $z$ = $x + yi$는 [그림 1처럼] 전형적인 직선이나 곡선으로 표현한다. 정의역의 각 직선이나 곡선이 치역 $f(z)$ = $u(x,y) + i v(x, y)$에서 변형되는 형태를 새로운 그래프로 그린다. 여기서 $x, y$의 관계 $g(x, y)$ = $0$은 정의역에서 만드는 직선이나 곡선을 나타내며, $g(x, y)$ = $0$에 따라 $f(x + yi)$를 계산한다. 이러한 방식을 사용하면 특정 곡선이나 영역 관점으로 복소 함수가 정의역에서 치역으로 사상되는 특성을 쉽게 관찰할 수 있다.

[그림 2] 복소 함수 $\sqrt{z}$의 3차원 색칠하기(출처: wikipedia.org)

  • 3차원 색칠하기(3D coloring)
복소 함수를 나타낼 때는 기본적으로 4차원이 필요하지만, 우리 공간의 한계로 인해 복소 함수를 3차원에만 그리는 방식이 3차원 색칠하기(3D coloring)이다. 이 방법에서는 [그림 2]처럼 정의역 $z$ = $x + yi$와 치역 $f(z)$ = $u(x,y) + i v(x, y)$의 실수부만 그린다. 즉, [그림 2]에서 보는 3차원 공간의 곡면 좌표점이 $(x, y, u)$로 정해진다. 표현하지 못한 $f(z)$의 허수부 $v(x, y)$는 색깔로 표현한다. 함수값의 크기를 색깔로 표현하는 방식은 여러 가지가 있다. 예를 들면, 색상(色相, hue), 채도(彩度, saturation), 명도(明度, value or brightness)로 구성하는 [그림 3]의 HSV(hue, saturation, value) 색 공간(color space)을 사용할 수 있다. 색상은 흔히 말하는 구분된 색깔, 채도는 농담의 정도, 명도는 밝기의 정도를 의미한다.

[그림 3] HSV 색 공간을 나타내는 원뿔(출처: wikipedia.org)

[그림 4] 색상 $H$의 주기적인 변화(출처: wikipedia.org)

3차원 색칠하기 표현에서는 우리가 명확히 볼 수 있는 색상 $H$를 이용해 [그림 2]처럼 $f(z)$의 허수부 $v(x, y)$를 나타낸다. HSV 색 공간의 나머지 성분인 채도 $S$와 명도 $V$는 모두 100 %로 설정해서 명확한 색 표현이 되도록 한다. 다만 색상 $H$는 0˚~360˚ 범위에서 주기적으로 변하므로, 주기성이 없는 경우를 나타내기에는 불편하다. 이때는 보통 $H$를 0˚(빨강)~240˚(파랑)까지만 선택해서 색칠한다. 여기서 $H$의 색상 사상(色相寫像, color mapping)을 구성하는 방식은 매우 다양하므로 자기 취향에 맞게 골라서 사용할 수 있다. 예를 들어, 매트랩(MATLAB)의 시각화(visualization) 기능을 흉내낸 파이썬(Python)matplotlib 코드(code)는 [그림 5]와 같은 다양한 색상 지도(colormap)를 제공한다.

[그림 5] matplotlib가 제공하는 여러 가지 색상 지도(출처: matplotlib.org)

이를 종합해서 복소 함수 $f(z)$ = $u(x,y) + i v(x, y)$를 다음과 같은 색깔 있는 3차원 곡면으로 그린다.

                  (1)

여기서 $z$ = $x +yi$는 $xy$평면에서 변하며, $s$는 3차원 곡면의 높낮이, $v_{\min}$과 $v_{\max}$는 각각 $v(x, y)$의 최소값과 최대값, 채도 $S$ = 100%, 명도 $V$ = 100%로 정한다.
3차원 색칠하기의 개념을 알면 [그림 2]를 더 정확하게 음미할 수 있다. 여기서 [그림 2]는 복소 함수 $f(z)$ = $\sqrt{z}$를 보여준다. 곡면의 높이인 $u(x, y)$가 같더라도 색깔이 다르면 같은 함수값이 아니다. 즉, 빨강에서 한 바퀴를 회전하면 곡면의 높이는 같아지지만, 색깔은 파랑이라서 같은 함수값이 아니다. 이 위치에서 한 바퀴를 더 돌면 높이와 색깔이 모두 같아져서 함수값은 원래 위치로 돌아온다. 이 개념은 $z$가 두 바퀴를 돌아야 제곱근 함수 $\sqrt{z}$가 원래값이 된다는 복소 함수의 다가성(多價性, multi-valuedness)을 뜻한다. 

[그림 6] 복소 함수 $z^3 - 1$의 정의역 색칠하기(출처: wikipedia.org)

  • 정의역 색칠하기(domain coloring)
3차원 색칠하기는 우리가 복소 함수를 이해하는 좋은 방법이지만, 그림을 그릴 때 3차원 곡면이 필요한 약점이 있다. 이를 손쉽게 해결하려면 정의역(domain)을 나타내는 2차원 평면에 [그림 6]처럼 오직 색깔로만 복소 함수의 실수부와 허수부를 표현하면 된다. 그래서 정의역 색칠하기에서는 HSL(hue, saturation, lightness) 색 공간을 주로 사용한다. 여기서 L은 흑백 명도(黑白明度, lightness)를 나타낸다. 3차원 색칠하기와 비슷하게 채도를 100%로 놓고 흑백 명도 $L$과 색상 $H$를 $f(z)$의 크기와 위상으로 각각 연결한다.

                  (2)

여기서 $l(r)$은 $0$ 혹은 양의 실수 $r$을 흑백 명도로 바꾸는 어떤 함수, $H$는 0˚~360˚까지 변하는 복소 함수의 위상(phase) 혹은 편각(argument)을 표현한다. 흑백 명도 함수 $l(r)$은 다음과 같은 여러 종류로 정의할 수 있다.

                  (3)

여기서 $r_{\max}$는 $r$의 최대값이다. 식 (2)에 나온 흑백 명도 $L$은 HSV 색 공간의 명도 $V$와 비슷하면서도 다르다. 명도 $V$는 색깔 있는 광원이 방출하는 빛의 밝기이지만, 흑백 명도 $L$은 백색광의 밝기로 환산한 빛의 밝기이다. 그래서 $V$와 $L$은 명도 특성을 가져서 $V$ = $L$ = 0%이면 모두 검정색을 나타낸다. 반면에 $V$ = 100%로 두면 특정 색깔이 가장 밝아지지만, $L$ = 100%이면 모든 색이 항상 흰색으로 되는 차이가 있다.
정의역 색칠하기 관점으로 [그림 6]을 다시 본다. [그림 6]에 나타난 검정색은 흑백 명도 $L$ = $0$ 혹은 $|f(z)|$ = $0$인 경우이므로 $z^3 - 1$의 영점(zero)을 보여준다. 또한 밝기가 흰색으로 갈수록 $f(z)$의 크기는 급속히 커진다. 예를 들어, 완전한 흰색이 되면 이 점은 $f(z)$의 극점(pole)일 수 있다. 또한 [그림 6]의 색상은 $z^3 - 1$의 위상을 보여준다. 색상표가 있는 [그림 4]를 보면, [그림 6]의 빨간색은 위상이 0˚, 청록색은 180˚이다.


[다음 읽을거리]