2011년 6월 11일 토요일

행렬(行列, Matrix)

[경고] 아래 글을 읽지 않고 "행렬"을 보면 바보로 느껴질 수 있습니다.
1. 좌표계 기반 벡터


[선형 대수학 소개]

[그림 1] $m \times n$ 행렬의 정의(출처: wikipedia.org)

[그림 1]과 같이 숫자를 사각형으로 배치하고 꺽쇠로 닫으면 행렬(行列, matrix)이라 한다. '에이, 이게 뭐야! 나도 할 수 있겠네!'라고 생각할 수 있지만 우리가 보는 [그림 1]의 행렬은 현대 수학 중에서 가장 중요한 부분이다. 그래서, 행렬의 어원도 어머니(mother), 자궁(womb)을 뜻하는 라틴어(Latin) 마트릭스(matrix)이다. 다양한 수학 이론의 자궁(matrix) 역할을 하는 개념을 행렬(matrix)이라 생각할 수 있다. 미분적분(微分積分學, calculus)이 중요하다는 사람도 있지만 컴퓨터(computer)를 고려하면 단연 중요한 부분은 행렬 이론이다. 미분적분학은 연속 함수(連續函數, continuous function)를 다루기 때문에 컴퓨터로 처리하려면 반드시 이산화(離散化, discretization)를 해야 한다. 그러면 그다음의 처리 과정은 대부분 행렬 기반으로 처리된다. 문제를 풀기 위해 반복 기법을 이용할 수도 있지만 해답의 정확도와 속도면에서는 행렬이 월등하다. 반복이 필요한 현대 암호학에서도 행렬은 빼놓을 수 없는 부분이다. 단, 행렬의 계산 속도가 빨라야 한다. 보통 초보자가 설계한 코드로는 많이 부족하다. 그래서, 컴퓨터를 고려한 현대 수학에서는 행렬이 대세이다. 빠른 행렬 코드를 가지고 있어야 수학 분야 선진국이라 할 수 있다. 애석하게도 대한민국은 행렬을 많이 사용하지만 새로운 행렬 코드 개발에는 매우 인색해서 한국산(Made in Korea)은 아직 없다. 현재 많이 사용하는 공개된 행렬 코드는 미국산(Made in USA)LAPACK(Linear Algebra Package)이다.

[그림 2] 에셜론에서 운영하는 하드웨어 시스템으로 믿고 있는 장치(출처: wikipedia.org)

하지만 LAPACK이 현재 존재하는 행렬 코드중에서 최고라고 할 수는 없다. 절대 공개되지 않는 빠른 행렬 코드는 반드시 존재한다. 대표적인 예가 미국이 운영하고 있다고 믿고 있는 에셜론(Echelon)이다. 에셜론이라는 말은 계층 혹은 사다리꼴 형태로 번역할 수 있는 말이다. 이 말이 수학에서 쓰인다면 연립 일차 방정식(聯立一次方程式, simultaneous linear equations)을 쉽게 풀 수 있도록 사다리꼴 형태로 바꾼 모양을 의미한다. 연립 일차 방정식과 행렬의 관계를 이해하기 위해 다음 과정을 사용한다. 먼저 어떤 시스템 특성을 아래 연립 일차 방정식으로 근사화할 수 있다고 가정한다.

                          (1)

[그림 1]과 같은 행렬 정의에 의해 식 (1)은 다음 행렬로 동일하게 표현할 수 있다.

                          (2)

여기서 $\bf x$와 $\bf b$는 열 벡터(column vector), 행렬 ${\bf A}$의 차원(dimension)은 3행 3열 혹은 $3 \times 3$이라 정의한다. 식 (1)보다는 식 (2)가 대수(代數, algebra)적으로 잘 정리된 느낌이 든다. 식 (2)는 다음과 같은 붙임 행렬(augmented matrix)로 표현할 수도 있다.

                           (3)

식 (3)의 붙임 행렬을 잘 조작하면 동등한 특성을 가진 다음 붙임 행렬을 생성할 수 있다.

                          (4)

식 (4)의 붙임 행렬을 식 (3)의 사다리꼴 형태(echelon form)라고 부른다. 이 명칭은 행렬의 생긴 모양이 [그림 3]과 같은 사다리꼴(trapezoid)과 같아서 붙여졌다.

[그림 3] 사다리꼴의 모양(출처: wikipedia.org)

식 (2)의 미지수 개수가 몇 개 안된다면, 어떤 알고리즘(algorithm or algorism)을 쓰든지 계산 속도는 큰 차이 없다. 하지만 미지수가 수천개 혹은 수십만개인 경우는 문제의 수준이 달라진다. 식 (3)의 왼쪽 행렬($\bf A$)의 특성을 파악해서 식 (4)와 같은 사다리꼴 형태를 만들 수 있는 특별한 알고리즘을 찾아야 한다. 이와 같이 사다리꼴 형태 찾는 알고리즘이 행렬 이론 적용의 핵심이다. 또한 사다리꼴 형태의 유용성을 음미하면서 [그림 2]에 보인 에셜론이란 이름의 의미를 또렷하게 파악할 수 있다. 결국 사다리꼴 형태의 마지막식을 시작으로 식 (4)의 답을 아래처럼 손쉽게 계산한다.

                       (5)

이런 정도 이해를 바탕으로 행렬 연산을 하나하나 정의한다. 행렬 연산에서는 행렬 ≡ 연립 일차 방정식이라는 유추만 기억하면 된다. 왜냐하면 [그림 1]과 같은 행렬은 식 (1)과 같은 연립 일차 방정식을 우아하게 표현하기 위해 1850년실베스터 36세, 조선 철종 원년에 실베스터James Joseph Sylvester(1814–1897)가 도입한 개념이기 때문이다. 행렬을 사용하기 위한 사칙 연산은 다음과 같이 정의된다.

  • 곱셈
[그림 4] 행렬의 곱셈 정의(출처: wikipedia.org)

행렬은 식 (1)과 같은 연립 일차 방정식을 멋지게 풀기 위해 도입한 개념이므로 연산 정의는 식 (2)와 같이 곱셈부터 시작한다. 행렬 곱셈인 [그림 4]의 과정을 수식으로 쓰면 아래와 같다.

                       (6)

여기서 $a_{ik}, b_{kj}, c_{ij}$는 행렬 ${\bf A}, {\bf B}, {\bf C}$의 원소이다. 예를 들어, $a_{ik}$는 행렬 $\bf A$의 $i$번째 행, $k$번째 열의 원소이다.

  • 덧셈과 뺄셈
행렬의 덧셈과 뺄셈은 식 (1)과 같은 연립 일차 방정식을 서로 더하거나 빼는 과정을 의미한다. 그래서, 다음과 같이 덧셈과 뺄셈을 정의한다.

                        (7)

  • 상수배
행렬의 상수배는 식 (1)과 같은 연립 일차 방정식을 상수로 곱하는 과정을 의미해서 아래로 정의한다.

                        (8)

  • 나눗셈
지금까지 논의한 곱셈과 상수배 정의를 이용하면 행렬의 나눗셈을 표현할 수 있다. 행렬의 나눗셈을 구하면 식 (1)의 연립 일차 방정식 해답을 구할 수 있다. 식 (6)과 같은 곱셈을 기반으로 나눗셈을 정의한다.

                        (9)

식 (6)에 적당한 행렬 ${\bf A}^{-1}$을 곱해서 식 (9)와 같이 나눗셈을 정의할 수 있다. 적당한 행렬 ${\bf A}^{-1}$은 행렬 $\bf A$와 곱해져서 단위 행렬(單位行列], unit matrix) 혹은 항등 행렬(恒等行列], identity matrix)을 만들 수 있어야 한다. 단위 행렬은 대각선 원소가 1이고 이외는 모두 0인 정방 행렬(正方行列, square matrix: 행과 열의 수가 같음)을 의미한다. 단위 행렬인 경우는 아래 관계식이 성립한다.

                        (10)

식 (10)을 이용하면 단위 행렬의 원소 $I_{ij}$는 크로네커 델타(Kronecker delta)를 이용해 쉽게 표현할 수 있다.

                       (11)

식 (9)의 마지막식[${\bf A}^{-1}{\bf A}$ = ${\bf I}$]처럼 어떤 행렬 $\bf A$에 곱해져서 단위 행렬을 만들 수 있는 행렬은 행렬 $\bf A$의 역행렬(逆行列, inverse matrix)이라 부른다[1]. 행렬 $\bf A$의 원소를 이용해서 역행렬을 계산한다. 식 (9)의 마지막식[${\bf A}^{-1}{\bf A}$ = ${\bf I}$]을 참고하면 아래 관계가 반드시 성립해야 한다.

                       (12)

여기서 행렬 $\bf A$의 원소는 $a_{ij}$, $\bf A$의 역행렬[${\bf A}^{-1}$] 원소는 $A_{ij}$라 정의한다. 표기법상 행렬[$\bf A$]은 알파벳을 굵고 진하게 쓰고 행렬의 원소[$a_{ij}$]는 이런 장식없이 그냥 쓴다. 그냥 봐서는 역행렬 원소 $A_{ij}$를 구할 수 없다. 정보가 좀 필요하다. 뭔가 하면 행렬식(行列式, determinant)이다. 행렬식의 영어 의미는 식 (1)과 같은 연립 일차 방정식의 답을 구할 수 있는가 결정해주는 판별식이다. 이름은 행렬식이지만[영어는 행렬식이 아닌 판별식임을 기억한다.] 행렬이 제안되기 훨씬 이전에 제안되어 충분한 연구가 진행된 개념이다. 그러므로, 행렬 증명에 행렬식을 쓰더라도 문제는 없다. 행렬식은 행(行, row)에 대한 라플라스 전개(Laplace expansion)를 이용해 다음처럼 표현할 수 있다.

                       (13)

여기서 $C_{ij}$는 행렬 $\bf A$의 여인자(餘因子, cofactor), $M_{ij}$는 원소 $a_{ij}$의 소행렬식(小行列式, minor)이다. 행렬 원소 $a_{ij}$의 여인자 $C_{ij}$는 $\operatorname{cof}(a_{ij})$라고 표기하기도 한다. 예시로써 소행렬식 $M_{23}$을 아래와 같이 계산할 수 있다.

                      (14)

즉, $M_{23}$은 2행과 3열 원소 전체를 식 (14)처럼 삭제한 후 계산하는 행렬식이다. 다시 식 (12)로 돌아가서 식 (12)와 (13)을 비교한다. 그러면 아주 놀라운 사실을 발견할 수 있다. 역행렬의 원소를 여인자가 되도록 하면 대각선에서는 값이 있고 나머지에서는 0이 되도록 할 수 있다.

                       (15)

식 (15)에서 $i \ne j$인 경우가 0이 됨은 당연하다. 왜냐하면, $i \ne j$인 경우 여인자 $C_{ki}$는 $j$열 원소를 포함하고 있고 $a_{kj}$도 $j$열 원소를 가지므로 $C_{ki}$와 $a_{kj}$의 열이 서로 중복되어 행렬식 관점에서 당연히 0이 되어야 한다. 반대로 $i$ = $j$ 경우는 여인자 $C_{ki}$가 $i$열 원소를 배제하고 있으므로 0이 될 필요는 없다. 이렇게 쉽게 역행렬을 정의할 수 있는 이유는 행렬식이 매우 잘 정의되었기 때문이다. 따라서 역행렬은 행렬식을 이용하여 다음으로 정의할 수 있다.

                       (16)

식 (9)와는 다르게 역행렬을 반대편에도 곱한다.

                       (17)

식 (17) 증명에는 열(列, column)에 대한 라플라스 전개도 동일하다는 행렬식의 성질을 이용해야 한다.

행렬의 나눗셈 정의를 통해 역행렬의 다양한 성질을 아래와 같이 증명할 수 있다.

           (18)

              (19)    

역행렬은 매우 유용한 개념이기 때문에, 주어진 행렬에 대한 역행렬은 딱 하나만 있으면 좋겠다. 우리의 희망대로 역행렬의 유일성(uniqueness of inverse matrix)이 있는지 알아본다. 먼저 역행렬이 하나 더 존재한다고 가정한다. 기존 역행렬 ${\bf A}^{-1}$와 다른 새로운 역행렬을 $\bf B$라 한다. 그러면 다음 행렬 관계가 성립한다.

                       (20)

식 (20)에 의해 하나 더 존재하는 역행렬 $\bf B$는 ${\bf A}^{-1}$과 동일하다. 이와 같이 역행렬의 유일성은 매우 쉽게 증면된다. 행렬의 연산자적 특성을 알아보기 위해 행렬의 교환 법칙과 결합 법칙을 살펴본다.

                        (21)

                       (22)

행렬의 곱셈 정의인 식 (6)을 고려하면 교환 법칙이 일반적으로 성립하지는 않음을 쉽게 증명할 수 있다. 결합 법칙 증명을 위해 식 (22)의 좌변과 우변을 식 (6)으로 표현한다.

                       (23)

스칼라(scalar)의 분배 법칙으로 인해 식 (23)의 첫째식과 둘째식은 항상 같다. 그래서, 행렬의 결합 법칙이 증명된다. 식 (23)과 동일한 방법으로 식 (24)의 행렬 분배 법칙도 증명 가능하다.

                        (24)

행렬 이론에 등장하는 다양한 행렬을 모양이나 특성에 따라 정의한다. 식 (10)의 항등 행렬(identity matrix) $\bf I$를 일반화하면 아래와 같이 대각 행렬(diagonal matrix) $\bf D$를 정의할 수 있다.

                       (25)

대각 행렬은 대각선 방향으로만 원소가 있기 때문에 행렬의 사칙 연산이 매우 간단해진다.

          (26)

대각 행렬은 단위 행렬의 일반화로 볼 수 있다.
식 (4)와 같은 사다리꼴 형태의 행렬은 삼각 행렬(三角行列, triangular matrix)이라 한다. 삼각 행렬은 원소가 놓여있는 위치에 따라 상삼각 행렬(上三角行列, upper triangular matrix) $\bf U$와 하삼각 행렬(下三角行列, lower triangular matrix) $\bf L$로 구분한다.

                       (27)

                       (28)

삼각 행렬의 대각선 원소가 모두 $0$이면, 이 행렬은 더 구체적으로 엄격 삼각 행렬(strictly triangular matrix)이라 한다. 엄격 삼각 행렬은 엄격 상삼각 행렬(strictly upper triangular matrix)엄격 하삼각 행렬(strictly lower triangular matrix)이 가능하다. 또한 수치 계산이 용이한 사다리꼴 형태로 만든다는 뜻은 행렬 구조를 상삼각 행렬이나 하삼각 행렬로 바꾸기를 의미한다.
행렬 이론에서 중요한 또 하나의 행렬은 대칭 행렬(對稱行列, symmetric matrix) ${\bf A}_\text{sym}$ 혹은 $\bf S$이다. 물리학에서 나타나는 행렬은 대칭성을 가지는 경우가 대부분이다. 대칭 행렬을 정의하기 위해 전치 행렬(자리 바꿈 행렬, 轉置行列, transpose) ${\bf A}^T$를 생각한다.

                        (29)

전치 행렬이 가진 재미있는 성질은 행렬 곱셈에서 나타난다. 식 (6)의 행렬 곱셈 정의를 이용해 행렬 곱의 전치 행렬을 아래와 같이 계산한다.

                       (30)

식 (30)과 (18)을 이용하면 전치 행렬의 역행렬을 아래와 같이 정의할 수 있다.

                        (31)

전치 행렬 개념을 이용하면 식 (16)으로 정의한 역행렬을 좀더 우아하게 표현할 수 있다.

                        (32)

여기서 ${\rm adj}({\bf A})$는 행렬 $\bf A$의 딸림 행렬 혹은 수반 행렬(adjugate or adjoint matrix)이다. 전치 행렬은 식 (29)처럼 행렬의 행과 열을 서로 바꾸기 때문에 대칭 행렬을 다음과 같이 정의할 수 있다.

                        (33)

대칭 행렬과 비슷하지만, 다음 관계를 만족하는 행렬 ${\bf A}_\text{skew}$는 반대칭 행렬(反對稱行列, antisymmetric matrix)혹은 꼬인 대칭 행렬(skew-symmetric matrix)이라 한다.

                       (34)

식 (34)에 의해 반대칭 행렬의 대각선 원소(diagonal element)는 항상 0이다. 행과 열 번호를 바꾼 비대각선 원소(off-diagonal element)를 보면, 원소의 크기는 같고 부호는 반대이다. 또한 임의의 행렬 $\bf A$는 대칭 행렬과 반대칭 행렬의 합으로 분해할 수 있다.

                       (35)

대칭과 반대칭 행렬은 일반 행렬의 특별한 경우라고 생각할 수도 있지만, 식 (35)는 행렬 속에 숨은 본질이 대칭성과 반대칭성이라는 함의를 보여준다.

[그림 5] 행 벡터의 예시(출처: wikipedia.org)

[그림 6] 열 벡터의 예시(출처: wikipedia.org)

행렬은 벡터(vector)의 모임이라 생각할 수 있다. [그림 5]처럼 동일한 행을 가진 원소는 행 벡터(row vector), [그림 6]처럼 동일한 열을 가지면 열 벡터(column vector)가 된다. 행 벡터의 차원은 $1 \times n$, 열 벡터의 차원은 $m \times 1$이다. [그림 5]와 같이 행 벡터를 $m$개 쌓으면, [그림 1]에 있는 차원이 $m \times n$인 행렬을 만들 수 있다. 마찬가지로 [그림 6]처럼 열 벡터를 $n$개 붙이면 $m \times n$ 행렬이 된다. [그림 6]에 소개한 행 혹은 열 벡터를 이용하면, 2차원인 행렬 원소를 [그림 7]처럼 일관되게 1차원 순서로 정렬할 수 있다. 행 벡터를 우선하여 번호를 붙이는 방식은 행 우선 순서(row-major order)라 부른다. 열 벡터를 기준으로 번호를 붙이면 열 우선 순서(column-major order)가 된다. 쉽게 말해 행과 열 우선 순서는 각각 행렬을 행과 열 벡터의 배열(array)로 본다. 포트란(Fortran: IBM 수학 공식 번역 체계, The IBM Mathematical Formula Translating System)으로 작성한 LAPACK에서는 주로 열 우선 순서[= 열 벡터의 배열]로 행렬의 원소를 저장한다. 그래서 열 우선 순서를 포트란 순서(Fortran order)로 부르기도 한다. 반면에 C 언어(C language)의 2차원 배열(array)은 행 벡터의 배열인 행 우선 순서로 자료를 저장한다. 예를 들어, i행 j열의 원소 a[i][j]는 지시자(pointer)인 행 벡터 a[i]를 찾아간 후 j번째 원소에 접근한다. 이런 관점에서 행 우선 순서를 포트란 순서에 대비되는 C 순서(C order)로 명명할 수 도 있다.

[그림 7] 행 혹은 열 우선 순서(출처: wikipedia.org)

행렬은 벡터를 포함하므로, 벡터 곱셈(vector multiplication)벡터 내적(dot product) $\bar x \cdot \bar y$와 벡터 외적(cross product) $\bar x \times \bar y$를 행렬로 표현할 수 있다. 실수와 복소 영역에서 $n$차원 벡터의 벡터 내적 혹은 점곱은 행렬을 이용해 다음처럼 각각 재정의할 수 있다.

                       (36a)

                       (36b)

여기서 $\bf x$, $\bf y$는 $n$차원 열 벡터, $(\cdot)^*$는 켤레 복소수(complex conjugate)를 의미한다. 마찬가지로 3차원 위치 벡터(position vector)에 대한 벡터 외적 혹은 교차곱을 행렬의 곱으로 다시 표현할 수 있다.

                       (37)

여기서 $\bf x$, $\bf y$는 3차원 열 벡터, ${\bf C}({\bf x})$는 $\bf x$로 만든 교차곱 행렬(cross-product matrix)이다. 벡터 곱셈 중에서 행렬을 생성하는 연산으로 외적(外積, outer product) $\bar x \otimes \bar y$가 있다.

                       (38)

여기서 벡터 내적의 행렬 곱셈 순서를 바꾸면 외적 모양이 되며, 외적의 대각합(trace)은 다시 벡터 내적으로 나온다. 외적에 대비되게 벡터 외적 혹은 교차곱의 연산 결과는 항상 벡터로 유지된다.
식 (25)와 같은 대각 행렬은 아니지만 유사한 특성을 가진 행렬은 대각 지배 행렬(diagonally dominant matrix)이라 한다[2]. 대각 지배 행렬은 모든 행에 대해 다음 부등식이 성립한다.

                       (39)

여기서 $a_{ij}$는 행렬 $\bf A$의 원소, $\bf A$의 차원은 $n \times n$이다. 식 (39)에서 등식이 빠져서 대각선 원소가 나머지 원소의 합보다 항상 크면 엄격 대각 지배 행렬(strictly diagonally dominant matrix)이라 한다.

                       (40)

식 (40)과 구별되는 식 (39)의 조건을 만족하는 행렬은 약한 대각 지배 행렬(weakly diagonally dominant matrix)이라고도 한다. 엄격 대각 지배 행렬은 당연히 약한 대각 지배 행렬도 된다. 대각 지배 행렬은 행과 열 개수가 매우 큰 행렬의 역행렬이나 행렬식(determinant) 특성을 판정할 때 유용한 개념이다. 예를 들어, 엄격 대각 지배 행렬은 항상 역행렬이 존재하고 행렬식도 $0$이 아니다. 즉, 대형 행렬의 행렬식을 직접 계산할 필요 없이 식 (40)처럼 대각선 원소와 나머지 비대각선 원소의 합만 구해도 행렬식이 $0$인지 아닌지 쉽게 파악할 수 있다. 또한 대형 행렬로 구성된 연립 일차 방정식을 풀 때 많이 쓰는 행렬의 반복법(iterative method of matrix)에도 대각 지배 행렬 개념이 유용하다. 반복을 통해 근사하는 현재 연립 일차 방정식 해의 수렴성은 고유값(eigenvalue)의 크기나 대각 지배 행렬 등으로 판정할 수 있다.
행렬의 대각합(對角合, trace) $\operatorname{tr}({\bf A})$은 말 그대로 모든 대각선 원소 $a_{ii}$의 단순 합으로 정의한다.

                       (41)

여기서 $a_{ij}$는 행렬 $\bf A$의 원소, $\bf A$의 차원은 $n \times n$이다. 유치해보이는 대각합은 재미난 성질을 많이 가지고 있다. 대각합이 놀랍도록 신기하게 쓰이는 경우는 행렬의 고유값(eigenvalue)이다. 행렬의 모든 고유값의 합은 대각합과 정확히 같아진다. 근 찾기(root finding or searching)로 구하는 고유값의 합이 행렬의 대각합과 같기 때문에, 고유값의 특성을 식 (41)로 유추할 수 있다.

여러 방식으로 정의한 다양한 종류의 행렬은 스칼라(scalar) 혹은 벡터(vector)와 확연히 다른 다음과 같은 성질을 가지고 있다. 


   1. 기본(basics)   

[행렬 항등식]

                       (1.1)

                       (1.2)

[반대각 행렬(anti-diagonal matrix)]

                       (1.3a)

                       (1.3b)

                       (1.3c)

여기서 ${\bf J}$는 교환 행렬(exchange matrix), $\bf I$는 단위 행렬이다. 대각 행렬이 대각선(diagonal)에만 원소를 가지는 성질과 비슷하게, 반대각 행렬(anti-diagonal matrix) ${\bf D}_\text{anti}$는 반대각선(anti-diagonal)에 원소가 배치되고 나머지 위치는 모두 0이다.

[반전치 행렬(anti-transpose)]

                       (1.4a)

                       (1.4b)

여기서 $n$은 행 혹은 열 개수, ${\bf A}^\bot$는 $\bf A$의 반전치 행렬(anti-transpose)이다. 반전치 행렬은 대각선이 아닌 반대각선(anti-diagonal)을 대칭선으로 삼아 원소를 전치한다.

                       (1.5)

[증명]
식 (1.5)의 좌변에 식 (1.4a)를 적용한 후 다시 식 (30)으로 간략화한다.
______________________________

행렬 곱의 반전치 연산은 식 (30)처럼 전치 연산과 동일하게 작용한다.

[직각 대칭 행렬(persymmetric matrix)]

                       (1.6a)

                       (1.6b)

여기서 $n$은 행 혹은 열 개수이다. 교환 행렬 $\bf J$는 반대각 행렬 ${\bf D}_\text{anti}$의 특별한 경우이며, 대칭이면서 직각 대칭도 된다. 그래서 $\bf J$를 곱해 대칭 행렬 $\bf S$를 직각 대칭 행렬(persymmetric matrix)로 바꿀 수 있다. 대칭 행렬 $\bf S$가 대각선[↘]에 대해 대칭이라면, 직각 대칭 행렬 ${\bf S}_\text{per}$은 대각선에 직각인 반대각선[↙] 기준으로 대칭이다. 직각 대칭 행렬의 유명한 예는 퇴플리츠 행렬(Toeplitz matrix)이다.

[쌍대칭 행렬(bisymmetric matrix)]

                       (1.7)

대칭과 직각 대칭을 동시 만족하는 행렬은 쌍대칭 행렬(bisymmetric matrix)이 된다. 단위와 교환 행렬은 쌍대칭 행렬의 대표적 예이다. 대칭 퇴플리츠 행렬(symmetric Toeplitz matrix)도 쌍대칭 행렬에 속한다.


   2. 대칭 행렬(symmetric matrix)   

[대칭 행렬 연산]
(a) 대칭 행렬 ${\bf A}, {\bf B}$에 대해 ${\bf A} \pm {\bf B}$도 대칭 행렬이다. 또한 $k{\bf A}$도 대칭 행렬이다.
(b) 대칭 행렬 ${\bf A}, {\bf B}$에 대해 ${\bf AB} + {\bf BA}$도 대칭 행렬이다.
(c) 대칭 행렬 ${\bf A}$의 거듭제곱 ${\bf A}^m$도 대칭 행렬이다.
(d) 대칭 행렬 ${\bf A}$의 역행렬 ${\bf A}^{-1}$도 대칭 행렬이다.
(e) 대칭 행렬 ${\bf A}, {\bf B}$가 ${\bf AB} = {\bf BA}$를 만족하면, $({\bf AB})^m = {\bf A}^m {\bf B}^m$이 성립한다.
(f) 대칭 행렬 ${\bf A}, {\bf B}$에 대해 ${\bf AB} = {\bf BA}$ $\Leftrightarrow$ $({\bf AB})^T = {\bf AB}$가 성립한다.
여기서 $k$는 스칼라이다.

[명제 (a)의 증명]
비대각선 원소에 대해 $a_{ij} \pm b_{ij}$ = $a_{ji} \pm b_{ji}$가 성립하므로, ${\bf A} \pm {\bf B}$는 대칭 행렬이다. 비슷하게 스칼라 $k$를 곱한 행렬 $k {\bf A}$의 비대각선 원소를 비교하면, $k {\bf A}$도 정확히 대칭 행렬이 된다.

[명제 (b)의 증명]
주어진 행렬에 전치 행렬을 취하고 식 (30)을 이용해서 계산하면 다음과 같다.

                  (2.1)

[명제 (c)의 증명]
행렬 ${\bf A}^2$ = ${\bf AA}$에 전치 행렬을 적용하면, $({\bf A}^2)^T$ = ${\bf A}^T {\bf A}^T$ = ${\bf AA}$이 성립한다. 이 과정을 계속 반복해서 더 높은 차수의 거듭제곱 관계식을 증명한다.

[명제 (d)의 증명]
역행렬의 전치 행렬에 대해, 식 (31)과 유사한 행렬 연산을 차례대로 사용한다.

                  (2.2)

[명제 (e)의 증명]
행렬의 곱 $\bf AB$의 제곱에 대해 $({\bf AB})^2$ = $\bf ABAB$ = $\bf AABB$ = ${\bf A}^2 {\bf B}^2$이 타당하다. 비슷한 방식으로 행렬의 곱에 대한 고차 거듭제곱은 각 행렬의 고차 거듭제곱의 곱으로 확장된다.

[명제 (f)의 증명]
교환 법칙의 우변을 이중 전치 행렬로 바꾸면 명제의 오른쪽 식이 증명된다.

                  (2.3)

마찬가지로 대칭 행렬의 곱 $\bf AB$에 대해 전치 행렬 연산을 써서 명제의 왼쪽 식을 유도한다.

                  (2.4)
______________________________

명제 (e)에서 조심할 부분이 하나 있다. 행렬 ${\bf A}, {\bf B}$가 대칭 행렬이라 하더라도 ${\bf AB}$가 대칭 행렬이라는 보장은 없다. 따라서 명제 (e)는 대칭 행렬 ${\bf AB}$에 대한 거듭제곱 관계식이 아니고, 두 대칭 행렬 ${\bf A}, {\bf B}$의 곱에 대한 공식이다.

[$2 \times 2$ 대칭 행렬 곱의 대칭성]

                  (2.5)

[증명]
두 행렬을 곱한 후, 대칭성 조건을 비교해서 증명한다.
______________________________

만약 $a$ = $c$, $e$ = $g$라면, $b, f$에 관계없이 대칭성이 성립한다. 또한 식 (2.5)와 대칭 행렬 연산의 특성에 의해 식 (2.5)에 나온 두 행렬의 곱은 교환 법칙도 만족한다.

[직각 대칭 행렬]

                       (2.6a)

                       (2.6b)

                       (2.6c)

여기서 ${\bf S}$와 ${\bf S}_\text{per}$는 각각 대칭 및 직각 대칭 행렬, $\bf B$는 대칭이면서 동시에 직각 대칭인 쌍대칭 행렬이다. 교환 행렬 $\bf J$를 ${\bf S}_\text{per}$의 우측에 곱해도 대칭과 직각 대칭 관계를 만족한다.

[직각 대칭 행렬 연산]
(a) 직각 대칭 행렬 ${\bf A}$의 역행렬 ${\bf A}^{-1}$도 직각 대칭 행렬이다.

[명제 (a)의 증명]
역행렬 ${\bf A}^{-1}$은 $({\bf JS})^{-1}$ = ${\bf S}^{-1} {\bf J}$를 만족한다. 여기서 $\bf S$는 대칭 행렬이다. 대칭 행렬 $\bf S$의 역행렬은 다시 대칭 행렬이므로, ${\bf A}^{-1}$는 직각 대칭 행렬이다.
______________________________


   3. 대각 행렬(diagonal matrix)   

[교환 법칙]
행렬 $\bf A$는 대각 행렬  $\Leftrightarrow$  ${\bf DA} = {\bf AD}$
여기서 대각 행렬 $\bf D$의 대각선 원소 $d_i$는 항상 서로 다르다[혹은 지표 $i \ne j$이면, $d_i \ne d_j$이다].

[증명]
행렬 $\bf A$가 대각 행렬인 경우는 $\bf DA$와 $\bf AD$의 대각선 원소를 구해 비교하여서 명제의 오른쪽 식을 증명한다. 두 행렬 $\bf D$, $\bf A$가 교환 법칙을 만족하면, 비대각선 원소에 대해 다음 관계가 성립한다.

                       (3.1)

따라서 명제의 왼쪽 식이 유도된다.
______________________________

단위 행렬 $\bf I$처럼 대각선 원소 $d_i$가 모두 같다면, 행렬 $\bf A$는 대각 행렬이란 조건이 사라지고 임의의 행렬일 수 있다.

[반대각 행렬(anti-diagonal matrix)]

                       (3.2)

교환 행렬 $\bf J$가 곱해지는 위치에 따라 반대각 행렬의 원소가 나열되는 방향이 바뀐다.


   4. 대각합(trace)   

[행렬 원소의 곱]

                       (4.1)

여기서 $a_{ij}, b_{ij}$는 행렬 ${\bf A}, {\bf B}$의 원소, ${\bf A}, {\bf B}$의 차원은 $n \times n$이다.

[증명]
두 정방 행렬의 곱은 다음 성질을 가진다.

                       (4.2)

식 (4.2)의 오른쪽 식에서 $j$ = $k$ 조건을 만족하도록 모든 대각선 원소를 모으면 식 (4.1)이 된다.
______________________________

식 (4.1)에 의해 두 행렬 원소를 각각 곱해서 모두 더한 결과는 행렬 곱의 대각합과 완전히 동일하다.


[참고문헌]
[2] R. S. Varga, "On recurring theorems on diagonal dominance," Linear Algebra and its Applications, vol. 13, no. 1–2, pp. 1–9, 1976.

[다음 읽을거리]

2011년 6월 10일 금요일

페이저를 이용한 임피던스 정의(Definition of Impedance Using Phasor)

[경고] 아래 글을 읽지 않고 "임피던스 정의"를 보면 바보로 느껴질 수 있습니다.
1. 전압
2. 전류
3. 저항
4. 커패시터
6. 정말 유용한 페이저 개념

[확인] 본 페이지는 exp(jωt) 시간 약속을 사용하고 있습니다.


[그림 1] 커패시터와 인덕터에 발생하는 전압과 전류의 위상 차이(출처: wikipedia.org)

전압(voltage), 전류(electric current), 저항(resistor), 커패시터(capacitor), 인덕터(inductor) 개념을 맥스웰 방정식(Maxwell's equations) 관점에서 완벽하게 증명했기 때문에, 교류(交流, Alternating Current, AC) 회로 이론을 명확히 정립할 수 있다. 교류 회로 이론의 필수적인 개념은 임피던스(impedance)이다. 임피던스의 원래 뜻은 저항(resistance)과 매우 유사하다. 어떤 물체의 진행을 방해한다는 의미로 임피던스를 쓸 수 있다. 즉, 저항과 너무 비슷하기 때문에 이 용어를 한글로 번역하지 않고 영어 그대로 사용한다. 그렇더라도 헷갈리지는 말고 저항 ≡ 임피던스임을 꼭 기억한다. 굳이 저항과 임피던스를 구별하자면 저항은 DC(Direct Current) 저항이며 임피던스는 AC 저항이다. 그래서, 임피던스는 저항의 개념을 AC까지 확장한다고 생각하면 편하다. 저항($R$), 커패시터($C$), 인덕터($L$)를 지배하는 공식을 전압과 전류 관점으로 쓰면 다음과 같다.

                           (1)

여기서 $v, i$는 각각 교류 전압과 전류이다. 임피던스를 정하기 위해 페이저(phasor)를 도입한다. 페이저는 다음과 같이 정의한다.

                                  (2)

                   (3)

여기서 허수 단위(imaginary unit) $j$ = $\sqrt{-1}$이다. 식 (1)에 나온 $i$는 허수 단위가 아니고 교류 전류이다. 식 (2)와 (3)을 이용해서 식 (1)의 미분 기호를 $d/dt \equiv j \omega$로 바꾸면 다음을 얻는다.

                                   (4)

신기하게도 식 (2)를 이용하면 식 (4)와 같이 저항($R$), 커패시터($C$), 인덕터($L$) 종류와는 관계없이 AC에 대해 옴 법칙(Ohm's law)을 다음과 같이 일반화할 수 있다.

                                   (5)

페이저를 도입하기 때문에 임피던스는 복소수(complex number: 수학에서 복소수는 보통 $z$로 표기)로 표기한다. 그래서 임피던스를 나타내는 문자는 $Z$를 사용한다. 임피던스 개념을 최초로 제안한 사람은 페이저의 창안자 중 한 명인 헤비사이드Oliver Heaviside(1850–1925)이다. 헤비사이드는 은둔의 과학자답게 우리에게는 잘 알려져 있지 않지만 평생을 혼자 조용하게 연구하면서 페이저(phasor), 교류 회로 이론(AC circuit theory), 라플라스 변환(Laplace transform), 맥스웰 방정식(Maxwell's equations), 전송선 이론(transmission line theory), 전리층(ionosphere), 도파관(waveguide), 포인팅의 정리(Poynting's theorem) 등의 개념을 최초로 제안하고 심도있게 발전시켰다. 이런 다양한 개념을 보면, 현재 우리가 전자파 분야에서 배우는 대부분의 내용은 사실 헤비사이드의 머리에서 나왔다고 볼 수 있다. 헤비사이드는 회로 용어의 창안에도 열정을 기울여서 컨덕턴스(conductance), 인덕턴스(inductance), 어드미턴스(admittance) 등도 제안했다. 고등학교만 나온 헤비사이드를 이런 수준의 과학자로 만든 계기는 맥스웰James Clerk Maxwell(1831–1879)의 책[1]이었다. 1873년헤비사이드 23세, 조선 고종 시절에 읽은 맥스웰의 책에 감동받은 헤비사이드는 자신의 인생을 전자파에 바치기로 결심하였다. 얼마 뒤 회사까지 그만두고 부모님의 집에서 결혼도 하지 않은 채 평생을 전자파 연구에 매진했다.

                         (6)

                         (7)

임피던스 개념을 사용하면 커패시터와 인덕터를 이용해 일반화한 식 (6)의 KCL(Kirchhoff Current Law)과 식 (7)의 KVL(Kirchhoff Voltage Law)을 DC와 유사하게 아래와 같이 표현할 수 있다.

                         (8)

임피던스를 이용해 일반화 시킨 식 (8)의 AC 회로용 KCL과 KVL을 이용하면 직렬과 병렬 회로의 등가 임피던스(equivalent impedance)를 쉽게 계산할 수 있다.

[그림 2] 직렬로 된 임피던스(출처: wikipedia.org)

[그림 3] 병렬로 된 임피던스(출처: wikipedia.org)

저항(resistor)커패시터(capacitor)인덕터(inductor)에 대한 등가 임피던스 유도를 참고하면 직렬과 병렬에 대한 등가 임피던스를 식 (9)와 (10)처럼 증명할 수 있다.

                          (9)

                         (10)

임피던스는 복소수로 정의된다는 특성도 생각한다. [그림 4]와 같이 임피던스는 복소수이기 때문에 크(magnitude)와 위상(phase)을 가진다.

 [그림 4] 임피던스의 복소 평면 표현(출처: wikipedia.org)

임피던스의 크기는 전류 흐름을 방해하는 정도인 저항(resistance)을 뜻한다. 식 (4)에도 제시되어 있듯이 저항, 커패시터, 인덕터는 항상 저항을 가진다. 그 다음으로 중요한 개념이 위상이다. 식 (5)를 크기와 위상으로 다시 표현하면 아래와 같다.

                         (11)

임피던스의 위상은 전류 위상에 비해 전압 위상이 차이나는 정도를 의미한다. 페이저 관점에서 전압과 전류의 위상은 임피던스의 위상만큼 차이가 나게 된다. 이를 이해하기 위해 [표 1]을 살펴본다.

[표 1] 주파수별 임피던스의 변화

저항 소자는 주파수가 아무리 바뀌어도 임피던스의 변화가 없다. 하지만, 인덕터와 커패시터는 식 (4)에 의해 주파수별로 임피던스 특성이 바뀌게 된다. 인덕터의 경우 주파수가 0[DC]으로 가면 단락(短絡, short)으로 작용해 임피던스가 없지만 주파수가 매우 커지면 거의 개방(開放, open)처럼 행동해 임피던스가 무한대[혹은 전류가 흐를 수 없는 상태]가 된다. 커패시터는 주파수가 0[DC]일 때는 개방이었다가 주파수가 높아질수록 단락과 유사한 상태가 된다. 또한, 관심 있게 봐야 하는 부분은 임피던스의 위상이다. 식 (4)를 참고하면 저항은 위상 차이를 만들어내지 못하지만 인덕터는 $j$[=90˚]만큼 커패시터는 $-j$[= -90˚ 혹은 270˚]만큼의 위상 차이를 만들어낸다. 즉 전류 위상을 0˚라 가정하면 저항의 전압 위상은 0˚, 인덕터의 전압 위상은 90˚, 커패시터의 전압 위상은 -90˚이 된다.
AC 회로 이론에서는 새로운 개념이 마구 쏟아져 나온다. 영어를 쓰는 미국인에게는 자명한 내용이지만, 영어가 너무 먼 외국어인 우리에게는 외워야 할 골치 아픈 숙제이다. 어렵지만 어쩌겠는가! 헤비사이드가 한국 사람이 아닌 사실을 받아들인다.

                          (12)

임피던스는 복소수이기 때문에 실수부($R$)와 허수부($X$)로 나눌 수 있다. 임피던스의 실수부는 전류 흐름을 방해하는 저항(resistance)을 의미하고 허수부는 에너지 저장과 관련된 리액턴스(reactance)를 뜻한다. 식 (4)에서 임피던스가 허수를 가질 수 있는 소자는 커패시터와 인덕터이다. 커패시터와 인덕터는 에너지를 전기와 자기 형태로 저장하는 소자이다. 그런데, 에너지 저장과 리액턴스는 무슨 관계인가? 리액턴스를 굳이 한글로 번역하면 반발 비율 혹은 반응 비율이다. 용수철(spring)과 같은 물건은 외부에서 힘을 주면 에너지를 저장했다가 다시 튕기는[혹은 반발하는] 능력이 있다. 마찬가지로 커패시터와 인덕터도 외부에서 전압이나 전류가 가해지면 에너지를 저장했다가 반드시 에너지를 방출하는 반발을 한다. 이런 의미에서 임피던스의 허수부는 리액턴스라는 이름이 붙어있다. 임피던스의 역수(multiplicative inverse or reciprocal)어드미턴스(admittance)라고 한다. 어드미턴스를 한글로 번역하면 허용 비율 혹은 허락 비율이다. 즉, 전류가 잘 흐를 수 있도록 전류를 허용하는 비율이라는 의미이다. 어드미턴스의 실수부($G$)는 컨덕턴스(conductance), 허수부($B$)서셉턴스(susceptance)라고 한다. 이를 각각 한글로 번역하면 컨덕턴스는 전도 비율, 서셉턴스는 허가 비율이 된다. 서셉턴스라는 말이 생긴 이유는 리액턴스[반발 비율]의 역수와 관계된 전기 용량(capacitance)을 허락 비율(permittance)로 표현했기 때문이다.[서셉턴스의 제안자인 스타인메츠Charles Steinmetz(1865–1923)는 이 관점에 절대 동의하지 않을 것 같다.] 반발과 허용을 영어로 표현하면 리액션(reaction), 서셉션(susception)이 된다. 그래서 용어를 넘어 영어 자체로 생각하면, 임피던스와 관련된 복잡한 전공 용어를 쉽게 외울 수 있다.

[그림 5] 임피던스의 직렬 등가 회로

[그림 6] 어드미턴스의 병렬 등가 회로

임피던스를 구성하는 실수부와 허수부는 [그림 5]와 같은 직렬 등가 회로로 나타낼 수 있다. 식 (12)에 따라 $\bf Z$는 $R$과 $jX$가 덧셈으로 연결되므로, 실수부와 허수부인 $R$과 $jX$를 회로 소자로 생각하면 덧셈은 회로의 직렬(series) 구성이 된다. 마찬가지로 어드미턴스는 [그림 6]처럼 병렬 등가 회로로 표현된다. 왜냐하면 $\bf Y$는 $\bf Z$의 역수라서 $G$와 $jB$의 덧셈은 직렬이 아닌 병렬(parallel or shunt)로 해석되기 때문이다. 또한 식 (12)에 의해 직렬과 병렬 등가 회로는 서로 변환될 수 있다. 먼저 직렬에서 병렬 회로로 변환하는 직렬–병렬 변환(series-to-parallel conversion)은 다음과 같다.

                         (13)

동일한 방식으로 병렬에서 직렬로 가는 병렬–직렬 변환(parallel-to-series conversion) 관계도 얻는다.

                         (14)

만약 손실 있는 인덕터를 [그림 5]처럼 직렬로 모형화한다면, 식 (13)을 써서 직렬 회로를 근사적인 병렬 회로로 만들 수도 있다.

                         (15)

여기서 $R_s \ll 1$, $X_s$ = $\omega L_s$, ${\bf Z}_L$ = $R_s + j \omega L_s$ = $j \omega L_p /(1 + j \omega L_p/R_p)$, ${\bf Y}_L$ = $1/R_p -j/(\omega L_p)$이다. 누설 있는 커패시터의 모형화는 주로 [그림 6]과 같은 병렬 등가 회로를 선택한다. 이 경우의 등가 회로를 직렬로 바꾸려면 식 (15)와 비슷한 과정을 적용한다.

                         (16)

여기서 $R_p$ = $1/G_p \gg 1$, $B_p$ = $\omega C_p$, ${\bf Y}_C$ = $G_p + j \omega C_p$ = $j \omega C_s /(1 + j \omega R_s C_s)$, ${\bf Z}_C$ = $R_s -j/(\omega C_s)$이다.
진도를 좀더 나가본다. 임피던스와 어드미턴스를 동시에 이르는 말로 임미턴스(immittance)란 용어도 가끔가다 쓴다. 회로망(circuit network)에서 임피던스인 경우와 어드미턴스인 경우가 모두 동일한 특성을 보여, 이 두 경우를 하나로 표현하고 싶을 때 임미턴스를 사용한다. 혹은 스미쓰 도표(Smith chart)처럼 임피던스와 어드미턴스를 모두 표현한 그림을 칭할 때 임미턴스 도표라고 할 수도 있다. 임미턴스 개념의 발명자는 전자 회로 분야 영웅 중 한 명인 보디Hendrik Wade Bode(1905–1982)이다.
임피던스 용어에 등장하는 -언스(-ance)는 원래 상태(state)라는 의미이지만, 헤비사이드는 크기 성질(extensive property)을 표현하기 위해 일관되게 물리량에 -언스를 붙였다. 크기 성질은 물리량이 크기에 따라 변하는 뜻이며, 크기 성질을 가진 물리량은 서로 더할 수 있다.[저항의 직렬과 병렬을 생각하면, 크기 성질은 당연히 더할 수 있다.] 예를 들어, 저항 상태 혹은 저항 비율인 임피던스는 -언스로 끝나기 때문에 소자의 크기에 따라서 임피던스가 변한다. 크기 성질의 반대 되는 특성은 세기 성질(intensive property)이다. 크기 성질과 다르게 세기 성질은 물리량이 크기에 따라 변하지 않고, 세기 성질이 있는 물리량은 더할 수 없다. 헤비사이드는 세기 성질을 나타낼 때는 꼭 -도(-ivity)를 썼다. 세기 성질을 가진 물리량은 매질과 관계가 깊어서 전도도(conductivity), 비저항(resistivity), 유전율(permittivity) 등이 있다. 지금 쓰는 많은 회로 용어를 제안한 헤비사이드였지만, 고집스럽게 밀던 허락 비율인 퍼미턴스(permittance)는 전기 용량(capacitance)으로 바뀌었다. 전기 용량의 영어 표현인 커패시턴스는 전기 유체(electric fluid)의 흐름을 담는 그릇의 크기라는 느낌이 너무 강해서, 헤비사이드는 커패시턴스 대신 용수철(spring)과 관계된 퍼미턴스를 계속 사용했다. 훅의 법칙(Hooke's law) $F$ = $-kx$에 따라 힘($F$)을 가하면 변위 $x$만큼 용수철은 약간 늘어난다. 용수철이 늘어나지 않고 버티는 비율 $k$는 강성(stiffness) 혹은 용수철 상수(spring constant)라 한다. 헤비사이드는 퍼미턴스를 강성 $k$의 역수로 상상했다. 회로에 힘[전압 $V$를 의미]을 가하면, 커패시터에 변위[맥스웰을 따라서 커패시터 내부에 존재하는 변위 전류(displacement current) 혹은 분극(polarization)을 상상]가 생긴다. 커패시터 내부에 유전체가 있다면, 전기장에 의해 없던 전하가 생기는 분극(polarization)이 변위에 해당한다.[분극 정의에 극성이 다른 두 전하 사이의 변위가 들어있다.] 이때 생기는 변위 $x$는 강성의 역수와 힘의 곱인 $1/k \cdot F$과 동일하다.[회로적으로 쓰면 $Q$ = $C V$이다. 여기서 $Q,C,V$는 각각 $x, 1/k, F$에 연결된다.] 그래서 강성이란 뜻의 반대말로 허락 비율인 퍼미턴스를 창의적으로 제안했다. 퍼미턴스의 역수는 탄성 비율[$k$에 해당]인 일래스턴스(elastance) $S$로 불렀다. 퍼미턴스나 일래스턴스란 명칭은 이미 사라졌지만, 퍼미턴스(permittance)의 세기 성질을 나타내는 유전율(permittivity)은 잘 살아남았다.
평행판 커패시터의 공식 $S$ = $1/C$ = $d \mathbin{/}(\epsilon A)$에도 일래스턴스의 개념이 잘 포함되어 있다. 여기서 $d, A$는 각각 평행판의 간격과 면적이다. 커패시터의 간격 $d$를 늘리면, 두 평행판 사이의 인력이 약해져서 전극에 전하를 집어넣기 힘들고 모아져 있던 같은 전하가 외부로 튀어나오려는 힘이 강해진다. 이는 용수철 관점에서 강성이 커져 용수철을 늘리거나 줄이기 힘든 조건과 비슷하다. 반대로 $d$를 줄이면 두 평행판에 각각 합쳐진 반대 극성의 전하가 잡아당기는 힘이 커진다. 이로 인해 외부에서 전하를 추가하기 쉬워진다. 이 결과를 용수철로 유추하면, 강성이 약해서 용수철을 변형하기 쉬운 상태와 같아진다. 그래서 전기 용량의 역수는 일래스턴스란 설명이 잘 맞다.

[참고문헌]
[2] A. E. A. Araújo and D. A. V. Tonidandel, "Steinmetz and the concept of phasor: A forgotten story," J. Control Autom. Electr. Syst., vol. 24, pp. 388–395, 2013. 

[다음 읽을거리]
1. 전송선 이론
2. 전압해와 전류해의 유일성