Anda di halaman 1dari 19

TUGAS PEMICU IV

KOMPUTASI PROSES TEKNIK KIMIA


OLEH:

KELOMPOK VII

1.
2.
3.
4.
5.
6.

MELVHA HUTAPEA / 080405058


RETNO DIAN PURBA / 100405040
NOFRIKO PRATAMA / 100405046
ANDA PUTRA / 100405052
FELICIA / 100405055
AGNES SARTIKA D P / 100405071

DEPARTEMEN TEKNIK KIMIA


FAKULTAS TEKNIK
UNIVERSITAS SUMATERA UTARA
MEDAN
2012

METODE EULER
1. Metode Euler Eksplisit
Metode

Euler

merupakan

metode

yang

paling

sederhana

untuk

mengintegrasikan PDB orde satu secara numerik. Kondisi atau syarat atau nilai
awal (xo, yo) digunakan untuk menghitung besarnya slope (atau tangen arah) y(x)
pada x = xo:

Dengan menganggap bahwa slope (dy/dx) pada interval x bernilai tetap, maka
nilai y(xo+x) dapat diperkirakan sebesar:

y(xo +x ) = y(xo )+x f (xo , yo )


Selanjutnya, nilai-nilai x dan y ini (yakni x = x0+x dan y = y(x0+x)) digunakan
untuk memperkirakan besarnya slope pada titik yang baru. Atau, nilai y(x 0+2x)
dapat dihitung sbb:

y(xo + 2x ) = y(xo + x ) + x f (xo +x, y(xo +x ))


Demikian seterusnya.
Pola perhitungan yang beruntun ini digambarkan sebagai bentuk umum metode
Euler Eksplisit:

atau: yi+1 = yi +x . f ( xi , yi )
atau: yi+1 = yi + h . f ( xi , yi )
dengan: x = h menyatakan lebar langkah (step size)
f (xi , yi) merupakan bentuk persamaan diferensial seperti pada persamaan
diferensial

, sehingga:

atau

Perhatikan bahwa formula metode Euler ini juga dapat dijabarkan dari
ekspansi deret Taylor untuk yi+1 di sekitar yi:

dengan mengabaikan suku-suku berorde x2 (=h2) dan yang lebih tinggi.

Dengan kata lain, metode Euler ini mempunyai tingkat ketelitian yang dinyatakan
dengan local truncation error sebesar:
ei = (x2)

atau:

ei = (h2)

Metode ini mempunyai global truncation error sebesar:


Ei = nilai eksak yi nilai pendekatan numerik yi

Gambar 1.1 Representasi Metode Euler Eksplisit

Contoh Soal
Gunakan metode Euler untuk menghitung nilai y pada x = 1 jika:
2 dengan nilai awal: y = 1 pada x = 0

Penyelesaian:
Formula metode Euler untuk kasus ini dapat dituliskan sebagai: yi+1 = yi
+x 2
Jika diambil step size x = 0,1, maka:
pada xo = 0 dan yo = 1 dapat dihitung:
y1 = 1 + (0,1) (0)2 (1) = 1
Selanjutnya, pada x1 = xo + x = 0 + 0,1 = 0,1 dan y1 = 1 dapat dihitung:
y2 = 1 + (0,1) (0,1)2 (1) = 1,001
Selanjutnya, pada x2 = x1 + x = 0,1 + 0,1 = 0,2 dan y2 = 1,001 dapat dihitung:
y3 = 1,001 + (0,1) (0,2)2 (1,001) = 1,005
Demikian seterusnya, hingga diperoleh y pada x = 1.
Sebagai perbandingan, dapat diambil nilai step size yang lain, misalnya: x = 0,05
x = 0,02, dan x = 0,2. Dengan cara yang sama, maka dapat diperoleh hasilhasil perhitungan sebagai berikut:

Tabel 2.1 Hasil Perhitungan Dengan Variasi Step Size

Dan apabila diplotkan nilai x dan y, akan diperoleh grafik sebagai berikut:

Gambar 2.1 Hasil Perhitungan Dengan Variasi Step Size

2. Metode Euler Implisit


Seperti yang ditunjukkan sebelumnya, ada batasan pada langkah metode
Euler untuk persamaan diferensial. Batasan ini terkhusus untuk disebut sistem
kaku. Untuk menggambarkan apa yang dimaksud dengan sistem kaku
berdasarkan:
2
2

+ 1001 + 1000y = 0

Solusi umumnya adalah:


y Ae-t + Be-1000t
dimana A dan B adalah konstanta. Persamaan pertama lebih lambat
penyelesaiannya dibandingkan dengan persamaan kedua. Sehingga, setelah saat t:

Penerapan dari metode Euler, kita dapat mengurangi persamaan orde kedua untuk
dua persamaan orde pertama oleh:
z=

sehingga:

= -1001z 1000y
=z

Langkah dasar Euler:

Dalam prakteknya kita tidak tahu nilai yn +1. Jadi kita perlu mulai dari y0. Dasar
langkah untuk bentuk persamaannya adalah:

= f(x,y)

xn+1 = xn + x
yn+1 = yn + f(xn+1,yn+1)x

Karena secara umum f (x, y) adalah, fungsi non-linear dari y, diperlukan


iterasi untuk memecahkan persamaan terakhir untuk yn

+1.

Karena yn

+1

tidak

secara eksplisit diberikan, metode ini disebut implisitEuler metode.


Hasil penyelesaian stiff equation dengan metode Euler eksplisit dan implicit
ditunjukkan dibawah ini. Dimana t = 0,1 untuk kedua metode.

Catatan: metode eksplisit menjadi tidak stabil pada t yang besar.

Contoh Soal:
Gunakan metode Euler, untuk menyelesaikan persamaan differensial
y = -y; dengan syarat y(0) = 1
Misalkan h yang akan digunakan adalah 0.01 untuk x dalam interval [0,04].
Penggunaan persamaan terakhir dengan h(x) = 0,01 memberikan hasil berikut :
y(0,01) = 1 + (0,01)(-1) = 0,99
y(0,02) = 0,99 + (0,01)(-0,99) = 0,9801
y(0,03) = 0,9801 + (0,01)(-0,9801) = 0,9703
y(0,04) = 0,9703 + (0,01)(-0,9703) = 0,9606
-x

Solusi eksak dari persamaan differensial di atas adaalah y = e , dan dari nilai x =
0,04 diperoleh nilai y = 0,9606.

METODE RUNGE-KUTTA
Ada dua alasan utama mengapa metode Euler umumnya tidak digunakan
dalam komputasi ilmiah. Pertama, kesalahan pemotongan per langkah terkait dengan
metode ini jauh lebih besar daripada yang terkait dengan lainnya, lebih maju, metode
(untuk nilai tertentu h). Kedua, metode Euler terlalu rentan terhadap ketidakstabilan
numerik.
Alasan utama bahwa metode Euler memiliki seperti kesalahan pemotongan
besar per langkah adalah bahwa dalam mengembangkan solusi dari xn untuk x{n +1}
metode hanya mengevaluasi derivatif pada awal interval: yaitu, pada xn. Metode ini,
oleh karena itu, sangat asimetris sehubungan dengan awal dan akhir interval. Kita
dapat membuat metode integrasi yang lebih simetris dengan membuat langkah
percobaan Euler-seperti untuk titik tengah dari interval, dan kemudian menggunakan
nilai dari kedua x dan y pada titik tengah untuk membuat langkah nyata di interval.
Untuk lebih tepatnya,

Sebagaimana

ditunjukkan

dalam

jangka

kesalahan,

simetrisasi

ini

membatalkan kesalahan orde pertama, dengan membuat metode orde kedua. Bahkan,
metode di atas umumnya dikenal sebagai metode orde kedua Runge-Kutta. Metode
Euler dapat dianggap sebagai metode orde pertama Runge-Kutta.

Salah satu anggota keluarga Runge-Kutta metode begitu umum digunakan


sehingga sering disebut sebagai "RK4", "klasik Runge-Kutta metode" atau hanya
sebagai "metode Runge-Kutta". Biarkan masalah nilai awal ditetapkan sebagai
berikut.

Di sini, y adalah fungsi yang tidak diketahui (skalar atau vektor) dari waktu t
yang kita ingin perkiraan, kita diberitahu bahwa

, tingkat di mana y perubahan,

merupakan fungsi dari t dan y sendiri. Pada saat awal


. Fungsi f dan data

, nilai y yang sesuai adalah

diberikan. Sekarang memilih langkah h> 0 dan

mendefinisikan

untuk n=0,1,2,3,... , dengan

Berikut

adalah pendekatan RK4 dari

) ditentukan oleh nilai sekarang (

, dan nilai berikutnya (

) ditambah rata-rata tertimbang dari empat

kenaikan , di mana kenaikan masing-masing adalah produk dari ukuran interval, h,


dan kemiringan diperkirakan ditentukan oleh fungsi f di sisi kanan dari persamaan
diferensial.

adalah kenaikan berdasarkan lereng di awal interval, menggunakan

(metode Euler);

adalah kenaikan didasarkan pada kemiringan pada titik tengah dari


interval, menggunakan

lagi kenaikan berdasarkan kemiringan pada titik tengah, tapi sekarang


menggunakan

adalah kenaikan berdasarkan lereng pada akhir interval, menggunakan


+

Dalam rata-rata empat bertahap, bobot yang lebih besar diberikan kepada
peningkatan pada titik tengah. Bobot yang dipilih sedemikian rupa sehingga jika f
adalah independen dari y, sehingga persamaan diferensial setara dengan terpisahkan
sederhana, maka RK4 adalah aturan Simpson.
Metode Runge-Kutta Orde 2 diberikan dalam skema berikut
yn+1 = yn + (k1 + k2)/2
dengan
k1 = hf (xn,yn), k2 = hf (xn,yn + k1)

Metode Runge-Kutta orde empat diberikan dalam rumus berikut ini:


yn+1 = yn + 1/6(k1 + 2k2 + 2k3 + k4)
dengan
k1 = f (xn,yn), k2 = f (xn + h/2 , yn + k1/2), k3 = f (xn + h/2,yn +k2), k4 = f(xn + h/2,yn +k3)

h = step size

Contoh
Diberikan MNA dalam bentuk

= y-x, dengan y (0) = 2 .

Tentukan y (0,1) dan y (0,2) teliti hingga empat tempat desimal:

Penyelesaian:
(i) Metode Runge-Kutta Orde Dua

Pilih h = 0,1 , f(x,y) = y-x, dan y (0) = 2. Kemudian tentukan nilai-nilai koefisien k1
dan k2 dengan cara berikut:
k1 = hf0 (x0,y0) = 0,1f (0,2) = 0,1 (2-0) = 0,2
k2 = hf (x0 + h,y0 + k1) = 0,1 [f ( 0 + 0,1 , 2 + 0,2)]
k2 = 0,1 [f(0,1 ; 2,2)]
k2 = 0,1 (2,2 0,1) = 0,21
Kemudian dihitung nilai y pertama yaitu
y1 = (0,1)
= y0 + (k1 +k2)
= 2 + (0,2 + 0,21)
= 2,2050
Guna mendapatkan nilai fungsi y2 = y(0,2), diperlukan x0 = 0,1 dan y0 = 2,2050.
Dengan cara yang sama diperoleh:
k1 = hf0 (x0,y0)
= 0,1f (0,1 ; 2,2050)
= 0,1f (2,2050 0,1) = 0,2105
k2 = hf (x0 + h,y0 + k1)
= 0,1 f (0,2 , 2,4155)

= 0,1 f (2,4155 0,2)


= 0,22155
sehingga
y2 = y0 + (k1+k2)
= 2,20050 + (0,2105 + 0,22155)
= 2,4210
Analog, akan diperoleh pula
y3 = y (0,3) = 2,6492
dan
y4 = y (0,4) = 2,8909
Untuk keperluan pembanding, dapat diperlihatkan bahwa ketika pilihan h = 0,2
diperoleh
y (0,2) = 2,4200 dan y (0,4) = 2,8880.
Dari hasil numerik ini, memperlihatkan betapa pilihan h memainkan peranan dalam
hal keakuratan aproksimasi.
Sementara itu, solusi secara analitik MNA dalam Contoh adalah fungsi. Solusi
analitik untuk nilai-nilai y (0,2) dan y (0,4) berturut-turut adalah 2,4214 dan 2,8918
Berikut ini rekapitulasi nilai-nilai fungsi solusi Contoh yang telah dikemukakan.
x
0,2

0,3

y hitung
h = 0,1 : 2,4210
h = 0,2 : 2,4200
h = 0,1 : 2,8909
h = 0,2 : 2,8880

y eksak
2,4214

2,4918

Selisih
0,0004
0,0014
0,0009
0,0038

Rasio
3,5

4,2

Dari tabel di atas terlihat bahwa metode Runge-Kutta orde dua konvergen

(ii) Metode Runge-Kutta Orde Empat


Analog dengan langkah-langkah penyelesai MNA dengan metode Runge-Kutta orde
dua, Metode Runge-Kutta orde empat memberikan untuk h = 0,1:
k1 = h f(x0,y0) = 0,1 (0,2)
= 0,1 f (2-0) = 0,2
k2 = h f(x0 + h, y0 + k1)
= 0,1f (0,05 , 2,1)

= 0,1 (2,1-0,05)
= 0,205
k3 = hf(x0 + h, y0 + k2)
= 0,1f (0,05 , 2 + 0,1025)
= 0,1 (2,1025 0,05)
= 0,20525
k4 = hf (x0 + h , y0 + k3)
= 0,1f ( 0,1 , 2,20525)
= 0,1 (2,20525 0,1)
= 0,21053
Dari nilai-nilai tersebut diperoleh :
y1 = y(0,1)
= y0 + (k1 + 2k2 + 2k3 + k4)
= 2 + (0,2 + 0,410 + 0,4105 + 0,21043)
= 2,2052
Dengan cara yang sama didapat juga y (0,2) = 2,4214

PROGRAM MATLAB
Matlab merupakan salah satu paket aplikasi matematika yang sangat cepat
dan menyenangkan untuk digunakan sebagai ala pemecahan masalah matematika
secara numerik. Masalah-masalah komputasi yang ditemui di dalam matematika
dapat diselesaikan secara jauh lebih cepat dengan Matlab. Matlab sangat cocok dan
cepat untuk melakukan perhitungan-perhitungan yang melibatkan matriks. Hal ini
sesuai dengan nama Matlab yang merupakan singkatan dari Matrix Laboratory.
Matlab dapat digunakan untuk melakukan komputasi numerik, simbolik, visualisasi,
serta pemrograman.
Contoh aplikasi dari Matlab adalah penyelesaian persamaan diferensial.
Matlab menyediakan beberapa perintah untuk menyelesaikan persamaan diferensial
biasa (PDB) maupun persamaan diferensial parsial (PDP), baik tingkat rendah
maupun tingkat tinggi.

PERSAMAAN DIFERENSIAL
1. Persamaan Diferensial Biasa Orde 1 Tunggal
Bentuk umum :

a. Metoda Euler Eksplisit


Bentuk umum :

Contoh :
Dengan menggunakan metoda euler eksplisit, tentukanlah nilai y pada x =1 jika
dy/dx = x2y, dimana y = 1 pada x = 0.
Penyelesaian:
Dari bentuk umum, maka:

Bila dipilih x = 0,1

maka:

b. Metoda Runge-Kutta
Bentuk umum:

c. Metoda Euler Implisit


Bentuk umum:

d. Fungsi Built-in Matlab


Contoh : Program untuk persamaan differensial dy/dx = x2y
Program: disimpan dalam file diferensial.m

Hasil yang diperoleh dengan fungsi built-in ode45 ini sama dengan hasil perhitungan
secara analitik.

2. Sistem Persamaan Diferensial Biasa Orde 1


Sistem persamaan diferensial biasa orde 1 melibatkan lebih dari satu PDB dengan
bentuk umum sebagai berikut:

dimana

dan untuk x yang tertentu, maka yi diketahui.

Metoda yang digunakan juga sama seperti penyelesaian PDB orde 1 yang tunggal.

a. Metoda Euler Eksplisit


Karena masing-masing persamaan dyi/dx bergantung secara umum terhadap semua
nilai yi, maka masing-masing fi(x,y) harus dihitung terlebih dahulu. Maka algoritma
untuk metoda ini adalah:

dimana

Sebagai contoh, yi,j merupakan nilai yi

pada nilai x yang ke-j (yaitu, jika kondisi awal ditentukan pada x = 0, maka nilai x
yang ke-j adalah j. x

b. Metoda Runge-Kutta
Bentuk umum:

3. Persamaan Diferensial Parsial


Bentuk umum:

Penyelesaian yang paling sederhana adalah dengan menggunakan Metoda Eksplisit


dengan pendekatan beda maju:

SOLUSI PROGRAM MATLAB


Euler

Menghasilkan penyelesaian:

Anda mungkin juga menyukai