FISIKA KOMPUTASI II
LAPORAN PENDAHULUAN
PRAKTIKUM FISIKA KOMPUTASI II
Bila kita mempunyai sebuah persamaan diferensial parsial, misalkan persamaan Poisson
atau Laplace, sebagai berikut:
( , )
+ = 𝑓(𝑥, 𝑦). … (4.2)
2 1+ 𝑤, − 𝑤 , +𝑤 , − 𝑤, +𝑤, = −ℎ 𝑓 𝑥 , 𝑦 . … (4.3)
V. ALGORITMA
Langkah 1 : Mulai
4 −1 0 −1 0 0 0 0 0
⎡−1 4 −1 0 −1 0 0 0 0⎤
⎢ 0 −1 4 0 0 −1 0 0 0⎥
⎢−1 0 0 4 −1 0 −1 0 0⎥
Langkah 2 : Inisialisasi matriks A = ⎢ 0 −1 0 −1 4 −1 0 −1 0 ⎥,
⎢0 0 −1 0 −1 4 0 0 −1⎥
⎢0 0 0 −1 0 0 4 −1 0⎥
⎢0 0 0 0 −1 0 −1 4 −1⎥
⎣0 0 0 0 0 −1 0 −1 4⎦
25
⎡ 50 ⎤
⎢150⎥
⎢ 0 ⎥
matriks b = ⎢ 0 ⎥, dan n.
⎢ 50 ⎥
⎢ 0 ⎥
⎢ 0 ⎥
⎣ 25 ⎦
Langkah 3 : Cetak nilai n = 9
Cetak Matriks A
Cetak Matriks b.
Langkah 4 : Lakukan perulangan i dengan nilai awal 1 sampai dengan n.
Langkah 5 : Proses A (i, n + 1) = b (i, 1).
Langkah 6 : Akhiri proses perulangan i.
Langkah 7 : Lakukan perulangan j dengan nilai awal 1 sampai dengan n-1.
Langkah 8 : Jika A (j, j) = 0, maka lakukan langkah selanjutnya.
Langkah 9 : Lakukan perulangan p dengan nilai awal 1 sampai dengan n + 1.
Langkah 10 : Proses u = A (j, p)
Proses v = A (j + 1, p)
Proses A (j + 1, p) = v
Proses A (j, p) = v.
Langkah 11 : Akhiri proses perulangan p.
Langkah 12 : Akhiri proses pemilihan A (j, j).
Langkah 13 : Proses jj = j + 1.
Langkah 14 : Lakukan perulangan i dengan nilai awal jj sampai dengan n.
(, )
Langkah 15 : Proses 𝑚 = ( , )
Langkah 22 : Lakukan perulangan i dengan nilai awal n–1 sampai dengan 1 dan jeda -1.
Langkah 23 : Cetak S = 0.
Langkah 24 : Lakukan perulangan j dengan nilai awal n sampai dengan i+1 dan jeda -1.
Langkah 25 : Proses S = S + A (i, j) × x (j, 1).
Langkah 26 : Akhiri perulangan j.
( (, ) )
Langkah 27 : Proses 𝑥 (𝑖, 1) = (,)
.
VI. FLOWCHART
Mulai
Inisialisasi matriks A =
4 −1 0 −1 0 0 0 0 0
⎡−1 4 −1 0 −1 0 0 0 0⎤
⎢0 −1 4 0 0 −1 0 0 0⎥
⎢−1 0 0 4 −1 0 −1 0 0⎥
⎢0 −1 0 −1 4 −1 0 −1 0 ⎥,
⎢0 0 −1 0 −1 4 0 0 −1⎥
⎢0 0 0 −1 0 0 4 −1 0⎥
⎢0 0 0 0 −1 0 −1 4 −1⎥
⎣0 0 0 0 0 −1 0 −1 4⎦
25
⎡ 50 ⎤
⎢150⎥
⎢ 0 ⎥
matriks b = ⎢ 0 ⎥, dan n.
⎢ 50 ⎥
⎢ 0 ⎥
⎢ 0 ⎥
⎣ 25 ⎦
Cetak n = 9
Cetak matriks A
Cetak matriks b
Perulangan
i=1 Perulangan
sampai Proses A (i, n + 1) = b (i, 1) p=1
i=n sampai
p = n+1
Perulangan
j=1
A (j, j) = 0
sampai
j = n-1
E E E
E E E
Proses u = A (j, p)
Proses v = A (j + 1, p)
Proses A (j + 1, p) = v
Proses A (j, p) = v.
Proses jj = j + 1
Perulangan 𝐴 (𝑖, 𝑗)
i = jj 𝑚=
𝐴 (𝑗, 𝑗)
sampai
i = n+1 Perulangan
k=1
A (i, k) = A (i, k) – (m × A(j, k)) sampai
k = n+1
( , )
Proses 𝑥(𝑛, 1) = ( , )
S=0 Perulangan
Perulangan
i = n-1
j=n
sampai
sampai Proses S = S + A (i, j) × x (j, 1) i=1
j = i+1
jeda -1
jeda -1
( (, ) )
Proses 𝑥 (𝑖, 1) = (,)
Proses w = x
Selesai
VII. LISTING
% solusi persoalan distribusi panas, FDM Elliptik
clear all
clc
n=9;
A =( 4 -1 0 -1 0 0 0 0 0; -1 4 -1 0 -1 0 0 0 0;
0 -1 4 0 0 -1 0 0 0; -1 0 0 4 -1 0 -1 0 0;
0 -1 0 -1 4 -1 0 -1 0; 0 0 -1 0 -1 4 0 0 -1;
0 0 0 -1 0 0 4 -1 0; 0 0 0 0 -1 0 -1 4 -1;
0 0 0 0 0 -1 0 -1 4];
B =[ 25; 50; 150; 0; 0; 50; 0; 0; 25];
for i=1:n
A(i,n+1)=b(i,1);
end
%---------Proses Triangularisasi---------------------------
for j=1:(n-1)
%----mulai proses pivot---
if (A(j,j)==0)
for p=1:n+1
u=A(j,p);
v=A(j+1,p);
A(j+1,p)=u;
A(j,p)=v;
end
end
%----akhir proses pivot---
jj=j+1;
for i=jj:n
m=A(i,j)/A(j,j);
for k=1:(n+1)
A(i,k)=A(i,k)-(m*A(j,k));
end
end
end
%----------------------------------------------------------
X. ANALISA
Pada baris pertama terdapat perintah clear all dimana berfungsi untuk menghapus
variabel yang telah tersimpan sebelumnya. Pada baris kedua terdapat perintah clc yang
berfungsi untuk menghapus seluruh history yang ada di command window. Selanjutnya,
inisialisasi dan cetak nilai n sama dengan 9. Nilai n disini didapatkan dari total mesh
point berdasarkan persamaan linear yang diberikan, dimana pada persamaan liniear
tersebut memiliki baris dan kolom 9×9 saat diubah dalam bentuk matriks. Kemudian,
inisialisasi dan cetak nilai dari matriks A dan b. Nilai dari matriks A dan b berasal dari
persamaan linear yang telah diberikan yang kemudian diubah ke dalam bentuk matriks.
Selanjutnya masuk ke proses eliminasi Gauss. Pada proses eliminasi Gauss
dilakukan proses eliminasi dengan cara mengubah matriks menjadi matriks segitiga
bawah yang mana seluruh elemen pada bagian segitiga bawah tersebut bernilai nol.
Pada proses eliminasi Gauss, pertama dilakukan proses mengubah matriks menjadi
matriks augmentasi. Matriks augmentasi dibentuk dengan cara menggabungkan vektor b
ke dalam matriks A yang mana nantinya vektor b akan menjadi kolom kesepuluh dari
matriks A. Selanjutnya masuk ke proses triangularisasi. Proses triangularisasi disini
dilakukan untuk mengubah elemen pada bagian segitiga bawah menjadi bernilai nol.
Selanjutnya masuk ke proses pivot, dimana dilakukan untuk memastikan apakah
setiap elemen dalam matriks bagian segitiga bawah tersebut bernilai nol. Pada proses
pivot ini terdapat pemilihan if yang apabila matriks tersebut matriks tersebut bernilai nol
maka akan dijalankan perintah bagian mulai proses pivot, jika tidak maka akan
dijalankan perintah dari bagian akhir proses pivot. Pada bagian mulai proses pivot
terdapat pengulangan for p dengan nilai awal sama dengan 1 dan nilai akhir sama
dengan n+1. Pada bagian akhir proses pivot, pertama proses nilai jj. Selanjutnya
lakukan perulangan for i dengan nilai awal jj dan nilai akhir n. Setelah itu, dilakukan
perulangan k dengan nilai awal 1 dan nilai akhir n+1. Kemudian akhiri proses pivot.
Setelah itu, masuk ke proses substitusi mundur. Pada proses ini dilakukan untuk
mendapatkan nilai dengan cara mencari nilai tersebut dari baris terbawah. Selanjutnya
terdapat perulangan i dengan nilai awal n–1 dan nilai akhir 1 dengan perulangan
menurun 1. Kemudian proses S sama dengan nol. Selanjutnya, lakukan perulangan j
dengan nilai awal n dan nilai akhir i+1 dengan perulangan menurun 1. Setelah itu proses
nilai x. Terakhir, proses nilai w=x dan tampilkan nilai akhir dari vektor w.
XI. KESIMPULAN
1. Nilai n didapat berdasarkan mesh point atau baris dan kolom yang ada, dari
persamaan linear yang telah diubah kedalam bentuk matriks.
2. Pada program dilakukan proses eliminasi Gauss dimana dalam proses eliminasi
tersebut dilakukan dengan mengubah matriks menjadi matriks segitiga bawah yang
elemennya bernilai nol.
3. Matriks augmentasi dibentuk dengan menggabungkan vektor dan matriks, dimana
vektor tersebut akan menjadi kolom tambahan pada matriks.
4. Proses triangularisasi berfungsi untuk mengubah elemen pada bagian segitiga bawah
menjadi bernilai nol.
5. Proses pivot berfungsi untuk memastikan apakah setiap elemen dalam matriks
bagian segitiga bawah tersebut bernilai nol.
6. Proses substitusi mundur dilakukan untuk mendapatkan nilai akhir dengan cara
mencari nilai tersebut dari baris terbawah matriks.
DAFTAR PUSTAKA
Affandi, K. A., 2000. Penerapan Metoda Beda Hingga untuk Penyelesaian Persamaan
Gelombang Kawasan Waktu. Jurnal Penelitian Sains, 7(1) : 49 – 50.
Monado, F., Koryanti, E., dan Ariani, M., 2017, Modul Praktikum Fisika Komputasi II.
Inderalaya: Universitas Sriwijaya.
Sulistyono, B. A. 2015. Aplikasi Metoda Beda Hingga Skema Eksplisit pada Persamaan
Konduksi Panas. Jurnal Math Educator Nusantara, 1(1) : 41.
LAMPIRAN
LAMPIRAN GAMBAR
LAMPIRAN PUSTAKA