prima
TRANSCRIPT
DASAR TEORI
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 mengubah 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.
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 Nfor 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)endg = abs (X-X0)err = norm (g)relerr = err / (norm (X)+eps)X0 = XH = [H;X0']if (err<T)|(relerr<T), break, endend
Dalam fisika, penurunan problem diferensiasi numerik dapat menggunakan metode finite difference. Metode ini terdiri dari metode beda maju (forward difference), beda mundur (backward difference) dan beda tengah (central difference) yang persamaan-persamaannya antara lain:
Beda maju
Beda mundur
Beda tengah
atau dapat dinotasikan
Persamaan-persamaan di atas digunakan untuk penurunan numerik persamaan diferensiasi orde satu. Sedangkan untuk persamaan diferensiasi orde dua, metode yang digunakan merupakan perpaduan dari metode beda maju, beda mundur dan beda tengah di atas, yang bentuk persamaannya adalah:
ANALISA
Program 1
Program 2
fp=fopen('data.txt','w'); n=10;dt=0.05; f=[0 2.49 4.9 7.16 9.2 10.94 12.3 13.21 13.6 13.39]; bd=[];fd=[];cd=[]; %inisialisasi awal bd=f;fd=f;cd=f; %backward difference for i=2:n bd(i)=(f(i)-f(i-1))/dt; end %forward difference for i=1:n-1 fd(i)=(f(i+1)-f(i))/dt; end %central difference for i=2:n-1 cd(i)=(f(i+1)-f(i-1))/(2*dt); end t=0; fprintf(fp,'t BD FD CD\n'); for i=1:n fprintf(fp,'%0.2f %2.7f %2.7f %2.7f\n',t,bd(i),fd(i),cd(i)); t=t+dt; end fclose(fp); disp('Done..');
0 1 2 3 4 5 6 7 8 9 10-100,000,000
0
100,000,000
200,000,000
300,000,000
400,000,000
500,000,000
600,000,000
0.0000000498.000.0000.0000000
DAFTAR PUSTAKA
Sahid. 2005. Pengantar Komputasi Numerik dengan MATLAB. ANDI, Yogyakarta