MATLAB adalah salah satu bahasa pemrograman yang mudah untuk dipelajari.
Software ini dapat menangani operasi perhitungan bilangan nyata, bilangan kompleks,
manipulasi matriks, tampilan grafik, operasi Input/Output dengan komunikasi serial dan juga
dilengkapi dengan program-program paket yang disebut sebagai Simulink dan Toolbox untuk
keperluan simulasi. Perintah atau Syntax dalam MATLAB memiliki kemiripan dengan
bahasa matematik biasa sehingga hal ini sangat membantu para pemakai (MATLAB
singkatan dari MATrix LABoratory). Pada bagian ini akan dijelaskan beberapa instruksi
dasar pada MATLAB, membuat file naskah, fungsi m-file, dan membuat grafik fungsi.
16
Gambar 2.2 Bar menu
Perintah atau code dalam MATLAB dan fungsi matematik dasar diberikan masing-masing
pada Tabel 2.1 dan 2.2
Perintah Keterangan
clc Membersihkan layar
who Melihat variabel yang digunakan dalam suatu
program
clear Menghapus variabel pada program
clear all Sama dengan clear
help Fasilitas on line help
lookfor Fungsinya mirip dengan help
17
Tabel 2.2: Fungsi Matematik
Fungsi Keterangan
abs Nilai absolut atau magnitude suatu bilangan kompleks
acos Invers cos
acosh Invers cos hiperbolik
angle Sudut bilangan kompleks dalam radian
asin Invers sin
asinh Invers sin hiperbolik
atan Invers tan
atanh Invers tan hiperbolik
conj Conjugate bilangan kompleks
cos Cos ( radian)
cosd Cos ( derajat)
cosh Cos hiperbolik
exp e pangkat
imag Bagian khayal bilangan kompleks
real Bagian nyata bilangan kompleks
log Log basis e
log10 Log basis 10
sin Sin (radian)
sind Sin (derajat)
sinh Sin hiperbolik
sqrt akar
tan Tangen
tanh Tangan hiperbolik
bin2dec Konversi bilangan biner ke desimal
dec2bin Konversi bilangan desimal ke biner
dec2hex Konversi bilangan desimal ke hexadesimal
18
2.2 ARRAY DAN MATRIKS
Array dalam matematik dikenal sebagai vektor (baris dan kolom). Dalam MATLAB
operasi antara array dengan matriks dibedakan. Pada array: Operasi penjumlahan,
pengurangan, perkalian, pembagian, dan perpangkatan antara sesama array atau antara array
dengan skalar dibuat elemen per elemen. Sedangkan pada matriks aturannya sesuai dengan
aturan aljabar matriks. Misal suatu array A dengan elemen 1, 2, 3, dan 4 dalam satu baris
(berupa vektor baris) jika ditulis dalam bahasa MATLAB adalah A = [ 1 2 3 4], atau A = 1:
4, atau A = linspace (1,4,4). Notasi dan karakter yang banyak digunakan untuk penulisan
array dan matriks adalah :
: ; () [] spasi
Jika ditulis array A = [1 2 3 4] dimana antara elemen 1 dengan 2 dan seterusnya diantarai
dengan spasi, maka matlab mengartikan sebagai vektor baris. Penulisan A = 1 : 4, adalah
penulisan singkat dimana array A mempunyai empat elemen, dengan nilai elemen pertama 1,
elemen kedua 2 dan seterusnya. Penulisan A =linspace (1,4,4) diartikan bahwa elemen
pertama dari A adalah 1, elemen ke empat 4, dan jumlah elemen 4. Jika dituliskan A = [1; 2;
3; 4] maka Matlab mengartikan A adalah suatu vektor kolom. Notasi yang digunakan untuk
operasi perhitungan pada array dam matriks diperlihatkan pada tabel 2.3
Notasi Keterangan
+ Penjumlahan
- Pengurangan
*, .* Perkalian (* untuk matriks) (.* untuk array)
./ Pembagian ( A dibagi B)
.\ Pembagian ( B dibagi A)
‘ Transpose dengan conjugate
.’ Transpose tanpa conjugate
19
Fundamental dari MATLAB adalah matriks oleh sebab itu banyak disediakan perintah atau
fungsi tambahan untuk memanipulasi matriks. Misalkan A = [1 2 3 4], dan B =[5 6 7 8], jika
dituliskan perintah A * B, maka Matlab akan memberi jawaban (Error using ==> * Inner
matrix dimensions must agree ) yang berarti perkalian A dengan B tidak dibenarkan karena A
dan B tidak bisa diperkalikan menurut kaidah aljabar matriks. Jika dituliskan A .* B maka
jawabannya adalah ( ans = 5 12 21 32 ), pada kasus ini penggunaan notasi .* akan
meyebabkan MATLAB mengartikan A, dan B masing-masing sebagai array dan
perkaliannya dilakukan elemen per elemen. Berbagai perintah yang berkaitan dengan matriks
dicantumkan pada tabel 2.4
Perintah Keterangan
det Determinan matriks
inv Invers matriks
size Ukuran matriks (baris kolom)
length Panjang /maksimum (kolom atau baris)
ones Matriks dengan semua elemen bernilai satu
zeros Matriks dengan semua elemen bernilai nol
eye Matriks identitas
Operator relasi dan logika yang digunakan dalam MATLAB dicantumkan pada tabel 2.5.
for end
for n = array
……….. perintah
end
20
Misalkann diberi nilai n = 1: 3, maka proses pengulangan dilakukan 3 kali. Pada
pengulangan pertama nilai n = 1, kemudian ditingkatkan menjadi 2 (dari 1+1) dan pada
pengulangan terakhir nilai n menjadi 3. Jika ditulis n = 5:-1:1, maka proses pengulangan
dilakukan lima kali, dimana pada pengulangan pertama nilai n = 5 dan terus menurun pada
pengulangan berikutnya.
Operator Keterangan
< Kurang dari
<= Kurang dari atau sama dengan
> Lebih besar
>= Lebih besar atau sama dengan
== Sama dengan
~= Tidak sama dengan
& Dan (and )
| Atau ( or)
~ Tidak (not)
while end
Format penulisan
while ekspresi
………. Perintah
end
21
Jika ekspresi yang terletak pada sebelah kanan dari while benar atau dipenuhi maka komputer
akan mengeksekusi perintah yang terdapat antara while dan end, kemudian proses diulang
kembali. Jika ekspresi yang terletak pada sebelah kanan while salah atau tidak dipenuhi maka
eksekusi dilanjutkan pada perintah perintah yang terletak dibawah baris end. Contoh
potongan program berikut :
……………..
n=0
while n < 2
n= n + 1
end
…………………….
Pada potongan program di atas, proses pengulangan dilakukan dua kali, pada pengulangan
pertama mula-mula nilai n = 0 dan diubah menjadi 1 ( dengan n = n +1), dan pada proses
pengulangan kedua nilai n =1 dan diubah mejadi 2. Proses pengulangan ke tiga tidak
dilakukan karena ekpresi sudah tidak memenuhi.
If if
--------- if -----
--------- elseif
end …..
else else
---------- ……
end
end
22
Format penulisan
if ekspresi
……….. perintah
end
Jika ekspresi yang terletak pada sebelah kanan if memenuhi maka komputer akan
mengesekusi perintah yang terletak pada baris antara if dan end. Sebaliknya jika ekspresi
tidak memenuhi eksekusi dilanjutkan pada perintah perintah dibawah baris end.
If ekspresi
……….. perintah
else
…… perintah
end
Jika ekspresi yang terletak pada sebelah kanan if memenuhi maka komputer akan
mengesekusi perintah yang terletak pada baris antara if dan else. Sebaliknya jika ekspresi
tidak memenuhi eksekusi dilanjutkan pada perintah perintah yang terletak pada baris antara
else dan end.
If ekspresi
……… perintah
elseif ekspresi
…… perintah
else
…… perintah
end
23
Jika ekspresi yang berada pada baris sebelah kanan if memenuhi maka komputer akan
mengesekusi perintah yang terletak pada baris antara if dan elseif, dan selanjutnya
mengesekusi perintah – perintah yang berada pada baris di bawah end. Sebaliknya jika
ekspresi yang terletak pada sebelah kanan if tidak memenuhi eksekusi dilanjutkan ke elseif,
jika ekspresi yang terletak pada sebelah kanan elseif memenuhi maka perintah perintah
yang berada pada baris antara elseif dan else yang dieksekusi, dan jika tidak, maka perintah
yang berada pada baris antara else dan end yang dieksekusi.
Untuk memulai menulis program dalam bentuk file naskah, klik file –new-script pada
menu bar pada gambar 2.2 maka akan tampil sebuah jendela baru seperti pada gambar 2.3.
Dalam jendela inilah program ditulis.
24
sendiri oleh pengguna dengan tujuan untuk membantu program induk. Dimana fungsi ini
dapat dipanggil setiap saat oleh program induk jika diperlukan. Untuk menulis fungsi m-file
syaratnya adalah :
Perintah Keterangan
plot Memplot data
subplot Menempatkan beberapa gambar pada satu jendela
xlabel Label pada sumbu mendatar
axis Memberi batas sb x, dan y. Contoh axis ([ 0 50 0 3])
ylabel Label pada sumbu vertikal
title Judul gambar
text Menempatkan teks pada gambar
gtext Menempatkan teks pada gambar denga mouse
25
loglog Sama dengan plot kecuali sumbunya dalam skala
logaritma
grid Memberi latar belakang garis
Contoh 2.1
Gambarkan fungsi y = tan(sin(x)) - sin(tan(x)) dengan nilai x dari x = - sampai -
dengan selang -/10.
Solusi
Program
26
y = tan(sin(x)) - sin(tan(x))
4
0
y
-2
-4
-4 -3 -2 -1 0 1 2 3 4
x
y = tan(sin(x)) - sin(tan(x))
4
0
y
-2
-4
-4 -3 -2 -1 0 1 2 3 4
x
Contoh 2.2
Gambarkan fungsi 𝑍𝑍 = √𝑋𝑋 2 + 𝑌𝑌 2 dengan nilai X antara -2 dan 2 dengan selang 0.1, dan
nilai Y antara -2 dan 2 dengan selang 0.1
Solusi
Program
clc
clear all
[X,Y] = meshgrid(-2:.1:2, -2:.1:2);
Z= sqrt (X.^2 + Y.^2);
surf(X,Y,Z)
zlabel (' Z')
ylabel (' Y')
xlabel (' X')
27
title (' fungsi Z= sqrt (X.^2 + Y.^2)')
2.5
1.5
Z
0.5
0
2
1 2
0 1
0
-1 -1
Y -2 -2
X
28
Gambar 2.5 Hasil contoh 2.5
29