4. 가우스 조르당 방법
1) 가우스 조르당 방법이란?
- 가우스 조르당 방법은 행렬의 역행렬을 구하기 위해서 사용되며, 이를 이용하여여 방정식의 해를 구할 수 있음.
- 방정식의 개수가 수십 개인 작은 크기의 연립방정식의 실근에 매우 근접한 해를 구할 수 있음.
- 가우스 소거법을 이용하여 변환한 상삼각행렬 U에 기본행 연산과정을 반복 적용하여 단위 행렬 I로 변환하면 첨가행렬 [Aᅵb]는 동치인 [Iᅵb’]이 되어 b’가 Ax=b의 해가 되도록 하는 방법
※ 가우스 조르당 방법을 이용한 선형연립방정식의 해를 구하는 방법
1단계
- 전반 계산
→ 첫 번째 방정식에서 x1의 계수를 1로 하기 위해 x1 항의 계수를 첫 번째 방정식으로 나눔.
- 후반 계산
다른 모든 방정식에서 x1 을 소거
2단계
- 전반계산으로 둘째 방정식에서 x2 의 계수를 1로 만듦
- 후반계산으로 다른 모든 방정식에서 x2를 소거
계수행렬이 단위행렬이 될 때 까지 반복
2) 가우스 조르당 방법을 이용한 계산
3) MATLAB를 이용한 가우스 조르당 방법
5. Thomas 알고리즘
1) 삼대각행렬식에 대한 풀이
- 행렬에서 대각선 방향으로만 요소가 존재하는 경우에 사용
-> 0인 부분을 포함하여 가우스 소거법을 적용하면 비효율적
-> 0인 부분을 제외하고 가우스 소거법을 적용할 수 있도록 적용
2) Thomas 알고리즘 계산 과정
- 새로운 수정 계수 구성
- 후진 대입법으로 해를 계산
3) MATLAB을 이용한 Thomas 알고리즘
clc; clear all; close all
u = [1,2,2,3];
m = [1,2,3,4];
I = [1,1,2,3];
B = [1;2;3;4];
n = length(m);
u(1) = u(1)/m(1);
B(1) = B(1)/m(1);
for(i = 2:n)
k = m(i)-I(i)*u(i-1);
if(k == 0)
error('분모에 0이 들어가게 됩니다.')
end
I(i) = 0;
end
x(n) = B(n);
for(i = n-1:-1:1)
x(i) = B(i) - u(i)*x(i+1);
end
x
6. 피벗팅
- 피벗 재조정
- 해를 구할 때 방정식의 순서가 중요
- 컴퓨터는 길이가 정해진 메모리에 수를 저장
- 방정식의 위치에 따라 오차가 발생
-> 방정식의 해를 구하기 위해 피벗을 재조정
- 위와 같은 방정식 a(11)의 요소가 0이기 때문에 가우스 소거법을 적용할 수 없음.
- 방정식 (1)과 (3)을 바꿔 가우스 소거법을 적용
'수학 > 수치해석' 카테고리의 다른 글
11차시 - 반복법과 역행렬 (2) (0) | 2020.03.17 |
---|---|
11차시 - 반복법과 역행렬 (1) (0) | 2020.03.17 |
10차시 - 선형연립방정식과 해 (2) (0) | 2020.03.13 |
10차시 - 선형연립방정식과 해 (1) (0) | 2020.03.13 |
9차시 - 방정식의 해법 3 (2) (0) | 2020.03.12 |