Anda di halaman 1dari 28

LAPORAN TUGAS PEMODELAN MATEMATIKA

PENYELESAIAN NUMERIK SISTEM PERSAMAAN DIFFERENSIAL NON


LINEAR DENGAN METODE HEUN PADA MODEL LOTKA –VOLTERRA

DISUSUN OLEH :

1. ADE REZA WIJAYA H11112016


2. ADE RISMAYANTI H11112046
3. RIA RISCA PRATIWI H11112049
4. SELVIANA H11112051
5. RENI UNAENI H11112064

PROGRAM STUDI MATEMATIKA


FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS TANJUNGPURA
PONTIANAK
2015
1. Persamaan Diferensial
Persamaan diferensial adalah persamaan yang memuat turunan
suatu fungsi yang tak diketahui. Meskipun seharusnya disebut “persamaan
turunan”, namun istilah “persamaan diferensial “ yang diperkenalkan oleh
Leibniz pada tahun 1676 sudah umum digunakan (Finizio, Ladas, 1998).
Menurut Baisuni (1986), persamaan diferensial adalah persamaan yang
memuat hubungan antara x, suatu fungsi y dari x dan turunannya ialah :
𝑦 ′ , 𝑦 ′′ , 𝑦 ′′′ , 𝑦 (4) , … , 𝑦 𝑛
𝑑𝑛 𝑦
Dimana 𝑦 𝑛 = ialah turunan ke n dari terhadap x.
𝑑𝑥 𝑛

Tingkat (orde) suatu persamaan diferensial merupakan tingkat


tertinggi dari suatu turunan, sedangkan derajat (degree) dari persamaan
diferensial merupakan derajat turunan tertinggi yang terjadi (Ayres, 1999).
Berdasarkan variabel bebasnya, suatu persamaan diferensial dibagi
menjadi dua yaitu persamaan diferensial biasa (PDB) dan persamaan
diferensial parsial (PDP). Persamaan diferensial biasa merupakan
persamaan diferensial yang hanya mempunyai satu variabel bebas
(Sasongko, 2010). Sebagai contoh,
𝑑𝑦
=𝑥+𝑦 (2.1)
𝑑𝑥

𝑑2 𝑦 𝑑𝑦
+ 𝑐𝑜𝑠𝑥 𝑑𝑥 − 3𝑦 = sin 2𝑥 (2.2)
𝑑𝑥 2

Persamaan (2.1) dan (2.2) merupakan persamaan diferensial biasa karena


hanya memuat satu variabel bebas yang dinyatakan dengan xdan variabel
terikatnya adalah yyang merupakan fungsi dari x. Persamaan (2.1) dan
(2.2) berturut-turut merupakan PDB orde satu dan PDB orde dua yang
berderajat satu. Sedangkan persamaan diferensial parsial merupakan
persamaan diferensial yang mempunyai lebih dari satu variabel bebas
(Sasongko, 2010). Sebagai contoh,

𝜕2 𝑢 𝜕𝑢2
+ 𝜕𝑦 2 = 3𝑒 𝑥 (2.3)
𝜕𝑥 2

𝜕3 𝑦 𝜕𝑦
+ 𝑥𝑦 𝜕𝑢 − 3𝑢4 = 0 (2.4)
𝜕𝑥 3

Persamaan (2.3) dan (2.4) merupakan persamaan diferensial parsial karena


mempunyai dua variabel bebas. Persamaan (2.3) memuat variabel bebas x
dan y dengan u sebagai variabel terikat. Sedangkan persamaan (2.4)
merupakan variabel bebas x dan u dengan y sebagai variabel terikat.
Persamaan (2.3) dan (2.4) berturut-turut merupakan PDB orde dua dan
PDP orde tiga.
Berdasarkan bentuk fungsi dan pangkatnya, persamaan diferensial dibagi
menjadi dua yaitu persamaan linear dan persamaan diferensial non linear.
Persamaan diferensial linear orde n bebentuk : (Ffinizio, 1988).

𝑎𝑛 (𝑥)𝑦 (𝑛) + 𝑎𝑛−1 (𝑥)𝑦 𝑛−1 + ⋯ + 𝑎1 (𝑥)𝑦 ′ + 𝑎0 (𝑥)𝑦 = 𝑓(𝑥) (2.5)

Dimana 𝑎𝑛 , 𝑎𝑛−1 , … , 𝑎0 merupakan koefisien dengan 𝑎𝑛 ≠ 0 dan 𝑓


merupakan fungsi dari variabel bebas x atau konstanta. Jika f (x) = 0 maka
persamaan (2.5) disebut persamaan diferensial linear homogen. Jika
persamaan f (x) ≠ 0 maka persaman (2.5) disebut persamaan diferensial
linear non homogen. Persamaan diferensial dikatakan linear jika variabel
terikat dan turunannya berderajat satu serta tidak ada perkalian antara
variabel terikat dengan turunannya, sebgai contoh :
𝑑𝑦
+ 2𝑥𝑦 − 4𝑥 = 0 (2.6)
𝑑𝑥

𝑑2 𝑦 𝑑𝑦
𝑥 𝑑𝑥 2 + 3 𝑑𝑥 − 2𝑥𝑦 = sin 𝑥 (2.7)

Pada persamaan (2.6) merupakan persamaan linear homogen yang berorde


satu, sedangkan persamaan (2.7) merupakan persamaan diferensial yang
merupakan persamaan linear non homogen yang berorde dua.

Persamaan diferensial biasa non linear merupakan persamaan diferensial


biasa yang tidak linear atau persamaan yang tidak memenuhi persamaan
(2.5). Persamaan diferensial biasa non linear adalah persamaan yang
variabel terikat dan turunannya berderajat lebih dari satu, terjadi perkalian
antara variabel terikat dan turunannya. Sebagai contoh,
𝑑𝑦
3𝑦 𝑑𝑥 + 2𝑦 = 0 (2.8)

𝑑2 𝑦 𝑑𝑦 2
𝑦 𝑑𝑥 2 + 𝑥 (𝑑𝑥 ) − 𝑥 𝑥 𝑦 = 𝑒 −𝑥 (2.9)
Pada persamaan (2.8) merupakan persamaan diferensial biasa non linear
homogen karena terdapat perkalian variabel terikat dan turunannya yaitu
𝑑𝑦
3𝑦 𝑑𝑥 . Untuk persamaan (2.9) merupakan persamaan diferensial biasa non
linear non homogen karena variabel terikat dan turunannya berderajat dua.

2. Sistem Persamaan Diferensial


Sistem persamaan diferensial adalah suatu persamaan diferensial berorde-n
yang telah dinyatakan sebagai suatu sistem dari n persamaan berorde satu.
Persamaan ini ditulis dalam bentuk (Conte dan Boor, 1980) :

𝑦 𝑛 = 𝑓(𝑥, 𝑦(𝑥), 𝑦 ′ (𝑥), … , 𝑦 𝑛−1 (𝑥))


Secara umum, suatu sistem n persamaan orde-pertama berbentuk :

𝑦1′ = 𝑓1 (𝑥, 𝑦1 , 𝑦2 , … , 𝑦𝑛 )

𝑦2′ = 𝑓2 (𝑥, 𝑦1 , 𝑦2 , … , 𝑦𝑛 )

.........................................
𝑦𝑛′ = 𝑓𝑛 (𝑥, 𝑦1 , 𝑦2 , … , 𝑦𝑛 )

Sistem persamaa diferensial merupak persamaan diferensial yang


mempunyai n buah persamaan dengan n buah fungsi tak diketahui, dimana
n merupakan bilangan positif ≥ 2. Sistem persamaan diferensial dibedakan
menjadi dua yaitu sisitem persamaan diferensial linear dan sistem
persamaan diferensial non linear. Sistem persamaan diferensial linear
merupakan sistem persamaan yang terdiri dari n buah persamaan
diferensial linear dengan n buah fungsi tak diketahui yang bebentuk :

𝑥̇ 1 = 𝑎11 (𝑡)𝑥̇ 1 + 𝑎12 (𝑡)𝑥2 + ⋯ + 𝑎1𝑛 (𝑡)𝑥𝑛 + 𝑓1 (𝑡)

𝑥̇ 2 = 𝑎21 (𝑡)𝑥̇ 1 + 𝑎22 (𝑡)𝑥2 + ⋯ + 𝑎2𝑛 (𝑡)𝑥𝑛 + 𝑓2 (𝑡)

.....................................................................................

𝑥̇ 𝑛 = 𝑎𝑛1 (𝑡)𝑥̇ 1 + 𝑎𝑛2 (𝑡)𝑥2 + ⋯ + 𝑎𝑛𝑛 (𝑡)𝑥𝑛 + 𝑓𝑛 (𝑡)

Bentuk umum sistem persamaan diferensial linear dengan dua fungsi tidak
diketahui adalah :

𝑥̇ 1 = 𝑎11 (𝑡)𝑥̇ 1 + 𝑎12 (𝑡)𝑥2 + 𝑓1 (𝑡) (2.10)

𝑥̇ 2 = 𝑎21 (𝑡)𝑥̇ 1 + 𝑎22 (𝑡)𝑥2 + 𝑓(𝑡)

Dimana fungsi 𝑓1 , 𝑓2 merupakan fungsi t yang kontinu pada selang I dan


𝑥1 , 𝑥2 adalah fungsi t yang tidak diketahui. Titik di atas 𝑥1 𝑑𝑎𝑛 𝑥2 pada
(2.10) menyatakan turunan menurut peubah bebas t.

Sistem persamaan diferensial non linear merupakan sistem persamaan


yang terdiri dari n buah persamaan diferensial non linear denga dua buah
fungsi yang tidak diketahui yang berbentuk :

𝑥̇ = 𝑎𝑥 + 𝑏𝑦 + 𝐹(𝑥, 𝑦)

𝑦̇ = 𝑐𝑥 + 𝑑𝑦 + 𝐺(𝑥, 𝑦)

Dimana a,b,c,d adalah koefisien positif dan ad-bc ≠ 0 ,f (x,y) dan G (x,y)
merupakan fungsi terhadap x dan y, dengan x dan y adalah fungsi t yanf
tak diketahui (Finizio, 1982).
3. Metode Numerik
Metode numerik adalah metode penyekesaian persamaan
matematis secara pendekatan karena penyelesaian secara analitis (eksak)
sulit untuk dipecahkan. Penyelesaian persamaan matematis dengan
menggunakan metode numerik akan menghasilkan angka (numerik) yang
bukan suatu fungsi (Sasangko, 2010). Apabila penyelesaian persamaan
matematis tidak dapat diselesaikan dengan analitik maka persamaan
tersenut dapat diselesaikan dengan menggunakan metode numerik. Metode
numerik juga dapat digunakan untuk menyelesaikan persoalan matematika
sederhana (yang dapat diselesaikan dengan metode analitik) maupun
persoalan marematika yang tergolong rumit. Perbedaan antara metode
numerik dengan metode analitik ialah (Munur,2003) :
a. Metode numerik memiliki solusi yang selalu membentuk angka
sedangkan metode analitik biasanya menghasilkan solusi dalam
bentuk fungsi matematik yang selanjutnya dapat dievaluasi
untuk menghasilkan nilai dalam bentuk angka.
b. Metode numerik memberikan solusi yang menghampiri atau
mendekati solusi sejati sehingga solusi numerik dinamakan
solusi hampiran atau solusi pendekatan. Solusi hampiran ini
tidak tepat sama dengan solusi sejati, sehingga ada selisih
antara keduanya yang disebut galat (error).

Penyelesaian numerik memberikan hasil dengan nilai perkiraan


atau pendekatan dari penyelesaian analitis atau eksak . Oleh karena
penyelesaian ini merupakan nilai pendekatan makaterdapat kesalahan
(galat) terhadap nilai eksaknya. Nilai tersebut harus cukup kecil terhadap
nilai kesalahan yang ditetapkan. Galat dibagi menjadi tiga yaitu galat
bawaan, galat perbulatan, dan galat pemotongan.

Galat bawaan yaitu galat yang berasal dari nilai data. Galat ini
terjadi karena kekeliruan dalam menyalin data atau pun kesalahan dalam
membaca skala. Galat pembulatan yaitu galat yang terjadi karena tidak
diperhitungkannya beberapa angka terakhir pada suatu bilangan. Suatu
bilanga dibulatkan pada posisi ke n tidak berubah atau dinaikkan satu digit
yang tergantung dengan nilai tersebut. Galat pemotongan terjadi karena
tidak dilakukannya hitungan yang sesuai dengan prosedur matematika
yang benar, sepetrti suatu proses tak hingga diganti dengan proses
berhingga (Triatmodjo, 2002).
𝑥3 𝑥5 𝑥7
sin 𝑥 = 𝑥 − + 5! − +⋯ (2.11)
3! 7!

Contoh deret (2.11) dapat dipakai untuk menghitung sinus


sebarang sudut x dalam radian. Semua suku di dalam deret tersebut jelas
tidak dapat dipakai semua, karena deretnya tak berhingga sehingga dapat
berhenti pada sejumlah suku yang berhingga, seperti 𝑥 7 atau 𝑥11
(Djojodihardjo, 2000).

Galat adalah perbedaan antara nilai eksak dengan nilai hampiran, dapat
ditulis :

𝜀 = 𝑦(𝑡𝑛 ) − 𝑦𝑛

Dimana :

𝑦(𝑡𝑛 ) : nilai eksak

𝑦𝑛 : nilai hampiran

𝜀 : galat terhadap nilai eksak

Galat (𝜀) tidak menunjukkan besarnya suatu kesalahan. Sebagai contoh


galat satu sentimeter yang diukur pada panjang pensil lebih berarti berarti
dari pada galat satu sentimeter pada pengukuran panjang kawat suatu
jembatan (Munir, 2003).

Besarnya suatu galat dapat dinyatakan dalam bentuk galat relatif yaitu
dengan membandingkan kesalahan yang terjadi dengan nilai eksak
(Triatmodjo, 2002).
𝜀
𝜀𝑅 =
𝑦(𝑡𝑛 )

Atau dalam bentuk,


𝜀
𝜀𝑅 = x 100%
𝑦(𝑡𝑛 )

Dengan 𝜀𝑅 adalah kesalahan relatif terhadap nilai eksak.

Dalam metode numerik, nilai eksak biasanya tidak diketahui. Oleh karena
itu galat dapat juga dinyatakan berdasarkan solusi hampirannya, sehingga
galat relatifnya dinamakan galat relatif hampiran :
𝜀
𝜀𝑅𝐻 =
𝑦𝑛

Pada perhitungan numerik sering dilakukan pendekatan secara iterasi,


dengan kesalahan numeriknya ialah (Munir, 2003) :
(𝑟+1) (𝑟)
𝑦𝑛 − 𝑦𝑛
𝜀𝑅𝐻 = (𝑟+1)
𝑦𝑛
(𝑟)
Dengan 𝑦𝑛 : nilai hampiran pada iterasi r
(𝑟+1)
𝑦𝑛 : nilai hampiran pada iterasi ke r+1

Proses iterasi dihentikan apabila |𝜀𝑅𝐻 | < 𝜀𝑠 , 𝜀𝑠 adalah toleransi galat yang
dispesifikasikan. Nilai dari 𝜀𝑠 menentukan ketelitian suatu masalah. Semakin kecil
nilai 𝜀𝑠 maka semakin teliti solusinya, tetapi semakin banyak proses iterasinya.

2.4 Penyelesaian Persamaan Diferensial Biasa dengan Metode Numerik

Penyelesaian persamaan diferensial adalah suatu fungsi yang memenuhi


persamaan diferensial serta memenuhi kondisi awal yang diberikan pada
persamaan tersebut (Triatmodjo,2002). Penyelesaian persamaan diferensial biasa
secara numerik berarti menghitung nilai fungsi di 𝑥𝑛+1 = 𝑥𝑛 + ℎ , dengan di
ℎ merupakan langkah setiap iterasi. Pada metode analitik, nilai awal digunakan
untuk mencari suatu solusi persamaan sedangkan pada metode numerik nilai awal
berfungsi untuk iterasi.

Terdapat beberapa metode numerik yang digunakan untuk mencari solusi


persamaan diferensial, mulai dari metode yang paling dasar samai metode yang
lebih teliti. Secara umum, metode nmerik dibagi menjadi dua kelompok yaitu
(Munir,2003):

1. Metode satu langkah (one-step)

Dikatakan metode satu langkah karena untuk menaksir nilai 𝑦(𝑥𝑛+1 ) dibutuhkan
satu buah taksiran nilai sebelumnya yaitu 𝑦(𝑥𝑛 ). Metode yang termasuk ke dalam
metode satu langkah ialah metode Euler, metode Heun, metode Taylor, metode
Runge-Kutta.

2. Metode banyak langkah (multi-step)

Pada metode ini, perkiraan nilai di 𝑥𝑦(𝑛+1 ) membutuhkan beberapa taksiran nilai
sebelumnya yaitu 𝑦(𝑥𝑛 ), 𝑦(𝑥𝑛−1 ), 𝑦(𝑥𝑛−2 ), …. metode yag termasuk ke dalam
metode banyak langkah ialah metode Adams-Bashfort-Moulton, metode Milne-
Simpson, dan metode Hamming.
ANALISIS NUMERIK MODEL LOTKA-VOLTERRA DENGAN METODE
HEUN

Metode Heun

Menurut Munif (2003), penyelesaian persamaan diferensial biasa dengan


menggunakan metode Heun adalah suatu proses mencari nilai fungsi y pada titik t
tertentu dari persamaan diferensial biasa f(t,y). Metode Heun adalah salah satu
metode numeric yang dapat digunakan untuk menyelesaikan berbagai persoalan
matematika yang mempunyai masalah nilai awal. Masalah nilai awal merupakan
masalah penyelesaian suatu persamaan diferensial dengan syarat awal yang telah
diketahui. Missal diberikan persamaan diferensial orde satu yaitu:

𝑑𝑦
=𝑦
𝑑𝑥

Penyelesaian persamaan di atas ialah 𝑦 = 𝐶𝑒 𝑥 . Penyelesaian tersebut memberikan


banyak kemungkinan untuk berbagai nilai koefisien C. penyelesaian tunggal dapat
diperoleh jika terdapat nilai x tertentuuntuk fungsi y(x) (Triatmdojo, 2002). Pada
metode Heun, solusi dari metode Euler dijadikan sebagai solusi perkiraan awal
(predictor). Selanjutnya, solusi perkiraan awal ini diperbaiki dengan metode Heun
(Corrector).

Diberikan suatu persamaan diferensial orde satu yang mempunyai syarat


awal 𝑦(𝑡0 ) = 𝑦0 ,

𝑦 ′ (𝑡) = 𝑓(𝑡, 𝑦(𝑡) (3.1)

Persamaan (3.1) diintegrasi pada kedua sisinya dengan batasan dari 𝑡𝑖 sampai 𝑡𝑖+1
dimana ℎ = 𝑡𝑖+1 − 𝑡𝑖 , maka diperoleh,
𝑡𝑖+1 𝑡1+1
′ (𝑡)𝑑𝑡
∫ 𝑦 = ∫ 𝑓(𝑡, 𝑦(𝑡))𝑑𝑡
𝑡𝑖 𝑡𝑖

𝑡1+1
𝑡
𝑦(𝑡)|𝑡𝑖+1
𝑖
= ∫ 𝑓(𝑡, 𝑦(𝑡))𝑑𝑡
𝑡𝑖

𝑡1+1

𝑦(𝑡𝑖+1 ) − 𝑦(𝑡𝑖 ) = ∫ 𝑓(𝑡, 𝑦(𝑡))𝑑𝑡


𝑡𝑖

𝑡1+1

𝑦𝑖+1 − 𝑦𝑖 = ∫ 𝑓(𝑡, 𝑦(𝑡))𝑑𝑡


𝑡𝑖
𝑡1+1

𝑦𝑖+1 = ∫ 𝑦𝑖 + 𝑓(𝑡, 𝑦(𝑡))𝑑𝑡


𝑡𝑖

𝑡
Selanjutnya, integral ruas kanan yaitu ∫𝑡 1+1 𝑓(𝑡, 𝑦(𝑡))𝑑𝑡 dapat diselesaikan
𝑖
dengan menggunakan kaidah trapesium, yaitu :
𝑡1+1
[𝑓(𝑡𝑖, 𝑦𝑖 ) + 𝑓(𝑡𝑖+1, 𝑦𝑖+1 )]
∫ 𝑓(𝑡, 𝑦(𝑡))𝑑𝑡 = (𝑡𝑖+1 − 𝑡𝑖 )
2
𝑡𝑖


= 2 [𝑓(𝑡𝑖, 𝑦𝑖 ) + 𝑓(𝑡𝑖+1, 𝑦𝑖+1 )] (3.3)

Persamaan (3.3) disubstitusikan ke persamaan (3.2) sehingga diperoleh suatu


formula yang dinamakan metode Heun :


𝑦𝑖+1 = 𝑦𝑖 + [𝑓(𝑡𝑖, 𝑦𝑖 ) + 𝑓(𝑡𝑖+1, 𝑦𝑖+1 )]
2
Dengan:

i= 0,1,2,3,…,n

𝑦𝑖+1 = hampiran sekarang

𝑦𝑖 = hampiran sebelumnya

h = ukuran langkah

Pada persamaan (3.4) suku ruas kanan mengandung 𝑦𝑖+1. Nilai dari 𝑦𝑖+1 ini
merupakan solusi perkiraan awal (predictor) yang dihitung dengan metode Euler,
maka persamaan Heun dapat ditulis:
(0)
Predictor : 𝑦𝑖+1 = 𝑦𝑖 + ℎ𝑓(𝑡𝑖 , 𝑦𝑖 )

ℎ (0)
𝐶𝑜𝑟𝑟𝑒𝑐𝑡𝑜𝑟 ∶ 𝑦𝑖+1 = 𝑦𝑖 + [𝑓(𝑡𝑖 , 𝑦𝑖 ) + 𝑓(𝑡𝑖+1 , 𝑦𝑖+1 )]
2
Atau ditulis dalam satu kesatuan menjadi,


𝑦𝑖+1 = 𝑦𝑖 + [𝑓(𝑡𝑖 , 𝑦𝑖 ) + 𝑓(𝑡𝑖+1 , 𝑦𝑖 + ℎ𝑓(𝑡𝑖 , 𝑦𝑖 ))]
2
Persamaan metode Heun dapat juga dielesaikan dengan menggunakan
iterasi yaitu :

(𝑘) ℎ (𝑘−1)
𝑦𝑖+1 = 𝑦𝑖 + [𝑓(𝑡𝑖 , 𝑦𝑖 ) + 𝑓(𝑡𝑖+1 , 𝑦𝑖+1 )]
2
Dengan 𝑘 = 1, 2, 3, 4, …

𝑖 = 0, 1, 2, 3, 4, …

Diberikan system persamaan diferensial orde satu dengan dua variabel tak bebas:

𝑥́ = 𝑓(𝑡, 𝑥, 𝑦)

𝑦́ = 𝑔(𝑡, 𝑥, 𝑦)

Maka, formula Heun untuk suatu system persamaan berbentuk:


(0)
Predictor : 𝑥𝑖+1 = 𝑥𝑖 + ℎ𝑓(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 )
(0)
𝑦𝑖+1 = 𝑦𝑖 + ℎ𝑔(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 )

(𝑘) ℎ (𝑘−1) (𝑘−1)


Corrector : 𝑥𝑖+1 = 𝑥𝑖 + 2 [𝑓(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 ) + 𝑓(𝑡𝑖+1 , 𝑥𝑖+1 , 𝑦𝑖+1 )]
(3.5)

(𝑘) ℎ (𝑘−1) (𝑘−1)


𝑦𝑖+1 = 𝑦𝑖 + [𝑔(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 ) + 𝑔(𝑡𝑖+1 , 𝑥𝑖+1 , 𝑦𝑖+1 )]
2
Dengan 𝑘 = 1, 2, 3, 4, …

𝑖 = 0, 1, 2, 3, 4, …

SISTEM PERSAMAAN DIFERENSIAL LOTKA-VOLTERRA

Dalam bidang biologi khususnya ekologi, system persamaan diferensial


digunakan untuk memodelkan interaksi dua populasi. Interaksi populasi yang
paling terlihat adalah yang melibatkan pemangsaan ( predasi, predation ), dimana
seekor pemangsa memakan mangsa ( Campbell, dkk, 2004). Secara matematis
model interaksi dua populasi diperkenalkan oleh seorang ahli biofisika dari
Amerika yaitu Alferd J.Lotka (1880-1949) dan ahli matematika dari Italia yaitu
Vito Volterra (1860-1940). Keduanya mengembangkan kajian matematis tersebut
secara terpisah (Boyce dan DiPrima, 2001).

Lotka-Volterra pertamakali mengusulkan sebuah model sederhana untuk


interaksi dua populasi antara satu spesies dengan spesies yang lain dengan
memisalkan x(t) dan y(t) masing-masing menyatakan banyaknya populasi mangsa
dan pemangsa pada saat t (Murray, 2002). Jika kedua populasi ini terpisah satu
sama lain, maka kedua populasi tersebut akan berubah dengan laju berbanding
lurus dengan jumlah yang ada, sehingga :
𝑑𝑥 𝑑𝑦
= 𝑎𝑥 dan = −𝑐𝑦 (3.6)
𝑑𝑡 𝑑𝑡
Pada persamaan (3.6), 𝑎 > 0 karena populasi mangsa mempunyai persediaan
makanan berlebihan dan karena itu bertambah banyak, sedangkan – 𝑐 < 0 karena
populasi pemangsa tidak mempunyai makanan, sehingga jumlahnya berkurang.

Telah dimisalkan bahwa kedua populasi berinteraksi sedemikian sehingga


populasi pemangsa memakan populasi mangsa. Sehingga dapat diandaikan bahwa
jumlah yang membunuh besarnya tiap saatuan waktu berbanding lurus dengan 𝑥
dan 𝑦, yaitu 𝑥𝑦. Jadi populasi mangsa jumlahnya akan berkurang dan pemangsa
akan bertambah pada laju yang berbanding lurus dengan 𝑥𝑦. Jadi, kedua populasi
yang berinteraksi memenuhi system tak linear, yaitu : (Finizio, 1998)
𝑑𝑥 𝑑𝑦
= 𝑎𝑥(𝑡) − 𝑏𝑥(𝑡)𝑦(𝑡) = −𝑐𝑦(𝑡) + 𝑑𝑥(𝑡)𝑦(𝑡)
𝑑𝑡 𝑑𝑡

Atau dapat juga dituliskan:

𝑑𝑥
= 𝑎𝑥(𝑡) − 𝑏𝑥(𝑡)𝑦(𝑡) = 𝑥(𝑡)(𝑎 − 𝑏𝑦(𝑡))
𝑑𝑡

(3.7)

𝑑𝑦
= −𝑐𝑦(𝑡) + 𝑑𝑥(𝑡)𝑦(𝑡) = 𝑦(𝑡)(−𝑐 + 𝑑𝑥(𝑡))
𝑑𝑡
Persamaan (3.7) merupakan persamaan umum Lotka-Volterra, dimana a, b, c, dan
d merupakan koefisien positif. A merupakan tingkat kelahiran mangsa, b
menunjukkan tingkat kematian mangsa akibat interaksi dengan pemangsa, c
menunjukkan tingkat kematian pemangsa, sedangkan d merupakan tingkat
kelahiran pemangsa akibat interaksi dengan mangsa (Murray, 2002). Pada
persamaan (3.7), 𝑎 > 0 karena populasi mangsa mempunyai persediaan makanan
berlebihan dan karena itu bertambah banyak, −𝑐 < 0 karena populasi pemangsa
tidak mempunyai makanan, sehingga jumlahnya berkurang, −𝑏 < 0 karena
populasi mangsa mengalami penurunan akibat dimakan oleh pemangsa, dan 𝑑 >
0 karena populasi pemangsa mempunyai persediaan makanan dari mangsa
sehingga pemangsa bertambah banyak.

Salah satu tambahan mengenai model persamaan yang digambarkan pada


persamaan (3.7) ialah andaikan ada factor penghambat pertumbuhan yang dapat
mempengaruhi populasi mangsa dan pemangsa seperti iklim, persediaan makanan
dan wabah penyakit. Sehingga mengakibatkan kedua populasi mangsa dan
pemangsa berturut-turut akan berkurang jumlahnya pada saat 𝐸𝑥(𝑡) dan 𝐸𝑦(𝑡),
maka system (3.7) dapat diganti :
𝑑𝑥 𝑑𝑦
= 𝑎𝑥(𝑡) − 𝑏𝑥(𝑡)𝑦(𝑡) − 𝐸𝑥(𝑡) = −𝑐𝑦(𝑡) + 𝑑𝑥(𝑡)𝑦(𝑡) − 𝐸𝑦(𝑡)
𝑑𝑡 𝑑𝑡
Atau
(3.8)

𝑑𝑥 𝑑𝑦
= (𝑎 − 𝐸)𝑥(𝑡) − 𝑏𝑥(𝑡)𝑦(𝑡) = −(𝑐 + 𝐸)𝑦(𝑡) + 𝑑𝑥(𝑡)𝑦(𝑡)
𝑑𝑡 𝑑𝑡
Persamaan (3.8) merupakan model Lotka-Volterra yang dipengaruhi oleh faktor
penghambat pertumbuhan, dimana a,b,c dan d merupakan koefisien positif. a
merupakan tingkat kelahiran mangsa, c menunjukkan tingkat kematian pemangsa,
b tingkat kematian mangsa akibat interaksi dengan pemangsa dan d merupakan
tingkat kelahiran pemangsa akibat interaksi antara mangsa dan pemangsa,
sedangkan E merupakan nila factor penghambat pertumbujhan mangsa dan
pemangsa (Finizio.1998).

3.3 Penyelesaian Sistem Persamaan Diferensial Non Linear dengan Metode Heun
pada Lotka-Volterra

Model Lotka-Volterra merupakan salah satu dari aplikasi system persamaan


diferensial non-linear. Model Lotka-Volterra yang digunakan ialah model Lotka-
Volterra yang dipengaruhi oleh factor penghambat pertumbuhan yaitu pada
persamaan (3.8) interpretasi dari persamaan (3.8) adalah 𝑥(𝑡) menyatakan jumlah
populasi prey pada waktu t dan 𝑦(𝑡) menyatakan jumlah populasi pamangsa pada
waktu t. laju pertumbuhan populasi mangsa adalah selisih dari tingkat kelahiran
dengan tingkat kematian mangsa akibat interaksi dengan pemangsa dan pengaruh
factor penghamba pertumbuhan. Laju pertumbuhan populasi pemangsa
merupakan naiknya tingkat kelahiran pemangsa karena interaksi dengan mangsa
dengantingkat kematian pemangsa dan factor penghambat pertumbuhan.

Secara umum, langkah-langkah dalam menyelesaikan system persamaan


diferensial (3.8) secara numeric dengan metode Heun adalah :

a. Menentukan besarnya variabel terikat 𝑥(0) dan y(0) pada saat


𝑡(𝑤𝑎𝑘𝑡𝑢) = 0.
b. Menentukan besarnya koefisien-koefisien yang terdapat dalam sistem
persamaan diferensial (3.8).
c. Menentukan nilai 𝑡(𝑤𝑎𝑘𝑡𝑢) yang akan ditentukan penyelesaiannya dan
ukuran langkah ℎ.
d. Merumuskan formulasi rumus Heun.
e. Menghitung predictordari dua variabel terikat yaitu 𝑥𝑖+1 dan 𝑦𝑖+1 .
f. Kemudian menghitung corrector dari dua variabel 𝑥𝑖+1 dan 𝑦𝑖+1 dengan
menggunakan nilai predictor.
g. Kemudian hasil corrector diiterasikan pada k sampai memenuhi
(𝑘) (𝑘−1)
|𝑦𝑖+1 −𝑦𝑖+1 |
(𝑘) < 𝜀𝑠
|𝑦𝑖+1 |

Dimana 𝜀𝑠 merupakan nilai yang dikehendaki, misal 𝜀𝑠 = (6 × 10−5 ).

3.3.1 Aplikasi Model Lotka Volterra

Pada ekosistem sawah sawah terdapat interaksi mangsa pemangsa atara


tikus dan ular. Jumlah populai tikus 100 ekor dan populasi ular 50 ekor. Tingkat
kelahiran tikus ialah 0,6 dan tingkat kematian akibat interaksi dengan ular ialah
0,01 sedangkan tingkat kelahiran ular ialah 0,004 dan tingkat kematiannya 0,3.
Keadaan lingkungan di ekosistem juga akan mempengaruhi laju pertumbuhannya
yaitu 0,03. Tentukan jumlah populasi tikus dan ular selama bulan Juni sampai
Desember?

Penyelesaian :

Langkah 1:

Dalam interaksi mangsa pemangsa di ekoistem sawah, jumlah mangsa


𝑥(0) = 100 dan jumlah pemangsa 𝑦(0) = 50 dengan 𝑥 adalah populasi tikus dan
𝑦 adalah populasi ular.

Langkah 2:

Besar koefisien yang terdapat dalam system persamaan diferensial (3.8)


yaitu 𝑎 = 0,6, 𝑏 = 0,01, 𝑐 = 0,3, 𝑑 = 0,004, 𝐸 = 0,03.

Langkah 3:

Nilai 𝑡 (𝑤𝑎𝑘𝑡𝑢) yang diselesaikan yaitu pada saat 𝑡 = 31 hari dengan


ukuran langkah ℎ = 1. selanjutnya dihitung kembali pada 𝑡 = 30 hari, secara
berurutan dari bulan Juli sampai bulan Desember. Sehingga system perrsamaan
diferensial (3.8) dapat ditulis:

𝑑𝑥
𝑓(𝑡, 𝑥, 𝑦) = = 0,6𝑥(𝑡) − 0,001𝑥(𝑡)𝑦(𝑡) − 0,03𝑥(𝑡)
𝑑𝑡

(3.9)

𝑑𝑦
𝑔(𝑡, 𝑥, 𝑦) = = 0,004𝑥(𝑡)𝑦(𝑡) − 0,3𝑥(𝑡) − 0,03𝑦(𝑡)
𝑑𝑡
Langkah 4:

Sesuaikan dengan rumus (3.5) maka


(0)
Predictor: 𝑥𝑖+1 = 𝑥𝑖 + ℎ𝑓(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 )
(0)
𝑦𝑖+1 = 𝑦𝑖 + ℎ𝑔(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 )

(𝑘) ℎ (𝑘−1) (𝑘−1)


Corrector : 𝑥𝑖+1 = 𝑥𝑖 + 2 [𝑓(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 + 𝑓(𝑡𝑖+1 , 𝑥𝑖+1 , 𝑦𝑖+1 )]

(𝑘) ℎ (𝑘−1) (𝑘−1)


𝑦𝑖+1 = 𝑦𝑖 + [𝑔(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 + 𝑔(𝑡𝑖+1 , 𝑥𝑖+1 , 𝑦𝑖+1 )]
2
Dengan 𝑘 = 1, 2, 3, 4, …

𝑖 = 0, 1, 2, 3, 4, …

Dimana ℎ = 1, maka:
(0)
Predictor: 𝑥𝑖+1 = 𝑥𝑖 + (1)𝑓(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 )
(0)
𝑦𝑖+1 = 𝑦𝑖 + (1)𝑔(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 )

(𝑘) 1 (𝑘−1) (𝑘−1)


Corrector : 𝑥𝑖+1 = 𝑥𝑖 + 2 [𝑓(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 ) + 𝑓(𝑡𝑖+1 , 𝑥𝑖+1 , 𝑦𝑖+1 )]

(𝑘) 1 (𝑘−1) (𝑘−1)


𝑦𝑖+1 = 𝑦𝑖 + [𝑔(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 ) + 𝑔(𝑡𝑖+1 , 𝑥𝑖+1 , 𝑦𝑖+1 )]
2
Langkah 5:

Untuk bulan juli

Menghitung predictor dari 𝑥𝑖+1 dan 𝑦𝑖+1

Untuk 𝑖 = 0

Dengan 𝑡𝑖+1 = 𝑡0+1 = 𝑡1 = 1, 𝑥0 = 100, dan 𝑦0 = 50


(0)
Predictor :𝑥0+1 = 𝑥0 + (1)𝑓(𝑡0 , 𝑥0 , 𝑦0 )
(0)
𝑥1 = 𝑥0 + (1)𝑓(0,6𝑥0 − 0,01𝑥0 𝑦0 − 0,03𝑥0 )

= 100 + (1)(0,6 ∙ 100 − 0,01 ∙ 100 ∙ 50 − 0,03 ∙ 100)

= 107
(0)
𝑦0+1 = 𝑦0 + (1)𝑔(𝑡0 , 𝑥0 , 𝑦0 )
(0)
𝑦1 = 𝑦0 + (1)(0,004𝑥0 𝑦0 − 0,3𝑦0 − 0,03𝑦0 )

= 50 + (1)(0,004 ∙ 100 ∙ 50 − 0,3 ∙ 50 − 0,03 ∙ 50)


= 53,5

Langkah 6:

Menghitung nilai corrector dengan menggunakan nilai predictor yang didapat


pada langkah 5, maka nilai corrector 𝑥𝑖+1 dan 𝑦𝑖+1 adalah:

Iterasi 1:

Untuk 𝑖 = 0 dan 𝑘 = 1

(𝑘) ℎ (𝑘−1) (𝑘−1)


𝑥𝑖+1 = 𝑥𝑖 + [𝑓(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 + 𝑓(𝑡𝑖+1 , 𝑥𝑖+1 , 𝑦𝑖+1 )]
2

(1) ℎ (0) (0)


𝑥1 = 𝑥0 + [𝑓(𝑡0 , 𝑥0 , 𝑦0 + 𝑓(𝑡1 , 𝑥1 , 𝑦1 )]
2
1 (0) (0) (0) (0)
= 𝑥0 + [(0.6𝑥𝑖 − 0,01𝑥0 𝑦0 − 0,03𝑥0 ) + (0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 )]
2
1
= 100 + [(0,6 ∙ 100 − 0,01 ∙ 100 ∙ 50 − 0,03 ∙ 100)
2
+ (0,6 ∙ 107 − 0,01 ∙ 107 ∙ 53,5 − 0,03 ∙ 107)]

= 105,3725

(𝑘) ℎ (𝑘−1) (𝑘−1)


𝑦𝑖+1 = 𝑦 + [𝑔(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 + 𝑔(𝑡𝑖+1 , 𝑥𝑖+1 , 𝑦𝑖+1 )]
2

(1) ℎ (0) (0)


𝑦1 = 𝑦 + [𝑔(𝑡0 , 𝑥0 , 𝑦0 + 𝑔(𝑡1 , 𝑥1 , 𝑦1 )]
2
1
= 𝑦0 + [(0,004𝑥0 𝑦0 − 0,3𝑦0 − 0,03𝑦0 )
2
(0) (0) (0) (0)
+ (0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 )]

1
= 50 + [(0,004 ∙ 100 ∙ 50 − 0,3 ∙ 50 ∙ 50 − 0,03 ∙ 50)
2
+ (0,004 ∙ 107 ∙ 53,5 − 0,3 ∙ 53,5 − 0,03 ∙ 53,5)]

= 54,3715

Kemudian dihitung galat relatifnya dengan menggunakan persamaan :


(𝑘) (𝑘)
|𝑦𝑖+1 −𝑦𝑖+1 |
𝜀𝑘 = (𝑘) , sehingga
|𝑦𝑖+1 |
(1) (0)
|𝑥1 − 𝑥1 | |105,3725 − 107|
𝜀1𝑥 = = = 0,0154452
(1)
|𝑥1 | |105,3725|

(1) (0)
|𝑦1 − 𝑦1 | |54,3715 − 53,5|
𝜀1𝑦 = = = 0,0160286
(1)
|𝑦1 | |54,3715|

Karena 𝜀1𝑥 > 𝜀 dan 𝜀1𝑦 > 𝜀 maka iterasi masih harus dilanjutkan.

Iterasi 2:

(2) ℎ (0) (0)


𝑥1 = 𝑥0 + [𝑓(𝑡0 , 𝑥0 , 𝑦0 + 𝑓(𝑡1 , 𝑥1 , 𝑦1 )]
2
1
= 𝑥0 + [(0.6𝑥0 − 0,01𝑥0 𝑦0 − 0,03𝑥0 )
2
(0) (0) (0) (0)
+ (0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 )]

1
= 100 + [(0,6 ∙ 100 − 0,01 ∙ 100 ∙ 50 − 0,03 ∙ 100)
2
+ (0,6 ∙ 105,3725 − 0,01 ∙ 105,3725 ∙ 54,371 − 0,03
∙ 105,3725)]

= 104,8848581

(2) ℎ (0) (0)


𝑦1 = 𝑦0 + [𝑔(𝑡0 , 𝑥0 , 𝑦0 + 𝑔(𝑡1 , 𝑥1 , 𝑦1 )]
2
1
= 𝑦0 + [(0,004𝑥0 𝑦0 − 0,3𝑦0 − 0,03𝑦0 )
2
(0) (0) (0) (0)
+ (0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 )]

1
= 50 + [(0,004 ∙ 100 ∙ 50 − 0,3 ∙ 50 − 0,03 ∙ 50)
2
+ (0,004 ∙ 105,3725 ∙ 54,3715 − 0,3 ∙ 54,3715 − 0,03
∙ 54,3715)]

= 54,2372243

Kemudian dihitung galat relatifnya


(2) (1)
|𝑥1 − 𝑥1 | |104,8848581 − 105,3725000|
𝜀2𝑥 = = = 0,0046493
|𝑥1 |
(2) |104,8848581|
(2) (1)
|𝑦1 − 𝑦1 | |54,2372243 − 54,3715|
𝜀2𝑦 = = = 0,0024757
(2)
|𝑦1 | |54,2372243|

Karena 𝜀2𝑥 > 𝜀 dan 𝜀2𝑦 > 𝜀 maka iterasi masih harus dilanjutkan.

Iterasi 3:

Untuk 𝑖 = 0 dan 𝑘 = 3

(3) ℎ (2) (2)


𝑥1 = 𝑥0 + [𝑓(𝑡0 , 𝑥0 , 𝑦0 + 𝑓(𝑡1 , 𝑥1 , 𝑦1 )]
2
1
= 𝑥0 + [(0.6𝑥0 − 0,01𝑥0 𝑦0 − 0,03𝑥0 )
2
(2) (2) (2) (2)
+ (0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 )]

1
= 100 + [(0,6 ∙ 100 − 0,01 ∙ 100 ∙ 50 − 0,03 ∙ 100)
2
+ (0,6 ∙ 104,8848581 − 0,01 ∙ 104,8848581 ∙ 54,2372243
− 0,03 ∙ 104,8848581)]

= 104,9488667

(3) ℎ (2) (2)


𝑦1 = 𝑦0 + [𝑔(𝑡0 , 𝑥0 , 𝑦0 + 𝑔(𝑡1 , 𝑥1 , 𝑦1 )]
2
1
= 𝑦0 + [(0,004𝑥0 𝑦0 − 0,3𝑦0 − 0,03𝑦0 )
2
(2) (2) (2) (2)
+ (0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 )]

1
= 50 + [(0,004 ∙ 100 ∙ 50 − 0,3 ∙ 50 − 0,03 ∙ 50)
2
+ (0,004 ∙ 104,8848581 ∙ 54,2372243 − 0,3 ∙ 54,2372243
− 0,03 ∙ 54,2372243)]

= 54,1781851

Kemudian dihitung galat relatifnya


(3) (2)
|𝑥1 − 𝑥1 | |104,9488667 − 104,8848581|
𝜀3𝑥 = = = 0,0006099
(3)
|𝑥1 | |104,9488667|

(3) (2)
|𝑦1 − 𝑦1 | |54,1781851 − 54,2372243|
𝜀3𝑦 = = = 0,0010897
(3)
|𝑦1 | |54,1781851|
Karena 𝜀3𝑥 > 𝜀 dan 𝜀3𝑦 > 𝜀 maka iterasi masih harus dilanjutkan.

Iterasi 4:

Untuk 𝑖 = 0 dan 𝑘 = 4

(4) ℎ (3) (3)


𝑥1 = 𝑥0 + [𝑓(𝑡0 , 𝑥0 , 𝑦0 + 𝑓(𝑡1 , 𝑥1 , 𝑦1 )]
2
1 (3) (3) (3) (3)
= 𝑥0 + [(0.6𝑥0 − 0,01𝑥0 𝑦0 − 0,03𝑥0 ) + (0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 )]
2
1
= 100 + [(0,6 ∙ 100 − 0,01 ∙ 100 ∙ 50 − 0,03 ∙ 100)
2
+ (0,6 ∙ 104,9488667 − 0,01 ∙ 104,9488667 ∙ 54,1781851
− 0,03 ∙ 104,9488667)]

= 104,9807314

(4) ℎ (3) (3)


𝑦1 = 𝑦0 + [𝑔(𝑡0 , 𝑥0 , 𝑦0 + 𝑔(𝑡1 , 𝑥1 , 𝑦1 )]
2
1
= 𝑦0 + [(0,004𝑥0 𝑦0 − 0,3𝑦0 − 0,03𝑦0 )
2
(3) (3) (3) (3)
+ (0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 )]

1
= 50 + [(0,004 ∙ 100 ∙ 50 − 0,3 ∙ 50 − 0,03 ∙ 50)
2
+ (0,004 ∙ 104,9488667 ∙ 54,1781851 − 0,3 ∙ 54,1781851
− 0,03 ∙ 54,1781851)]

= 54,1824777

Kemudian dihitung galat relatifnya


(4) (3)
|𝑥1 − 𝑥1 | |104,9807314 − 104,9488667|
𝜀4𝑥 = = = 0,0003035
(4)
|𝑥1 | |104,9807314|

(4) (3)
|𝑦1 − 𝑦1 | |54,1824777 − 54,1781851|
𝜀4𝑦 = = = 0,0000792
(4)
|𝑦1 | |54,1824777|

Karena 𝜀4𝑥 > 𝜀 dan 𝜀4𝑦 > 𝜀 maka iterasi masih harus dilanjutkan.

Iterasi 5:

Untuk 𝑖 = 0 dan 𝑘 = 5
(5) ℎ (5) (5)
𝑥1 = 𝑥0 + [𝑓(𝑡0 , 𝑥0 , 𝑦0 + 𝑓(𝑡1 , 𝑥1 , 𝑦1 )]
2
1 (4) (4) (4) (4)
= 𝑥0 + [(0.6𝑥0 − 0,01𝑥0 𝑦0 − 0,03𝑥0 ) + (0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 )]
2
1
= 100 + [(0,6 ∙ 100 − 0,01 ∙ 100 ∙ 50 − 0,03 ∙ 100)
2
+ (0,6 ∙ 104,9807314 − 0,01 ∙ 104,9807314 ∙ 54,1824777 − 0,03
∙ 104,9807314)]

=104,9789278

(5) ℎ (4) (4)


𝑦1 = 𝑦0 + [𝑔(𝑡0 , 𝑥0 , 𝑦0 + 𝑔 (𝑡1 , 𝑥1 , 𝑦1 )]
2
1 (4) (4) (4) (4)
= 𝑦0 + [(0,004𝑥0 𝑦0 − 0,3𝑦0 − 0,03𝑦0 ) + (0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 )]
2
1
= 50 + [(0,004 ∙ 100 ∙ 50 − 0,3 ∙ 50 − 0,03 ∙ 50)
2
+ (0,004 ∙ 104,9807314 ∙ 54,1824777 − 0,3 ∙ 54,1824777 − 0,03
∙ 54,1824777)]

=54,1861235

Kemudian dihitung galat relatifnya


(4) (3)
|𝑥1 − 𝑥1 | |104,9789278 − 104,9807314|
𝜀4𝑥 = = = 0,0000172
(4)
|𝑥1 | |104,9789278|

(4) (3)
|𝑦1 − 𝑦1 | |54,1861235 − 54,1824777|
𝜀4𝑦 = = = 0,0000673
(4)
|𝑦1 | |54,1861235|

Karena 𝜀5𝑥 > 𝜀 dan 𝜀5𝑦 > 𝜀 maka iterasi masih harus dilanjutkan.

Iterasi 6:

Untuk 𝑖 = 0 dan 𝑘 = 6

(6) ℎ (6) (6)


𝑥1 = 𝑥0 + [𝑓(𝑡0 , 𝑥0 , 𝑦0 + 𝑓(𝑡1 , 𝑥1 , 𝑦1 )]
2
1
= 𝑥0 + [(0.6𝑥0 − 0,01𝑥0 𝑦0 − 0,03𝑥0 )
2
(5) (5) (5) (5)
+ (0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 )]
1
= 100 + [(0,6 ∙ 100 − 0,01 ∙ 100 ∙ 50 − 0,03 ∙ 100)
2
+ (0,6 ∙ 104,9789278 − 0,01 ∙ 104,9789278 ∙ 54,1861235
− 0,03 ∙ 104,9789278)]

=104,9769887

(6) ℎ (5) (5)


𝑦1 = 𝑦0 + [𝑔(𝑡0 , 𝑥0 , 𝑦0 + 𝑔(𝑡1 , 𝑥1 , 𝑦1 )]
2
1 (5) (5) (5)
= 𝑦0 + 2 [(0,004𝑥0 𝑦0 − 0,3𝑦0 − 0,03𝑦0 ) + (0,004𝑥1 𝑦1 − 0,3𝑦1 −
(5)
0,03𝑦1 )]

1
= 50 + [(0,004 ∙ 100 ∙ 50 − 0,3 ∙ 50 − 0,03 ∙ 50)
2
+ (0,004 ∙ 104,9789278 ∙ 54,1861235 − 0,3 ∙ 54,1861235
− 0,03 ∙ 54,1861235)]

=54,1860919

Kemudian dihitung galat relatifnya


(6) (5)
|𝑥1 − 𝑥1 | |104,9769887 − 104,9789278|
𝜀6𝑥 = = = 0,0000184
(6)
|𝑥1 | |104,9769887|

(6) (4)
|𝑦1 − 𝑦1 | |54,1860919 − 54,1861235|
𝜀6𝑦 = = = 0,0000006
(6)
|𝑦1 | |54,1860919|

Karena 𝜀6𝑥 < 𝜀 dan 𝜀6𝑦 < 𝜀 maka iterasi x dan y pada 𝑡1 = 1 diberhentikan
dengan nilai 𝑥1 = 104,9769887 dan 𝑦1 = 54,1860919

Untuk 𝑖 = 1

Dengan 𝑡𝑖+1 = 𝑡1+1 = 𝑡2 = 2

Menghitung predictor dari 𝑥𝑖+1 dan 𝑦𝑖+1

Dengan 𝑥1 = 104,9769887 dan 𝑦1 = 54,1860919

Predictor :
(0)
𝑥2 = 𝑥1 + (1)𝑓(𝑡1 , 𝑥1 , 𝑦1 )

= 𝑥1 + (1)𝑓(0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 )


= 104,9769887 + (1)(0,6 ∙ 104,9769887 − 0,01 ∙ 104,9769887
∙ 54,1860919 − 0,03 ∙ 104,9769887)

= 107,9309447
(0)
𝑦2 = 𝑦1 + (1)𝑔(𝑡1 , 𝑥1 , 𝑦1 )

= 𝑦1 + (1)(0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 )

= 54,1860919 + (1)(0,004 ∙ 104,9769887 ∙ 54,1860919 − 0,3 ∙


54,1860919 − 0,03 ∙ 54,1860919)

= 59,0578526

Corrector :

Iterasi 1:

Untuk 𝑖 = 0 dan 𝑘 = 1

(1) ℎ (0) (0)


𝑥2 = 𝑥1 + [𝑓(𝑡1 , 𝑥1 , 𝑦1 + 𝑓(𝑡2 , 𝑥2 , 𝑦2 )]
2
1 (0) (0) (0)
= 𝑥0 + 2 [(0.6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 ) + (0,6𝑥2 − 0,01𝑥2 𝑦2 −
(0)
0,03𝑥2 )]

1
= 104,9769887 + 2 [(0,6 ∙ 104,9769887 − 0,01 ∙ 104,9769887 ∙
54,1860919 − 0,03 ∙ 104,9769887) + (0,6 ∙ 107,9309447 − 0,01 ∙
107,9309447 ∙ 59,0578526 − 0,03 ∙ 107,9309447)]

= 105,3434368

(1) ℎ (0) (0)


𝑦2 = 𝑦 + [𝑔(𝑡1 , 𝑥1 , 𝑦1 + 𝑔(𝑡2 , 𝑥2 , 𝑦2 )]
2
1 (0) (0) (0)
= 𝑦0 + 2 [(0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 ) + (0,004𝑥2 𝑦2 − 0,3𝑦2 −
(0)
0,03𝑦2 )]

1
= 54,1860919 + 2 [(0,004 ∙ 104,9769887 ∙ 54,1860919 − 0,3 ∙
54,1860919 ∙ 54,1860919 − 0,03 ∙ 54,1860919) + (0,004 ∙
107,9309447 ∙ 59,0578526 − 0,3 ∙ 59,0578526 − 0,03 ∙ 59,0578526)]

= 59,6257662
Kemudian dihitung galat relatifnya
(1) (0)
|𝑥2 − 𝑥2 | |105,3434368 − 107,9309447|
𝜀1𝑥 = = = 0,0245625
|𝑥2 |
(1) |105,3434368|

(1) (0)
|𝑦2 − 𝑦2 | |59,6257662 − 59,0578526|
𝜀1𝑦 = = = 0,0095246
(1)
|𝑦2 | |59,6257662|

Karena 𝜀1𝑥 > 𝜀 dan 𝜀1𝑦 > 𝜀 maka iterasi masih harus dilanjutkan.

Iterasi 2:

Untuk 𝑖 = 0 dan 𝑘 = 2

(2) ℎ (1) (1)


𝑥2 = 𝑥1 + [𝑓(𝑡1 , 𝑥1 , 𝑦1 + 𝑓(𝑡2 , 𝑥2 , 𝑦2 )]
2
1 (1) (1) (1)
= 𝑥1 + 2 [(0.6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 ) + (0,6𝑥2 − 0,01𝑥2 𝑦2 −
(1)
0,03𝑥2 )]

1
= 104,9769887 + 2 [(0,6 ∙ 104,9769887 − 0,01 ∙ 104,9769887 ∙
54,1860919 − 0,03 ∙ 104,9769887) + (0,6 ∙ 105,3434368 − 0,01 ∙
105,3434368 ∙ 59,6257662 − 0,03 ∙ 105,3434368)]

=105,0709305

(2) ℎ (1) (1)


𝑦2 = 𝑦1 + [𝑔(𝑡1 , 𝑥1 , 𝑦1 + 𝑔(𝑡2 , 𝑥2 , 𝑦2 )]
2
1 (1) (1) (1)
= 𝑦1 + 2 [(0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 ) + (0,004𝑥2 𝑦2 − 0,3𝑦2 −
(1)
0,03𝑦2 )]

1
= 54,1860919 + 2 [(0,004 ∙ 104,9769887 ∙ 54,1860919 − 0,03 ∙
54,1860919) + (0,004 ∙ 105,3434368 ∙ 59,6257662 − 0,3 ∙
59,6257662 − 0,03 ∙ 59,6257662)]

=59,3460871
Kemudian dihitung galat relatifnya
(2) (1)
|𝑥2 − 𝑥2 | |105,0709305 − 105,3434368|
𝜀2𝑥 = = = 0,0025935
|𝑥2 |
(2) |105,0709305|

(2) (1)
|𝑦2 − 𝑦2 | |59,3460871 − 59,6257662|
𝜀2𝑦 = = = 0,0047127
|𝑦2 |
(1) |59,3460871|

Karena 𝜀2𝑥 > 𝜀 dan 𝜀2𝑦 > 𝜀 maka iterasi masih harus dilanjutkan.

Iterasi 3 :

Untuk 𝑖 = 1 dan 𝑘 = 3
(3) ℎ (2) (2)
𝑥2 =𝑥1 + 2 [𝑓(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 ) + 𝑓(𝑡2 , 𝑥2 , 𝑦2 )]

1 (2) (2) (2)


= 𝑥1 + 2 [(0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 ) + (0,6𝑥2 − 0,01𝑥2 𝑦2 −
(2)
0,03𝑥2 )]

1
=104,976988+2[(0,6∙ 104,9769887)− 0,01 ∙ 104,9769887 ∙ 54,1860919) −
0,03 ∙ 104,9769887)+ (0,6 ∙ 105,0709305 − 0,01 ∙ 105,0709305 ∙
59,3460871 − 0,03 ∙ 105,0709305)]

= 105,2214389
(3) ℎ (2) (2)
𝑦2 =𝑦1 + 2 [𝑔(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 ) + 𝑔(𝑡2 , 𝑥2 , 𝑦2 )]

1 (2) (2) (2)


= 𝑦1 + 2 [(0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,003𝑦1 ) +) + (0,004𝑥2 𝑦2 − 0,3𝑦2 −
(2)
0,03𝑦2 )]

1
= 54,1860919 + [0,004 ∙ 104,9769887 ∙ 54,1860919 − 0,03 ∙ 54,1860
2
−0,03 ∙ 54,1860919 + 0,004 ∙ 105,0709305 ∙ 59,3460871

−0,3 ∙ 59,3460871 − 0,03 ∙ 59,3460871

= 59,3009651

Kemudian dihitung galatnya :


(3) (2)
|𝑥2 − 𝑥2 | |105,2214389 − 105,0709305|
𝜀3𝑥 = (3)
= = 0,0014303
|𝑥2 | |105,0709305|

(3) (2)
|𝑦2 − 𝑦2 | |59,3009651 − 59,3460871|
𝜀3𝑦 = (3)
= = 0,0007608
|𝑦2 | |59,3009651|

Karena 𝜀3𝑥 > 𝜀 dan 𝜀3𝑦 > 𝜀 , maka iterasi masih harus dilanjutkan.

Iterasi 4 :

Untuk 𝑖 = 1 dan 𝑘 = 4
(4) ℎ (3) (3)
𝑥2 =𝑥1 + 2 [𝑓(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 ) + 𝑓(𝑡2 , 𝑥2 , 𝑦2 )]

1 (3) (3) (3) (3)


= 𝑥1 + [(0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 ) + (0,6𝑥2 − 0,01𝑥2 𝑦2 − 0,03𝑥2 )]
2
1
=104,9769887 + 2 [(0,6(104,9769887) −
0,01(104,9769887)(54,1860919) − 0,03(104,9769887) +
(0,6(105,2214389) − 0,01(105,2214389)(59,3009651) −
0,03(105,2214389)]

= 105,2434124
(4) ℎ (3) (3)
𝑦2 =𝑦1 + 2 [𝑔(𝑡𝑖 , 𝑥𝑖 , 𝑦𝑖 ) + 𝑔(𝑡2 , 𝑥2 , 𝑦2 )]

1
= 𝑦1 + [(0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 ) +)
2
(3) (3) (3) (3)
+ (0,004𝑥2 𝑦2 − 0,3𝑦2 − 0,03𝑦2 )]

= 54,1860919
1
+ [(0,004(104,9769887)(54,1860919) − 0,3(54,1860919)
2
− 0,03(54,1860919) + 0,004(105,2214389)(59,3009651)
− 0,3(59,3009651) − 0,03(59,3009651)]

= 59,3167788

Kemudian dihitung galatnya :


(4) (3)
|𝑥2 − 𝑥2 | |105,2434124 − 105,2214389|
𝜀4𝑥 = (4)
= = 0,0002088
|𝑥2 | |105,2434124|
(4) (3)
|𝑦2 − 𝑦2 | |59,3167788 − 59,3009651|
𝜀4𝑦 = (4)
= = 0,0002665
|𝑦2 | |59,31677881|

Karena 𝜀3𝑥 > 𝜀 dan 𝜀3𝑦 > 𝜀 , maka iterasi masih harus dilanjutkan.

Iterasi 5 :

Untuk 𝑖 = 1 dan 𝑘 = 5


𝑥25 = 𝑥1 + [ 𝑓(𝑡1 , 𝑥1 , 𝑦1 )
2
+ 𝑓(𝑡2 , 𝑥24 , 𝑦24 ) ]
1
= 𝑥1 + 2 [(0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 ) + (0,6𝑥24 − 0,01𝑥24 𝑦24 − 0,03𝑥24 )]

1
= 104,976988 + 2 [(0,6 ∙ 104,9769887 − 0,01 ∙ 104,9769887 ∙
54,1860919 − 0,03 ∙ 104,9769887) + (0,6 ∙ 105,2434124 − 0,01 ∙
105,2434124 ∙ 59,316778 − 0,03 ∙ 105,2434124)]

=
105,2348382


𝑦25 = 𝑦1 + [𝑓(𝑡1 , 𝑥1 , 𝑦1 )
2
+ 𝑓(𝑡2 , 𝑥24 , 𝑦24 ) ]
1
= 𝑦1 + 2 [(0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 ) + (0,004𝑥24 𝑦24 − 0,3𝑦24 −
0,03𝑦24 )]
1
= 54,1860919 + 2 [(0,004 ∙ 104,976988 ∙ 54,1860919 − 0,3 ∙
54,1860919 − 0,03 ∙ 54,1860919) + (0,004 ∙ 105,2434124 ∙ 59,316778 −
0,3 ∙ 59,316778 − 0,03 ∙
59,316778)]

= 59,3201042

Kemudian menghitung galatnya sebagai berikut :

|𝑥25 − 𝑥24 | |105,2348382 − 105,2434124|


𝜀5𝑥 = = = 0,000814
|𝑥25 | |105,2348382|
|𝑦25 − 𝑦24 | |59,3201042 − 59,316778|
𝜀5𝑦 = = = 0,0000561
|𝑦25 | |59,3201042|

Karena 𝜀5𝑥 > 𝜀 dan 𝜀5𝑦 > 𝜀, maka iterasi masih dilanjutkan.

Iterasi 6 :

Untuk 𝑖 = 1 dan 𝑘 = 6


𝑥26 = 𝑥1 + [ 𝑓(𝑡1 , 𝑥1 , 𝑦1 ) + 𝑓(𝑡2 , 𝑥25 , 𝑦25 ) ]
2
1
= 𝑥1 + [(0,6𝑥1 − 0,01𝑥1 𝑦1 − 0,03𝑥1 ) + (0,6𝑥25 − 0,01𝑥25 𝑦25 − 0,03𝑥25 )]
2
1
= 104,9769887 + 2 [(0,6 ∙ 104,9769887 − 0,1 ∙ 104,9769887 ∙
54,1860919 − 0,3 ∙ 104,9769887) + (0,6 ∙ 105,2348382 − 0,01 ∙
105,2348382 ∙ 59,320104 − 0,03105,2348382)]

= 105,2331878


𝑦26 = 𝑦1 + [𝑓(𝑡1 , 𝑥1 , 𝑦1 ) + 𝑓(𝑡2 , 𝑥25 , 𝑦25 ) ]
2
1
= 𝑦1 + [(0,004𝑥1 𝑦1 − 0,3𝑦1 − 0,03𝑦1 ) + (0,004𝑥25 𝑦25 − 0,3𝑦25 − 0,03𝑦25 )]
2
1
= 54,1860919 + [(0,004 ∙ 104,976988 ∙ 54,1860919 − 0,3
2
∙ 54,1860919 − 0,03 ∙ 54,1860919) + (0,004
∙ 105,2434124 ∙ 59,316778 − 0,3 ∙ 59,316778 − 0,03
∙ 59,316778)]

= 59,3201042

Kemudian menghitung galatnya sebagai berikut :

|𝑥26 − 𝑥25 | |105,2331878 − 105,24348382|


𝜀6𝑥 = = = 0,000157
|𝑥26 | |105,23318782|

|𝑦26 − 𝑦25 | |59,3192382 − 59,3201042|


𝜀6𝑦 = = = 0,0000145
|𝑦26 | |59,3192382|
sKarena 𝜀5𝑥 > 𝜀 , 𝜀5𝑦 > 𝜀, maka iterasi 𝑥 dan 𝑦 pada 𝑡2 = 2 diberhentikan
dengan nilai 𝑥2 = 105,2331878 dan 𝑦2 = 59,3192382.

Selanjutnya dengan menggunakan cara yang sama, iterasi terus berulang


hingga mencapai 𝑡 = 184 (akhir bukan desember) , sehingga diperoleh 𝑥(184) =
68,16636834 dan 𝑦 = 65,270031. Dengan kata lain, jumlah populasi tikus dan
ular selama 6 bulan atau 184 hari ialah 68 ekor dan 65 ekor.

Kesimpulan :

1. Langkah-langkah dalam menyelesaikan system persamaan diferensial


(3.8) secara numeric dengan metode Heun adalah :
a. Menentukan besarnya variabel terikat 𝑥(0) dan y(0) pada saat
𝑡(𝑤𝑎𝑘𝑡𝑢) = 0.
b. Menentukan besarnya koefisien-koefisien yang terdapat dalam sistem
persamaan diferensial (3.8).
c. Menentukan nilai 𝑡(𝑤𝑎𝑘𝑡𝑢) yang akan ditentukan penyelesaiannya
dan ukuran langkah ℎ.
d. Merumuskan formulasi rumus Heun.
e. Menghitung predictordari dua variabel terikat yaitu 𝑥𝑖+1 dan 𝑦𝑖+1 .
f. Kemudian menghitung corrector dari dua variabel 𝑥𝑖+1 dan 𝑦𝑖+1
dengan menggunakan nilai predictor.
g. Kemudian hasil corrector diiterasikan pada k sampai memenuhi
(𝑘) (𝑘−1)
|𝑦𝑖+1 −𝑦𝑖+1 |
(𝑘) < 𝜀𝑠
|𝑦𝑖+1 |

Dimana 𝜀𝑠 merupakan nilai yang dikehendaki, misal 𝜀𝑠 = (6 × 10−5 ).

1. Penyelesaian numeric system persamaan diferensial non linear dengan


metode Heun pada model Lotka-Volterra diselesaikan dengan mencari
terlebih dahulu nilai prediksi dari 𝑥𝑖+1 dan 𝑦𝑖+1 pada titik 𝑡𝑖+1, 𝑡𝑖+1 , …,
𝑡𝑖+𝑛 dengan menggunakan metode Euler atau persamaan predictor metode
Heun, dimana terdapat nilai awal yang telah diketahui sebelumnya.
Selanjutnya nilai prediksi dikoreksi dengan menggunakan persamaan
corrector pada metode Heun dan diselesaikan dengan iterasi. Iterasi akan
berhenti jika galat relatifnya kurang dari 𝜀𝑠 , dimana 𝜀𝑠 adalah nilai
pemberhentian yang telah ditentukan misal 𝜀𝑠 = (6𝑥10−5 ).

Anda mungkin juga menyukai