LAPORAN PRAKTIKUM FISIKA KOMPUTASI Judul : Metode Iterasi Jacobi Pelaksanaan Praktikum Hari : Senin
Tanggal : 1 Juni 2015
Jam : 5-6
Oleh : Nama : Mei Budi Utami Nim : 081211332009
Dosen Pembimbing
: Endah Purwanti S.Si, M.Si.
LABORATORIUM Komputer
UNIVERSITAS AIRLANGGA SURABAYA
A. DASAR TEORI Pada praktikum kali ini, kami akan membahas sebuah metode analisis numeric untuk menyelesaikan persamaaan linier yaitu dengan Metode Iterasi Jacobi. Metode Iterasi Jacobi merupakan salah satu bidang analisis numerik yang digunakan untuk menyelesaikan permasalahan persamaan linear dan sering dijumpai dalam berbagai disiplin ilmu. Metode Iterasi Jacobi merupakan salah satu metode tak langsung, yaitu bermula dari suatu hampiran penyelesaian awal dan kemudian berusaha memperbaiki hampiran dalam tak berhingga namun langkah konvergen. Metode Iterasi Jacobi ini digunakan untuk menyelesaikan persamaan linear berukuran besar dan proporsi koefisien nolnya besar. Teknik iteratif jarang digunakan untuk menyelesaikan SPL berukuran kecil karena metode-metode langsung seperti metode eliminasi Gauss lebih efisien dari pada metode iteratif. Akan tetapi, untuk SPL berukuran besar dengan persentase elemen nol pada matriks koefisien besar, teknik iteratif lebih efisien daripada metode langsung dalam hal penggunaan memori komputer maupun waktu komputasi. Metode iterasi Jacobi, prinsipnya: merupakan metode iteratif yang melakuakn perbaharuan nilai x yang diperoleh tiap iterasi (mirip metode substitusi berurutan, successive substitution).
Metode Iterasi Jacobi
:
Dengan syarat
: |a11| > |aij|
Untuk Iterasi 1
:
Dimana X1,X2,X3 adalah tebakan awal
Untuk Iterasi 2
Dimana X1,X2,X3 hasil dari Iterasi 1. Dan untuk Iterasi selanjutnya kita gunakan X1,X3,X3 hasil iterasi
B. TUGAS DAN PEMBAHASAN Contoh Soal : Persamaan yang akan diselesaiakan menggunakan metode Jacobi 4x1 –x2 + x3 = 7 4x1 – 8x2 + x3 = -21 -2 x1 + x2 + x3 = 15 Solusi untuk Analitik : Untuk menyelesaikan sistem persamaan dengan metode Jacobi, persamaan tersebut kita data kembali sebagai berikut : a11 4 a21 4 a31 -2
a12 -1 a22 -8 a32 1
a13 1 a23 1 a33 5
Dengan tebakan awal x1 = 1, x2 = 2, x3 =3. Didapatkan hasil :
b1 7 b2 -21 b3 15
Maka sebelum pembuatan script pada Delphi, berikut ini flowchart metode Jacobi untuk semua program :
Dan berikut ini merupakan kodingan lengkap dari penyelesaian persamaan regresi non linier .
var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var xx,a:array[0..100,0..100] of Real; s,xo,x,b:array[0..100] of real; n,l,k,i,j:integer; jum:real; begin n:=StrToInt(edit1.text); StringGrid2.RowCount:=n+1; with stringgrid1 do begin for i:=0 to 2 do for j:=0 to 2 do begin
a[j,i]:=strtofloat(cells[i,j]); end; end; with stringgrid1 do begin for i:=0 to 2 do begin b[i]:=strtofloat(cells[3,i]); end; end;
with stringgrid3 do begin for k:=1 to n do begin for l:=0 to 2 do begin s[l]:=StrToFloat(StringGrid3.Cells[0,l]); StringGrid3.cells[0,l]:=FloatToStr(s[l]); xo[l]:=s[l]; end; for i:=0 to 2 do begin jum:=0; for j:=0 to 2 do begin xo[j]:=StrToFloat(StringGrid3.Cells[0,j]); if i <> j then begin jum:=jum+(a[i,j]*xo[j]); x[i]:=(b[i]-jum)/a[i,i]; xx[k,i]:=x[i]; StringGrid3.Cells[0,i]:=FloatToStr(x[i]); end; end; end; end; end; with stringgrid2 do begin for k:=1 to n do begin cells[0,k]:=FloatToStr(k); for i:=0 to 2 do cells[i+1,k]:=FloatToStr(xx[k,i]); end; end; end; end.
Pembahasan Koding : Pada koding awal saat pendeklarasian variabel, dengan mengggunakan array, nilai integral, dan real. Kemudian stringgid1 sebagai inputan data nantinya. Dan kodingan di dtringgrid2 adalah rumus dari metode Jacobi , sedangkan stringgrid3 sebagai tempat hasil iterasi terakhir dan tempat untuk tebakan awal kita. Dan berikut ini adalah tampilam program yang telah jadi. Untuk gambar (1) merupakan tampilan awal program
Gambar 1. Tampilan awal program Selanjutnya, kita mengisi pada stringgrid secara manual, yaitu data inputan, tabakan awal serta jumlah iterasi
Gambar 2. Tampilan program sebelum di run Selanjutnya, kita pilih proses. Tampilan program yang dihasilkan adalah :
Gambar 3. Tampilan program setelah di run
C. PEMBAHASAN Pada hasil running ini kita bisa melihat bahwa hasilnya hampir sama dengan hasil analitiknya. Tebakan awal yang kita gunakan untuk x1 = 1, x2 = 2, x2 = 2 karena pada metode Jacobi ini kita harus menggunakan nilai tebakan terlebih dahulu untuk menhitungnya. Dan setelah dip roses ternyata hasilnya berubah menjadi 1,999; 3,9999; 2,9999. Hasil ini adalah hasil iterasi terakhir atau nilai iterasi ke sepuluh dari metode Jacobi ini.