Sunday, October 5, 2014

Program Matlab untuk Penyelesaian SPL dengan Metode Gauss Jordan



Berikut merupakan program untuk mencari penyelesaian SPL dengan program Matlab dengan metode Gauss Jordan

clc,clear all,close all
disp('===================================================================')
disp('PROGRAM PENYELESAIAN PERSAMAAN SIMULTAN [A]{X} = {B}')
disp('MENGGUNAKAN METODE ELIMINASI GAUSS JORDAN')
disp('===================================================================')
%Membaca File data matriks
A=input('masukkan matrik lengkap = ');
disp('Matriks A adalah ')
AB=A;
[m1 n1]=size(AB);
A=AB(:,1:n1-1)
disp('Matrik B adalah ')
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 i=1:m
disp(['Eliminasi Kolom ' num2str(i)])
disp('================================================================')
disp(['B' num2str(i) '/a' num2str(i) num2str(i)])
MATRIX(i,:)=MATRIX(i,:)./MATRIX(i,i)
io=i-1; %Baris di atas i
in=m-i; %Baris di bawah i
for ii=1:io
disp(['B' num2str(ii) ' - a' num2str(ii) num2str(i) '*B' num2str(i)])
MATRIX(ii,:)=MATRIX(ii,:)-MATRIX(i,:).*MATRIX(ii,i)
end
for jj=1:in
disp(['B' num2str(i+jj) ' - a' num2str(i+jj) num2str(i) '*B' num2str(i)])
MATRIX(i+jj,:)=MATRIX(i+jj,:)-MATRIX(i,:).*MATRIX(i+jj,i)
end
end
disp('Invers matrik A adalah ...')
Invers=MATRIX(:,m+2:end)
disp('SOLUSI PERSAMAAN SIMULTAN ADALAH ...')
disp(' ')
for i=1:m
disp(['X' num2str(i) ' = ' num2str(MATRIX(i,m+1)) ])

end

Program Matlab untuk Penyelesaian SPL dengan Metode Gauss Jordan Rating: 4.5 Diposkan Oleh: Unknown