Farikh_ notes


Menyelesaikan Persamaan Menggunakan Metode Gauss

Posted in matlab,numerik oleh farikhardiansyah pada Desember 23, 2012

dalam Bab ini kita akan belajar menyelesaikan suatu persamaan menggunakan metode Gauss
soal :

x1 + 2×2 + x3 + 3×3 = 2
4×1 + 4×2 + x3 + x3 = 5
x1 + 2×2 + 4×3 + 3×3 = 4
2×1 + 2×2 + 4×3 + 3×3 = 10

penyelesaian dengan Matlab :

disp(‘===================================================================’)
disp(‘KOMPUTASI NUMERIK’)
disp(‘PROGRAM PENYELESAIAN PERSAMAAN [A]{X} = {B}’)
disp(‘MENGGUNAKAN METODE ELIMINASI GAUSS’)
disp(‘===================================================================’)

clear all;
clc;

%Membaca File data matriks
load data.txt
disp(‘Matriks A = ‘)
AB=data;
[m1 n1]=size(AB);
A=AB(:,1:n1-1)
disp(‘Matrik B = ‘)
B=AB(:,n1)
[m n]=size(A);
if m~=n
disp([‘Baris = ‘,num2str(m),’ ; Kolom = ‘,num2str(n)])
disp(‘Bukan Matriks Persegi’)
disp(‘Matrik [A] Tidak Mempunyai Invers.’)
return
end
detA=det(A);
if detA==0
disp(‘A adalah Matriks singular’)
disp(‘Matrik [A] Tidak Mempunyai Invers.’)
return
end

disp(‘Langkah awal : Membuat matriks M = A|B|I’)
disp(‘====================================================================’)
MATRIX=[A B eye(m)]
for x=1:m
disp([‘Eliminasi Kolom ‘ num2str(x)])
disp(‘================================================================’)
disp([‘B’ num2str(x) ‘/a’ num2str(x) num2str(x)])
MATRIX(x,:)=MATRIX(x,:)./MATRIX(x,x)
xo=x-1; %Baris di atas x
xn=m-x; %Baris di bawah x
for xx=1:xo
disp([‘B’ num2str(xx) ‘ – a’ num2str(xx) num2str(x) ‘*B’ num2str(x)])
MATRIX(xx,:)=MATRIX(xx,:)-MATRIX(x,:).*MATRIX(xx,x)
end
for jj=1:in
disp([‘B’ num2str(x+jj) ‘ – a’ num2str(x+jj) num2str(x) ‘*B’ num2str(x)])
MATRIX(x+jj,:)=MATRIX(x+jj,:)-MATRIX(x,:).*MATRIX(x+jj,x)
end
end
disp(‘Invers matrik A adalah …’)
Invers=MATRIX(:,m+2:end)
disp(‘SOLUSI PERSAMAAN ADALAH …’)
disp(‘ ‘)

for x=1:m
disp([‘X’ num2str(x) ‘ = ‘ num2str(MATRIX(x,m+1)) ])
end

Semoga bermanfaat….. 😀

Laman Berikutnya »