MT 03 Lukman
MT 03 Lukman
PENDAHULUAN
[106.8]
[279.2]
BAB II
DASAR TEORI
Banyak sistem riil dalam berbagai bidang yang dapat dimodelkan dalam
bentuk sistem persamaan linear, dengan melibatkan banyak variabel yang tidak
mungkin diselesaikan secara manual. Untuk menangani sistem seperti itu, terdapat
beberapa metode penyelesaian sistem persamaan linear tersebut secara efisien dan
akurat. Dalam modul ini disajikan metode yang populer yaitu : metode eliminasi
Gauss. Sistem n persamaan dan n variabel dituliskan sebagai berikut:
Atau =
2.1 Metode eliminasi Gauss
Dalam eliminasi Gauss, sistem persamaan ditransformasikan ke dalam
sistem ekuivalen dalam bentuk segitiga. Jadi matriks koefisien
dikonversikan ke matriks segitiga, bentuk baru ini mudah disubstitusikan
balik.
Algoritma :
MASUKAN
Dimensi matriks
Matriks koefisien
Larik kanan
KELUARAN : larik penyelesaian
1. Untuk j = 1 sampai n
1.1 Jika ai,j = 0
1.1.1 cari nilai ai+1, j <> 0 untuk i + 1 n.
1.1.2 jika tak ditemukan ai+1, j <> 0, keluar, tidak ada solusi
2
BAB III
PEMBAHASAN
3.1 Sourcode program spl_gauss.pas
{
Nama
NIM
Nama program
Deskripsi program
:
:
:
:
Program spl_gauss;
uses crt;
type
Mat55 = array[0..5,0..5] of real;
Mat56 = array[0..5,0..6] of real;
var
A : Mat55;
G : Mat56;
b,x : array [0..5] of real;
factor, dummy : real;
i, j, k, n : integer;
procedure inisialisasi;
begin
{ inputan matriks
[25 5
1][x1] [106.8]
[64 8
1][x2]= [177.2]
[144 12 1][x3] [279.2]
}
A[0][0] := 25;
A[0][1] := 5;
A[0][2] := 1;
A[1][0] := 64;
A[1][1] := 8;
A[1][2] := 1;
A[2][0] := 114;
A[2][1] := 12;
A[2][2] := 1;
b[0] := 106.8;
b[1] := 177.2;
b[2] := 279.2;
n := 3;
end;
begin
clrscr;
inisialisasi;
{ bentuk matriks gabungan }
for i :=0 to n-1 do
for j:= 0 to n-1 do
G[i][j] := A[i][j];
for j :=0 to n-1 do
G[j][n] := b[j];
writeln('matriks gabungan : ');
writeln;
for i := 0 to n-1 do
begin
for j := 0 to n do
write(G[i][j]:10:3);
writeln;
end.
end;
writeln;
{Proses Eliminasi }
for i:= 0 to n-2 do
begin
for j:= i+1 to n-1 do
begin
factor := G[j][i] / G[i][i];
for k := i to n do
G[j][k] := G[j][k] - factor * G[i][k];
end;
end;
writeln('matriks setelah eliminasi : ');
writeln;
for i:= 0 to n-1 do
begin
for j := 0 to n do
write(G[i][j]:10:3);
writeln;
end;
{Substitusi Mundur }
x[n-1] := G[n-1][n]/G[n-1][n-1];
for k:= 0 to n-2 do
begin
i := n-2-k;
dummy := G[i][n];
for j := i+1 to n-1 do
dummy := dummy - G[i][j] * x[j];
x[i] := dummy /G[i][i];
end;
writeln;
writeln('Hasil akhir :');
for i := 0 to n-1 do
writeln('x[',i:2,'] = ', x[i]:10:3);
readkey;
Proses eliminasi
n = 3, inputan matriks yang sudah digabung
G[0][0]...G[0][3] =
[25
5 1
106.8]
G[1][0]...G[1][3] =
[64
8 1
177.2]
G[2][0]...G[2][3] =
[144 12 1
279.2]
: G[j][i] / G[i][i]
: G[1][0] / G[0][0]
: 64 / 25
: 2,56
G[1][0]
b. k = 1
G[j][k]
G[1][1]
c. k = 2
G[j][k]
G[1][2]
d. k = 3
G[j][k]
G[1][3]
b. j = 2
factor
: G[j][i] / G[i][i]
: G[2][0] / G[0][0]
: 114 / 25
: 4,56
G[2][0]
f. k = 1
G[j][k]
G[2][1]
g. k = 2
G[j][k]
G[2][2]
h. k = 3
G[j][k]
G[2][3]
: G[j][i] / G[i][i]
: G[2][1] / G[1][1]
: -10,8 / -4,8
: 2,25
Untuk iterasi k = i = 1 sampai n = 3
i. k = 1
G[j][k]
G[2][1]
j. k = 2
G[j][k]
G[2][2]
k. k = 3
G[j][k]
G[2][3]
3.3.2
G[0][0]...G[0][3] =
[25 5
G[1][0]...G[1][3] =
G[2][0]...G[2][3] =
[0
1
-0,05
106.8 ]
8,66 ]
: G[2][3] / G[2][3]
: 8,66 / -0,05
: -173,2
Untuk iterasi k = 0 sampai n - 2 = 1
1. k = 0
i=n2k
i=32-0=1
dummy
: G[i][n]
: G[1][3]
: -96,208
: dummy / G[i][j]
x[1]
: -366,4 / -4,8
: 76,33
2. k = 1
i=n2k
i=32-1=0
dummy
: G[i][n]
: G[0][3]
: 106,8
b. j = 2
dummy : dummy G[i][j] * x[j]
: 106,8 G[0][2] * x[2]
: 106,8 1 * -173,2
: -101,667
iterasi j berhenti karena sudah sampai 2
x[i]
: dummy / G[i][j]
x[0]
: -101,667 / 25
: -4,067
BAB IV
KESIMPULAN
10
Daftar Pustaka
Sasongko, Priyo Sidik. 2013. Modul Praktikum Metode Numerik. Semarang:
Jurusan Ilmu Komputer /Informatika, Undip.
11