akan tetapi variable yang diiterasi tidak langsung digunakan.
Berikut codingnya:
Metode Iterasi Jacobi
procedure TForm1.Button1Click(Sender: TObject);
var
n,i,j,k,bar,iterasi,maxit:integer;
a:array [1..100,1..100]of real;
x,xlama,y:array [1..100]of real;
sum,e:real;
begin
n:=stringgrid1.RowCount-1;
maxit:=strtoint(edit2.text);
//memasukkan matrix a dan c
for i:=1 to n do
for j:=1 to n+1 do
begin
a[i,j]:=strtofloat(stringgrid1.cells[j,i]);
end;
//menghitung x[i]
e:=1;iterasi:=0;
while (e>0.001) or (iterasi
sum:=sum-y[j]*a[i,j];
xlama[i]:=x[i];
x[i]:=sum/a[i,i];
e:=abs((x[i]-xlama[i])/x[i]);
end;
for k:=1 to n do
begin
y[k]:=x[k];
stringgrid2.cells[k,iterasi]:=floattostr(y[k]);
stringgrid2.cells[k,0]:='x'+inttostr(k);
end;
stringgrid2.cells[0,iterasi]:=inttostr(iterasi);
end;
stringgrid2.RowCount:=iterasi+1;
end;
Metode Jacobi pada kasus ini bila dibandingkan dengan metode Gauss-Seidel memberikan hasil kekonvergensian yang berbeda. Pada iterasi kedua Jacobi telah memberikan hasil kekonvergenan yang lebih baik dari pada metode Gauss-Seidel.
Sehingga dapat diambil kesimpulan jika ditinjau dari perbandingan Gauss Seidel dan Jacobi:
1. Jacobi lebih cepat menuju kekonvergenan sedangkan Gauss Seidel relative lambat.
2. Iterasi yang dibatasi membuat Gauss Seidal sering kali tidak konvergen.
1 komentar:
tak jelas ni program
Posting Komentar