Professional Documents
Culture Documents
NIM : 4151121054
Kelas : Fisika Dik D 2015
PRAKTIKUM – 15
FUNGSI DALAM MATLAB
1. Tujuan
Setelah melaksanakan praktikum dalam sesi ini mahasiswa dapat:
a. Memahami srtuktur fungsi dalam Matlab
b. Menyusun dan mengeksekusi fungsi dalam Matlab
2. Pengantar
Pekerjaan yang dilakukan secara berulang-ulang disebut dengan rutin. Demikian
halnya dengan program. Program yang dapat dieksekusi berulangkali tanpa harus ke
luar dari program utama disebut dengan rutin. Ada berbagai penamaan yang
digunakan untuk menyatakan suatu rutin. Procedure, routine, dan function merupakan
beberapa nama yang digunakan untuk menyatakan suatu rutin dalam program.
Matlab menyediakan banyak sekali yang rutin (function) yang kemudian membuat
penyusunan program dalam Matlab menjadi sangat efisien (biult-in). Namun, masih
dimungkinkan bagi penyusunan program untuk membuat sendiri function yang
diperlukan. Matlab menyimpan banyak sekali rutin dalam programnya. Penyusunan
program dapat menggunakan biult-in function ini dalam penyusunan program. Di
dalam sebuah function dapat disisipkan function yang disebut dengan subfunction.
Function dijalankan menggunakan program yang disusun pada file yang berbeda.
4. Prosedur
4.1 Persamaan kuadrat
- Program menghitung akar-akar persamaan kuadrat digunakan sebagai contoh untuk
membuat function. Program itu dibagi menjadi dua sebagi berikut:
Program Utama:
clear;
clc;
Program Function:
function [x1,x2]=kuadr(A,B,C);
D=(B^2-4*A*C)
disp(' ')
if D==0
disp('kedua akarnya sama yaitu ');
x1=-B/2*A;
x2=x1;
elseif D<0
disp('akar-akarnya imajiner ');
x1=(-B+sqrt(D))/(2*A);
x2=(-B-sqrt(D))/(2*A);
else
disp('akar-akarmya riil ');
x1=(-B+sqrt(D))/(2*A);
x2=(-B-sqrt(D))/(2*A);
end
- Menyimpan program ini dengan cara langsung di-save as, tanpa harus memberikan
nama file karena secara otomatis Matlab akan memberikan nama function-nya.
- Menjalankan program diatas dan memberikan nilai masukan sebagaimana yang
tertera pada komentar program. Memeriksa kesesuaian output program yang
dihasilkan. Bila benar, output program akan sesuai dengan komputer.
Program Function
function gerpel(vo,sudut)
%
g=10;
%
alpha=(sudut*pi)/180;
tmax=vo*sin(alpha)/g;
t=0:0.01:2*tmax;
x=vo*cos(alpha)*t;
y=vo*sin(alpha)*t-(1/2)*g*t.^2;
plot(x,y)
5. Data
- Mencatat program dan hasil eksekusi program
clear;
clc;
disp('program menghitung akar persamaan kuadrat ');
disp('persamaan berbentuk Ax^2 +Bx +C ');
A=input('Berika nilai A= ');
B=input ('Berikan nilai B= ');
C=input('Berikan nilai C= ');
Program Function
function [x1,x2]=kuadr(A,B,C);
D=(B^2-4*A*C)
disp(' ')
if D==0
disp('kedua akarnya sama yaitu ');
x1=-B/2*A;
x2=x1;
elseif D<0
disp('akar-akarnya imajiner ');
x1=(-B+sqrt(D))/(2*A);
x2=(-B-sqrt(D))/(2*A);
else
disp('akar-akarmya riil ');
x1=(-B+sqrt(D))/(2*A);
x2=(-B-sqrt(D))/(2*A);
end
Hasil Eksekusi
D=
0
x1 =
1
x2 =
1
>>
program menghitung akar persamaan kuadrat
persamaan berbentuk Ax^2 +Bx +C
Berika nilai A= 2
Berikan nilai B= -2
Berikan nilai C= -4
D=
36
akar-akarmya riil
x1 =
x2 =
-1
>>
program menghitung akar persamaan kuadrat
persamaan berbentuk Ax^2 +Bx +C
Berika nilai A= 1
Berikan nilai B= 0
Berikan nilai C= -9
D=
36
akar-akarmya riil
x1 =
x2 =
-3
>>
D=
-24
akar-akarnya imajiner
x1 =
-1.0000 + 1.2247i
x2 =
-1.0000 - 1.2247i
>>
Program Utama
Program Function
function gerpel(vo,sudut)
%
g=10;
%
alpha=(sudut*pi)/180;
tmax=vo*sin(alpha)/g;
t=0:0.01:2*tmax;
x=vo*cos(alpha)*t;
y=vo*sin(alpha)*t-(1/2)*g*t.^2;
plot(x,y)
Hasil Eksekusi:
140
120
100
80
60
40
20
-20
0 100 200 300 400 500 600 700 800 900
6. Analisa Data
- Pada percobaan 4.1 nilai secara teori sama dengan nilai yang didapat oleh
matlab,maka program adalah benar.
- Pada percobaan 4.2 grafik yang ditampilkan telah sesuai dengan grafik gerak peluru
- Pada program utama hanya mengandung diketahui sedangkan rumus di ketik pada
program function
7. Simpulan
1. Ketika meggunakan perintah function,maka nama program akan tersave as
sesuai dengan nama disebelah perintah “function” tersebut.
2. Perintah “function” merupakan perintah yang digunakan untuk
mengefisienkan program yang disusun pada file yang berbeda
Jawab:
Program utama
clear;
clc;
momentum(m1,m2,v1,v2)
Program Function
function momentum(m1,m2,v1,v2)
v1f = [(m1-m2)*v1+(2*m2*v2)]/(m1+m2)
v2f=v1-v2+v1f
v1f =
3.0000
v2f =
>>
Program Utama
%progam Deret Fouirer
%menggunakan for...end
clc;
clear all;
theta=((-180*pi)/180):((0.1*pi)/180):((180*pi)/180);
fourier(bs,theta)
Program Function
function fourier(bs,theta)
F=0;
for n=1:1:bs
F=F+(2/((2*n)-1))*sin(((2*n)-1)*theta);
F=F;
end
plot(theta,F)
grid
Hasil Eksekusi
1.5
0.5
-0.5
-1
-1.5
-2
-4 -3 -2 -1 0 1 2 3 4