LAPORAN PRAKTIKUM
PEMODELAN MATEMATIKA DAN SIMULASI DENGAN MENGGUNAKAN Ms. EXCEL SOLVER DAN VBA. EDITOR
Aplikasi Persamaan Diferensial
Oleh:
ADIAN RINDANG F151090101
SEKOLAH PASCA SARJANA TEKNIK MESIN PERTANIAN DAN PANGAN
INSTITUT PERTANIAN BOGOR 2009
2
DAFTAR ISI
PENDAHULUAN .......................................................................................................................................... 3
BAB 1 : PEMODELAN POPULASI MODEL MALTHUS DAN VERHULST : METODE SOLVER
APPLICATION ................................................................................................................................ 6
BAB 2 : PEMODELAN POPULASI MODEL MALTHUS DAN VERHULST : METODE VBA
APPLICATION .............................................................................................................................. 11
BAB 3 : PEMODELAN ABSORPSI OBAT (DRUG ABSORBTION) ..................................................... 14
BAB 4 : PEMODELAN PEMANASAN DAN PENDINGINAN AIR
(WATER HEATING AND COOLING) ........................................................................................... 20
BAB 5 : PEMODELAN HUKUM TORRICELLI DAN METODE PERBANDINGAN UNTUK LAJU
ALIRAN AIR .................................................................................................................................. 29
BAB 6 : PEMODELAN PERTUMBUHAN TERHAMBAT (INHIBITED GROWTH MODEL) ............ 35
BAB 7 : PEMODELAN KOMPETISI PADA SPESIES TERTENTU (COMPETING SPECIES) ........... 42
BAB 8 : PEMODELAN HEAT TRANSFER : EXPLICIT FINITE DIFFERENCE METHODS.............. 47
BAB 9 : PEMODELAN TRIDIAGONAL MATRIKS DENGAN VBA APPLICATION .......................... 51
DAFTAR PUSTAKA ................................................................................................................................... 54
3
1.Formulate real model 2.Assumptions for model3. Formulate
mathematical problem
4. Solve mathematical problem
5. Interpret Solution6. Validate model
7. Use model to explain, predict, decide, d
esign
PENDAHULUAN
Salah satu masalah tersulit yang dihadapi oleh para ilmuwan dan enginer pada setiap
penelitiannya adalah menginterpretasikan kejadian alam yang diamati kedalam suatu persamaan
yang dapat menggambarkan kejadian tersebut. Pada dasarnya sangat sulit untuk menggambarkan
kejadian tersebut secara keseluruhan dan biasanya dibutuhkan usaha yang keras untuk
mendapatkan suatu persamaan, akan tetapi kita dapat menambahkan beberapa asumsi yang
sederhana untuk menggambarkan persamaan tersebut sehingga dapat mendekati kejadian
aktualnya. Dalam hal ini kita harus dapat mengidentifikasi variabel-variabel penting serta mencari
hubungannya. Asumsi-asumsi serta hubungan-hubungan yang kita buat tersebut merupakan suatu
dasar untuk membangun sebuah model matematika dan pada umunya mengarahkan kita kedalam
suatu persoalan matematika (seperti yang terlihat pada gambar 1.1) dan selanjutnya kita dapat
memecahkan permasalahan tersebut secara matematika (analitik) atau dengan menggunakan cara
numerik (computer-aided numerical computation).
Gambar 1. Tahap-Tahap Penyelesaian Pemodelan
Pada umunya, setelah kita membuat suatu persamaan, kita akan membandingkan hasil dari
persamaan tersebut dengan data yang diperoleh dari pengukuran pada kondisi aktual, langkah ini
disebut juga dengan tahapan validasi model (kotak 6). Jika hasil yang kita peroleh dari persamaan
mendekati dengan data aktualnya, dapat diartikan bahwa model yang kita buat telah mendekati
kondisi aktual (kotak 7).
Edward and Hamson (1989) menjelaskan bahwa, penting untuk dipahami bahwa pemodelan
matematika dilakukan guna untuk menyelesaikan berbagai permasalahan sistem. Walau demikian,
untuk permasalahan-permasalahan tertentu pasti ada satu bentu model yang tepat untuk
menyelesaikannya. Pada umumnya, kesuksesan membangun model bergantung kepada seberapa
sederhana model tersebut digunakan dan seberapa akurat model tersebut memprediksikan hasil
sesuai dengan kondisi yang ada. Satu hal yang perlu dicatat, bahwasannya beberapa model akan
4
mempunyai jarak validitas yang terbatas dan tidak akan dapat digunakan apabila telah melewati
batas dari validitasnya. Sebagai contoh, kita akan menggunakan suatu persamaan untuk
memprediksi suatu prilaku sistem dalam jangka waktu yang panjang. Dalam hal ini, penting untuk
diingat bahwa suatu persamaan akan tetap dianggap valid selama hasil yang diprediksinya
mendekati kondisi aktual. Jika hasil prediksi tersebut nantinya mengarah pada beberapa
kesimpulan yang tidak lagi mendekati keadaan aktual dari prilaku sistem tersebut di masa yang
akan datang, maka kita harus memodifikasi dan memperbaiki asumsi-asumsi yang mendasari
pemodelan tersebut. Seperti inilah gambaran untuk membangun sebuah model, memang tidaklah
mudah, namun apabila kita berhasil memecahkannya, kita akan puas. Pada gambar dibawah ini
akan ditunjukkan beberapa tahapan pemecahan masalah-masalah pada bidang keteknikan oleh
Chapra and Canale (2002).
Gambar 2. The engineering problem-solving process
Seperti yang terlihat pada gambar 2 diatas, metode numerik dan penggunaan komputer
memberikan teknik pemecahan untuk permasalahan dengan perhitungan yang kompleks serta
dalam jangka waktu yang singkat kita dapat memecahkan perhitungan tersebut dalam waktu yang
sangat singkat. Metode numerik ini juga dapat memecahkan masalah-masalah kompleks seputar,
persamaan nonlinier, persamaan geometri yang kompleks serta sistem-sistem persamaan yang
Problem definition
Mathematical model THEORY DATA
Problem-solving tools: computer, statistics, numerical methods,
graphics, etc.
Numeric or graphic results
Societal interfaces: scheduling, optimization,
communication, public interaction, etc.
Implementation
5
panjang. Oleh karena itu, jika metode numerik ini digunakan dalam pemrograman komputer maka
kita dapat mendesain program kita sendiri untuk memecahkan permasalahan pada pemodelan
yang kita bangun.
Didalam laporan ini terdapat beberapa contoh pemodelan matematika didalam berbagai
bidang yang berbeda, seperti model populasi, model laju aliran air, model pindah panas, model
eksplisit, model pertumbuhan terhambat, model peluruhan waktu obat, dan lain-lain, diselesaikan
dengan menggunakan model optimasi pada solver, dan beberapa metode numerik seperti Newton-
Rhapson dan orde ke empat Runge Kutta.
6
BAB 1
PEMODELAN POPULASI MODEL MALTHUS DAN VERHULST: METODE SOLVER APPLICATION
1.1 Pendahuluan
Pada praktikum Teknik Pemodelan Matematika dan Simulasi yang dilaksanakan pada
tanggal 5 Oktober 2009, dibahas dua jenis model populasi yaitu model Malthus dan model Verhulst.
Kedua metode ini nantinya akan digunakan untuk memprediksikan tingkat pertumbuhan
penduduk di suatu daerah. Dalam tugas ini digunakan data pertumbuhan penduduk kabupaten Deli
Serdang, provinsi Sumatera Utara dari tahun 1988-2006 seperti yang terlihat pada tabel dibawah
ini:
Tahun Waktu
Jumlah
Penduduk
Metode
Malthus
Motode
Verhults
1988 0 1437683 1437683 1437683
1989 1 1447681 1588885.441 1477206.804
1990 2 1560079 1755989.982 1514889.957
1991 3 1590060 1940669.06 1550683.075
1992 4 1670873 2144771.007 1584559.498
1993 5 1719390 2370338.543 1616513.435
1994 6 1755483 2619629.223 1646557.823
1995 7 1791198 2895138.034 1674722.017
1996 8 1826200 3199622.359 1701049.408
1997 9 1851949 3536129.58 1725595.057
1998 10 1878062 3908027.574 1748423.42
1999 11 1904542 4319038.422 1769606.205
2000 12 1956996 4773275.658 1789220.416
2001 13 2002678 5275285.441 1807346.593
2002 14 1461823 5830092.054 1824067.266
2003 15 1486094 6443248.188 1839465.629
2004 16 1539697 7120890.515 1853624.414
2005 17 1582213 7869801.108 1866624.971
2006 18 1634115 8697475.316 1878546.52
Eror 1.0017E+14 3.38077E+11
1.2 Metode
Thomas Malthus (1978) menyatakan bahwa jika N = N (t) merupakan total populasi pada
suatu waktu (t) lalu dalam interval waktu tertentu dt, diasumsikan bahwa kelahiran (α) dan
kematian (βNdt) sebanding dengan jumlah populasi dN interval waktu dt, maka kenaikan dari tital
populasi dapat dihitung dengan persamaan:
……………………………………………………………………………………………...(1)
dimana γ= ,persamaan selanjutnya menjadi:
7
……………………………………………………………………………………………………………………………………(2)
jika kedua sisi dari persamaan (1) kita integralkan maka menjadi:
…………………………………………………………………………………………………………………………..(3)
dimana A adalah konstanta integral. Jikan pada kondisi awal t = 0, N = No, maka log No = A maka
persamaan akan menjadi:
…………………………………………………………………………………………………………………………………(4)
Akan tetapi sejalan dengan bertambahnya waktu model populasi Malthus ini tidak lagi sesuai
dengan keadaan actual sehingga model ini tidak dapat digunakan lagi untuk memprediksi jumlah
populasi. Pada tahun 1837, Verhulst memodifikasi model ini, dia mengusulkan bahwa pada model
ini terdapat suatu batasan atas (N∞). Sekarang, perubahan populasi dN/dt diasumsikan sebanding
dengan jumlah populasi sekarang (N),sehingga persamaan akan menjadi:
………………………………………………………………………………………………………………………(5)
pemecahan solusi dari niali N ini dapat menggunakan persamaan:
……………………………………………………………………………………………….(6)
1.3 Simulasi
Dalam pemecahan persamaan (6) diatas, kita akan menggunakan Ms.Excel dan Solver
Application. Parameter input pada model ini seperti yang terlihat pada table dibawah ini:
Parameter Malthus Verhults
γ 0.1 0.1
N∞ 2000000
Pemecahan dengan menggunakan metode Solver Application dapat dilihat pada gambar
dibawah ini:
8
Gambar 1.1 Pemodelan Populasi Penduduk Kabupaten Deli Serdang
1.4 Hasil dan Pembahasan
Grafik antara jumlah penduduk aktual, model Malthus dan Verhulst dapat dilihat seperti
dibawah ini.
Selanjutnya dilakukan optimumisasi dengan menggunakan solver sehinga diperoleh nilai γ
maksimum untuk model Malthus dan Verhulst.
0
1000000
2000000
3000000
4000000
5000000
6000000
7000000
8000000
9000000
10000000
0 5 10 15 20
Jumlah Penduduk
Metode Malthus
Motode Verhults
9
Tahun Waktu Jumlah Penduduk
Metode
Malthus
Motode
Verhults
1988 0 1437683 1437683 1437683
1989 1 1447681 1456988.549 1472234.558
1990 2 1560079 1476553.337 1505389.232
1991 3 1590060 1496380.846 1537111.528
1992 4 1670873 1516474.604 1567379.365
1993 5 1719390 1536838.185 1596183.194
1994 6 1755483 1557475.213 1623524.957
1995 7 1791198 1578389.361 1649416.964
1996 8 1826200 1599584.348 1673880.697
1997 9 1851949 1621063.947 1696945.601
1998 10 1878062 1642831.978 1718647.889
1999 11 1904542 1664892.316 1739029.381
2000 12 1956996 1687248.886 1758136.408
2001 13 2002678 1709905.665 1776018.784
2002 14 1461823 1732866.684 1792728.872
2003 15 1486094 1756136.03 1808320.738
2004 16 1539697 1779717.842 1822849.405
2005 17 1582213 1803616.316 1836370.192
2006 18 1634115 1827835.704 1848938.16
Eror 4.11974E+11 3.32503E+11
Nilai γ untuk Malthus dan Verhulst setelah di-Solver menjadi:
Parameter Malthus Verhults
γ 0.013339 0.087288
N∞ 1998926
Sumber: Badan Pusat Statistik Kabupaten Deli Serdang
Diperoleh γ maksimum untuk metode Malthus sebesar 0.013339 sedangkan metode Verhulst
sebesar 0.087288. Prediksi pertumbuhan penduduk dalam metode Malthus dan metode Verhulst
seperti yang ditunjukkan oleh grafik dibawah ini:
0
200000
400000
600000
800000
1000000
1200000
1400000
1600000
1800000
2000000
0 5 10 15 20
Metode Malthus
Motode Verhults
10
hasil solver perbandingan nilai Malthus dan Verhulst terlihat tidak mempunyai perbedaan yang
besar.
Teori Malthus menyatakan bahwa umumnya penduduk suatu negara mempunyai
kecenderungan untuk bertambah menurut suatu deret ukur yang akan berlipat ganda tiap 30-40
tahun, kecuali bila terjadi bahaya kelaparan. Model populasi Malthus ini dirumuskan sebagai
berikut: . Dari data pertumbuhan penduduk kabupaten Deli Serdang diatas, rentang
waktu data yang diperoleh <20 tahun sehingga kelipatan tidak berbubah terlalu besar.
N∞ awal adalah 2.000.000 setelah dilakukan penghitungan dengan solver N∞ menjadi
1.998.926. Pada teori Verhulst N akan mendekati N∞ seperti yang terlihat pada grafik dibawah ini.
1.5 Kesimpulan
Pada nilai eror, model Verhulst mempunyai nilai eror yang lebih kecil dibandingkan dengan
model Malthus. Namun apabila dibandingkan dengan data sebenarnya eror yang terjadi pada kedua
model masih sangat besar. Sehingga belum dapat disarankan untuk menggunakan model Malthus
ataupun Verhulst untuk prediksi jumlah penduduk di Kabupaten Deli Serdang, Provinsi Sumatera
Utara.
0
500000
1000000
1500000
2000000
2500000
0 5 10 15 20
Metode Verhulst
N tak hingga
11
BAB 2
PEMODELAN POPULASI MODEL MALTHUS DAN VERHULST: METODE VBA APPLICATION
2.1 Pendahuluan
Pada praktikum terdahulu kita telah membahas pemodelan populasi metode Malthus dan
Verhulst. Kita menyelesaikan kedua pemodelan tersebut dengan menggunakan Solver Application
pada Ms. Excel. Pada praktikum kali ini kita akan mencoba untuk menyelesaikan kedua metode
tersebut dengan menggunakan VBA Application pada Ms. Ecxel.
2.2 Metode
Persamaan yang digunakan untuk memecahkan pemodelan ini sama dengan persamaan pada
praktikum sebelumnya.
2.3 Simulasi
Kode program yang dituliskan pada VBA Editor dalam Ms. Excel sebagai berikut:
Public t, No, Nx, Nm, Gamma As Double Sub Masukan() Gamma = Sheet1.Cells(3, 2) 'konstanta gamma No = Sheet1.Cells(4, 2) 'sebagai N awal Nx = Sheet1.Cells(5, 2) 'sebagai N tak hingga End Sub Sub run2() Jumdata = 50 For i = 0 To Jumdata t = Sheet1.Cells(8 + i, 1) Sheet1.Cells(8 + i, 4) = Verhulst(Gamma, Nx, t, No) Next i End Sub Sub run3() Jumdata = 50 For i = 0 To Jumdata t = Sheet1.Cells(8 + i, 1) Nm = Sheet1.Cells(58, 4) Sheet1.Cells(59 + i, 4) = Malthus(Nm, Gamma, t) Next i End Sub Private Sub CommandButton1_Click() Masukan run2 run3 End Sub
Sedangkan fungsi yang kita tuliskan pada module VBA Editor adalah
Function Verhulst(Gamma, Nx, t, No) Verhulst = Nx / (1 + (((Nx / No) - 1) * Exp(-Gamma * t)))
12
End Function Function Malthus(Nm, Gamma, t) Malthus = Nm * Exp(Gamma * t) End Function
2.4 Hasil dan Pembahasan
Hasil pemodelan seperti yang terlihat pada gambar 2.1 dibawah ini:
Gambar 2.1 Hasil Pemodelan Populasi Verhulst dan Malthus
Pada pemodelan pertama kita menggunakan persamaan populasi Verhulst sedangkan pada
pemodelan kedua kita menggunakan persamaan Verhulst untuk jangka waktu t = 0 sampai t = 50
dan selanjutnya pada t = 51 sampai t = 100 kita menggunakan persamaan Malthus. Hasil dari kedua
pemodelan ini seperti terlihat pada gambar 2.2 ini.
13
Gambar 2.2 Grafik Pemodelan Populasi Verhulst dan Malthus
2.5 Kesimpulan
Pada praktikum ini kita telah membuktikan bahwa model pertumbuhan populasi Malthus
dan Verhulst dapat diselesaikan dengan menggunakan VBA Application pada Ms. Excel.
0
10000
20000
30000
40000
50000
60000
70000
0 50 100 150
t (Tahun)
Model Pertumbuhan Malthus dan Verhulst
Metode Verhulst
Metode Verhulst dan Malthus
14
BAB 3
PEMODELAN ABSORPSI OBAT (DRUG ABSORPTION)
3.1 Pendahuluan
Persamaan diferensial tidak hanya mempunyai banyak peran penting didalam bidang
keteknikan namun juga dalam bidang kedokteran atau lebih spesifik lagi didalam bidang farmasi.
Didalam bidang ilmu farmasi ini akan dipelajari kadar atau dosis obat dalam darah pasien. Salah
satu aplikasi menarik dari penerapan persamaan diferensial ini adalah menduga penyerapan obat
didalam darah. Dengan membuat persamaan serta membangun modelnya kita dapat dengan
mudah dan cepat memprediksikan dosis obat yang optimal yang akan diberikan kepada pasien.
Dalam praktikum ini, kita akan mencoba mengembangkan model matematika dari absorpsi
obat dengan menggunakan persamaan diferensial. Terdapat dua metode yang akan dicobakan dan
hasil yang diperoleh nantinya akan dibandingkan dengan tujuan untuk menentukan metode mana
yang paling baik yang akan digunakan untuk memberikan obat kepada pasien.
3.2 Metode
Apabila suatu fungi y (t) adalah kuantitas obat pada darah dalam waktu t, maka perubahan
konsentrsi obat per satuan waktu dapat dimodelkan dengan suatu persamaan diferensial:
……………………………………………………………………………………………………………………….(1)
Dimana k adalah konstanta positif. Apabila pada saat t = 0 pasien diberikan dosis obat
sebanyak yo dan kemudian diberikan dosis obat lagi pada waktu selanjutnya maka akan terdapat
suatu konsentrasi yang besarnya bervariasi.
Kita dapat memecahkan persamaan (2.1) dengan:
……………………………………………………………………………………………………………………..(2)
Dalam memodelkan absorpsi obat ini terdapat dua metode yang akan kita coba, yaitu:
(a). Metode 1
Pada metode ini, pemberian dosis obat pada selang waktu tertentu diberikan sebesar
nilai yo sehingga diharapkan konsentrasi obat akan mencapai nilai saturasi sebesar ys
(b). Metode 2
Sedangkan pada metode ini, akan diberikan dosis obat untuk awalnya langsung
diberikan sebesar nilai ys dimana nilai ys adalah nilai saturasi dari metode 1 akan tetapi
pemberian dosis obat selanjutnya akan diberikan sebesar yo dengan mengharapkan
konsentrasi obat akan konstan sebesar ys .
Pada metode 1 setelah menentukan waktu T, pada dosis kedua, maka kita dapat mengatur
nilai yo, jumlah dosis pada darah, sebelum pada saat t = T dapat diketahui dengan:
15
……………………………………………………………………………………………………………………….(3)
Pada saat setelah waktu t = T, jumlah dosis yaitu:
……………………………………………………………………………………....(4)
Maka menurut Burghes and Borrie (1981)persamaan ys menjadi:
……………………………………………………………………………….………………………………………….(5)
Pada metode 2, dosis awal yang diberikan dalam jumlah besar (ys) lalu pada waktu T
......................................................................................................................................(6)
Setelah itu, pasien diberikan dosis kedua (yd), yang memberikan persamaan ys menjadi:
…………………………………………………………………………………………………….………….(7)
Maka diperoleh:
……………………………………………………………………………………………………..……………(8)
3.3 Simulasi
Setelah kita menentukan persamaan diferinsial yang akan kita gunakan, selanjutnya kita akan
membuat simulasinya dengan menggunakan Spreadsheet Ms. Excel, VBA Application.
Gambar 2.1 Hasil Simulasi dari Drug Accumulation
16
Kode Program pada VBA Editor:
Public num_data, drug_cycle As Integer Public start_dose, dose_regular As Double Public time_step As Double Public i As Integer Public k Sub data() start_dose = Sheet1.Cells(4, 2) '#Dosis awal k = Sheet1.Cells(5, 2) '#nilai k num_data = Sheet1.Cells(6, 2) '#banyak data time_step = Sheet1.Cells(7, 2) '#time step simulasi drug_cycle = Sheet1.Cells(8, 2) '#pemberian obat berkala dose_regular = Sheet1.Cells(9, 2) '#Dosis selanjutnya End Sub Sub cetakwaktu() step = 0 For i = 1 To num_data Sheet1.Cells(2 + i, 4) = (i - 1) * time_step 'waktu metode1 Sheet1.Cells(2 + i, 5) = step 'waktu metode2 '#jika dosis obat diberikan waktu direset ke 0 If i Mod drug_cycle = 0 Then step = 0 Else step = step + time_step End If Next i End Sub Sub proses1() 'Metode 1 '# melakukan loop untuk peluruhan obat metode 1 base_decay = dose_regular For i = 1 To num_data Sheet1.Cells(2 + i, 7) = exp_decay(base_decay, k, Sheet1.Cells(2 + i, 5)) If i Mod drug_cycle = 0 Then base_decay = Sheet1.Cells(2 + i, 7) + dose_regular End If Next i 'Mencari Titik Tertinggi stepc = 1 For i = 1 To num_data If Sheet1.Cells(2 + i, 5) = 0 Then Sheet1.Cells(2 + stepc, 9) = Sheet1.Cells(2 + i, 4) Sheet1.Cells(2 + stepc, 10) = Sheet1.Cells(2 + i, 7) 'Sheet1.Cells(2 + stepc, 11)= Sheet1.Cells(2 + i, 8) stepc = stepc + 1 End If Next i End Sub Sub proses2() 'metode 2 '# melakukan loop untuk peluruhan obat metode 2 base_decay = start_dose For i = 1 To num_data
17
Sheet1.Cells(2 + i, 8) = exp_decay(base_decay, k, Sheet1.Cells(2 + i, 5)) If i Mod drug_cycle = 0 Then base_decay = Sheet1.Cells(2 + i, 8) + dose_regular End If Next i 'Mencari Titik Tertinggi stepc = 1 For i = 1 To num_data If Sheet1.Cells(2 + i, 5) = 0 Then Sheet1.Cells(2 + i, 11) = Sheet1.Cells(2 + i, 4) Sheet1.Cells(2 + i, 12) = Sheet1.Cells(2 + i, 8) 'Sheet1.Cells(2 + stepc,12) = Sheet1.Cells (2 + i, 8) stepc = stepc + 1 End If Next i End Sub Private Sub CommandButton1_Click() data cetakwaktu proses2 End Sub
Gambar 2.2 Kode Program pada VBA Editor
18
Kode Program Pada Modul VBA Editor
Function exp_decay(y, k, t) 'exp_decay=Y 'Fungsi Peluruhan Obat exp_decay = y * Exp(-k * t) End Function
3. 4 Hasil
Model Absorpsi Obat
Hasil simulasi yang telah dilakukan dengan menggunakan VBA Application dapat dilihat pada
gambar 2.3 dibawah ini:
Gambar 2.3 Grafik Kedua Metode Drug Accumulation
Metode 1
Pada metode 1 ini diberikan inject dosage awal sebesar 50 unit dan untuk dosis reguler ini
obat diinjeksikan setiap selang waktu 15 menit sekali. Dari gambar diatas kita dapat melihat
bagaimana absorbsi obat didalam darah setelah terakumulasi selama selang waktu penginjeksian.
Obat yang telah diinjeksikan tersebut akan meluruh seperti persamaan (2.1) diatas. Pada simulasi
ini digunakakan interfal waktu (step) 1 menit untuk mengamati penyerapan obat selama 300 menit
dengan konstanta obat (k) adalah 0,01.
Dari hasil simulasi diatas kita dapat melihat bahwa pada metode 1 ini, grafik bergerak dengan
lambat untuk mencapai nilai Ys sehingga nilai kosentrasi obat juga akan sangat lambat untuk
mencapai nilai saturasinya, bahkan setelah 300 menit pemberian dosis reguler, nilai konsentrasi
obat didalam arah tidak mencapai 380.
0
50
100
150
200
250
300
350
400
450
0
17 34 51 68 85 102
119
136
153
170
187
204
221
238
255
272
289
306
Methods Of Drug Accumulation
metode 1
peak 1
metode 2
19
Metode 2
Pada metode ini, diberikan inject dosis awal sebesar nilai Ys pada metode 1 yaitu 380. Untuk
membandingkan kedua metode tersebut, dalam simulasi metode 2 ini juga akan digunakan interfal
waktu (step) 1 menit untuk mengamati penyerapan obat selama 300 menit dan kontanta obat (k)
yang digunakan juga sebesar 0,01. Dari simulasi, dapat dilihat hasil dari metode 2. Metode ini
peluruhan obat didalam darah terlihat lebih cepat mencapai nilai konsentrasi obat yang diinginkan.
Walaupun pada injeksi yang kedua diberikan dosis obat sebesar 50. Metode 2 terlihat memberikan
keuntungan daripada metode 1. Akan tetapi dalam prakteknya, memberikan obat dalam dosis yang
besar diawal injeksi akan memberikan dampak yang buruk pada tubuh. Masing-masing dari kedua
metode ini mempunyai kekurangan, jika kedua metode ini digabungkan maka akan dapat
memberikan keuntungan.
3. 5 Kesimpulan
Penyerapan obat dapat dimodelkan dengan persamaan diferensial dengan persamaan umum
yang digunakan adalah Kedua metode dari pemberian obat telah disimulasikan. Kedua
metode ini masing-masing mempunyai kelebihan dan kekurangan. Metode 1 bergerak sangat
lambat untuk mencapai nilai konsentrasi obat saturasi sedangkan metode 2 sebaliknya. Akan tetapi
pemberian obat dalam dosis yang besar diwal injeksi akan memberikan dampak yang buruk bagi
tubuh. Untuk menutupi masing-masing kekurangan ini, pada prakteknya kita dapat
menggabungkan kedua metode ini, yaitu dengan memberikan dosis dua kali lipat diawal injeksi
(2Yo) lalu pada injeksi berikutnya diberikan dosis sebesar Yo. Dengan metode gabungan ini,
kelebihan dari keduanya dapat digunakan dan kekurangannya dapat diminimalisasikan.
20
BAB 4
PEMODELAN PEMANASAN DAN PENDINGINAN AIR (WATER HEATING AND COOLING)
4.1 Pendahuluan
Aplikasi diferensial sangat luas, tidak hanya pada kejadian dialam saja tapi juga dapat
diaplikasikan pada bidang teknik dan lain sebagainya. Pada kebanyakan orang sering mengatakan:
sangat bijaksana untuk tidak menghidupkan pemanas air selama 24 jam. Pada bab ini, kita akan
mensimulasikan sebuah pemanas air yang akan terus dinyalakn selama 24 jam dan kita akan
melihat waktu pemanas yang dibutuhkan serta suhu air yang dihasilkkan nantinya.
Sebuah alat pemanas air (immersion heater) seperti yang ditunjukkan oleh gambar dibawah
adalah sebuah alat yang sering diletakkan pada tangki atau pada kontainer dan berfungsi untuk
memanaskan air didalamnya. Pada skala rumah tangga, alat pemanas ini sering digunakan untuk
memanaskan air untuk mandi dan mencuci. Tangki air pada gambar dibawah ini akan dipenuhi
dengan air dingin yang kemudian akan dipanasi dengan menggunakan alat pemanas (immersion
heater). Pada tangki tersebut terdapat dua proses yang terjadi yaitu proses pendinginan dan
pemanasan air didalam tangki. Proses pemanasan terjadi ketika alat pemanas dihidupkan dan
proses pendinginan terjadi apabila alat pemanas dimatikan.
Gambar 3.1 Immersion Heater
Proses pendinginan dan pemanasan air dapat digambarkan dengan pengembangan model
dari persamaan diferensial yaitu dengan mengaplikasikan hukum pendinginan Newton. Model ini
menggambarkan secara metematis perubahan tenperatur pada air dengan pemberian suhu yang
berbeda dari lingkungan sekitarnya. Hukum Newton ini menyatakan bahwa nilai rata-rata
perubahan temperatur akan sebanding dengan perbedaan suhu antara air dengan suhu lingkungan
yang ada disekitar air tersebut.
Kita mungkin sering bertanya-tanya apakah lebih murah untuk mematikan alat pemanas
pada malam hari kemudian menghidupkannya pada saat akan digunakan atau menggunakan
termostat untuk mengontrol suhunya sepanjang malam? Memodelkan proses pendinginan dan
Hot water cylinder
Immersion heater
21
pemanasan air dengan menggunakan persamaan diferensial ini bertujuan untuk memperoleh cara
yang lebih ekonomis dalam mengopersikan kedua proses tersebut dengan menggunakan alat
pemanas. Pada metode ini akan digunakan dua metode untuk mengopersikan alat pemanas. Hasil
kedua metode tersebut akan dibandingkan untuk memperoleh cara yang optimal dalam
mengoperasikan alat pemanas.
4.2 Metode
Pada praktikum ke-4 ini kita akan memodelkan proses pendinginan dan pemanasan air
dengan menggunakan alat pemanas. Proses dimulai dengan mengisi penuh tangki dengan air
dingin, dimana air tersebut nantinya akan dipanaskan dengan alat pemanas (seperti yang
ditunjukkan pada gambar dibawah ini). Beberapa asumsi akan digunakan dalam model ini yaitu:
1. Temperature air akan sama disetiap titik pada tangki
2. Panas akan dihasilkan pada nilai Q yang kontan untuk setiap waktu t
3. Seluruh air yang ada pada tangki terpanaskan.
Gambar 3.2 Diagram Pemodelan Pemanasan Air
Pada proses pemanasan air ini berlaku persamaan sebagai berikut:
…………………………………………………………………………………………………………………...(1)
Dimana T adalah suhu pada waktu t (oC), q adalah energi panas (watt), mw adalah massa air
(kg), cw adalah kapasitas panas air (J/kgoC), mc adalah massa casing (kg), Cc adalah massa jenis
casing (J/kgoC), t adalah waktu (detik). Sedangkan pada proses pendinginan berlaku persamaan:
............................................................................................................................................................................(2)
Nilai k adalah konstanta positif dimana k bernilai:
………………………………………………………………………………………………………………………….(3)
dimana j adalah koefisien pindah panas (W/moC) dan a adalah luas area (m2).
cw
cc
mw
cw
22
Dalam praktikum ini disimulasikan dua metode yaitu:
1. Metode Single On-Off
Pada metode ini kita menghitung perubahan suhu air panas setiap 50 detik sekali yang akan
dibiarkan mendingin dari pukul 11.00 malam sampai dengan pukul 07.00 pagi. Suhu awal
air adalah 45oC. Setelah itu heater dinyalakan sampai suhu menjadi seperti suhu semula
lagi.
Pada simulasi ini kita akan menentukan besarnya temperature pada pukul 07.00 pagi dan
menentukan berapa lama waktu (t) yang dibutuhkan untuk mengembalikakan air ke suhu
semula yaitu 45oC. Kita akan menentukan waktu dengan menggunakan persamaan sebagai
berikut:
…………………………........................................................................................(4)
Dimana Takhir dapat dihitung dengan menggunakan persamaan:
………………………………………………………………………………………………….(5)
Dimana ttotal adalah waktu yang dibutuhkan untuk mendinginkan air, dimulai dari tawal
sampai takhir (detik).
2. Metode Termostat
Pada metode ini kita menggunakan thermostat untuk mengontrol suhu selama malam hari.
Dalam metode dua ini, kondisi awal air sama dengan metode 1. Pada waktu suhu air
mencapai temperature 42oC alat pemanas akan dinyalakan dan akan dimatikan kembali
ketika suhu mencapai 45oC lagi. Pada simulasi ini kita akan melihat perubahan suhu air
serta mengamati waktu yang dibutuhkan untuk mencapai kondisi tempertur air normal.
Pada proses pemanasan, untuk menghitung waktu kenaikan suhu air dari 42oC sampai 45oC
digunakan persamaan sebagai berikut:
…………………………………………………………………………………………………(6)
Sedangkan pada proses pendinginan, menghitung penurunan suhu 45oC menjadi 42oC,
digunakan persamaa:
…………………………………………………………………………………………………………………..(7)
Masing-masing dari kedua metode ini akan kita selesaikan dengan menggunakan Aplikasi VBA
didalam Ms. Excel.
23
4.3 Simulasi
Persamaan untuk memecahkan simulasi ini selanjutnya akan kita tulis didalam VBA Editor
pada Mx. Excel, seperti yang terlihat pada gambar dibawah ini:
Gambar 3.1 Simulasi Heating and Cooling
Data awal yang digunakan pada simulasi ini adalah sebagai berikut:
Simbol Jumlah Unit
Suhu Awal Ta 45 oC
Masa Air -mw Ma 50 kg
Masa Casing - mc Mk 5 kg
Panas Jenis Air - Cw Ca 4200 J/KgoC
Panas Jenis Casing CC Ck 400 J/KgoC
koefisien pindah panas - j j 10 W/moC
luas area - a A 1 m2
Kalor -q q 5000 W/moC
Waktu Awal Pendinginan Wawal 0 detik
WaktuAkhir Pendinginan Wakhir 28800 detik
Thermostat drop below T_Thermo 42 oC
24
Kode program pada VBA editor Public Sub Data()Ta, Ma, Mk, Ca, Ck, Jj, A, q, takhir, Wduga, W_selang, Data1, Data2, Data_Total As Double Public Wawal, Wakhir, Tdb, Data_Terakhir As Integer Public Kk, X_wpendinginan Ta = Sheet1.Cells(3, 4) ' Suhu awal air sebelum didinginkan Ma = Sheet1.Cells(4, 4) ' Masa air Mk = Sheet1.Cells(5, 4) ' masa Casing Ca = Sheet1.Cells(6, 4) ' Panas Jenis Air Ck = Sheet1.Cells(7, 4) ' Panas Jenis Casing Jj = Sheet1.Cells(8, 4) ' Koefisien Pindah Panas A = Sheet1.Cells(9, 4) ' Luas q = Sheet1.Cells(10, 4) ' Kalor Wawal = Sheet1.Cells(12, 4) 'waktu awal pendinginan Wakhir = Sheet1.Cells(13, 4) 'waktu akhir pendinginan pada pukul 7 pagi Tdb = Sheet1.Cells(15, 4) ' Batas suhu termostat 'Untuk mencari nilai (k) digunakan rumus dibawah ini Kk = (Jj * A) / ((Ma * Ca) + (Mk * Ck)) ' selang waktu pengamatan dalam detik W_selang = 50 'Banyak data untuk pendinginan dari jam 11 malam sampai jam 7 pagi yang diamati per 50 detik adalah Data1 = Wakhir / W_selang ' Mencari Waktu suhu pendinginan kembali ke suhu awal setelah dpanaskan ' dengan rumus Wduga=(Mw.Cw+Mc.Cc)(Tawal-Takhir)/q ' dan Takhir= Tawal.exp(-ttotal*k), maka takhir = Ta * exp(-Wakhir * Kk) Wduga = (((Ma * Ca) + (Mk * Ck)) * (Ta - takhir)) / q 'Banyak data untuk pemanasan sampai suhu kembali ke suhu awal adalah Data2 = Int(Wduga / W_selang) 'fungsi int untuk memperoleh pembulatan hasil bagi 'banyaknya baris untuk keseluruhan waktu adalah Data_Total = Data1 + Data2 End Sub Sub Waktu_Keseluruhan() For i = 1 To Data_Total + 2 ' karena Data2 merupakan pembulatan maka perlu ditambahkan 2 agar memenuhi waktu yang diinginkan Sheet1.Cells(2 + i, 8) = (i - 1) * W_selang Next i End Sub Private Sub CommandButton1_Click() Data Waktu_Keseluruhan
25
Pendinginan1 Pemanasan1 metode_2 End Sub Sub Pendinginan1() ' Pendinginan Metode 1 For i = 1 To Data1 + 1 Sheet1.Cells(2 + i, 9) = Exp_Pendinginan(Ta, Kk, Sheet1.Cells(2 + i, 8)) Next i Data_Terakhir = i + 1 'Menetukan posisi baris terakhir pada waktu pendinginan yaitu pada detik ke 28800 End Sub Sub Pemanasan1() ' Pemanasan Meode 1 t_Akhir_Pendinginan = Sheet1.Cells(Data_Terakhir, 9) For i = (Data_Terakhir + 1) To Data_Total + 4 w_pemanasan = Sheet1.Cells(i, 8) - Sheet1.Cells(Data_Terakhir, 8) Sheet1.Cells(i, 9) = t_Akhir_Pendinginan + Exp_Pemanasan(q, Ma, Mk, Ca, Ck, w_pemanasan) 'Suhu Pemanasan adalah Peningkatan suhu air akibat pemanasan ditambahkan suhu terakhir pada kondisi jam 7 pagi Next i End Sub Sub metode_2() Dim Temporer1 ' Seluruh proses metode akan mengikuti alur perintah berikut ini kemudian bersiklus sampai i mencapai jumlah Data_Total+2 t_Pendinginan = W_selang t_Pemanasan = W_selang Sheet1.Cells(3, 10) = Ta Temporer1 = Sheet1.Cells(3, 10) For i = 2 To Data_Total + 2 If (Temporer1 >= Ta) Then Pendingin = nyala Pemanas = mati ElseIf (Temporer1 <= Ta) Then Pendingin = mati Pemanas = nyala End If If (Pendingin = nyala) And (Temporer1 >= Tdb) Then Temporer1 = Exp_Pendinginan(Ta, Kk, t_Pendinginan) Sheet1.Cells(2 + i, 10) = Temporer1 t_Pendinginan = t_Pendinginan + W_selang t_Pemanasan = W_selang ElseIf (Pemanas = nyala) And (Temporer1 <= Ta) Then temporer2 = Exp_Pemanasan(q, Ma, Mk, Ca, Ck, t_Pemanasan) Temporer1 = Temporer1 + temporer2 Sheet1.Cells(2 + i, 10) = Temporer1 t_Pemanasan = t_Pemanasan + W_selang t_Pendinginan = W_selang End If
26
Next i End Sub Private Sub CommandButton2_Click() Range("H3:J608").Select Selection.ClearContents Range("H1").Select End Sub
Persamaan yang Digunakan
Persamaan yang digunakan pada simulasi ini dituliskan pada modul VBA Editor: Function Exp_Pendinginan(Tt, k, t) ' fungsi pendinginan Exp_Pendinginan = Tt * exp(-k * t) End Function Function Exp_Pemanasan(q, m1, m2, c1, c2, t) 'fungsi pemanasan Exp_Pemanasan = (q * t) / ((m1 * c1) + (m2 * c2)) End Function
Gambar 3.2 Kode Program Heating and Cooling
27
4.4 Hasil dan Pembahasan
Metode Single On-Off
Pada metode ini, alat pemanas dihidupkan dari pagi dan dimatikan pada pukul 11.00 malam,
hal ini yang sering dilakukan kebanyakan orang sehari-hari. Pada pukul 11.00 malam suhu air pada
tangki adalah 45oC. Setelah alat pemanas dimatikan maka air menjadi dingin dan biasanya orang-
orang akan menghidupkannya kembali pada pukul 07.00 pagi. Berdasarkan pada fakta ini, dari
hasil simulasi yang telah dilakukan kita dapatkan suhu air pada pukul 07.00 pagi yaitu 11.82 :C
(seperti yang ditunjukkan pada gambar 3.3). Pada gambar tersebut kita juga dapat melihat bahwa
suhu air turun sangat drastis dari 45oC menjadi 11.82oC, atau dengan kata lain kita dapat
menyatakan bahwasannya dengan mematikan pemanas yang memiliki energi panas (q) sebesar
5.000 watt maka suhu air akan turun sekitar 33oC dalam jangka waktu 8 jam dan apabila pemanas
dihidupkan kembali air akan memanas dan suhu air akan naik menjadi 45oC kembali. Proses
pemanasan untuk mencapai air pada suhu awal dibutuhkan waktu 24 menit seperti yang terlihat
pada gambar dibawah ini. Energi listrik yang dibutuhkan untuk memanaskan air pada metode ini
adalah, 5 kWatt energi panas yang digunakan = 5 x (24/60) = 2 unit energi listrik yang dibutuhkan.
Gambar 3.3 Grafik Penurunan Suhu Metode Single On-Off dan Termostat
Gambar 3.3 Grafik Simulasi Pemodelan Pemanasan dan Pendinginan Air MetodeTermostat
Pada metode ini, penggunaan termostat berfungsi untuk mengontrol suhu air sepanjang
malam. Suhu kontrol termostat adalah 42:C. Termostat akan hidup apabila suhu air telah mencapai
42:C dan akan mati ketika suhu air mencapai 45:C. Dengan menggunakan persamaan persamaan
(6) diatas, kita peroleh waktu yang dibutuhkan untuk menaikkan suhu air sebesar 3:C adalah 2.5
menit dan dengan menggunakan persamaan (7) kita memperoleh waktu yang dibutuhkan untuk
mendinginkan air dari suhu 42:C sampai ke suhu 45:C adalah 24.5 menit. Jadi waktu yang
28
dibutuhkan untuk memanaskan dan mendinginkan air pada metode ini adalah 2.5 + 24.5 = 27
menit (seperti yang terlihat pada gambar 3.3 diatas).
Pada metode 1, waktu yang dibutuhkan untuk mendinginkan air adalah dalam 8 jam dan
memanaskanya hanya sekali salama 24 menit, sedangkan pada metode 2 waktu untuk menaikkan
suhu air terjadi sebanyak 19.5 kali ulangan (seperti yang dapat dilihat pada gambar diatas). Jadi
pemanas akan hidup setiap (19.5 x 2.5) menit = 48.75 menit. Dari simulasi waktu ini kita dapat
menduga berapa energi listrik yang dibutuhkan untuk memanaskan air. Pemanas air membutuhkan
5 kWatt = 5 x (48.75/60) = 4.0625 unit energi listrik yang dibutuhkan.
Dari simulasi yang telah dilakukan kita dapat melihat bahwa pada metode 2 memiliki
keuntungan yaitu waktu yang dibutuhkan untuk menaikkan air lebih cepat apabila dibandingkan
dengan metode 1. Namun, pada metode 2 kita membutuhkan jumlah energi listrik lebih banyak
daripada metode 1. Oleh karena itu konsekuensinya adalah kita akan membayar tagihan listrik
lebih mahal.
4.5 Kesimpulan
Pemanasan dan pendinginan air dapat dimodelkan dengan menggunakan persamaan
diferensial. Dalam praktikum ini telah dicoba dua metode atau cara untuk mengoperasikan alat
pemanas air. Masing-masing dari kedua metode tersebut memiliki keuntungan dan kekurangan.
Pada metode pertama, alat pemanas dimatikan pada malam hari lalu dinyalakan lagi pada pagi hari
ketika akan digunakan, waktu yang dibutuhkan untuk memanaskan air dengan metode lambat
sedangkan sebaliknya pada metode 2, dengan menggunakan termostat yang dapat mengontrol
suhu air sepanjang malam, waktu yang dibutuhkan untuk menaikkan suhu air cepat. Namun, pada
metode 2 ini kita akan membutuhkan energi listrik yang banyak atau dengan kata lain kita akan
membayar tagihan listrik lebih mahal daripada metode 1.
29
BAB 5
PEMODELAN HUKUM TORRICELLI DAN METODE PERBANDINGAN UNTUK LAJU ALIRAN AIR
5.1 Pendahuluan
Salah satu cara untuk mengalirkan air dengan laju yang rendah untuk irigasi tanaman
adalah dengan menempatkan sebuah lubang kecil pada dasar tangki irigasi tersebut. Air yang
keluar dengan perlahan dari dasar tangki dapat dimanfaatkan untuk memberikakan pengairan
pada tanaman yang lebih luas. Perubahan jumlah air didalam tangki setelah pengairan selama
beberapa waktu dapat kita modelkan dengan persamaan diferensial. Pada praktikum ke-4 ini akan
dicoba untuk merumuskan sebuah model dari laju aliran air tersebut dan selanjutnya akan
membandingkannya dengan Hukum Torricelli karena dalam menduga laju aliran air ini harus dapat
memenuhi Hukum Torricelli tersebut.
5.2 Metode
Pada gambar 4.1 dibawah ditunjukkan suatu aliran air di lubang kecil, pada bejana yang
memiliki ketinggian air dari dasar lubang setinggi (h) dari permukaan air, maka air dalam bejana
akan berkurang seiring dengan bertambahnya waktu. Dalam praktikum ini kita akan memodelkan
pengurangan air dengan cara perbandingan dan dengan Hukum Torricelli.
Gambar 4.1 Skema Model Laju Aliran Air 1. Model Perbandingan
Pada model ini, laju pengurangan tinggi air akan sebanding dengan ketinggian air, artinya
ketika air di dalam tangki masih banyak, pengurangan yang terjadi juga sangat cepat dan
akan semakin melambat apabila ketinggian (h) mendekati 0. Model ini dapat kita tulis
dalam suatu persamaan diferinsial sebagai berikut:
………………………………………………………………………………………………………………………(1)
dimana λ = a/A dan (a) adalah konstanta positif, (A) adalah luas lubang pada tangki. Solusi
persamaan (1) diatas adalah sebagai berikut:
…………………………………………………………………………………………………………………….(2)
dimana K adalah arbitary constant. Nilai dari K dan λ akan ditentukan dengan dari
percobaan yang akan dilakukan dengan menggunakan bantuan Solver Application pada Ms.
Excel.
Dengan merubah persamaan (2) kedalam bentuk logaritma natural, maka persamaan baru
diperoleh:
30
……………………………………………………………………………………………………………..(3)
2. Hukum Toricelli
Pada bagian ini kita akan membandingkan model yang telah kita buat menggunakan
metode 1 diatas dengan Hukum Torricelli. Dengan persamaan Torricelli akan
diperhitungkan pengaruh gravitasi bumi yang menarik air jatuh sehingga kecepatan aliran
airnya akan mengikuti persamaan dibawah ini:
…………………………………………………………………………………………………………………….(4)
Dimana (g) adalah percepatan gravitasi bumi yang bernilai 9,8 m/s2
Jika lubang memiliki luas sebesar (A) maka debit (Q) yang dihasilkan adalah sebesar
Q = AV…………………………………………………………………………………………………………………………..(5)
Dengan mengganti V seperti pada persamaan (4) maka persamaan (5) menjadi:
…………………………………………………………………………………………………………………..(6)
Apabila (u) adalah volume air di dalam bejana, maka penyusutan air per satuan waktu
adalah (du/dt), (h) adalah tinggi air dalam bejana dan (Q) adalah debit air yang keluar
melalui lubang, maka hubungan antara (u) dan (Q) adalah
……………………………………………………………………………………………………………………….(7)
Dengan u = Ah maka
………………………………………………………………………………………………………………………(8)
Maka persamaan debit air (Q) menjadi
………………………………………………………………………………………………………………….....(9)
Dengan mensubsitusikan persamaan (6) kedalam persamaan (9) maka dapat dibentuk
sebuah persamaa diferensial:
………………………………………………………………………………………………………….(10)
Lalu persamaan (10) diatas dapat kita bentuk menjadi:
…………………………………………………………………………………………………………………(11)
Dengan ………………………………………………………………………………………………………..(12)
Dengan aplikasi Persamaan Diferensial Pemisahan Variabel (Variabels Separable) maka
persamaan (12) menjadi:
………………………………………………………………………………………………………….(13)
atau
………………………………………………………………………………………………….(14)
………………………………………………………………………………………………………..(15)
Dimana B adalah konstanta integrasi, lalu persamaan (11) dapat dirubah menjadi:
…………………………………………………………………………………………………………(16)
31
5.3 Simulasi
Persamaan-persamaan diatas akan kita selesaikan dengan cara numerik yaitu pada
persamaan (2) dan persamaan (16) dengan bantuan VBA Editor pada Ms. Excel seperti pada
gambar 4.2 :
Gambar 4.2 Kode Program dalam VBA Editor Kode program dituliskan dalam modul VBA Editor sebagai berikut: Function torricelli(B, u, t)
torricelli = ((B / 2) - (u * t / 2)) ^ 2 End Function Function model(K, d, t)
model = K * Exp(-d * t) End Function
32
Data percobaan yang digunakan untuk menentukan konstanta K, λ, β dan μ adalah:
Burghes and Borrie (1981) halaman 59. Pada percobaan ini digunakan lubang aliran air sebesar 2 mm yang diletakkan didekat dasar
tangki pada salah satu sisi tangki.
5.4 Hasil dan Pembahasan
Dengan menggunakan simulasi VBA Editor diperoleh hasil simulasi sebagai berikut:
Gambar 4.3 Simulasi Model Hukum Torricelli dan Perbandingan Untuk Laju Aliran Air
t (s) h (cm)
179.7 1
146.5 2
120.7 3
101 4
83.5 5
67.7 6
53.7 7
41.3 8
29 9
17.3 10
6.5 11
33
Hasil dari simulasi seperti terlihat pada tabel dibawah ini:
Waktu (second)
Ketinggian Air (cm)
Experiment Model Torricelli’s
Law
6.5 11 11.36374 10.88726
17.3 10 10.08357 9.944365
29 9 8.858949 8.971085
41.3 8 7.731544 8.001927
53.7 7 6.740152 7.080951
67.7 6 5.772756 6.10879
83.5 5 4.846695 5.09782
101 4 3.993352 4.08474
120.7 3 3.211116 3.078441
146.5 2 2.413552 1.975417
179.7 1 1.671443 0.914558 Tabel 4.2 Hasil Simulasi Laju Aliran Air pada Tangki
Dari hasil simulasi kita peroleh nilai-nilai kontanta K, λ, μ dan β yaitu: K=12.21128, λ=0.011067, µ=0.027058, and β=6.775048. Oleh karena itu persamaan (2) dan (16) diatas sekarang dapat ditulis menjadi:
Perbandingan antara Kedua Metode
Dengan menggunakan persamaan (2) kita dapat menentukan ketinggian air didalam botol
pada saat (t) kapan saja. Hasil dari pemodelan laju aliran air ini diplotkan kedalam grafik yang
terlihat pada gambar dibawah ini. Dari gambar dibawah ini kita juga dapat melihat bahwa
ketinggian air yang dihasilkan oleh pemodelan dengan rumus perbandingan tidak jauh berbeda
dengan data yang digunakan (berdasarkan Burghes and Borrie (1981) halaman 60). Selisih
maksimum dari kedua model adalah 0.6714433 cm yang terjadi pada detik ke-179.7 tepat ketika
air mulai mengalir keluar tangki.
Dengan persamaan (16) kita juga dapat menentukan ketinggian air yang terdapat didalam
tangki pada saat (t) kapan saja. Seperti yang terlihat pada grafik dibawah, bahwa hasil dari simulasi
Hukum Torricelli juga tidak jauh berbeda dengan hasil data percobaan (berdasarkan Burghes and
Borrie (1981) halaman 60). Selisih maksimum dari kedua model hanya sebesar 0.11274438 cm,
lebih kecil apabila dibandingkan dengan model perbandingan diatas. Selisih maksimum ini terjadi
pada t = 179.7 detik, juga terjadi beberapa saat setelah air mulai mengalir.
34
5.5 Kesimpulan
Dalam simulasi kali ini telah dipelajari hubungan antara laju aliran air dengan ketinggian air
di dalam tangki. Dari simulasi ini juga kita dapat menentukan waktu yang dibutuhkan untuk
mengosongkan tangki. Hubungan antara kedua faktor ini dapat dibentuk menjadi suatu persamaan
diferensial dan dicari solusinya dengan menggunakan metode perbandingan serta Hukum
Torricelli. Perbandingan hasil dari kedua metode ini tidak terlalu jauh berbeda dengan data
eksperimental yang diperoleh dari Burghes and Borrie (1981) hal 59. Pemecahan solusi ini
dilakukan dengan menggunakan bantuan VBA Editor pada Ms. Excel.
35
BAB 6
PEMODELAN PERTUMBUHAN TERHAMBAT (INHIBITED GROWTH MODEL)
6.1 Pendahuluan
Model pertumbuhan cukup penting untuk digunakan dibeberapa bidang keteknikan.
Perubahan jumlah populasi (dN/dt) pada suatu model pertumbuhan ini secara garis besar
diasumsikan sebanding dengan jumlah populasi aktual (N) pada waktu (t). Dari beberapa
praktikum sebelumnya kita telah membahas tentang model pertumbuhan Malthus yang dapat
memprediksikan pertumbuhan yang tidak terbatas.
……………………………………………………………………………………………………………………………………(1)
Setelah diamati dalam jangka waktu (t), model pertumbuhan ini tidak dapat menggambarkan
jumlah populasi yang akurat dan sesuai dengan jumlah populasi aktualnya. Oleh karena itu, model
Malthus ini harus dimodifikasi sehingga dapat sesuai dengan kondisi populasi aktual dan seiring
dengan ini juga kita telah mengenal model pertumbuhan Verhulst yang telah kita ketahui bersama
dari praktikum sebelumnya bahwa model Verhulst ini lebih mendekati pada kondisi aktual
populasi.
…………………………………………………………………………………………………………………………...(2)
Pada praktikum kali ini kita akan coba memodelkan suatu model pertumbuhan yang telah
dimodifikasi. Model ini disebut juga dengan model pertumbuhan makanan terbatas. Pada
persamaan (2) diatas kita dapat memprediksi jumlah pertumbuhan individu per satuan waktu
sebagai berikut:
………………………………………………………………………………………………………………………(3)
dengan prediksi bahwa hubungan N pada persamaan ini akan linier.
Smith (dalam Ecology, No 44, 1963) pada percobaannya telah mengembangkan suatu
model populasi bakteri yang dibatasi oleh makanan dan menemukan kurva pertumbahan yang
sigmoid, akan tetapi dia tidak mendapatkan bentuk linier dari hubungan antara laju pertumbuhan
individu dengan pertumbuhan populasi. Pada praktikum kali ini akan dicoba untuk menyelesaikan
model tersebut dengan menggunakan persamaan diferensial implisit dengan metode numerik.
Metode numerik yang digunakan adalah metode Newton Rhapson dan selanjutnya kita dapat
menentukan jumlah populasi dari bakteri tersebut pada setiap waktu (t).
6.2 Metode
Smith (Ecology 1963 No 44), memodelkan suatu pertumbuhan bakteri yang terbatasi oleh
makanan (food limited). Smith memodifikasi persamaan (2) tersebut dengan mengganti nilai (1-
N/N∞); dengan (1-F/T) sehingga persamaannya menjadi:
36
……………………………………………………………………………………………………………………….(4)
dimana (F) adalah laju populasi mengkonsumsi makanan dan (T) adalah laju saturasi. Nilai (F)
dapat dicari dengan menggunakan persamaan:
…………………………………………………………………………………………………………………………..(5)
dimana nilai λ dan μ akan konstan. Pada saat saturasi F = T dan N = N∞ sehingga kita akan
mendapatkan nilai T = λ N∞ lalu dengan menggunakan persamaan (4) kita dapatkan persamaan:
…………………………………………………………………………………………………….(6)
dimana v = γμ/μ maka diperoleh persamaan akhir:
……………………………………………………………………………………………………………………...(7)
kita dapat menyelesaikan persamaan ini dengan cara pemisahan variabel (Variables Separable
Differential Equations) sehingga menjadi:
………………………………………………………………………………………………………………(8)
lalu diperoleh:
…………………………………………………………………………………………..(8)
persamaan akhirnya menjadi:
……………………………………………………………………………………………………………………….(9)
dimana k = eA adalah konstanta integrasi.
Persamaan (9) diatas merupakan suatu persamaan implisit, dimana N = f (t) dan nilai N
eksplisit berupa F (N) = f (t). Selanjutnya penyelesaian persamaan implisit tersebut kita gunakan
metode numerik Newton Rhapson. Pada metode ini, pencarian nilai N dapat dilakukan dari nilai N
coba-coba sampai nilai N yang mendekati nilai sebenarnya dalam bentuk:
……………………………………………………………………………………………………………………(10)
persamaan ini akan terus diiterasi sampai terjadi suatu konvergensi nilai N dimanan nilai tersebut
akan memenuhi persamaan:
|Ni+1 = Ni|< ε……………………………………………………………………………………………………………………………(11)
dimana ε merupakan suatu bilangan yang sangat kecil atau iterasi akan dihentikan apabila kondisi
ini tidak tercapai. Dalam simulasi ini kita akan membatasi nilai ε.
Untuk melakukan pencarian nilai N pada nilai t tertentu maka dibuat suatu persamaan berbentuk
F(N) = 0, persamaan (9) dapat dirubah menjadi:
…………………………………………………………………………………………………………….(12)
pada nilai t tertentu maka nilai eγt akan konstan, sehingga dengan melakukan pemisahan konstanta-
konstanta seperti berikut ini:
37
……………………………………………………………………………………………………………………………….(13)
…………………………….………………………………………………………………………………………………..(14)
……………………………………………………………………………………………………….…………………………(15)
dan F(N) = 0 berbentuk
…………………………………………………………………………………………………(16)
dihitung juga nilai turunan dari fungsi tersebut seperti:
………………………………………………………….……………………………………….(17)
6.3 Simulasi
Nilai variabel dan kontanta yang digunakan dalam pemodelan ini seperti yang terdapat pada
tabel dibawah ini:
Kita cari solusi untuk model ini dengan menggunakan VBA Editor pada Ms. Excel.
Kode Program yang dituliskan pada VBA Editor adalah sebagai berikut: Public iter, itmax As Integer Public epsilon As Double Public f_val As Double Public xi, xf As Double Public k, gamma, n_unlimit, v As Double Public N_trial As Double Public t As Double Public c1, c2, c3, N As Double Public start_row As Double Public x_awal, x_akhir, delta_x As Double Public num_data As Integer Public i As Integer Sub masukan() x_awal = Sheet1.Cells(8, 2) x_akhir = Sheet1.Cells(9, 2) delta_x = Sheet1.Cells(10, 2)
Constants Newton-Rhapson
Parameter
N∞ 100 epsilon 0.00001
ν 0.01 max iteration 50
К 0.05 N coba awal 0
γ 0.3
Independent variable (t)
Mulai 0
Sampai 20
Step 0.5
38
num_data = Int((x_akhir - x_awal) / delta_x) xi = Sheet1.Cells(5, 4) itmax = Sheet1.Cells(4, 4) epsilon = Sheet1.Cells(3, 4) f_val = 10 n_unlimit = Sheet1.Cells(3, 2) v = Sheet1.Cells(4, 2) k = Sheet1.Cells(5, 2) gamma = Sheet1.Cells(6, 2) End Sub Sub proses() For i = 0 To num_data t = x_awal + (i * delta_x) c1 = n_unlimit c2 = 1 + v c3 = k * Exp(gamma * t) iter = 1 f_val = 10 While ((iter <= itmax) And (f_val > epsilon)) xf = xi - (func_implicit1(xi, c1, c2, c3) / func_implicit_deriv1(xi, c1, c2, c3)) f_val = Abs(xf - xi) xi = xf Sheet1.Cells(17 + i, 4 + iter) = iter Sheet1.Cells(17 + i, 3 + iter) = xf iter = iter + 1 Wend Sheet1.Cells(17 + i, 3 + iter) = "konvergen" Sheet1.Cells(17 + i, 1) = t Sheet1.Cells(17 + i, 2) = xf Sheet1.Cells(17 + i, 3) = iter Next i End Sub Private Sub CommandButton1_Click() masukan proses End Sub Private Sub CommandButton2_Click() For i = 0 To num_data For j = 1 To iter Sheet1.Cells(17 - 1, 3 + j).Clear Sheet1.Cells(17 + i, 3 + j).Clear Next j Sheet1.Cells(17 + i, 3 + iter).Clear Sheet1.Cells(17 + i, 1).Clear Sheet1.Cells(17 + i, 2).Clear Sheet1.Cells(17 + i, 3).Clear Next i End Sub
39
Gambar 5.1 Kode Program Pada VBA Editor
Selanjutnya fungsi yang dituliskan pada program adalah
Function func_implicit1(N, c1, c2, c3) func_implicit1 = N - (c3 * ((c1 - N) ^ c2)) End Function Function func_implicit_deriv1(N, c1, c2, c3) func_implicit_deriv1 = 1 + (c2 * c3 * ((c1 - N) ^ (c2 - 1))) End Function
40
6.4 Hasil dan Pembahasan
Kurva yang diperoleh dari simulasi ini berupa kurva sigmoid seperti yang terlihat pada gambar dibawah ini:
Gambar 5.2 Grafik Model Pertumbuhan Terhambat
Diawal model kita membuat nilai coba-coba untuk No = 0 setelah disimulasikan kita
memperoleh nilai N yang sangat berkembang dengan cepat. Nilai N ini juga dapat stabil dengan
hanya 3-4 kali iterasi.
Perkembangan jumlah populasi dari mikroba per satuan waktu t dapat kita lihat dengan
menggunakan model ini. Pada awal perkembangan kita memperoleh nilai populasi sebesar
4.972750231 dan setelah t20 kita peroleh jumlah populasinya sebesar 95.34538319.
6.5 Kesimpulan
Seperti yang telah kita lakukan simulasinya, Model perkembangan bakteri ini dapat kita
pecahkan dengan menggunakan metode numerik Newton Rhapson. Dan hasilnya sesuai dengan
yang diharapkan.
0
20
40
60
80
100
120
0 5 10 15 20 25
Po
pu
lasi
(N)
Waktu (t)
Model Pertumbuhan Terhambat
Inhibited Growth Model
41
Gambar 5.3 Hasil Simulasi Pemodelan Pertumbuhan Terhambat
42
BAB 7
PEMODELAN KOMPETISI PADA SPESIES TERTENTU (Competing Species)
7.1 Pendahuluan
Populasi dari suatu spesies akan berubah seiring dengan berubahnya waktu. Perubahan
populasi ini dapat dipengaruhi oleh beberapa faktor seperti, perubahan iklim, persediaan makanan,
perubahan lingkungan, saling memangsa dalam rantai makanan. Pada bab sebelumnya kita telah
menyelesaikan model pertumbuhan yang pada pengembangan modelnya kita asumsikan hanya
akan dibatasi dengan persediaan makanan saja dan tidak akan bergantung pada keberadaan
spesies lainnya. Untuk memperbaiki model tersebut, kita akan memasukkan suatu faktor tambahan
yaitu faktor kompetisi antar spesies yang nantinya faktor tersebut akan mempengaruhi jumlah
populasi dari suatu spesies. Namun, pada praktikum kali ini, kompetisi antar spesies akan dibatasi
pada satu faktor saja misal, faktor persediaan makanan saja, tidak termasuk faktor saling
memangsa antar spesies. Sebagai contohnya, jika ada dua spesies binatang X dan Y yang memakan
jenis makanan yang sama pada satu daerah, maka jumlah spesies binatang X akan mempengaruhi
jumlah spesies binatang Y dan begitu pula sebaliknya. Populasi kedua spesies tersebut akan
mempengaruhi satu sama lainnya karena keterbatasan persediaan makanan.
Pada praktikum kali ini, penyelesaian model yang berupa persamaan diferensial implisit
akan menggunakan Metode Rungge Kutta Orde 4. Digunakan metode ini karena mudah dan
memberikan hasil simulasi yang baik selain itu keakuratan metode ini juga dapat menentukan
jumlah populasi dari kedua spesies tersebut pada waktu kapan saja.
7.2 Metode
Suatu spesies X dan Y keberadaannya akan saling mempengaruhi. Adapun keberadaan kedua
spesies tersebut terhadap waktu digambarkan dengan persamaan berikut ini:
…………………………………………………………………………………………………………………...(1)
…………………………………………………………………………………………………………………...(2)
dimana (t) adalah waktu dan (x), (y) adalah jumlah populasi dari masing-masing spesies X dan Y.
Untuk memecahkan persamaan (1) dan (2) diatas kita akan menggunakan metode numerik
Rungge Kutta Orde 4, dengan persamaan umum sebagai berikut:
………………………………………………………………………………………..(3)
dimana masing-masing k1, k2, k3 dan k4 didefinisikan sebagai:
………………………………………………………………………………………………………………………..(4)
………………………………………………………………………………………………………..(5)
43
……………………………………………………………………………………………….……….(6)
………………………………………………………………………………………………………..(7)
Dengan (h) adalah parameter Rungge Kutta. Persamaan (3) sampai (7) akan kita gunakan
untuk menghitung jumlah populasi spesies Y pada waktu (t) sedangkan untuk menghitung jumlah
populasi pada spesies X kita juga menggunakan persamaan yang sama (persamaan 3-7) hanya
dengan merubah posisi (y) dengan (x) saja. Dalam model ini, persamaan (3) mempunyai arti
sebagai berikut: f (xm , ym) = 2ym - xm - 3.5ym
7.3 Simulasi
Penyelesaian metode numerik ini kita lakukan pada Ms. Excel dengan VBA Editor seperti
yang terlihat pada gambar 6.1 dibawah ini:
Gambar 6.1 Kode Program pada VBA Editor
Kode Program Model Kompetisi pada Spesies X dan Y Public h, N, Xo, Yo, dt As Double Sub Data() dt = Sheet1.Cells(3, 3) 'sebagai perubahan waktu h = Sheet1.Cells(4, 3) 'sebagai parameter rungge kutte N = Sheet1.Cells(5, 3) 'sebagai total waktu Xo = Sheet1.Cells(6, 3) 'sebagai jumlah populasi awal spesies X Yo = Sheet1.Cells(7, 3) 'sebagai jumlah populasi awal spesies Y End Sub
44
Sub Proses() t = 0 xx = Xo yy = Yo For i = 0 To N 'tampilkan data Sheet1.Cells(10 + i, 2) = t Sheet1.Cells(10 + i, 3) = xx Sheet1.Cells(10 + i, 4) = yy 'menghitung nilai x k1x = dxdt(xx, yy) k2x = dxdt(xx + (h / 2), yy + ((h * k1x) / 2)) k3x = dxdt(xx + (h / 2), yy + ((h * k2x) / 2)) k4x = dxdt(xx + h, yy + (h * k3x)) xx = xx + (h / 6) * (k1x + (2 * k2x) + (2 * k3x) + k4x) 'menghitung nilai y k1y = dydt(yy, xx) k2y = dydt(yy + h / 2, xx + h * k1y / 2) k3y = dydt(yy + h / 2, xx + h * k2y / 2) k4y = dydt(yy + h, xx + h * k3y) yy = yy + (h / 6) * (k1y + 2 * k2y + 2 * k3y + ky4) t = t + dt Next i End Sub Private Sub CommandButton1_Click() Data Proses End Sub Private Sub CommandButton2_Click() Range("B10:D210").Select Selection.Clear Range("B11").Select End Sub
Kode Pada Modul Function dxdt(Xo, Yo) dxdt = Xo - (2 * Yo) - (0.2 * Xo) End Function Function dydt(Yo, Xo) dydt = (2 * Yo) - Xo - (3.5 * Yo) End Function
45
7.4 Hasil
Dalam simulasi ini kita gunakan beberapa parameter yaitu: No Parameter Symbols Value Unit 1 ParameterRungge-Kutta h 0.01 - 2 Total waktu N 100 Tahun 3 Perubahan waktu dt 1 Tahun 4 Populasi awal spesies X Xo 10000 - 5 Populasi awal spesies Y Yo 15000 -
Adapun hasil simulasi model seperti yang terlihat pada gambar 6.2 dibawah ini:
Gambar 6.2 Hasil Simulasi pada Ms. Excel
Pada simulasi ini kita mengamati perubahan kedua spesies X dan Y dalam jangka waktu 100
tahun. Perubahan jumlah populasi ini akan dihitung per 1 tahun. Grafik perubahan populasi dari
kedua spesies tersebut dapat dilihat pada gambar 6.3 dibawah ini:
46
Gambar 6.3 Grafik Kompetisi Spesies X dan Y Terhadap Perubahan Waktu
Dari grafik tersebut dapat diketahui bahwa kedua spesies tersebut X dan Y akan berkurang seiring dengan perubahan waktu. Asumsi pada awal pembuatan model ini adalah spesies X dan Y akan saling berkompetisi dalam memperoleh makanan. Setelah dilakukan simulasi terlihat bahwa persaingan antara spesies X dan Y dalam mempertahankan makanan dalam 100 tahun menyebabkan jumlah populasi dari masing-masing spesies tersebut berkurang. 7.5 Kesimpulan
Metode Rungge Kutta Orde 4 cukup efektif untuk menggambarkan model kompetisi pada spesies tertentu. Terlihat bahwa kedua spesies X dan Y berkurang seiring dengan bertambahnya waktu.
0
2000
4000
6000
8000
10000
12000
14000
16000
0 20 40 60 80 100 120
N (
Po
pu
lasi
)
t (Tahun)
Competing Species
Spesies X
Spesies Y
47
L = 20 cm
With 0<t<infinity
Figure 7.1 Diagram of The Conduction of Rod System
BAB 8
PEMODELAN HEAT TRANSFER : FINITE DIFFERENCE METHODS
8.1 Introduction
In this section we will introduce the idea of explicit finite-difference methods and show how
they can be used to solve hyperbolic and parabolic. The basic idea is that after a PDE like : Ut = Uxx is
replaced by its finite-difference approximation, we can solve for the solution explicitly at one value
of time in terms of the solution at earlier values of time. In this way, an initial-boundary-value
problem (hyperbolic or parabolic) can be solved by consecutively finding the solution at large and
large values of time.
8.2 Methods
Consider the problem of heat flow along a rod initially at temperature To. On both side of the
rod are insulated with temperature at 0 °C. We assume it as a one dimensional rod of length L for
which we make the following assumptions:
1. The rod is made of single homogeneous conducting material
2. The rod is laterally insulated (heat flows only in the x direction)
3. The rod is thin I temperature at all points of a cross sect.
In other words, we solve the problem:
PDE : .............................................................................................................................................................................(1)
IC : T(x,0) = 50oC, with 0<x<20 ...........................................................................................................................................(2)
BC : T (0,t) = 30OC
: T (20,t) = 30oC …………………………………………………………………………(3)
and Nt = Nx = 11 nodes, k = Δt = 0.005, h = Δx = 0.1
Explicit method is used i.e finite difference method to solved this model. This is the explicit
finite-difference formula:
................................................................................................................. (4)
T=0°C T=0°C
T0
48
8.3 Simulation
We use the VBA Editor in Ms. Excel to calculate this model. These codes are written in module
of Ms. Excel.
Public Nx, Nt, dk, dh Sub initial() Nx = Sheet1.Cells(3, 3) Nt = Sheet1.Cells(4, 3) dk = Sheet1.Cells(5, 3) dh = Sheet1.Cells(6, 3) dx = 0.2 For i = 1 To Nt - 1 x = 0 For j = 1 To Nx Sheet1.Cells(10 + i, 2 + j) = "" If i = 1 Then Sheet1.Cells(9 + i, 2 + j) = 50 'ic If j = 1 Then Sheet1.Cells(10 + i, 2 + j) = 30 'bc If j = 11 Then Sheet1.Cells(10 + i, 2 + j) = 30 x = x + dx Next j Next i End Sub Sub hitung() For i = 1 To Nt - 1 For j = 1 To Nx - 2 Sheet1.Cells(9 + i + 1, 3 + j) = Sheet1.Cells(9 + i, 3 + j) + (dk / (dh ^ 2)) * (Sheet1.Cells(9 + i, 3 + j + 1) + Sheet1.Cells(9 + i, 3 + j - 1) - 2 * Sheet1.Cells(9 + i, 3 + j)) Next j Next i End Sub Sub hitung2() For i = 1 To Nt - 1 For j = 1 To Nx - 1 Sheet1.Cells(9 + i + 1, 3 + j) = Sheet1.Cells(9 + i, 3 + j) + (dk / (dh ^ 2)) * (Sheet1.Cells(9 + i, 3 + j + 1) + Sheet1.Cells(9 + i, 3 + j - 1) - 2 * Sheet1.Cells(9 + i, 3 + j)) Next j Next i End Sub
49
Figure 7.1 The function to calculate T’s written in the module of VBA.
8.4 Results and Discussion
The results of the model is presented in Figure 7.2 and 7.3 below.
Figure 7.2 Results of The Model
0
10
20
30
40
50
60
0 0.5 1 1.5 2 2.5
T (
Te
mp
era
ture
)
x (Length)
Heat Transfer: Explicit Finite-Difference Method
t = 0
t = 1
t = 2
t = 3
t = 4
t = 5
t = 6
t = 7
t = 8
t = 9
50
Figure 7.3 Results of The Model in Ms. Excel
8.5 Conclusion
As we see the results, we know that finite-difference can solve the heat conduction problem.
51
BAB 9
PEMODELAN TRIDIAGONAL MATRIKS DENGAN VBA APPLICATION
9.1 Introduction
To show how time-dependent problems can be solved by another finite-difference scheme as
implicit methods. In this metod, we again replace the partial derevative in the problem by their
finite –difference approximations, but unlike explicit methods (where we solved for Ui + 1.j explicitly
in terms of earlier values), in implicit methods, we solve a system of equations in order to find the
solution at the largest value of time. In other words, for each new value of time we solve a system of
algebraic equations to find all the values.
9.2 Methods
To solve the tridiagonal system we use a method that transforms a tridiagonal system of the
form:
………………………………………………………………………………………………………………………………(1)
………………………………………………………………………………………………………………………(2)
Where j = 1,2,……….,n-2
and
………………………………………………………………………………………………………………………………(1)
………………………………………………………………………………………………………………………(2)
Where j = 1,2,……….,n-1
9.3 Simulation
The codes are written in VBA Editor in Ms. Excel
Const mn As Integer = 4 Dim a(mn), b(mn), c(mn), d(mn) Sub readdata() For j = 1 To mn a(j) = Cells(7 + j, 2) b(j) = Cells(7 + j, 3) c(j) = Cells(7 + j, 4) d(j) = Cells(7 + j, 9) Next j End Sub Rem Thomas Algorithm to solve tridiagonal matrics Sub Thomas(mn, a, b, c, d) b(1) = b(1)
52
c(1) = c(1) / b(1) For l = 2 To (mn - 1) b(l) = b(l) - a(l) * c(l - 1) c(l) = c(1) / b(1) Next l b(mn) = b(mn) - a(mn) * c(mn - 1) d(1) = d(1) / b(1) For l = 2 To mn d(l) = (d(l) - a(l) * d(l - 1)) / b(l) Next l d(mn) = d(mn) For l = (mn - 1) To 1 Step -1 d(l) = d(l) - c(l) * d(l + 1) Next l End Sub Sub solusi() Call readdata Call Thomas(mn, a, b, c, d) For j = 1 To mn Cells(7 + j, 6) = d(j) Next j End Sub Private Sub CommandButton1_Click() Call solusi End Sub
9.4 Result As the figure 2.1 show:
53
9.5 Conclusion
The VBA Editor can be use to solved the implicit method-Tridiagonal Matrics.
54
DAFTAR PUSTAKA
Burghes, D.N., Borrie. M.S. 1981. Modelling with Differential Eqations. Ellis Horwood Ltd. New York. Edwards, D. and Hamson, M. 1989. Guide to Mathematical Modeling. The Macmillan Press Ltd.
London. Farlow, S.J. 1937. Partial Difference Equations For Scientists and Engineers. Dover Publications, Inc.
New York. LeVeque, R.J. 2006. Finite Diference Methods For Differential Equations. University of Washington.
Top Related