Bab 6MA2151 Simulasi dan Komputasi Matematika
Metoda Euler
growth_rate = 0.10
population(0) = 100
growth(t) = growth_rate * population(t - Δt)
population(t) = population(t - Δt) + growth(t) * Δt
growth is the derivative of the function at the previous time step, t – Δt
𝑃 𝑡 + ∆𝑡 ≈ 𝑃 𝑡 + 𝑃′(𝑡)∆𝑡
Algoritma Metoda Euler
Example
Algoritma Metoda Euler (2)
Graphs of analytical solution and Euler’s Method solution with Δt = 1
Dari 3 teknik simulasi yang dipelajari, Metoda Euler memiliki waktueksekusi paling cepat, namun paling tidak akurat.
Error dalam metoda Euler dapat direduksi dengan menggunakan Δtyang lebih kecil, namun akan memperlambat simulasi.
Metoda Runge-Kutta 2
f(tn, Pn) menotasikan dP/dt pada langkah ke-n.
Metoda Euler menggunakan f(tn-1, Pn-1), yang sama dengan gradiengaris singgung di (tn-1, Pn-1) untuk memperoleh estimasi berikut:
Akan digunakan gradien garis yang menghubungkan (tn-1, Pn-1) ke (tn, Pn), bukan gradien garis singgung di (tn-1, Pn-1).
Euler vs Runge-Kutta 2
Algoritma Runge-Kutta 2
Estimasi (8, P(8))
First Estimate
Second Estimate
Third Estimate
Fourth Estimate
Algoritma Runge-Kutta 4