Metode 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.
Metode ini ditemukan oleh matematikawan yang berasal dari Jerman,Carl Gustav Jakob Jacobi. Penemuan ini diperkirakan pada tahun 1800-an.
Kalau kita merubah dalam Sistem Persamaan Linear, maka dapat ditulis sebagai berikut
Kemudian, diketahui bahwa , di mana merupakan matriks diagonal, merupakan matriks segitiga bawah, dan merupakan matriks segitiga atas.
Kemudian, persamaan di atas dapat diubah menjadi :
Kemudian,
Jika ditulis dalam aturan iteratif, maka metode Jacobi dapat ditulis sebagai :
di mana merupakan banyaknya iterasi. Jika menyatakan hampiran ke- penyelesaian SPL, maka adalah hampiran awal.
Algoritma Metode Iterasi Jacobi
INPUT :
- , A, b, dan hampiran awal Y=(y1 y2 y3...yn)T , batas toleransi T, dan maksimum iterasi N
OUTPUT :
- X=(x1 x2 x3...xn)T, vektor galat hampiran , dan yang merupakan matriks dengan baris vektor-vektor hampiran selama iterasi.
- Set penghitung iterasi k=1
- WHILE DO
- FOR , Hitung
- SET
- IF ||X_Y||<T THEN STOP
- Tambah penghitung iterasi,
- FOR , Set yi=xi
- SET Y=(y1 y2 y3...yn)T
- Tulis pesan "Metode gagal setelah N iterasi"
- STOP
Algoritma Metode Iterasi Jacobi dalam bentuk software Matlab
Penggunaan algoritma Metode Iterasi Jacobi dalam bentuk matlab. Matlab merupakan program pengolahan data numerik.
INPUT :
- , A, b, dan hampiran awal Y=(y1 y2 y3...yn)T , batas toleransi T, dan maksimum iterasi N
OUTPUT :
- X=(x1 x2 x3...xn)T, vektor galat hampiran , dan yang merupakan matriks dengan baris vektor-vektor hampiran selama iterasi.
- H=X0'
- n=length(b)
- X=X0
- for k:=1 until N
- for i:=i until n,
- S = b(i) - A(i,[1:i-1,i+1:n])*X0(1:i-1,i+1:n](
- X(i) = S / A(i,i)
- S = b(i) - A(i,[1:i-1,i+1:n])*X0(1:i-1,i+1:n](
- end
- g = abs(X-X0)
- err = norm(g)
- relerr = err / (norm(X)+eps)
- X0 = X
- H = [H;X0']
- if (err<T)|(relerr<T), break, end
- for i:=i until n,
- end
Kekonvergenan
MEtode ini akan bernilai konvergen jika matriksnya merupakan matriks dominan secara diagonal, yaitu apabila unsur diagonal pada kolom tersebut lebih besar dari penjumlahan unsur-unsur lainnya pada kolom tersebut.
DAFTAR PUSTAKA
- Sahid. 2005. Pengantar Komputasi Numerik dengan MATLAB. ANDI, Yogyakarta