Anda di halaman 1dari 17

MODUL V

RHUNGE KUTTA

OLEH

RISKI ADI MULIA


1207136454

PROGRAM STUDI TEKNIK KIMIA S1


FAKULTAS TEKNIK UNIVERSITAS RIAU
PEKANBARU
2015

KATA PENGANTAR
Alhamdulillah, puji syukur penulis ucapkan kehadirat Allah SWT yang
telah melimpahkan rahmat dan hidayah-Nya sehingga tugas Modul 6 Komputasi
Rhunge Kutta telah dapat diselesaikan.
Tugas Modul 6 ini dibuat untuk melengkapi tugas mata kuliah Komputasi
Proses yang merupakan mata kuliah wajib di jurusan Teknik Kimia UR.
Sehubungan dengan hal diatas, penulis ingin menyampaikan rasa hormat
dan terima kasih kepada:
1. Bapak Dr.Idral Amri ST, MT dosen mata kuliah Komputasi Proses,
Jurusan Teknik Kimia, Universitas Riau tahun 2014.
2. Rekan-rekan serta Senior yang telah berbagi informasi dalam penyelesain
tugas ini.
Dalam penulisan tugas ini, penulis telah berusaha semaksimal mungkin
untuk menghasilkan makalah yang terbaik. Namun penulis mengharapkan kritik
dan saran guna penyempurnaan tulisan tugas ini. Penulis berharap semoga tugas
ini dapat bermanfaat bagi semua pihak dan semoga ALLAH SWT senantiasa
melimpahkan Rahmat dan Karunia-nya kepada kita semua, Amin.

Pekanbaru, 22 Maret 2015

Penulis

BAB I
PENDAHULUAN
1.1 Tujuan
1. Memenuhi tugas mata kuliah komputasi proses
2. Mengetahui apa itu Qbasic, Matlab dan mengerti bagaimana cara
memulai dan membuat programnya.
1.2 Batasan Masalah
Menyelesaikan persamaan differensial simultan order satu m baris dengan
metode Rhunge Kutta dan perhitungan matematis, program Qbasic dan program
Matlab serta membahas penyelesaiannya.
1.3 Dasar Teori
1.3.1 Rhunge Kutta
Perkembangan dan kemajuan matematika memberikan bantuan dalam
berbagai bidang,diantaranya teknik, ekonomi, sosial dan sains. Masalah dalam
bidang tersebut dapat diselesaikan dengan menerjemahkan masalah menjadi
model matematika. Dalam model matematika persamaan diferensial merupakan
salah satu alat dalam pemodelan itu. Persamaan diferensial dapat diselesaikan
secara eksak atau numerik. Metode penyelesaian persamaan diferensial secara
numerik salah satunya dengan metode Runge-Kutta.
Metode Runge-Kutta merupakan cara numerik yang digunakan untuk
menyelesaikan persamaan diferensial. Persamaan diferensial yang digunakan
adalah persamaan diferensial linear orde satu yang berbentuk dan nilai awal .
Metode tersebut digunakan untuk mencari nilai pada titik t dan banyak selang n.
Langkah-langkah pencariannya adalah menyelesaikan persamaan tersebut secara
analitik (mencari nilai eksak), secara numerik (metode Runge-Kutta), menghitung
nilai galat dan membandingkan nilai galatnya.
Dalam menyelesaikan permasalahan diatas dapat juga digunakan
pemrograman. Langkah-langkah dalam pembuatan program yaitu penganalisaan

masalah, pembuatan algoritma, diagram alir (flowchart), dan pembuatan program


dalam bahasa pemrograman yang digunakan yaitu matlab. Masukan yang
diperlukan adalah persamaan diferensial linear orde satu, solusi, nilai awal, nilai t
yang ditentukan, banyak selang dan orde yang digunakan sedangkan keluaran
program adalah nilai h, grafik eksak, grafik metode Runge-Kutta dan grafik
galatnya. Tampilan program yang sederhana memudahkan dalam penggunaannya.
Setelah melakukan perhitungan persamaan diferensial linear orde satu dengan
metode Runge-Kutta secara manual dan dengan program bahasa matlab diperoleh
bahwa ketelitian metode Runge-Kutta orde empat lebih akurat daripada orde tiga
sedangkan metode Runge-Kutta orde tiga lebih akurat daripada orde dua. Semakin
banyak selang yang digunakan maka semakin akurat nilainya.

BAB II
PEMBAHASAN
2.1

Hasil Perhitungan

2.1.1 Dengan Q-basic

2.1.2 Dengan Matlab

2.2

Pembahasan
Berdasarkan hasil percobaan menggunakan program Qbasic, Matlab dan

penyelesaian secara manual untuk metode Rhunge Kutta, didapatkan hasil yang
sama pada program qbasic dan matlab nya.

BAB III
KESIMPULAN
2.2 Kesimpulan
Dalam penyelesaian persamaan differensial simultan ordiner orde satu m
baris dengan Metode Runge-Kutta merupakan cara numerik yang digunakan
untuk menyelesaikan persamaan diferensial. Persamaan diferensial yang
digunakan adalah persamaan diferensial linear orde satu dengan m baris dan nilai
awal 3 dan proses berlangsung hingga 10 step.
3.2 Saran

Butuhnya pemahaman akan program QBasic dan Matlab sehingga mampu


mengoperasikan program QBasic dan Matlab, sehingga diharapkan adanya
kesinambungan

penyelesaian

persamaan

matematis

matematis, program Qbasic dan program Matlab.

dan

perhitungan

LAMPIRAN

Algoritma

Listing Program :
a. QBasic

b. Matlab
clc
clf
clear all
%

Runghe Kutta method

% Solve dy/dt = f(x,y). In general it can be a function of both


% variables t and y. If your function is only a function of t then
% you will need to add a 0*y to your function.
%

define f(x,y)
fcnstr='sqrt(x)+y^0.3' ;
f=inline(fcnstr,'x','y') ;

% x0, initial time


x0=0.5 ;
% y0, corresponding value of y at x0

y0=0.4;
% xf, upper boundary of x (end x).
xf=1.5;
% n, number of steps to take
n=10;
% Displays title information
disp(sprintf('\n\nThe 4th Order Runge-Kutta Method
Ordinary Differential Equations'))
h=(xf-x0)/n ;
disp(sprintf('
h = ( xf - x0 ) / n '))
disp(sprintf('
= ( %g - %g ) / %g ',xf,x0,n))
disp(sprintf('
= %g',h))

of

Solving

xa(1)=x0 ;
ya(1)=y0 ;
for i=1:n
disp(sprintf('\nStep %g',i))
disp(sprintf('----------------------------------------------------------------'))
% Adding Step Size
xa(i+1)=xa(i)+h ;
% Calculating k1, k2, k3, and k4
k1 = f(xa(i),ya(i)) ;
k2 = f(xa(i)+0.5*h,ya(i)+0.5*k1*h) ;
k3 = f(xa(i)+0.5*h,ya(i)+0.5*k2*h) ;
k4 = f(xa(i)+h,ya(i)+k3*h) ;
% Using 4th Order Runge-Kutta formula
ya(i+1)=ya(i)+1/6*(k1+2*k2+2*k3+k4)*h ;
disp('1) Find k1 and k2
disp(sprintf('
k1 =
disp(sprintf('
=
disp(sprintf('
=

using the previous step information.')


f( x%g , y%g )',i-1,i-1))
f( %g , %g )',xa(i),ya(i)))
%g\n',k1))

disp(sprintf('
k2 = f( x%g + 0.5 * h , y%g + 0.5 * k1 *
h )',i-1,i-1))
disp(sprintf('
= f( %g + 0.5 * %g , %g + 0.5 * %g *
%g)',xa(i),h,ya(i),k1,h))
disp(sprintf('
= f( %g , %g )',xa(i)+0.5*h,ya(i)
+0.5*k1*h))
disp(sprintf('
= %g\n',k2))
disp(sprintf('
k3 = f( x%g + 0.5 * h , y%g + 0.5 * k2 *
h )',i-1,i-1))
disp(sprintf('
= f( %g + 0.5 * %g , %g + 0.5 * %g *
%g)',xa(i),h,ya(i),k2,h))

disp(sprintf('
+0.5*k2*h))
disp(sprintf('
disp(sprintf('
disp(sprintf('
disp(sprintf('

= f( %g , %g )',xa(i)+0.5*h,ya(i)
= %g\n',k3))
k4 = f( x%g + h, y%g + k3*h)',i-1,i-1))
= f( %g , %g )',xa(i)+h,ya(i)+k3*h))
= %g\n',k4))

disp(sprintf('2) Apply the Runge-Kutta 4th Order method to


estimate y%g',i))
disp(sprintf('
y%g = y%g + 1/6*( k1 + 2*k2 + 2*k3 +k4) *
h',i,i-1))
disp(sprintf('
= %g + %g * %g * %g',ya(i),1/6,
(k1+2*k2+2*k3+k4),h))
disp(sprintf('
= %g\n',ya(i+1)))
disp(sprintf('
at t%g = %g',i,xa(i+1)))
end
% The following finds what is called the 'Exact' solution
xspan = [x0 xf];
[x,y]=ode45(f,xspan,y0);
[yfi dummy]=size(y);
yf=y(yfi);
% Plotting the Exact and Approximate solution of the ODE.
hold on
xlabel('x');ylabel('y');
title('Runge-Kutta for The Solution of dy/dx=sqrt(x)+y^(0.3)');
plot(xa,ya,'-o','LineWidth',2,'Color',[1 0 0]);
legend('Exact','Approximation');

DAFTAR PUSTAKA
Anonime. 2013. Kegiatan Praktikum: Statement Perintah, Variabel, Dan Operaor
Pada Q Basic. http://satu-ka04.web.id. Diakses Tanggal 14 April 2014.
Anonime. 2012. Pengertian Q-Basic. http://kerja-online-30menit.blogspot.com.
Diakses Tanggal 14 April 2014.
Chapra, Steven C. & Canale, Raymond P., Numerical Methods for Engineers,
1985, diterjemahkan ke dalam bahasa Indonesia dengan judul Metode
Numerik untuk Teknik oleh UI-Press, Jakarta, 1991.
Chapra, Steven C dan Canale, Raymond P, Numerical Methods for Engineers
Fifth Edition, MacGraw-Hill Book Company, 2006.
Chapra, Steven C, Applied Numerical Methods with MATLAB Second Edition,
MacGraw-Hill Book Company, 2008.
Constantinides A. & Mostoufi N., Numerical Methods for Chemical Engineers
with MATLAB Applications, Prentice Hall, New Jersey, 1983
Hanna, Owen T. & Sandal, Orville C., Computational Methods In Chemical
Engineering, Prentice Hall, New Jersey, 1999.
Riggs, James B., An Introduction to Numerical Methods for Cchemical
Engineers, Texas Tech University Press, Texas, 1988.

Anda mungkin juga menyukai