1. 程式人生 > >高斯順序消去法的Matlab實現

高斯順序消去法的Matlab實現

高斯順序消去法的Matlab實現

%消元過程
n=input('input n:');
A=input('input your matrix:');
b=input('input your bias');
for k=1:n-1
    A(k+1:n,k)=A(k+1:n,k)/A(k,k);         %運算元
    A(k+1:n,k+1:n)=A(k+1:n,k+1:n)-A(k+1:n,k)*A(k,k+1:n);
    b(k+1:n)=b(k+1:n)-b(k)*A(k+1:n,k); 
end
A   
%回代過程
n=n;
U=A;
b=b;
for j =n:-1:2
    b(j)=b(j)/U(j,j);
    b(1:j-1)=b(1:j-1)-b(j)*U(1:j-1,j);
end
b(1)=b(1)/U(1,1);
b%這個就是線性方程組的解了