Diferensial Biasa
Metode Euler
1
SISTEM MASSA-PEGAS
• Tinjau sebuah pegas yang satu ujungnya diikatkan pada sebuah
dinding yang diam dan ujung yang lain diikatkan pada sebuah
benda bermasa m, dengan konstanta kekakuan pegas k.
• Dapatkan posisi setiap saat, x(t)!
m
-x x
0
2
SISTEM MASSA-PEGAS
• Jika pegas ditarik dari keadaan diamnya, kemudian dilepas maka akan ada gaya pegas yang
dirumuskan sebagai berikut:
• F = -k x (2)
• dari hukum kedua Newton:
• F=ma (3)
• Dari (2) dan (3) di dapat:
ma=-kx
a = - k x/m (4)
3
SISTEM MASSA-PEGAS
4
SISTEM MASSA-PEGAS
• Untuk persoalan yg cukup sederhana seperti pers.(5) dpt kita cari solusi
analitiknya dgn menggunakan kalkulus (pers. Diferensial orde 2):
k d 2x k
a(t ) x 2 x
m dt m
atau :
2
d x k
2
x0
dt m
5
SISTEM MASSA-PEGAS
k
m
6
Ide Solusi
• Persamaan (5) dapat diselesaikan secara numerik dengan menggunakan ide:
7
Uraian lebih detil:
k
a0 x0 ; v1 v0 ha0 ; x1 x0 hv1; t1 0 h
m
k
a1 x1; v2 v1 ha1; x2 x1 hv2 ; t2 t1 h
m
k
an xn ; vn1 vn han ; xn1 xn hvn1; tn1 tn h
m
8
PENYELESAIAN PDB
SECARA NUMERIK
1.METODE EULER
2.METODE RUNGE-KUTTA
9
METODE EULER
Tinjau pers. Diferensial berikut:
10
METODE EULER
𝑏−𝑎
Jarak antar titik, h: ℎ = N: bil. Bulat positip
Ilustrasi Grafik fungsi y(t) dalam interval a dan b. 𝑁
Nilai t antara a dan b ti = a + ih
11
METODE EULER
• Metode Euler diturunkan dari deret Taylor dengan mengabaikan komponen
turunan kedua.
• Misalkan fungsi y(t) kontinyu dan mempunyai turunan dalam inyerval [a,b],
dalam deret Taylor dituliskan sbb:
........ (1)
..............(2)
12
METODE EULER
• Bila suku ke-3 pers. 2 diabaikan (dalam pendekatan Euler) maka didapat:
y(ti+1) = y(ti) + h y’(ti) ................ (3)
Dengan y’(ti) adalah fungsi turunan dari y(ti) atau biasa dituliskan sebagai f(ti, y(ti)), sehingga pers.3
dapat ditulis kembali sebagai:
.................... (4)
y(ti+1) = y(ti) + h f(ti, y(ti))
Bila y(ti) diganti wi, pers.4 dpt ditulis menjadi:
wi+1 = wi + h f(ti,wi) Dengan i = 0,1, 2, 3, ...., N-1
13
Contoh 1
• Dapatkan solusi numerik menggunakan metode Euler untuk pers. Diferensial
berikut.
dengan N = 10
Solusi:
Pertama-tama kita hitung ukuran langkah h:
𝑏−𝑎 2−0
ℎ= = = 0,2
𝑁 10
Solusi Manual
• Sekarang kita hitung wi, pada saat i = 0; dari syarat awal, kita punya w0 = 0,5
Pada saat i = 0
15
Solusi, MatLab
clear all % perubahan t sesuai
clc % step-size h adalah:
format long t1=a+1*h;
b=2; %batas akhir interval t2=a+2*h;
a=0; %batas awal interval t3=a+3*h;
N=10; % bilangan interger positif t4=a+4*h;
h=(b-a)/N; % nilai step-size t5=a+5*h;
w0=0.5; % nilai w awal t6=a+6*h;
t0=0; % nilai t awal t7=a+7*h;
t8=a+8*h;
t9=a+9*h;
t10=a+10*h;
16
Solusi, MatLab
w1 =
% solusinya:
0.800000000000000
w1=w0+h*(w0-t0^2+1)
w2=w1+h*(w1-t1^2+1)
w2 =
w3=w2+h*(w2-t2^2+1)
1.152000000000000
w4=w3+h*(w3-t3^2+1)
w5=w4+h*(w4-t4^2+1)
w3 =
w6=w5+h*(w5-t5^2+1)
1.550400000000000
w7=w6+h*(w6-t6^2+1)
w8=w7+h*(w7-t7^2+1)
w9 =
w9=w8+h*(w8-t8^2+1)
4.428153753600001
w10=w9+h*(w9-t9^2+1)
% selesai
w10 =
4.865784504320001 17
clear all
clc
Solusi, MatLab; bentuk singkat format long w=
b=2; %batas akhir interval Columns 1 through 4
a=0; %batas awal interval 0.800000000000000
N=10; % bilangan interger positif 1.152000000000000
h=(b-a)/N; % nilai step-size 1.550400000000000
w0=0.5; % nilai w awal 1.988480000000000
t0=0; % nilai t awal
% perubahan t sesuai step-size h adalah: Columns 5 through 8
for i=1:N 2.458176000000000
t(i)=a+(i*h); 2.949811200000001
end 3.451773440000001
% solusinya: 3.950128128000001
w(1)=w0+h*(w0-t0^2+1);
for i=2:N Columns 9 through 10
k=i-1; 4.428153753600001
w(i)=w(k)+h*(w(k)-t(k)^2+1); 4.865784504320001
end
w 18
Solusi eksak contoh 1 clear all
clc
format long
• Solusi eksak dari contoh 1: b=2; %batas akhir interval
a=0; %batas awal interval
N=10; % bilangan interger positif
y= h=(b-a)/N; % nilai step-size
Columns 1 through 4 % perubahan t sesuai step-size h
0.829298620919915 1.214087651179365 % adalah:
1.648940599804746 2.127229535753767 for i=1:N
t(i)=a+(i*h);
Columns 5 through 8 end
2.640859085770477 3.179941538631727 % solusi exact:
3.732400016577664 4.283483787802443 for i=1:N
y(i)=(t(i)+1)^2-0.5*exp(t(i));
Columns 9 through 10 end
4.815176267793525 5.305471950534675 y
19
clear all
clc
Solusi, MatLab, Pakai Fungsi format long
b=2; %batas akhir interval
a=0; %batas awal interval
N=10; % bilangan interger positif
h=(b-a)/N; % nilai step-size %membuat sebuah fungsi
w0=0.5; % nilai w awal function y = futur(t,w)
t0=0; % nilai t awal y = w - t^2 + 1;
% perubahan t sesuai step-size h adalah:
for i=1:N
t(i)=a+(i*h);
end
% solusinya:
w(1)=w0+h*futur(t0,w0);
for i=2:N
k=i-1;
w(i)=w(k)+h*futur(t(k),w(k));
end
w
20
Perbandingan solusi Metode Euler dan solusi eksak
Euler Eksak
Truncation error
Metode Euler
21
Latihan
Kerjakan solusi numerik sistem massa-pegas sebagaimana penjelasan sebelumnya. Gunakan metode Euler.
Buatlah script Matlab-nya!
1.5 0.2
0.15
1
0.1
0.5
0.05
Kecepatan
Posisi
0 0
-0.05
-0.5
-0.1
-1
-0.15
-1.5 -0.2
0 50 100 150 -1.5 -1 -0.5 0 0.5 1 1.5
Waktu Posisi 22