엔지니어가 되고 싶은 공돌이
03. 행렬(Matrix) 본문
3. 1. 행렬(Matrix)
- 전치행렬(Transpose Matrix, AT): n X m 행렬 A가 있을 때, 행과 열을 바꾼 m X n 행렬.
- 대칭행렬(Symmetric Matrix): A = AT 인 행렬.
- 대각행렬(Diagonal Matrix): n-square Matrix에서 대각원소 a11, a22, … , ann 이외의 모든 원소가 0인 행렬.
- 단위행렬(Identity Matrix, I): Diagonal Matrix에서 대각원소가 모두 1인 행렬.
- 역행렬(Inverse Matrix, A-1): square Matrix A에 대해 AB = BA = I 를 만족하게 하는 Matrix B.
- 행렬식을 이용한 역행렬 A-1 = [Aij]T / det(A).
- 행렬식(Determinant, | A | or det(A) )
- 소행렬(Minor Matix: Mij): n-square Matrix에서 i번째 항과 j번째 열을 제거해서 얻은 (n-1) X (n-1) 행렬.
- 여인수(Cofactor: Aij): Aij = (-1)i+j det(Mij).
- 여러 개의 선형방정식이 있을 때, 이를 모아서 Augmented Matrix로 표현하고, 기본 행 연산(Elementary Row Operations)을 반복해서 해를 구할 수 있다.
- 기본 행 연산(Elementary Row Operations).
1) 두 행을 교환한다.
2) 하나의 행에 0이 아닌 상수를 곱한다.
3) 하나의 행에 0이 아닌 상수를 곱하고 다른 행에 더한다.
3. 2. 가우스 소거법(Gauss Elimination)
- Elementary Row Operations을 반복하여 Augmented Matrix를 Upper Triangular Matrix로 바꾸고 역대입법을 이용해서 해를 구한다.
1) 만약 a11 = 0 이면, ak1 ≠ 0을 찾아서 1행과 k행을 교환.
2) 기본행 연산을 적용해서 a21 = … = ai1 = … = an1 = 0 으로 만든다.
3) 만약 a22 = 0 이면, ak2 ≠ 0을 찾아서 2행과 k행을 교환.
4) 기본행 연산을 적용해서 a32 = … = ai2 = … = an2 = 0 으로 만든다.
5) 위 과정을 여러 번 반복해서 Upper Triangular Matrix를 얻는다.
for j = 1 to n-1
for i = j + 1 to n
i row = i row + j row X (-aij / ajj).
6) row 행의 끝부터 역대입법을 통해 변수의 값을 계산한다.
- 부분피벗 가우스 소거법(Partial Pivoting Gauss Elimination Method).
Gauss Elimination을 하기 전에 절대 값이 가장 큰 항을 찾아서 그 항이 속한 행과 첫번 째 행을 먼저 바꾼 후 소거법을 실행하면 오차를 줄일 수 있다.
컴퓨터에서 연산을 할 때는 자릿수를 맞춰주기 위해 곱셈이나 나눗셈을 실행해야 하는데 첫 항에 큰 값을넣고 연산을 진행하게 되면 곱셈 연산이 아닌 나눗셈 연산을 수행하게 되어 더 낮은 자릿 수에서 연산을 진행하게 되므로 오차의 자릿수가 달라져 오차가 줄어들게 된다.
- 가우스 소거법의 계산량.
1) 전체적으로 필요한 곱셈 수 O(n3 / 3).
2) 기억용량: n2.
3. 3. 가우스 조르단 소거법(Gauss-Jordan Elimination)
- Elementary Row Operations을 반복하여 Augmented Matrix를 Upper Triangular Matrix로 바꾸고 다시, Identity Matrix로 바꾼다.
'Mathematics > Numerical Analysis' 카테고리의 다른 글
06. 선형방정식의 반복법(Iteration Method of Linear Equation) (0) | 2024.07.12 |
---|---|
05. 노름(Norm) (0) | 2024.07.12 |
04. LU 분해법과 숄레스키 방법(LU Decomposition Method and Cholesky Method) (0) | 2024.07.12 |
02. 급수와 함수의 전개(Expansion of Series and Functions) (0) | 2024.07.12 |
01. 수와 오차(Number and Error) (0) | 2024.07.12 |