You are on page 1of 23

MODUL PRAKTIKUM MATLAB

DISUSUN OLEH
ERRISSYA RASYWIR, S.Kom, MT
SEKOLAH TINGGI ILMU KOMPUTER DINAMIKA BANGSA JAMBI

BAB I
PENGENALAN MATLAB

I.1 DEFINISI MATLAB


MATLAB (Matrix Laboratory) adalah bahasa tingkat tinggi dan interaktif yang
memungkinkan untuk melakukan komputasi secara intensif. MATLAB telah
berkembang menjadi sebuah environment pemrograman yang canggih yang berisi
fungsi-fungsi builtin untuk melakukan pengelolahan sinyal, aljabar linear dan
kalkulasi matematis lainnya. MATLAB juga berisi toolbox yang berisi
fungsifungsi
tambahan untuk aplikasi khusus. Penggunaan MATLAB meliputi bidang-bidang :
-Matematika dan Komputasi
-Pembentukan
-Algorithm
-Akuisisi Data
-Pemodelan,simulasi dan Pembuatan Prototype
-Analisis Data, Explorasi, dan Visualisasi
-Grafik Keilmuan dan Bidang Rekayasa
Matlab adalah singkatan dari Matrix Laboratory, software yang dibuat dengan
menggunakan bahasa ini dibuat oleh The Mathworks.inc dan telah memasuki
versi 6.5 Rilis 13. kekuatan matlab terletak pada :
1.
2.
3.
4.

Kemudahan manipulasi struktur matriks.


Jumlah routine-routine powerful yang berlimpah yang terus berkembang.
Kekuatan fasilitas grafik tiga dimensi yang sangat memadai.
Sistem scripting yang memberikan keleluasaan bagi pengguna untuk

mengembangkan dan memodifikasi software untuk kebutuhan sendiri.


5. Kemampuan interface( misal dengan bahasa C, word dan mathematica).
6. Dilengkapi dengan toolbox, simulink, stateflow dan sebagainya, serta
mulai melimpahnya source code di internet yang dibuat dalam
matlab( contoh toolbox misalnya : signal processing, control system,
neural networks dan sebagainya).
Semua

itu

merupakan

perangkat

yang

powerful

untuk

menyelesaikan

permasalahan sains dan teknik terutama untuk wilayah dimana komputasi


numerik harus dibuat.

GUI DI MATLAB
Ketika kita membuka GUI Matlab kita bisa melihat lihat dan mencoba coba
perintah pada GUI tersebut dan untuk lebih jelasnya bisa dilihat dalam demo
tersebut. Kita bisa melihat contoh contoh program dan bisa disave dengan
ektension .m(yang merupakan ektensi dari file matlab) Salah satu yang cukup
menarik dari matlab ini adalah kemudahan dan kejelasannya dalam memahami
contoh dan demo serta help yang ada pada matlab. Kita akan berkenalan lebih
dekat dengan yang satu ini. Kita bisa lihat dari demo ini ternyata begitu banyak
persoalan yang dapat dibangun dengan matlab dengan cara lebih mudah dan lebih
singkat,

tanpa

mengurangi

kepahaman

kita

pada

suatu

persoalan(bisa

dibandingkan dengan bahasa C, pascal, delphi atau visual lainnya). Dengan


dilengkapinya matlab dengan toolbox, simulink dan sebagainya maka semakin
menambah kekuatan matlab untuk menyelesaikan permasalahan yang rumit
menjadi lebih mudah.
I.2 MEMULAI MATLAB
Setelah melakukan instalasi MATLAB pada PC, perhatikan icon MATLAB pada
tampilan desktop kemudian doubleclick pada icon tersebut. Selanjutnya akan
muncul tampilan seperti pada gambar berikut ini.

Pada tampilan awal MATLAB, terlihat beberapa jendela yang merupakan bagian
penting di dalam MATLAB, antara lain :

1. Jendela perintah (Command Window)


Pada command window, semua perintah matlab dituliskan dan diekskusi.
Kita dapat menuliskan perintah perhitungan sederhana, memanggil fungsi,
mencari informasi tentang sebuah fungsi dengan aturan penulisannya
(help), demo program, dan sebagainya. Setiap penulisan perintah selalu
diawali dengan prompt >>. Misal, mencari nilai sin 750, maka pada
command window kita dapat mengetikkan
>> sin(30*pi/180)
ans =
0.5000
2. Jendela ruang kerja (Workspace)
Jendela ini berisi informasi penggunaan variabel di dalam memori
MATLAB. Misalkan kita akan menjumlahkan dua buah bilangan, maka
pada command window kita dapat mengetikkan:
>> bilangan1=7
bilangan1 =
7
>> bilangan2=9
bilangan2 =
9
>> hasil=bilangan1+bilangan2
hasil =
16
Maka pada workspace akan menampilkan variable yang sedang
digunakan.

Gambar 2. Tampilan Workspace


Untuk melihat variabel yang aktif saat ini, kita dapat menggunakan
perintah who.
>> who
Your variables are:
bilangan1 bilangan2 hasil
3. Jendela history (Command History)
Jendela ini berisi informasi tentang perintah yang pernah dituliskan
sebelumnya. Kita dapat mengambil kembali perintah dengan menekan
tombol panah ke atas atau mengklik perintah pada jendela histori,
kemudian melakukan copypaste ke command window.

Gambar 3. Tampilan Command History


BAB II
VARIABEL DAN OPERATOR
II.1 VARIABEL
Seperti bahasa pemrograman lainnya, matlab pun memiliki variabel, tetapi dalam
penulisannya, variabel di dalam matlab tidak perlu dideklarasikan, karena matlab
mampu mengenali tipe data dari variable dari isi variabel tersebut. Aturan
penulisan variabel pada matlab sama dengan aturan pada bahasa pemrograman
lainnya, yaitu bersifa case sensitive, diawali dengan huruf dan selanjutanya boleh
menggunakan gabungan huruf angka atau tanda garis bawah. Matlab mampu
mengenali sampai 31 karakter pertama, selanjutnya diabaikan. Contoh :
>> var_1=7.7
var_1 = 7.7000
>> var2=[2 3 4]
var2 = 2 3 4
Semua tipe data di matlab memiliki bentuk yang sama, yaitu array. Array minimal
berukuran 0x0 dan dapat bertambah menjadi array n x m dimensi dengan
sembarang ukuran. Matlab mempunyai beberapa tipe data dasar (atau class),
yaitu: logical, char, numeric, cell, structure, java classes, function handles.
Adapun variable khusus pada matlab, yaitu :

Gambar 4. Variabel Khusus dan Nilai


II.2 OPERATOR
Pada matlab, operator diklasifikasikan menjadi tiga bagian, yaitu:
a) Operator Aritmatika
Operator aritmatika digunakan untuk mengerjakan komputasi numeric.

b) Operator Relasional
Operator relasional digunakan untuk membandingkan operand-operand
secara kuantitatif.

c) Operator Logika

BAB III
ARRAY, MATRIKS DAN POLINOMIAL
III.1 ARRAY
MATLAB menangani array secara intuitif. Untuk membuat array dalam
MATLAB, yang perlu dilakukan hanyalah mengetikkan kurung kotak kiri,
memasukkan elemenelemen
dengan dipisahkan oleh spasi atau koma, kemudian menutup array dengan kurung
kotak kanan. Berikut ini akan diberikan beberapa contoh assignment untuk array :
1. Pengalamatan array
Dalam MATLAB elemen-elemen array diakses menggunakan subcript
misalnya x(1) adalah elemen pertama x, x(2) adalah elemen kedua x, dan
seterusnya. Contoh :
1. x=[2 4 6 8 10]
dapat dilihat bahwa x(1)=2, x(2)=4, x(3)=6, x(4)=8, x(5)=10
x(4) %
ans = 8
2. x([1 3 5])=[0.2 0.5 0.7]
maka x(1)=0.2, x(3)=0.5, x(5)=0.7 dan x(i) untuk i=2,3,4 bernilai 0.
3. nilai array dapat juga diisikan sebagai berikut :
x=4:1:9
x=
456789
artinya bahwa nilai array yang diisikan dengan angka dari 4 sampai 9
dengan penambahan 1 (default). Penambahan dapat bernilai
sembarang, bahkan dapat juga negatif, seperti contoh berikut :
z=10:2:1
z=
10 8 6 4 2
7

4. Memisahkan elemen dengan titik koma membuat elemen berada


dalam baris yang berbeda, seperti contoh berikut :
y=[13579]
y=
1
3
5
7
9
2. Menambahkan elemen array
x=[x 1 2] % (array sebelumnya )
x=[x 2 4] % (menambahkan 2 elemen dibelakang )
x=
1224
x=[1 2 x 3]% (menambahkan dua elemen di depan, satu dibelakang)
x=
1212243
3. Mengakses sebagian elemen array
Dari contoh sebelumnya misalkan hanya diakses elemen ke 2 sampai
ke empat
y=x(2:4)
y=
212
4. Menghapus elemen array
Dapat dilihat contoh berikut :
a. Menghapus elemen terakhir dari array
n=[1 3 5 7 9]
n=
13579
n=n(1:length(n)1)
n=
1357
b. Menghapus elemen pada index tertentu
Misalkan z =[1 2 3 4 5 ] dan ingin dihapus z pada index ke 2 dan 4
maka: z=[1 2 3 4 5]
z=
12345
z([2 4])=[]
z=
135
III.2 MATRIKS
Matlab menggunakan matriks sebagai dasar komputasinya. Secara garis besar
matlab
membagi matriks menjadi 2 bagian, yaitu :

a. Matriks Khusus
1. Matriks Nol
Matriks yang elemennya bilangan nol
Bentuk umum :
>> zeros(n,m)
Contoh :
>> zeros(4,5)
ans =
00000
00000
00000
00000
2. Matriks Satu
Matriks yang elemennya bilangan satu
Bentuk umum :
>>ones(n,m)
Contoh :
>> ones(2,3)
ans =
111
111
3. Matriks Identitas
Bentuk umum :
>>eye(n)
Contoh :
>> eye(4)
ans =
1000
0100
0010
0001
4. Matriks Bujur Sangkar Ajaib
Matriks yang memiliki hasil jumlah yang sama pada elemen-elemen
baris, kolom dan diagonalnya. Bentuk umum : >>magic(n)
Contoh :
>> magic(3)
ans =
816
357
492
5. Matriks Acak
Matriks yang memiliki nilai acak berdasarkan distribusi statistic pada
elemennya.
Bentuk umum :
>>rand(n,m)
Contoh :
>> rand(3,2)

ans =
0.9501 0.4860
0.2311 0.8913
0.6068 0.7621
b. Matriks yang didefinisikan oleh User
Matlab juga menyediakan bentuk matriks yang didefinisikan oleh user.
Contoh :
>> S=[1 2 37 8 9]
S=
12 3
7 8 9
Tanda semicolon digunakan untuk memisahkan baris satu dengan yang
lain.
III.3 POLINOMIAL
Di Matlab, sebuah polinomial diwakilkan oleh sebuah vektor. Untuk menciptakan
polynomial di Matlab, masukkan coefficient polynomial kedalam vector dalam
orde yang menurun. Misalkan polynomial berikut:
s4

3
2
+ 3 s - 15 s - 2 s + 9

Untuk memasukkan ke dalam Matlab, masukkan :


>> x = [1 3 -15 -2 9]
x=
1 3 -15 -2 9
Matlab dapat menginterpretasikan sebuah panjang n+1 sebagai nth order
polynomial. Jika polynomial missing pada coefficients, anda harus memasukkan
nilai nol kedalam tempat yang bersesuaian di dalam vector.
Contoh :
s4

+1

ditulis di Matlab sebagai:


>> y = [1 0 0 0 1]
Anda dapat mencari nilai polynomial menggunakan fungsi polyval.
Contoh :
untuk mencari nilai polynomial pada s=2, yaitu :
>> z = polyval([1 0 0 0 1],2)
z=
17

10

Anda dapat mengekstrak akar polynomial.


Contoh :
s4

3
2
+ 3 s - 15 s - 2 s + 9

Untuk mencari akar polynomial :


>> roots([1 3 15 2 9])
ans =
-5.5745
2.5836
-0.7951
0.7860
JIka anda ingin mengalikan hasil 2 polynomials lakukan dengan convolution dari
coefficients. Fungsi conv dapat digunakan.
>> x = [1 2]
>> y = [1 4 8]
>> z = conv(x,y)
z=
1 6 16 16
Untuk membagi 2 polynomials dapat dilakukan dengan fungsi deconv. Misalkan z
dibagi y dengan hasil x.
>> [xx, R] = deconv(z,y)
xx =
12
R=
0000

11

Jika anda ingin menambah 2 polinomial secara bersamaan dengan orde yang
sama, buatlah z=x+y akan berhasil (vectors x dan y harus mempunyai panjang
yang sama). Secara umum, anda dapat mendefinisikan fungsi polyadd.
>> z = polyadd(x,y)
x=
1 2
y=
1 4 8
z=
1 5 10
BAB IV
M-FILE DAN GRAFIK
IV.1 PEMROGRAMAN M-FILE
M-file merupakan sederetan perintah matlab yang dituliskan secara berurutan
sebagai sebuah file. Nama file yang tersimpan akan memiliki ekstensi .m yang
menandakan bahwa file yang dibuat adalah file matlab. Mfile dapat ditulis sebagai
sebuah script atau dapat pula ditulis sebagai sebuah fungsi yang menerima
argument atau masukan yang menghasilkan output.
Contoh script sederhana dari matlab :
%menghitung akar dari
%persamaan kuadrat y=ax^2 + bx + c
clc
clear
a=input('masukkan konstanta a=')
b=input('masukkan konstanta b=')
c=input('masukkan konstanta c=')

12

x1=(b+ qrt(b ^24* a*c))/(2*a)


x2=(-b-sqrt( b ^24* a*c))/(2*a)
IV.2 GRAFIK
Matlab mempunyai bermacam-macam fungsi untuk menampilkan grafik, dimana
setiap fungsi memiliki perbedaan dalam menskalakan garis sumbu. Setiap
menerima inputan dalam bentuk vector atau matriks, matlab akan menskalakan
secara otomatis.
a. Plot
Fungsi plot digunakan untuk menggambar grafik 2D dengan skala linear
pada kedua sumbunya.
Contoh:
>> x=10: 10
>> y=x. ^2
>> plot(x,y)
Hasilnya akan tampak sebagai berikut:

b. Plot3
Fungsi plot3 digunakan untuk menampilkan grafik 3 dimensi. Plot3 memerlukan
3 argumen dengan bentuk plot3(x,y,z), dimana x, y, z merupakan 3 bagian vector
yang sama panjang.
Contoh:
>> t=0:pi/100:10*pi
>> plot3(sin(2*t), cos(2*t), t)

13

Hasilnya akan tampak sebagai berikut:

c. Bar
Fungsi bar digunakan untuk menampilkan data yang berbentuk vector maupun
matriks. Grafik bar digunakan untuk menampilkan sekumpulan data selama kurun
waktu terentu dan cocok untuk menampilkan data dalam bentuk diskrit.
Contoh:
>> t=[10 30 21 52 34 67 12 23 90, 23, 45, 26 58 94 30 20]
>> bar(t)
>> grid on
Hasilnya akan tampak sebagai berikut:

Matlab juga menyediakan dalam bentuk 3 dimensi, yaitu bar3. Misal grafik diatas
disajikan dalam bar3, maka kita ketik perintah berikut:

14

>>bar3(t)

BAB V
STATEMENT KONTROL
Sama seperti bahasa pemrograman yang lain, matlab juga memiliki statemen
kontrol. Berikut adalah beberapa pembahasan statemen kontrol yang ada di
Matlab:
V.1 IF, ELSE DAN ELSEIF
If merupakan statemen control yang digunakan untuk mengevaluasi ekspresi
logika dan mengekskusi kelompok statemen yang didasarkan pada nilai ekspresi.
Penulisan kontrol if else adalah sebagai berikut :
if <ekspresi logika> statementstatement
else if <ekspresi logika> statementstatement
else<ekspresi logika> statementstatement
end
contoh:

15

V.2 WHILE
While digunakan untuk melakukan proses perulangan selama kondisi ekspresi
terpenuhi. Begitu kondisi sudah tidak terpenuhi lagi, maka proses perulangan akan
langsung dihentikan. Bentuk umum dari while adalah :
while <ekspresi>
Statementstatement
End
contoh :

V.3 FOR
For digunakan untuk melakukan proses perulangan selama kondisi ekspresi
terpenuhi. Perbedaannya dengan while adalah pada for jumlah perulangan dapat
diketahui, sedangkan pada while bergantung pada nilai ekspresi. Bentuk umum
dari for adalah :
for indeks=nilai awal:step:nilai akhir
statementstatement
end
contoh:

16

V.4 CONTINUE DAN BREAK


Statemen continue dan break digunakan pada statemen kontrol for atau while.
Fungsi continu adalah melanjutkan ke iterasi berikutnya tanpa menjalankan
statemen yang ada di bawah kondisi continu. Sedangkan break, digunakan untuk
menghentikan proses iterasi tanpa melanjutkan perulangan.
Contoh:

BAB VI
ANALISA DATA DAN INTERPOLASI
VI.1 ANALISA DATA
Dalam bab ini, kita akan belajar bagaimana menganalisis dan memanipulasi data
mempergunakan MATLAB, terutama untuk perhitungan statistik: rentang data,
maksimum/minimum, rata-rata, deviasi, jumlah kumulatif, dan sebagainya. Di
MATLAB fungsi-fungsi statistik semacam ini telah ada dan bisa digunakan secara
fleksibel. Dalam penjelasan bab ini, x dan y kita misalkan sebagai vector (baris
ataupun kolom), dan A dan B sebagai matriks mn.
a. Maksimum dan Minimum
Nilai maksimum dan minimum diperoleh dengan command berikut ini :

17

Mari kita praktekkan beberapa contoh untuk menambah pemahaman terhadap


sintaks di atas. Misalkan x ialah data tinggi badan dari 10 orang, dan A ialah data
indeks prestasi (IP) dari 4 mahasiswa dalam 3 semester.

>> A=[3.3 2.8 3.3 3.9 4.0 3.8 3.8 3.5 2.9 2.9 3.2 3.1]
>> max(x)
ans =
177
>> max(A), max(A)
ans =
3.9000 4.0000 3.8000
ans =
3.3000 4.0000 3.8000 3.2000
>> max(max(A))
ans =
4

18

Kita bisa melihat bahwa max(x) menghitung tinggi maksimum dari 10 orang yang
ada, max(A) menghitung IP tertinggi pada setiap semester, sedangkan max(A)
menghitung IP tertinggi dari setiap mahasiswa. Sementara itu, max(max(A))
menghitung IP tertinggi yang pernah dicapai mahasiswa selama 3 semester.
b. Statistika
Sekarang kita akan belajar command untuk analisis data statistik.

Sebagai contoh, kita gunakan kembali data tinggi badan dan nilai IP mahasiswa
seperti sebelumnya.
>> x=[175 177 173 165 160 170 174 177 168 170]
>> A=[3.3 2.8 3.3 3.9 4.0 3.8 3.8 3.5 2.9 2.9 3.2 3.1]
>> rataan_IP_sem = mean(A)
rataan_IP_sem =
3.4750

3.3750

3.2750

>> rataan_IP_mhs = mean(A')


rataan_IP_mhs =
3.1333 3.9000 3.4000 3.0667
>> rataan_IP_total = mean(mean(A))
rataan_IP_total =
3.3750
>> nilai_tengah = median(x), deviasi = std(x), ...

19

variansi = var(x)
nilai_tengah =
171.5000
deviasi =
5.4661
variansi =
29.8778
VI.2 INTERPOLASI
Pada fungsi yang memiliki sejumlah titik terbatas, dimungkinkan untuk
menentukan titik-titik perantaranya dengan interpolasi. Cara termudah untuk
menghitungnya

ialah

dengan

menggunakan

interpolasi

linier

untuk

menghubungkan dua titik yang berdekatan. Command interp1 menggunakan


algoritma khusus untuk interpolasi titik-titik data yang terpisah secara seragam.
Untuk command ini, kita harus tambahkan tanda asteris * di depan nama metoda
yang diinginkan, misalkan interp(x,y,xx,*nearest).
yy = interp1(x,y,xx) menghitung vektor yy yang panjangnya

Misalkan kita memiliki data tekanan udara dalam suatu ruang tertutup yang
diukur
pada jam-jam tertentu sebagai berikut:
>> t = [0 2 3 5 8.5 10 12]
>> pres = [660 900 400 300 500 50 300]

20

Sekarang kita interpolasi dengan beberapa metode dan kita plot pada satu gambar
sekaligus :
>> tt = linspace(0,12,100)
>> PP1 = interp1(t,pres,tt,*linear)
>> PP2 = interp1(t,pres,tt,*cubic)
>> PP3 = interp1q(t,pres,tt)
>> figure
>> plot(t,pres,k*,tt, PP1,k-, tt ,PP2,k:, ... tt,PP3,k--)
>> grid on
>> xlabel(waktu (jam)), ylabel(Pressure)
>> legend(data,linier,kubik,interp1q)
>> title(Perbandingan metode interpolasi

BAB VII
VISUALISASI DAN FUNCTION MFILE
VII.1 VISUALISASI 2D DAN 3D
MATLAB memiliki beberapa bentuk grafik yang dapat dibuat dengan mudah dan
cara penggunaannya pun sederhana. Berikut ini akan diberikan contoh-contoh
untuk menampilkan berbagai grafik berdasarkan kategori :

21

a. Grafik 2D :
1. Grafik garis, mencetak grafik chirp.
>> x=0:0.05:5 {Enter}
>> y=sin(x.^2) {Enter}
>> plot(x,y) {Enter}
2. Grafik Batang (Bar), mencetak kurva BELL.
>> x=2.9 : 0.2 : 2.9 {Enter}
>> bar(x,exp(-x.* x)) {Enter}
3. Grafik Tangga, mencetak Gelombang sinus dalam grafik tangga.
>> x=0:0.25:10 {Enter}
>> stairs(x,sin(x)) {Enter}
4. Grafik ErrorBar, mencetak Grafik ErrorBar pada fungsi dengan
kesalahan secara acak.
>> x=2: 0.1:2 {Enter}
>> y=erf(x) {Enter}
>> e=rand(size(x))/10 {Enter}
>> errorbar(x,y,e) {Enter}
5. Grafik Polar, mencetak fungsi perkalina sin dan cos dalam bentuk
polar.
>> t=0:.01:2*pi {Enter}
>> polar(t,abs(sin(2*t).*cos(2*t))){Enter}
6. Grafik Stem, mencetak perkalian fungsi sin dengan eksponensial.
>> x=0:0.1:4 {Enter}
>> y=sin(x.^2).*exp(-x) {Enter}
>> stem(x,y) {Enter}
b. Grafik 3D :
1. Grafik Mesh, mencetak bentuk grafik mesh dari fungsi "peaks" yang
telah disiapkan didalam MATLAB.
>> z=peaks(25) {Enter}
>>figure(2) surf(z){Enter}
2. Grafik Surface, mencetak grafik permukaan dari fungsi "peaks"
dengan pola warna "jet" yang telah didefinisikan didalam MATLAB.
>> z=peaks(25) {Enter}
>> surf(z) {Enter}
>> colormap(jet) {Enter}
3. Grafik Contour, mencetak kontur dari fungsi "peaks".
>> z=peaks(25) {Enter}
>> contour(z,16) {Enter}
4. Grafik Quiver, mencetak pola arah gerakan suatu nilai.
>> x = -2:.2:2 y = -1:. 2:1 {Enter}
>> [xx,yy] = meshgrid(x,y) {Enter}
>> zz = xx.*exp(-xx.^ 2-yy.^ 2) {Enter}
>> [px,py] = gradient (zz,.2,.2) {Enter}
>> quiver(x, y ,px, py, 2) {Enter}
VII.2 FUNCTION M-FILE
22

Fungsi adalah m-file yang menerima argument input dan menghasilkan argument
output. Fungsi dapat dipanggil langsung dari command window atau dari suatu mfile yang berbeda. Aturan penulisan fungsi adalah sebagai berikut :

Fungsi di dalam matlab jika disimpan secara default akan tersimpan dengan nama
yang sama dengan nama fungsinya.
Contoh :

Jika kita akan menggunakan fungsi tersebut, maka pada command window kita
tuliskan :
>> akar( 1, 8, 2)
Maka akan menghasilkan x1 = 1.1231 x2 = 7.1231

23

You might also like