대각화의 기본 개념
대각화(diagonalization)는 주어진 행렬을 그 행렬과 동치인 대각 행렬로 변환하는 과정이다. 이 대각 행렬은 주어진 행렬과 동일한 고유값을 가지며, 계산 및 해석을 단순화하는 데 유용하다. 이를 통해 복잡한 선형 변환 문제를 보다 쉽게 풀 수 있다.
대각화의 수학적 정의
행렬 \mathbf{A}가 대각화 가능하다는 것은 \mathbf{A}가 다음과 같은 형태로 표현될 수 있음을 의미한다:
여기서:
- \mathbf{P}는 \mathbf{A}의 고유벡터들로 이루어진 정방 행렬이다.
- \mathbf{D}는 \mathbf{A}의 고유값들을 대각 성분으로 가지는 대각 행렬이다.
- \mathbf{P}의 역행렬이 존재해야 한다.
대각화 절차
- 고유값 계산
행렬 \mathbf{A}의 고유값을 구하기 위해, 다음의 특성 방정식을 푼다:
여기서 I는 단위 행렬이며, \lambda는 고유값을 나타낸다. 이 방정식을 풀면 \mathbf{A}의 고유값 λ₁, λ₂, ..., λₙ이 얻어진다.
- 고유벡터 계산
각 고유값 \mathbf{\lambda}_k에 대해 다음의 식을 풀어 고유벡터 \mathbf{v}_k을 구한다:
이 식을 만족하는 \mathbf{v}_k는 \mathbf{\lambda}_k에 대응하는 고유벡터이다. 이때 \mathbf{v}_k는 영벡터가 아닌 벡터여야 한다.
- 고유벡터로 행렬 \mathbf{P} 구성
모든 고유벡터들을 열 벡터로 하는 행렬 \mathbf{P}를 구성한다:
여기서 \mathbf{v}_1, \mathbf{v}_2, \dots \mathbf{v}_n은 각각 고유값 \lambda_1, \lambda_2, \dots, \lambda_n에 대응하는 고유벡터들이다.
- 대각 행렬 \mathbf{D}구성
고유값들을 대각 성분으로 가지는 대각 행렬 \mathbf{D}를 구성한다:
- 행렬의 대각화
위의 구성 요소들을 사용하여 주어진 행렬 \mathbf{A}를 대각화할 수 있다:
대각화의 예제
예제 1: 2x2 행렬의 대각화
주어진 행렬 \mathbf{A}가 다음과 같다고 가정하자:
- 고유값 계산
먼저, 특성 방정식을 풀어 \mathbf{A}의 고유값을 구한다:
계산하면 다음과 같다:
이 방정식을 풀면 고유값 \lambda_1 = 5, \lambda_2 = 2를 얻는다.
- 고유벡터 계산
고유값 \lambda_1 = 5에 대응하는 고유벡터를 구한다:
이 식을 만족하는 \mathbf{v}_1 = \begin{pmatrix} 1 \\ 1 \end{pmatrix}이다.
고유값 \lambda_2 = 2에 대해 동일한 방법으로 고유벡터 \mathbf{v}_2 = \begin{pmatrix} 1 \\ 2 \end{pmatrix}를 구할 수 있다.
- 행렬 \mathbf{P} 구성 고유벡터들로 행렬 \mathbf{P}를 구성한다:
- 대각 행렬 \mathbf{D} 구성
고유값들로 대각 행렬 \mathbf{D}를 구성한다:
- 행렬의 대각화
이제 주어진 행렬 \mathbf{A}를 대각화할 수 있다:
행렬의 역행렬 계산
앞에서 얻은 행렬 \mathbf{P}의 역행렬 을 계산하여 대각화를 완성하겠다. 행렬 \mathbf{P}는 다음과 같다:
\mathbf{P}의 역행렬 \mathbf{P}^{-1}은 다음과 같이 구할 수 있다:
여기서 \text{det}{(\mathbf{P})}는 행렬 \mathbf{P}의 행렬식, \text{adj}{(\mathbf{P})}는 \mathbf{P}의 수반 행렬이다. 먼저 행렬식을 계산한다:
따라서 \mathbf{P}의 역행렬은 다음과 같이 계산된다:
행렬의 대각화 완성
이제, 주어진 행렬 \mathbf{A}를 대각화할 수 있다. 이 과정은 다음과 같다:
이를 계산하면:
다시 역행렬 \mathbf{P}^{-1}을 곱하면 원래의 행렬 \mathbf{A}를 얻을 수 있다. 따라서 주어진 행렬 \mathbf{A}는 성공적으로 대각화되었음을 확인할 수 있다.
예제 2: 3x3 행렬의 대각화
주어진 행렬 \mathbf{B}가 다음과 같다고 가정하자:
이 행렬의 대각화를 수행하는 과정도 이전 절차와 유사하게 진행된다.
- 고유값 계산
먼저, 특성 방정식을 풀어 \mathbf{B}의 고유값을 구한다:
여기서 \lambda는 \mathbf{B}의 고유값이다. 이 방정식을 풀어 \lambda_1, \lambda_2, \lambda_3를 구한다.
-
고유벡터 계산
각 고유값에 대해 (\mathbf{B} - λ_k \mathbf{I}) \mathbf{v}_k = \mathbf{0}를 풀어 고유벡터를 구한다. -
행렬 \mathbf{P} 구성
고유벡터들로 행렬 \mathbf{P}를 구성한다. -
대각 행렬 D 구성
고유값들로 대각 행렬 \mathbf{D}를 구성한다. -
행렬의 대각화
\mathbf{B}를 대각화하는 과정은 \mathbf{B} = \mathbf{P} \mathbf{D} \mathbf{P}^{-1}를 계산하는 것으로 완성된다.
대각화가 불가능한 경우
모든 행렬이 대각화 가능한 것은 아니다. 대각화가 가능하려면 \mathbf{P}의 역행렬이 존재해야 하며, \mathbf{A}의 고유값들이 중복되지 않거나 중복된 경우에도 충분한 수의 독립된 고유벡터가 있어야 한다.
이와 같은 경우 조르당 표준형을 사용하여 대각화에 가까운 형태로 표현할 수 있다. 그러나 조르당 표준형은 이 책의 후반부에서 다루며, 지금은 대각화의 범위를 넘어서므로 이 시점에서 다루지 않는다.