[matlab] 15.Gauss소거법


선형일차연립방정식의 해법-Gauss 소거법



이번시간에는 선형일차연립방정식의 수치해를 구하는 방법에 대해 알아보겠습니다.

대표적으로 Gauss 소거법이 있죠~

Gauss 소거법에 대해 간단히 알아보고, matlab으로 구현해보겠습니다.


image




image



수식은 복잡하지만 간단한 아이디어라는 것을 알 수 있습니다.

그러면 matlab을 이용하여 예제를 풀어보면서 익혀볼까요?


image



matlab 코드입니다.


A=[4 8 0 -4; 3 2 1 0; 1 3 1 1; -2 1 5 6];
b=[-4; 2; 2; 5];
Ab=[A b]; %첨가행렬
[R,C]=size(Ab);
for j=1:R-1
    for i=j+1:R
        Ab(i,j:C)=Ab(i,j:C)-Ab(i,j)/Ab(j,j)*Ab(j,j:C);
    end
end
Ab
y=zeros(R,1); %% 연립방정식의 수치해
y(R)=Ab(R,C)/Ab(R,R);

for i=R-1:-1:1 %%후치법
    y(i)=(Ab(i,C)-Ab(i,i+1:R)*y(i+1:R))/Ab(i,i);
end
y



실행결과입니다.


image