Upload
wigig-wihandhita
View
1.072
Download
39
Embed Size (px)
DESCRIPTION
ggggg
Citation preview
\
SOAL
1. Apa perbedaan metode euler dengan runge kutta ?
2. Sebutkan masing-masing 3 kelebihan dan 3 kekurangan dari :
a. Metode euler
b. Metode runge kutta
3. Buatlah program beserta flowchartnya masing-masing untuk metode euler,
dengan persamaan :
a. Y’=t-y/3, dengan h=0,5
b. Y’=− y2
1+ x, dengan h=0.05
c. Y’=(1-x) y2-y
4. Buatlah program beserta flowchartnya masing-masing untuk metode
rungge kutta, dengan persamaan :
a. F(x,y)=(x-y)/2, dengan lebar langkah 1/8
b. F(x,y) = x+√ y, dengan h : 1/4 , 1/8, dan 1/16
FIAT JUSTICIA ET.PEREAT MUNIDUS
Nama : YUNI NUR KARTIKANPM/Semester : 1331010058 / IVRomb./Grup : V / FNPM/Teman Praktek : 1331010034 /
ARSAT SAYFUL R
LABORATORIUM TEKNIK KIMIAFAKULTAS TEKNOLOGI INDUSTRI
UPN “VETERAN” JAWA TIMURPraktikum : MATEMATIKA TEKNIK KIMIAPercobaan : METODE EULER DAN RUNGE
KUTTATanggal : 21 MEI 2015Pembimbing : IR. NUR HAPSARI, MT LAPORAN RESMI
1. Metode Runge Kutta merupakan pengembangan dari metode Euler. Metode
Runge Kutta dapat digunakan untuk orde tinggi dibandingkan Euler.
2. a) Metode Euler:
Kelebihan :
- Pemrosesan metode Euler pada program lebih cepat dibanding Runge
Kutta
- Pemrograman lebih sederhana dibandingkan dengan Runge Kutta
- Karena lebih sederhana, metode ini lebih mudah dipahami dibandingkan
metode yang lain
Kekurangan :
- Tingkat ketelitian dari hasil perhitungannya rendah
- Dalam metode Euler, diperlukan h<1 untuk memperoleh hasil yang
cukup teliti (akurat)
- Tidak mampu mengerjakan perhitungan pada orde tinggi karena terlalu
sederhana
b) Metode Runge Kutta:
Kelebihan :
- Mempunyai tingkat ketelitian yang lebih tinggi dibanding euler
- Tidak memerlukan perhitungan turunan
- Mampu melakukan perhitungan hingga orde yang tinggi
Kekurangan :
- Memiliki tahapan yang lebih panjang dibandingkan dengan Euler
- Waktu untuk memproses penyelesaian menggunakan metode ini lebih
lama dibandingkan dengan Metode Euler
- Semakin tinggi orde dari persamaan yang diselesaikan, maka iterasi yang
dilakukan semakin banyak
4. Program:
clear all;
clc;
disp('..............................................');
disp(' Program Runge Kutta ');
disp('..............................................');
syms x;
syms y;
p=input('Persamaan =');
a=input('Nilai x =');
b=input('Nilai y =');
dx=input('Delta x =');
n=input('Tentukan hingga x =');
disp([' x y k1 k2 k3 k4']);
for k=a:dx:n
k1=subs(p,{x,y},{a,b});
a2=a+((1/2)*dx);
b2=b+((1/2)*dx*k1);
k2=subs(p,{x,y},{a2,b2});
a3=a+((1/2)*dx);
b3=b+((1/2)*dx*k2);
k3=subs(p,{x,y},{a3,b3});
a4=a+dx;
b4=b+(dx*k3);
k4=subs(p,{x,y},{a4,b4});
b5=b+((dx/6)*(k1+(2*k2)+(2*k3)+k4));
disp([a' b' k1' k2' k3' k4']);
b=b5;
a=a4;
end
Flowchart:
START
disp('………………………..');
disp(' Program Runge Kutta ');
disp('……………………….');
syms x;
syms y;
f=input('Persamaan =');
b=input('Nilai x =');
c=input('Nilai y =');
dx=input('Delta x =');
n=input('Tentukan hingga x =');
disp([' x y k1 k2 k3 k4']);
a
for k=b:dx:n
k1=subs(f,{x,y},{b,c});
b2=b+((1/2)*dx);
c2=c+((1/2)*dx*k1);
k2=subs(f,{x,y},{b2,c2});
b3=b+((1/2)*dx);
c3=c+((1/2)*dx*k2);
k3=subs(f,{x,y},{b3,c3});
b4=b+dx;
c4=c+(dx*k3);
k4=subs(f,{x,y},{b4,c4});
c5=c+((dx/6)*(k1+(2*k2)+(2*k3)+k4));
a
disp([b' c’ k1' k2' k3'
k4']);
c=c5;
b=b4;
END
NO
YES
3. Program :
clear all;
clc;
syms x;
disp('..............................');
disp(' Metode Euler ');
disp('..............................');
f=input('Persamaan=');
i=int(f);
b=input('Batas bawah (x1)=');
a=input('Batas atas (x2)=');
n=input('Interval yang diinginkan=');
disp('x yeksak yperkiraan error');
y0=1;
fe=subs(i,x,a);
error=(y0-fe)/y0;
disp([b' fe' y0' error']);
for k=b:n:(a-n)
as=a+n;
fs=subs(f,x,b);
y1=y0+(fs*n);
fe=subs(i,x,as)+1;
error=100*((fe-y1)/fe);
disp([as' fe' y1' error']);
a=as;
y0=y1;
end
Flowchart:
START
syms x;
disp('………………………….');disp(' Metode Euler ');disp('………………………….');f=input('Persamaan=');
i=int(f);
b=input('Batas bawah (x1)=');a=input('Batas atas (x2)=');n=input('Interval yang diinginkan=');disp('x yeksak yperkiraan error');
y0=1;fe=subs(i,x,a);error=(y0-fe)/y0;
disp([b' fe' y0' error']);
a