bab5_masalah nilai awal persamaan diferensial biasa
TRANSCRIPT
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
1/38
FisikaKomputasi i-FST Undana 164
MASALAH NILAI AWAL
PERSAMAAN DIFERENSIAL BIASA
Pada bab ini dibahas tentang persamaan diferensial biasa, ordinary
differential equations(ODE) yang diklasifikasikan kedalam masalah nilai awal
(initial value) dan masalah nilai batas (boundary value), dimana kedua keadaan ini
solusinya dispesifikasi pada waktu awal (initial time).Akan disajikan beberapa metode pendekatan komputasi numerik untuk
menangani permasalahan yang berkaitan dengan persamaan diferensial biasa,
dengan beberapa contoh kasus terapan.
If I hear it, I will forget it . If I see it, I will remember it.
If I do it, I will understand it
(Confucius)
Agar dapat masuk sebagai sprinter 100 m kelas
dunia, dibutuhkan 10 sampai 12 langkah kaki perdetik. Kecepatan luar biasa ini pun bisa diukur
pada robot. Peneliti Jerman dan Skotlandia
berhasil memecahkan rekor dengan sebuah robot
setinggi 23 cm. "RunBot" ini mampu mencapai
3.5 langkah per detik, setara dengan 0.8m per detik.
RunBot merupakan robot berjalan yang dikem-
bangkan dengan tujuan utama melakukan gerakan
sealamiah mungkin. Untuk itu, kendali robot ini
meniru karakteristik syaraf beserta gerakan
refleks manusia. Mesin berjalan ini dilengkapi
dengan beberapa sensor dan hanya terfokusunruk menempatkan kaki di depan kaki lainnya.
Bagaimana persamaan gerak RunBot? Bagimana
pula keadaan batas bisa diimplementasikan ke
sistem robotik? (CHIP 2006)
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
2/38
FisikaKomputasi i-FST Undana 165
5.1. Model Diferensiasi FisikaBanyak hukum-hukum fisika yang sangat pas diformulasikan dalam
bentuk persamaan diferensial. Lebih lanjut, tidak mengherankan bahwa solusi
komputasi numerik dari persamaan-persamaan diferensial menjadi bagian yangumum dalam pemodelan sistem-sistem fisika. Beberapa hukum mendasardiantaranya sebagai berikut:
Hukum FormulasiMatematika
Variabel & Parameter
Hukum Newton IItentang gerak
Hukum PanasFourier
Hukum Faraday
m
F
dt
dv
dx
dTkq '
dt
diLVL
Kecepatan (v), gaya (F) dan massa (m)
Flux panas(q), konduktivitas termal (k)dan temperatur (T)
Tegangan Drop ( LV ), induktansi (L)dan arus (i)
Bentuk umum persamaan diferensial biasa adalah set M pasang persamaan
orde satu,
),( yxfdx
dy (5.1)
dimana x adalah variabel bebas, dan y adalah sebuah set dari M variabel takbebas(f adalah vektor komponen M). Persamaan diferensial orde yang lebih tinggi bisa
dituliskan dalam bentuk persamaan diferensial orde satu.Di dalam mengkaji fenomena fisis, seringkali kita jumpai bentuk
persamaan diferensial sebagai persamaan gerak yang harus dicari solusinya,
misalnya:
02
2
kxdt
dxr
dt
xdm
Solusi analitik persamaan diferensial diatas bisa salah satu dari tiga fungsi berikut:
)sin( 1 ot
tAex , untuk kmr 4
tAetBBx
)( 21 , untuk kmr 4 tt
eCeCx 221
1 , untuk kmr 4 ,
Selanjutnya solusinya dapat digambar dalam bentuk kurva atau data tabel.
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
3/38
FisikaKomputasi i-FST Undana 166
Solusi secara numerik tidak diperoleh dalam bentuk fungsi, melainkan nilai
solusi pada suatu waktu tertentu. Oleh karena itu diperlukan suatu syarat agar
solusi dapat dicari, yaitu berupa nilai awal. Syarat ini diperlukan, secara analisis
solusi suatu persamaan diferensial dapat berbeda-beda karena adanya suatu
konstanta.Gerak 1 dimensi sebuah partikel bermassa m, dibawah pengaruh gaya
sebesar F(z), dituliskan dalam bentuk persamaan orde dua:
)(2
zFdt
zdm (5.2)
Jika momentum didefinisikan sebagai perkalian massa dengan kecepatan,
yang dituliskan sebagai
dt
dzmtp )( (5.3)
maka persamaan (5.2) menjadi dua pasang persamaan orde satu (Hamilton),
m
p
dt
dz dan )(zF
dt
dp (5.4)
Akan dibahas beberapa metode untuk menyelesaikan persamaan diferensial biasa,
dengan penekanan pada masalah nilai awal. Artinya, mencari y(x) yang diberikan
oleh nilai y pada beberapa titik awal, y(x=0)=y0. Kasus atau masalah dalam tipe ini,diantaranya saat memberikan posisi awal dan momentum suatu partikel dan
diharapkan memberikan atau menemukan gerak selanjutnya, menggunakan
persamaan (5.3).
Masalah nilai awal pada persamaan diferensial biasa bisa dituliskan dalambentuk
),()(' tyfty ; 0)0( yy (5.5)dimana f(y,t) adalah fungsi terhadap y dan t, dan persamaan kedua adalah keadaan
awal. Pada persamaan (5.5) turunan pertama terhadap y diberikan sebagai fungsi ydan t, dan akan dicari fungsi y yang tidak diketahui dengan melakukan integrasi
f(y,t).
Banyak contoh untuk masalah nilai awal persamaan diferensial biasa,antara lain:
(a) 1)0(,53)(' yyty
(b) 0)0(,1)(' ytyty
(c) 1)0(,1
1)('
2
y
yty
(d) 0)0(,1)0(,',' zyyzzy Dalam kasus-kasus dimana persamaan sukar diselesaian secara analitis,
lebih mudah menyelesaikannya secara numerik. Untuk ilustrasi kita kutip analisisHanselman-Littlefield untuk kasus Oscilator.
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
4/38
FisikaKomputasi i-FST Undana 167
---------------------------------------------------------------------------------------------------
Contoh 5a1Persamaan diferensial klasik Van der Pol yang mendeskripsikan suatu oscilatormemiliki persamaan gerak sebagai berikut:
0)1(2
2
2
xdt
dxx
dt
xd
Tinjaulah kasus ini dalam Matlab dengan pendekatan numerik seperti persamaan(5.2) menuju (5.4), dimana persamaan diferensial orde tinggi ditulis ulang menjadi
ekuivalensinya di persamaan diferensial orde satu.
SolusiDidefinisikan dua variabel baru dari persamaan diatas,
xy 1
, dandt
dyy
2
maka
21 y
dt
dy
1
2
12 )1( yy
dt
dy
dalam matlab, derivatif dinyatakan dalam vektor kolom, dalam kasus ini disebutyprime, demikian juga y1 dan y2 dalam vektor kolom y.
Program dalam M-file sebagai berikut:
function yprime=vdpol(t,y);%fungsi ini memberikan status derivatif dai persamaan Vander Pol% x''-mu*(1-x^2)*x'+x=0 ('=d/dx, ''=d^2/dx^2)% untuk y(1)=x dan y(2)=x' maka y(1)'=y(2)% y(2('mu*(1-y(1)^2)*y(2)-y(1)
%memilih 0
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
5/38
FisikaKomputasi i-FST Undana 168
Hasilnya,
s
0 5 10 15 20 25 30-4
-3
-2
-1
0
1
2
3
4
sebuah grafik waktu dari penyelesaian secara dinamis.Untuk memperoleh akses pada data, guna membuat grafik bidang fase
yang dalam kasus ini adalah grafik y(2) terhadap y(1), dilakukan:
[t,y]=ode45('vdpol',tspan,yo); plot(y(:,1),y(:,2))
Hasilnya,
Tetapi tujuan kita pada bab ini bukan sesingkat ini tercapai, yang lebih
utama adalah untuk memahami bagaimana kasus-kasus ODE bisa diselesaikan dari
sisi perancangannya, sehingga saintis harus tahu metode dan aspekpemrogramannya.
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
6/38
FisikaKomputasi i-FST Undana 169
Prinsip metode komputasi numerik untuk persamaan diferensial biasa
adalah menentukan solusi pada titik-titik, tn=tn-1+h,dimana h adalah lebar langkah
( atau interval waktu). Ada beberapa pemilahan tipe metode, diantaranya metode
Euler, metode Runge-Kutta, dan metode Predictor-Corrector. Berdasarkan kaku
tidaknya persamaan (stiff equation), ada kategori nonstiff equation, meliputimetode Euler, metode Runge-Kutta dan metode Predictor-Corrector. Sedangkan
kategori stiff equation meliputi metode implisit dan metode transformasieksponensial.
Dengan pertimbangan ragam pemahaman, pada bab ini ditelaah 3 macam
metode berdasarkan tingkatan kasus dan metode yang ditangani yaitu metodeSederhana Euler dan metode Runge-Kutta.
5.2 Metode EulerSecara umum, solusi persamaan diferensial dari persamaan (5.4) didekati
dengan keadaan awal, y(x=0)=y0. Lebih spesifik, sebenarnya bisa dianalisis padanilai y dengan sebarang x, misalnya 1.
Strategi umum pada metode sederhana ini adalah membagi interval [0,1]
menjadi sejumlah N pita, sehingga masing-masing lebar sub-interval adalah h=1/N,
kemudian membangun sebuah formula rekursi terkait yn pada { yn-1, yn-2,}
dimana yn adalah pendekatan pada y(xn=nh). Sebagaimana sebuah rekursi, polaintegrasi selangkah demi langkah pada persamaan diferensial dari x=0 sampai x=1.
Salah satu algoritma metode sederhana adalah metode Euler, dimana
persamaan (5.1) ditinjau pada titik xndengan pendekatan diferensiasi beda maju,seperti yang telah dibahas pada bab IV, sehingga
),()(1 nnnn yxfhO
h
yy (5.6)
sehingga relasi rekursi yn+1yang dinyatakan dalam bentuk ynadalah
)(),( 21 hOyxhfyy nnnn (5.7a)Atau ditulis
),(1 yxhfyy nn (5.7b)
Persamaan ini disebut rumus iterasi Euler. Misalnya suatu persamaan
diferensial biasa kita inginkan nilai solusinya melalui (xo,yo) di xp. Maka yangdilakukan adalah membagi selang antara xodan xpmenjadi n buah pita selebar h,sehingga diperoleh titik-titik xo,x1,x2,,xp.
Dengan pasangan (xo,yo) sebagai titik awal kita cari y1 yang absisnya
x1=x0+h, dengan menggunakan persamaan (5.7b). Selanjutnya dengan pasangan(x1,y1) sebagai titik awal kita cari y2 yang absisnya x2=x1+h. Proses ini berulang
hingga didapatkan yp yang absisnya xp.
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
7/38
FisikaKomputasi i-FST Undana 170
Formula ini memiliki kesalahan lokal ( yang terjadi karena langkah tunggal
dari yn ke yn+1) sebesar O(h2). Kesalahan global yang terjadi dalam mencari y(1)
dengan memberikan sejumlah N langkah integrasi dari x=0 sampai x=1 sebesar N
kali O(h2) O(h). Dengan kata lain, mengingat sifat kesalahan komputasi maka
pemilihan h sangat menentukan hasil perhitungan.
Contoh 5a2Selesaikan set persamaan diferensial biasa berikut dengan metode Sederhana
dengan h=0,005dan h=0,0005 :
,'
,'
yz
zy
0)0(
1)0(
z
y
Solusi
Kalkulasi untuk langkah pertama dengan h=0,0005 ditunjukkan berikut ini.
:0,001t2
:0005,01
;00
t
t
00314,0)1)(0005,0(00157,0112
99999,0)00157,0)(0005,0(1112
00157,0)1)(0005,0(0001
0.1)0)(0005,0(1001
00
10
hyzz
hzyy
hyzz
hzyy
z
y
pada tabel dibawah disajikan hasil perhitungan untuk nilai-nilai t yang dipilihdibandingkan dengan solusi eksak, y=cos(t) dan z=-sin(t).
Eksak h=0,005 h=0,0005 t
y z y z y Z
0.5
1,5 2
3
6 8
0
-1
01
-1
11
-1
0
10
0
00
1,3E-4
-1,02497
-4,01E-41,05058
-1,07682
1,159541,21819
-1,01241
-2,67E-4
1,037705,48E-4
-8,43E-4
1,82E-32,54E-3
2,62E-6
-1,00247
-7,88E-61,00495
-1,00743
1,014911,01994
-1,00123
-5,25E-6
1,003711,05E-5
-1,58E-5
3,19E-54,27E-5
Dari hasil diatas menunjukkan bahwa kesalahan pada y bertambah dengan
pertambahan t, dan sebanding dengan h ( lihat bahwa nilai y untuk t=, 2, 3, 6dan 8: nilai z untuk t tersebut tidak mengikuti trend yang sama, karena ketika z
nol , kesalahan z secara signifikan dipengaruhi oleh pergeseran fase.
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
8/38
FisikaKomputasi i-FST Undana 171
Algoritma Euler
Algoritma dari metode Euler mendefinisikanpendekatan nilai awal untuk
menyelesaikan kasus y=f(t,y) dengan y(a)=y0 pada selang [a,b] melalui proses
komputasi Yk+1 = yk + hf(fk,yk). Flowchart dan Algoritmanya sebagai berikut:
Gambar 5.1 Flowchart Metode Euler
For k = 0 to M-1.Input A,B Y(0) {Nilai awal dan nilai akhir}Input M {Banyaknya langkah}H := [B-A]/M {Lebar langkah}T(0):=A {Variabel awal}
For k = 0 to M-1.{Penyelesaian Euler yk-1}Y(k+1):= Y(k) + H*F(T(k),Y(k))
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
9/38
FisikaKomputasi i-FST Undana 172
T(k+1):= A + H*[k+1]{Penyelesaian komputasi tk-1}
For k = 0 to MPrint T(k), Y(k) {Hasil}
Contoh 5bBuatlah program pendekatan komputasi numerik dengan metode Euler dari
persamaan diferensial dengan keadaan batas berikut,
1)0(,0)0(; yxydx
dy
Carilah solusinya untuk x=2.
Solusi
{$N+1}Program Euler_1;Uses wincrt;Const eps = 1e-3;Var x,x1,x2,y,y1,y2,fx,delx,delt,pita: Double;
n : Integer;BeginClrscr;Writeln;Write('':5,'Titik awal(xo,yo):');Readln(x1,y1);
Write('':5,'Titik akhir(x):');Readln(x2);Writeln;n:=0;delt:=100;Repeat
Beginn:=n+1;pita:=exp(n*Ln(2));delx:=(x2-x1)/pita;x:=x1;
y:=y1;While x
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
10/38
FisikaKomputasi i-FST Undana 173
If n=1 Then Writeln('':5,pita:10:0,'':5,y:15)Else
Begindelt:=y-y2;
Writeln('':5,pita:10:0,'':5,y:15,'':5,delt:15);End;
y2:=y;End;
Until Abs(delt) < eps;Writeln;Writeln('':5,'Nilai fungsi di',x2:15,':','':5,y:15);Gotoxy(65,5); Write('Tekan ');Repeat Until Readkey= #27;End.
Hasil runing memberikan tampilan seperti pada gambar 5.2 di bawah.
Gambar 5.2. Hasil runing program Euler untuk contoh 5b
Terlihat solusi persamaan diferensial di titik x=2 memberikan hasil
7.388154 pada h=16.384 dengan tingkat ketelitian lebih 9.015991e4.. Meskipunmetode Euler kelihatannya cukup baik, tetapi secara umum tidak memuaskan
karena akurasinya rendah.Metode yang lebih tinggi satu klas dari kesederhanaannya bisa didapatkan
dengan menyertakan suku deret Taylor dengan turunan kedua, sehingga
persamaaan (5.7a) menjadi:
)(),('2
1),()( 321 hOyxfhyxhfyhxyy nnnnnnn
(5.8)
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
11/38
FisikaKomputasi i-FST Undana 174
Atau ditulis2
21 )('')(')()( hxfhxfxfhxf (5.9)
Karena kita memiliki),()(' yff maka
),(')('' ff
Tetapi harus diingat bahwa untuk menghitung f(x,y) harus digunakan rumusberantai, yang dapat ditulis:
fy
f
x
f
x
y
y
f
x
fyx
dx
dfy nnn
),("
atau
dx
dyyxfyxfyxf yx ),(),(),('
),(),(),( yxfyxfyxf yx (5.10)
Sehingga sumus iterasinya menjadi:
),('2
1),( 21 yxfhyxhfyy nn
(5.11)
dan disebut iterasi Euler orde dua.Relasi rekursinya memiliki kesalahan lokal O(h
3) dan kesalahan global
O(h), satu tingkat lebih akurat daripada kesalahan pada metode Euler. Metode ini
sangat bermanfaat ketika f diketahui secara analitik dan cukup sederhana untukturunannya.
Contoh 5cBuatlah program pendekatan komputasi numerik dengan metode Euler orde dua
dari persamaan diferensial dengan keadaan batas seperti pada contoh 5.2.
SolusiProgram sama dengan program Euler_1, dengan menambah deklarasi variabel:
Var dx : Double;
dan merubah bagian fungsi sebagai berikut:{---dapat berubah sesuai bentuk fungsi----}
fx:= y;dx:= y;
{---------------------------------------}y:=y+fx*delx+dx*sqr(delx)/2;
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
12/38
FisikaKomputasi i-FST Undana 175
Hasil runing diperlihatkan pada gambar 5.2 dibawah:
Gambar 5.3. Hasil runing program Euler orde dua untuk contoh 5c
Terlihat bahwa metode Euler orde dua lebih baik karena nilai solusi
persamaan diferensial didapatkan cukup pada h=256. Bandingkan dengan metode
Euler orde satu yang membutuhkan h=16384 untuk hasil dan ketelitian yang sama.
5.3 Metode Runge KuttaKekurangan utama dari metode Euler adalah tingkat akurasinya yang
rendah. Keadaan ini membuat kerugian ganda. Untuk mencapai tingginya akurasi
memerlukan h yang sangat kecil, disamping meningkatnya waktu komputasi dan
mengakibatkan terjadinya kesalahan pembulatan (round off error).Pada metode Runge-Kutta, tingkat akurasinya meningkat oleh penggunaan
titik-titik lanjutan pada tiap-tiap langkah interval. Akurasi yang lebih tinggi juga
memberikan implikasi kesalahan berkurang lebih cepat dibanding metode akurasi
tingkat rendah ketika h dikurangi.Tinjau persamaan diferensial biasa dengan nilai batas secara umum
dituliskan
),()(' tyfty ; 0)0( yy (5.19)
untuk menghitung 1ny pada htt nn 1 dengan nilai yn yang diketahui, kita
integrasikan persamaan (5.19) pada interval 1, nn tt sebagai
1
),(1
n
n
t
t
nn dttyfyy (5.20)
dimana dari aturan trapesium pendekatan untuk integral:
1
),(),(2
1),( 11
n
n
t
t
nnnn tyftyfhdttyf (5.21)
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
13/38
FisikaKomputasi i-FST Undana 176
Ada beberapa macam metode Runge-Kutta, tetapi secara umum rumus
iterasinya dapat ditulis dalam bentuk:
),,(1 hyxfyy nnnn (5.22)dimana
mmnn kakakahyxf ...),,( 2211
nn xxh 1 dengan
)11,,1...22,111,1,1(
...
)222121,2(3
)111,1(2
);,(1
kmmmqmkqmkqmynhpmxnhfkm
kqkqynhpxnhfk
kqynhpxnhfk
ynnhfk
Berikut adalah macam metode Runge-Kutta berdasarkan orde:
Runge Kutta
Orde ke-
m ),,( hyxf nn
1ny
Satu
(Iterasi Euler)
1 11),,( kahyxf nn
),(11 nnnn yxhfayy
Dua
(Heun,a2=1/2)
maka a1=1/2
p1=q11=1
(Ralston,a2=2/3)
maka a1=1/3
p1=q11=3/4
(Poligon,a2=1)maka a1=0
p1=q11=1/2
2 2211),,( kakahyxf nn
)],(),(),([
)],(),([
11212
2112
nnnnynnx
nnnnnn
yxfyxfqayxfpah
yxfayfahy
),(
),(
)(
12
1
221
121
1
kyhxhfk
yxhfk
kkyy
nn
nn
nn
(5.23)
),(
),(
)2(
143
43
2
1
2131
1
kyhxhfk
yxhfk
kkyy
nn
nn
nn
(5.24)
),(
),(
121
21
2
1
21
kyhxhfk
yxhfk
ky
nn
nn
nn
(5.25)
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
14/38
FisikaKomputasi i-FST Undana 177
Tiga 3
)2,(
),(
),(
)4(
213
121
21
2
1
32161
1
kkyhxhfk
kyhxhfk
yxhfk
kkkyy
nn
nn
nn
nn
(5.26)
Empat 4
),(
),(
),(
),(
)22(
34
221
21
3
121
21
2
1
432161
1
kyhxhfk
kyhxhfk
kyhxhfk
yxhfk
kkkkyy
nn
nn
nn
nn
nn
(5.27)
Algoritma Runge Kutta
Algoritma dari metode Runge-Kutta orde memiliki pendekatan nilai awal untukmenyelesaikan kasus y=f(t,y) dengan y(a)=y0pada [a,b] melalui proses komputasi
]22[6
43211 kkkkh
yy kk
MASUKAN A,B,Y(0) { Nilai awal dan nilaiakhir }MASUKAN M { Banyaknya langkah }H:= [B-A]/M { Lebar langkah }T(0):= A { Nilai awal }
For J = 0 to M-1T:= T(J) and Y:= Y(J) {Variabel LokalLocal}K1:= H*F(T,Y) {Nilai Fungsi pada tj}K2:= H*F(T+H/2,Y+.5*K1){Nilai Fungsi pada tj+1/2}K3:= H*F(T+H/2,Y+.5*K2) {Nilai Fungsi pada at
tj+1/2}K4:= H*F(T+H,Y+K3) {Nilai Fungsi pada tj+1}
Y(J+1):=Y+[K1+2K2+2K3+K4]/6 {Batas f(t,y)}
T(J+1):=A+H*(J+1) {Nilai Yang Dihasilkan}
For J=0 to M {Hasil}PRINT T(J),Y(J)
Algoritma dan Flowchart yang disertakan disini hanya untuk Runge Kutta
orde empat saja. Dengan flowchart metode Runge-Kutta orde 4 seperti padaGambar 5.4
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
15/38
FisikaKomputasi i-FST Undana 178
Gambar 5.4 Flowchart Metode Runge-Kutta Orde 4
Contoh 5dBuatlah program menggunakan metode Runge Kutta Orde dua dan evaluasi
hasilnya untuk t=10 detik untuk kasus penerjun payung seperti pada contoh 4c,
dengan cara menyelesaikan persamaan diferensial yang terjadi dari hubungan:
dt
tdhtv
)()(
dengan titik awal (0,0) ketika penerjun meninggalkan pesawat.
SolusiProgram berikut menggunakan metode Heun dengan iterasi Runge-Kutta orde dua
pada persamaan (5.23).
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
16/38
FisikaKomputasi i-FST Undana 179
Program RungeKutta2_Heun;Uses wincrt;Const eps = 1e-3;
Type Koef = Array[1..4] of Real;Var k : Koef;
xx,x1,x2,x,yy,y1,y2,y,fx,delx,delt,pita: Real;i, n : Integer;
BeginClrscr;Writeln;Write('':5,'Titik awal(xo,yo):');Readln(x1,y1);Write('':5,'Titik akhir(x):');Readln(x2);Writeln;
n:=0;delt:=100;Repeat
Beginn:=n+1;pita:=exp(n*Ln(2));delx:=(x2-x1)/pita;xx:=x1;yy:=y1;
While xx
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
17/38
FisikaKomputasi i-FST Undana 180
End;If n=1 ThenWriteln('':5,pita:10:0,'':5,yy:15)
Else
Begindelt:=y-y2;
Writeln('':5,pita:10:0,'':5,yy:15,'':5,delt:15);End;
y2:=yy;End;
Until Abs(delt) < eps;Writeln;Writeln('':5,'Nilai fungsi di',x2:15,':','':5,yy:15);Gotoxy(65,5); Write('Tekan ');
Repeat Until Readkey= #27;End.
Ketika program diruning, memberikan solusi sebagai berikut:
Gambar 5.5 Hasil runing program runge-Kutta orde dua untuk contoh 5d
Contoh 5eEvaluasi kasus contoh 5.4 dengan program menggunakan metode Runge-Kutta
orde dua Poligon, metode Runge-Kutta orde tiga dan orde empat !
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
18/38
FisikaKomputasi i-FST Undana 181
Solusi[a] Dari iterasi Poligon metode Runge-Kutta orde Dua pada persamaan (5.25),
maka program dimodifikasi sebagai berikut:
1. Deklarasi Type dan Variabel dari format Real dibawa pada format Double:
Type Koef = Array[1..4] of Double;Var xx,x1,x2,x,yy,y1,y2,y,fx,delx,delt,pita: Double;
2. Implementasi iterasi Poligon dibawah bentuk fungsi ditulis:If i = 1 Then
Beginx:=xx+delx/2;y:=yy+k[i]/2;End;
End;xx:=xx+delx;yy:=yy+k[2];
End;
[b] Berdasarkan formulasi iterasi Runge-Kutta orde tiga yang diberikan olehpersamaan (5.26) maka program contoh 5.4 dimodifikasi sebagai berikut:
1. Deklarasi Type dan Variabel dari format Real dibawa pada format Double:
2. Implementasi iterasi Runge-Kutta orde tiga, ditulis:
For i:=1 To 3 DoBegin
{--dapat berubah sesuai bentuk fungsi---}fx:=1-exp(-12.5*x/68.1);fx:=fx*9.8*68.1/12.5;
{---------------------------------------}k[i]:= delx*fx;
Case i of1: Begin
x:=xx+delx/2;
y:=yy+k[i]/2;End;2: Begin
x:=xx+delx;y:=yy k[1]+2*k[2];
End;End;xx:=xx+delx;yy:=yy+(k[1]+4*k[2]+k[3])/6;
End;
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
19/38
FisikaKomputasi i-FST Undana 182
[c] Dari formulasi iterasi Runge-Kutta orde empat pada persamaan (5.27), maka
program dimodifikasi sebagai berikut:
1. Deklarasi Type dan Variabel dari format Real dibawa pada format Double:
2. Implementasi iterasi Runge-Kutta orde empat, ditulis:
For i:=1 To 4 DoBegin
{-- dapat berubah sesuai bentuk fungsi----}fx:=1-exp(-12.5*x/68.1);fx:=fx*9.8*68.1/12.5;
{-----------------------------------------}k[i]:= delx*fx;If i in [1..2] ThenBegin
x:=xx+delx/2;
y:=yy+k[i]/2;EndElseIf i = 3 Then
Beginx:=xx+delx;y:=yy+k[3];
End;End;xx:=xx+delx;yy:=yy+(k[1]+2*(k[2]+k[3])+k[4])/6;
End;
Setelah diruning dari modifikasi program seperti diatas, memberikan solusi
berturut-turut ditampilkan pada Gambar 5.6, 5.7, dan 5.8 sebagai berikut.
Gambar 5.6 Hasil runing program Poligon untuk Runge-Kutta Orde Dua
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
20/38
FisikaKomputasi i-FST Undana 183
Gambar 5.7 Hasil runing program Runge-Kutta Orde Tiga
Gambar 5.8 Hasil runing program Runge-Kutta Orde Empat
Dari 3 metode yang digunakan terlihat metode poligon Runge-Kutta orde
dua membutuhkan pita sejumlah 512, metode Runge-Kutta orde tiga dan orde
empat membutuhkan 16 pita. Artinya, metode Runge-Kutta orde tiga dan empatlebih cepat untuk mendapatkan hasil yang akurat dibanding metode Euler, dan
metode Runge-Kutta orde dua.
Dengan menyertakan suku-suku dengan orde tinggi pada uraian deret
Taylor maka kesalahan karena pemenggalan akan menjadi kecil, tetapi kesalahankaren pembulatan akan semakin besar. Meskipun Runge-Kutta orde tiga hasilnya
sudah jauh lebih cepat dari orde-orde sebelumnya, tetapi yang lazim dipakai adalah
orde ke-empat, yaitu yang menyertakan suku dengan orde empat.Dibanding dengan rumus iterasi Runge-Kutta sebelumnya, pada Runge-
Kutta orde empat bentuknya lebih sederhana karena tampak adanya penjalaran
yang teratur dalam menemukan titik (xn+1,yn+1) dari titik awal (xn,yn).
Contoh 5fSebuah kapasitor yang tidak bermuatan dihubungkan secara seri dengan sebuah
resistor dan baterry, seperti pada Gambar 5.9 (Supriyanto,2008). Diketahui = 12
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
21/38
FisikaKomputasi i-FST Undana 184
volt, C = 5.00 F dan R = 8.00 105 . Saat saklar dihubungkan (t=0), muatanbelum ada (q=0).Hitunglah besar pemuatan q . dari t=0.0 s/d t=1.0 , jika perubahan jumlah muatan
persatuan waktu adalah sebagai berikut:
RC
q
Rdt
dq
(5.28)
Solusi:
Solusi exact persamaan (5.28) adalah
)1()( /RCteksak eCtqq (5.29)
Anda bisa lihat semua suku di ruas kanan persamaan (5.28) tidak mengandung
variabel t. Padahal persamaan-persamaan turunan pada contoh sebelumnyamengandung variabel t.
Gambar 5.9 Rangkaian RC
Apakah persamaan (5.28) tidak bisa diselesaikan dengan metode Runge-Kutta?Belum tentu.
Sekarang, kita coba selesaikan, pertama kita nyatakan
5105.11 xm
dan 25.01
2 C
m
sehingga persamaan (5.28) dimodifikasi menjadi
21)( mqmqfdt
dqii ; ihati
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
22/38
FisikaKomputasi i-FST Undana 185
Jika t0 = 0, maka a = 0, dan pada saat itu (secara fisis) diketahui q0= 0.0. Lalu jika
ditetapkan h = 0.1 maka t1 = 0.1 dan kita bisa mulai menghitung k1 dengan
menggunakan q0 = 0.0 walaupun t1tidak dilibatkan dalam perhitungan ini
)( 01 qhfk
5
5
201
10150.0
))25.0)(0.0()105.1(1.0
)(
x
x
mqmh
lalu menghitung k2
)2
( 102k
qhfk
5
55
21
01
1014813.0
)]25.0)(2
1015.0)0.0(()105.1[(1.0
)])
2
([(
x
xx
mk
qmh
dilanjutkan dengan k3
)2
( 203k
qhfk
5
55
22
01
1014815.0
)]25.0)(2
1014813.0)0.0(()105.1[(1.0
)])2
([(
x
xx
mk
qmh
kemudian k4
)( 304 kqhfk
5
55
2301
1014630.0
)]25.0)(1014815.0)0.0(()105.1[(1.0
)])([(
x
xx
mkqmh
akhirnya diperoleh q1
)22(6
1432101 kkkkqq
5
5
1014814.0
10)14630.0)14815.0(2)14813.0(2150.0(6
10.0
x
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
23/38
FisikaKomputasi i-FST Undana 186
Selanjutnya q2dihitung. Tentu saja pada saat t2, dimana t2= 0,2, namun sekali lagi,
t2tidak terlibat dalam perhitungan ini. Dimulai menghitung k1 kembali
)( 11 qhfk
5
55
211
1014630.0
))25.0)(1014814.0()105.1(1.0
)(
xx
mqmh
lalu menghitung k2
)2
( 112k
qhfk
5
555
21
11
1014447.0
)]25.0)(2
1014630.0)1014814.0(()105.1[(1.0
)])2
([(
x
xxx
mk
qmh
dilanjutkan dengan k3
)2
( 213k
qhfk
5
555
2
2
11
1014449.0
)]25.0)(2
1014447.0)1014814.0(()105.1[(1.0
)])2([(
x
xxx
m
k
qmh
kemudian k4
)( 314 kqhfk
5
555
2311
1014268.0
)]25.0)(1014447.0)1014814.0(()105.1[(1.0
)])([(
x
xxx
mkqmh
akhirnya diperoleh q2
)22(6
1432112 kkkkqq
5
55
1029262.0
10)14268.0)14449.0(2)14447.0(214630.0(6
11014814.0
xx
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
24/38
FisikaKomputasi i-FST Undana 187
Dengan cara yang sama, q3, q4, q5dan seterusnya dapat dihitung.
Langkah hitung diatas kurang efisien, dan berikut ini adalah program dalam matlab
yang dipakai untuk menghitung q
% fungsif.mfunction y=fungsif(q)E=12; % tegangan (volt)R=800000; % hambatan (ohm)C=5e-6; % kapasitansi (farad)m1=E/R;m2=1/(R*C);y=m1-(m2*q);
%Qmuatan.mclear all
clcformat longb=1; % batas akhir intervala=0; % batas awal intervalh=0.1; % interval waktuN=(b-a)/h; % nilai step-sizeq0=0.0; % muatan mula-mulat0=0.0; % waktu awal
% perubahan t sesuai step-size h adalah:for i=1:N
t(i)=a+(i*h);end% solusinya:k1=h*fungsif(q0);k2=h*fungsif(q0+k1/2);k3=h*fungsif(q0+k2/2);k4=h*fungsif(q0+k3);q(1)=q0+1/6*(k1+2*k2+2*k3+k4);for i=2:N
k=i-1;k1=h*fungsif(q(k));k2=h*fungsif(q(k)+k1/2);k3=h*fungsif(q(k)+k2/2);
k4=h*fungsif(q(k)+k3);q(i)=q(k)+1/6*(k1+2*k2+2*k3+k4);endq
Hasil runningHasil running dan perbandingan antara hasil perhitungan numerik lewat metode
Runge Kutta dan hasil perhitungan dari solusi exact, yaitu persamaan (5.29) adalah
sebagai berikut:
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
25/38
FisikaKomputasi i-FST Undana 188
Hasil dari program memberikan nilai yang sesuai dengan hasil eksaknya. Hal inidapat dilihat pada Gambar 5.10 yang memperlihatkan kurva yang berada pada
lintasan pemuatan q terhadap waktu t yang sama.
Gambar 5.10 Kurva pengisian muatan q (charging) terhadap waktu t
Contoh tadi tampaknya dapat memberikan gambaran yang jelas bahwa metode
Runge-Kutta Orde Empat dapat menyelesaikan persamaan diferensial biasa dengantingkat akurasi yang lebih tinggi dan tidak harus mengandung variabel t.
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
26/38
FisikaKomputasi i-FST Undana 189
::: Studi Kasus Fisika 07:::Sistem Massa Pegas
Sebuah kotak kubus bermassa M=0,5 kg terikat pada ujung bawah sebuahtali tak bermassa. Pada ujung tali atas diikatkan pada tiang diam. Kubus menerima
resistansi R= -B dy/dtndari udara, dimana B adalah konstanta damping (lihatgambar 5.11). persamaan geraknya adalah:
,02
2
kyydt
dBy
dt
dM 0)0(',1)0( yy (5.27)
dimana y adalah perpindahan dari posisi statis, k adalah konstanta pegas sebesar100 kg/det
2, dan B=10 kg/det.
Hitunglah menggunakan metode Runge Kutta orde kedua:
(a)
y(t) untuk 0
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
27/38
FisikaKomputasi i-FST Undana 190
(a) Untuk n=1: t=0,025
5,2)]01(200)50(20[025,0
)])(200)(20[(),,((
125,0)50(025,0)(),,((
5))1(200)0(20(025,0)20020(),,(
0)0(025,0),,(
1010110102
10010102
000001
00001
kylzhtlzkyhgl
lzhtlzkyhfk
yzhtzyhgl
hztzyhfk
75,3)5,25(
2
1
9375.0)125,00(2
1
01
01
zz
yy
untuk n=2: t=0,05
8125,2
))9375.0(200)75,3(20(025,0)20020(),,(
09375,0)75,3(025,0),,(
111111
11112
yzhtzyhgl
hztzyhfk
9375,0)]093750,09375,0(200)8125,275,3(20[025,0
)](200)(20[(),,((
1640625,0)8125,275,3(025,0)(),,((
1111111112
11111112
kylzhtlzkyhgl
lzhtlzkyhfk
625,5)9375,08125,2(2
1
80859.0)1640625,009375,0(2
1
12
12
zz
yy
Program dalam C# include #include #include
/* waktu: ty, z: y, ykount: jumlah langkah antara 2 jalur yang dicetakk, m, b: k, M(massa), B(koefisien damping) */
main(){int kount, n, kstep=0;float bm, k1, k2, km, l1, l2;static float time, k=100.0, m=0.5, b=10.0, z=0.0
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
28/38
FisikaKomputasi i-FST Undana 191
static float y= 1.0, h=0,001;printf( Hasil Komputasi Metode Runge Kutta Orde Kedua
\n);printf( t y z\n);printf( %12.6f %12.5e %12.5e \n, time,
y, z);km= k/m;bm=b/m;for ( n=1; n
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
29/38
FisikaKomputasi i-FST Undana 192
::: Studi Kasus Fisika 08 :::Rangkaian RLC
Sebuah rangkaian ditunjukkan pada gambar 5.12 memiliki induktansi diriL=50H, resistensi R=20 ohm, dan sumber tegangan V=10 volt. Jika saklar ditutup
pada t=0, arus I(t) memenuhi
,)()( EtRItIdt
dL 0)0( I (5.23)
Pada kasus ini kita akan menentukan arus listrik yang mengalir untuk 0 t 10detik menggunakan metode Runge Kutta orde kedua dengan h=0,1
Solusi:
Persamaan (5.23) dituliskan kembali dalam bentuk
),()()( tIfL
EtI
L
RtI
dt
d (5.24)
kemudian metode Runge Kutta orde dua menjadi:
Gambar 5.12 Rangkaian Listrik
)21(2
1
)1(2
1
1 kkII
L
EkInL
Rhk
L
EI
L
Rhk
nn
Komputasi untuk dua langkah diperlihatkan sebagai berikut:
:)1,0(0 tn
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
30/38
FisikaKomputasi i-FST Undana 193
0196,0)0192,002,0(2
1
00)21(2
1
0192,002,0)02,00)(4,0(1,02
02,02,0)0)(4,0(1,01
01
kkII
k
k
:)1,0(0 tn
038431,0)018447,0019216,0(2
10196,0)21(
2
1
018447,002,0)019216,00196,0)(4,0(1,02
019216,02,0)0196,0)(4,0(1,01
12
kkII
k
k
Hasil akhir komputasi (sampai 10 langkah) sebagai berikut:
t(detik) I(amp) t(detik) I(amp)0
12
3
4
5
0
0,16480,2752
0,3493
0,3990
0,4332
6
78
9
10
( )
0,4546
0,46950,4796
0,4863
0,4908
(0,500)
::: Studi Kasus Fisika Khusus :::Getaran Selaras Tergandeng
Dalam berbagai bidang kajian fisika, sering dijumpai dua getaran ataulebih yang membentuk sistem getaran baru yang disebut getaran tergandeng [lihat
5.13]. Jonte Bernhard (1997) menyatakan getaran tergandeng (coupled harmonic
oscillator) sebagai upper level dalam kajian mekanika dan modus vibrasi pada
getaran tergandeng memiliki peranan yang sangat penting di dalam sains danteknik.
Gambar 5.13. Getaran Tergandeng
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
31/38
FisikaKomputasi i-FST Undana 194
Ketika meninjau fenomena fisis getaran tergandeng yang terjadi pada dua
buah titik massa (M) yang keduanya dihubungkan oleh sebuah pegas yang
berfungsi sebagai gaya pemulih harmonik (harmonic restoring force) dan
perpindahan posisi untuk benda pertama dan kedua berturut-turut adalah x1dan x2,
memberikan dua persamaan gerakan, yaitu
- m2
1
2
dt
xd- 0)( 1211 xxCxC (5.25a)
dan
- m2
2
2
dt
xd- 0)( 1222 xxCxC , (5.25b)
dengan C 1 dan C 2 adalah tetapan-tetapan gaya yang bergantung pada panjang
masing-masing pendulum, dengan C 1C 2 , dan C adalah konstanta pegas (Schmid
dkk, 1990 dan Arafah, 2001).Wospakrik (1993) menyebutnya sebagai fenomena fisika yang terumuskan
sebagai turunan atau derivatif besaran sistem terhadap variabel bebas yang
bersangkutan, dan Soegeng (1993) menyatakan sebagian besar persoalan ini sangatrumit untuk dipecahkan dan memerlukan pengetahuan mendalam mengenai bidang
yang ditelaah dan matematika lanjut mengenai persamaan diferensial. Secara
analitik kedua persamaan di atas sangat tidak mungkin diselesaikan dengan metodeapapun untuk memberikan suatu solusi pada satu keadaan tertentu kecuali
diperlakukan keadaan khusus menjadi getaran selaras sederhana, yang solusinya
masih berupa fungsi.
Dari kedua persamaan getaran selaras tergandeng (5.25a) dan (5.25b) dapat
dituliskan menjadi:
211
2
1
2
xM
Cx
M
CC
t
x
(5.26a)
22
12
2
2
xM
CCx
M
C
t
x
(5.26b)
jika kita lakukan modifikasi pada bentuk diferensiasi dibawah ini:
11 zt
x
dan 22 zt
x
(5.27)
maka persamaannya menjadi:
2111 x
M
Cx
M
CC
t
z
(5.28a)
22
12 x
M
CCx
M
C
t
z
(5.28b)
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
32/38
FisikaKomputasi i-FST Undana 195
Persamaan (5.25) s/d (5.28) diatas yang akan diimplementasikan dalam metode
Euler, Runge Kutta orde dua, tiga dan empat. Sebagai pembandingnya metode
analitik khusus yang flowchart-nya [lihat 5.14] berikut:
Gambar 5.14 Flowchart Metode Analitik Khusus
Script program dalam TPW1.5 ini memuat metode Euler dan Runge Kutta orde
empat, prosedure untuk Runge Kutta orde dua s/d tiga dipenggal :program osilasi_harmonik_tergandeng;uses wincrt;vark1,l1,m1,n1,k2,l2,m2,n2,k3,l3,m3,n3,k4,l4,m4,n4,M,c,c1,c2,h,t,ta,z1,z2,x1,x2,xx1,xx2,x01,x02,z01,z02:extended;i:integer;osilasi:text;Procedure Analitik_khusus;begint:=0;x1:=x01;x2:=x02;z1:=z01;z2:=z02;writeln(osilasi,'metode analitik untuk keadaan khusus');writeln(osilasi);writeln(osilasi,' t(detik) x1(meter)
x2(meter) ');writeln(osilasi,' ',t:5:4,' ',x1,' ',x2);
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
33/38
FisikaKomputasi i-FST Undana 196
repeatx1:=x01*cos(t*sqrt(c1/M))+z01*sqrt(M/c1)*sin(t*sqrt(c1/M));x2:=x02*cos(t*sqrt(c2/M))+z02*sqrt(M/c2)*sin(t*sqrt(c2/M));t:=t+h;writeln(osilasi,' ',t:5:4,' ',x1,' ',x2);until t>ta;End;procedure Euler;Begint:=0;x1:=x01;x2:=x02;z1:=z01;z2:=z02;writeln(osilasi,'metode Euler');writeln(osilasi);writeln(osilasi,' t(detik) x1(meter) x2(meter) ');writeln(osilasi,' ',t:5:4,' ',x1,' ',x2);
repeatk1:=h*z1;l1:=h*(-(c1+c)*x1/M+c*x2/M);m1:=h*z2;n1:=h*(c*x1/M-(c2+c)*x2/M);x1:=x1+k1;z1:=z1+l1;x2:=x2+m1;z2:=z2+n1;t:=t+h;writeln(osilasi,' ',t:5:4,' ',x1,' ',x2);
until t>ta;End;{ program telah dipenggal disini !!}procedure Runge_Kutta_Orde_Empat;begint:=0;x1:=x01;x2:=x02;z1:=z01;z2:=z02;writeln(osilasi,'metode Runge-Kutta orde 4');writeln(osilasi);writeln(osilasi,'t(detik) x1(meter) x2(meter) ');
writeln(osilasi,' ',t:5:4,' ',x1,' ',x2);repeatk1:=h*z1;l1:=h*(-(c1+c)*x1/M+c*x2/M);m1:=h*z2;n1:=h*(c*x1/M-(c2+c)*x2/M);k2:=h*(z1+l1*0.5);l2:=h*(-(c1+c)*(x1+k1*0.5)/M+c*(x2+m1*0.5)/M);m2:=h*(z2+n1*0.5);n2:=h*(c*(x1+k1*0.5)/M-(c2+c)*(x2+m1*0.5)/M);
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
34/38
FisikaKomputasi i-FST Undana 197
k3:=h*(z1+l2*0.5);l3:=h*(-(c1+c)*(x1+k2*0.5)/M+c*(x2+m2*0.5)/M);m3:=h*(z2+n2*0.5);n3:=h*(c*(x1+k2*0.5)/M-(c2+c)*(x2+m2*0.5)/M);k4:=h*(z1+l3);l4:=h*(-(c1+c)*(x1+k3)/M+c*(x2+m3)/M);m4:=h*(z2+n3);n4:=h*(c*(x1+k3)/M-(c2+c)*(x2+m3)/M);x1:=x1+(k1+2*k2+2*k3+k4)/6;z1:=z1+(l1+2*l2+2*l3+l4)/6;x2:=x2+(m1+2*m2+2*m3+m4)/6;z2:=z2+(n1+2*n2+2*n3+n4)/6;t:=t+h;writeln(osilasi,' ',t:5:4,' ',x1,' ',x2);until t>ta;End;
beginM:=2; c1:=30; c2:=40; c:=0; x01:=4; x02:=5; z01:=0;z02:=40;h:=0.1; ta:=2;{ta = t akhir}assign(osilasi,'fisika.txt');rewrite(osilasi);analitik_khusus;writeln(osilasi);Euler;writeln(osilasi);Runge_Kutta_Orde_Dua;writeln(osilasi);Runge_Kutta_Orde_Tiga;
writeln(osilasi);Runge_Kutta_Orde_Empat;Close(osilasi);End.
Hasil Running
Data hasil running didapatkan untuk analisis kasus yang dilakukan dengancara memvariasikan nilai konstanta pegas (C), besarnya tetapan gaya yang bekerja
pada massa benda pertama (C1), tetapan gaya pada benda kedua (C2), lebar langkah
(h), dan kelajuan awal (Z01).Pada kasus khusus C=0 yang diamati hanya untuk perpindahan pendulumpertama yang tidak diberikan kelajuan awal dan ketika lebar langkah h=0,1. Hasil
yang diperoleh dengan metode Euler jauh menyimpang dari hasil analitiknya,
sedangkan metode Runge-Kutta menunjukan hasil yang mendekati nilaianalitiknya. Keakuratan hasil yang diperoleh bertambah baik dengan bertambahnya
orde metode Runge-Kutta, sehingga metode Runge-Kutta orde empat lebih baik
daripada metode lain yang digunakan. Amati pada Gambar 5.15.
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
35/38
FisikaKomputasi i-FST Undana 198
Gambar 5.15. Simpatetik dengan (M= 2 kg, C1= 30 N/m, C2= 40 N/m,
C= 0 N/m, h= 0.1, Z01= 10 m/s)
Ketika digunakan nilai lebar langkah h=0,001, dan hasil yang diperoleh untuk
setiap metode memberikan nilai yang hampir sama dengan nilai analitiknya.Amati
Gambar 5.16.
Gambar 5.16. Simpatetik dengan (M= 2 kg, C1= 30 N/m,
C2= 40 N/m, C= 0 N/m, h= 0.001)
Pada kopling lemah (C1=C2, C=C1/10), hal ini menyebabkan setiap pendulummemiliki kesempatan yang lebih besar untuk terus bergetar secara bergantian
seperti pada Gambar 5.17.
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
36/38
FisikaKomputasi i-FST Undana 199
Gambar 5.17. Simpatetik dengan Kopling Lemah (M= 2 kg,
C1=C2= 40 N/m, C= 4
Tidak demikian halnya dengan kopling kuat (C1=C2, C=10C1), sehingga
menyebabkan kedua pendulum tidak bisa bergerak bebas sendiri-sendiri seperti
pada Gambar 5.18.
Gambar 5.18 Simpatetik dengan Kopling Kuat (M= 2 kg,C1=C2= 40 N/m, C= 400 N/m )
Hal lain yang terjadi ketika nilai tetapan gaya adalah (M= 2 kg, C 1=C2= 40 N/m,
C= 10 N/m) dan simpangan awal masing-masing pendulum diatur yakni untukpendulum pertama adalah 5m dan untuk pendulum kedua adalah 8m dan t= 5.5 s,
keadaan ini menghasilkan suatu getaran yang harmonis seperti tampak pada
Gambar 5.19. Keadaan ini disebut eigen-oscillation atau swa getaran (Schmid,
1990).
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
37/38
FisikaKomputasi i-FST Undana 200
Gambar 5.19. Simpatetik dengan Kopling Sedang (M= 2 kg,C1=C2= 40 N/m, C= 10 N/m )
Penerapan metode komputasi Euler dan Runge-Kutta orde dua sampai orde empat
memberikan solusi pendekatan numerik yang mendekati nilai analitik untuk h=0.001. Metode Runge-Kutta merupakan metode yang lebih baik ketelitiannya
dibandingkan dengan metode Euler
5.4 SOAL-SOAL
(1) Selesaikan persamaan diferensial biasa berikut dalam 0 t5 menggunakanmetode Euler, dengan h=0.5
),('
3'
,1'
2 yty
eyy
tyy
t
5,0)0(
1)0(
1)0(
y
y
y
(2) Tanki kanonik berisi air dengan ketinggian 0,5m dari dasar. Tanki memiliki
lubang dengan radius 0,02m pada dasarnya. Radius tanki dalam y diberikanoleh r=0,25y, dimana r adalah radius dan y adalah ketinggian yang diukur
dari dasar tanki. Kecepatan air yang mengalir melalui lubang diberikan oleh
v2=2gy dimana g=9,8 m/det2. Menggunakan metode Euler ( gunakan
h=0,001 detik), tentukan berapa menit tanki menjadi kosong.(3) Buatlah program menggunakan metode Euler1 dan evaluasi hasilnya untuk
t=10 detik untuk kasus penerjun payung seperti pada contoh 4.3, dengan cara
menyelesaikan persamaan diferensial yang terjadi dari hubungan:
-
7/24/2019 Bab5_Masalah Nilai Awal Persamaan Diferensial Biasa
38/38
dt
tdhtv
)()(
dengan titik awal (0,0) ketika penerjun meninggalkan pesawat.
(4)
Hitunglah y(2) untuk persamaan berikut dengan metode Runge Kutta ordepertama, dengan h=1.
1)0(,'2
yyt
yy
(5) Masalah nilai awal pada persamaan diferensial biasa diberikan oleh
0)0('')0('
1)0(,'''
yy
yyy
Gunakan metode Runge Kutta orde kedua dengan h=0,2, hitunglah y(0,4) dan
y(1).
DAFTAR PUSTAKA
Chapra, S.C., and Canale, R.P., Numerical Methods for Engineers, McGraw-Hill,
1998
Gear, C. W.,Numerical Initial Value Problems in Ordinary Differential Equations,Prentice-Hall, 1971
Hall, G and J.M Watt, Modern Numerical Methods for Ordinary Differential
Equations, Clarendon Press, 1976Hanselman,D and Littlefield, B, Matlab Bahasa Komputasi Teknis, Penerbit AndiYogyakarta, 2000
Koonin, S.E., Computational Physics, Addison-Wesley Inc, 1986
Mathews, J.H., Numerical Methods for Mathematics, Science and Engineering,Prentice-Hall Inc., 1992
Nakamura, S.,Applied Numerical Methods in C, Prentice-Hall Inc. 1993
Sulaiman,H dan Warsito,A, Kajian Fenomena Fisis Getaran Selaras TergandengDengan Metode Euler dan Runge-Kutta, Fisika FST, 2008
Supriyanto, S,Komputasi untuk Sains dan Teknik, Departemen Fisika UI, 2008