Anda di halaman 1dari 42

MODUL KULIAH

PERANGKAT LUNAK MATEMATIKA

Jurusan Matematika
Fakultas Matematika dan Ilmu Pengetahuan Alam
Universitas Syiah Kuala
Darussalam-Banda Aceh
Desember, 2016
PENDAHULUAN

1. Pengertian MATLAB
MATLAB adalah sebuah bahasa dengan (high-performance) kinerja tinggi
untuk komputasi masalah teknik. MATLAB mengintegrasikan komputasi, visualisasi,
dan pemrograman dalam suatu model yang sangat mudah untuk pakai dimana
masalah-masalah dan penyelesaiannya diekspresikan dalam notasi matematika yang
familiar. Penggunaan MATLAB meliputi bidang :
 Matematika dan Komputasi
 Pembentukan Algorithm
 Pemodelan dan simulasi,
 Analisa data, explorasi, dan visualisasi
 Grafik Keilmuan dan bidang Rekayasa
MATLAB merupakan suatu sistem interaktif yang memiliki elemen data
dalam suatu array sehingga tidak lagi kita dipusingkan dengan masalah dimensi. Hal
ini memungkinkan kita untuk memecahkan banyak masalah teknis yang terkait
dengan komputasi, kususnya yang berhubungan dengan matrix dan formulasi vektor,
yang mana masalah tersebut merupakan momok apabila kita harus menyelesaikannya
dengan menggunakan bahasa level rendah seperti Pascall, C dan Basic
Nama MATLAB merupakan singkatan dari matrix laboratory. MATLAB
pada awalnya ditulis untuk memudahkan akses perangkat lunak matrik yang telah
dibentuk oleh LINPACK dan EISPACK. Saat ini perangkat MATLAB telah
menggabung dengan LAPACK dan BLAS library, yang merupakan satu kesatuan dari
sebuah seni tersendiri dalam perangkat lunak untuk komputasi matrix.
2.2. Fitur MATLAB
MATLAB tersusun dari 5 bagian utama:
1. Development Environment.
Merupakan sekumpulan perangkat dan fasilitas yang membantuanda untuk
menggunakan fungsi-fungsi dan file-file MATLAB. Beberapa perangkat ini
merupakan sebuah graphical user interfaces (GUI). Termasuk didalamnya adalah

1
MATLAB desktop dan Command Window, command history, sebuah editor dan
debugger, dan browsers untuk melihat help, workspace, files, dan search path.

2. MATLAB Mathematical Function Library.


Merupakan sekumpulan algoritma komputasi mulai dari fungsi-fungsi dasar
sepertri: sum, sin, cos, dan complex arithmetic, sampai dengan fungsi-fungsi yang
lebih kompek seperti matrix inverse, matrix eigenvalues, Bessel functions, dan
fast Fourier transforms.
3. MATLAB Language
Merupakan suatu high-level matrix/array language dengan control flow
statements, functions, data structures, input/output, dan fitur-fitur object-oriented
programming. Ini memungkinkan bagi kita untuk melakukan kedua hal baik
"pemrograman dalam lingkup sederhana " untuk mendapatkan hasil yang cepat,
dan "pemrograman dalam lingkup yang lebih besar" untuk memperoleh hasil-hasil
dan aplikasi yang komplek.
4. Graphics
MATLAB memiliki fasilitas untuk menampilkan vector dan matrices sebagai
suatu grafik. Didalamnya melibatkan high-level functions (fungsi-fungsi level
tinggi) untuk visualisasi data dua dikensi dan data tiga dimensi, image processing,
animation, dan presentation graphics. Ini juga melibatkan fungsi level rendah yang
memungkinkan bagi anda untuk membiasakan diri untuk memunculkan grafik
mulai dari benutk yang sederhana sampai dengan tingkatan graphical user
interfaces pada aplikasi MATLAB anda.
5. MATLAB Application Program Interface (API)
Merupakan suatu library yang memungkinkan program yang telah anda tulis
dalam bahasa C dan Fortran mampu berinterakasi dengan MATLAB. Ini
melibatkan fasilitas untuk pemanggilan routines dari MATLAB (dynamic
linking), pemanggilan MATLAB sebagai sebuah computational engine, dan untuk
membaca dan menuliskan MAT-files.
2.3 Jendala atau window yang ada pada MATLAB
a) MATLAB Command Window/Editor
Merupakan window yang dibuka pertama kali MATLAB dijalankan. Dalam
command window tersebut dapat dilakukan akses-akses ke command-
command MATLAB dengan cara mengetikkan barisan-barisan ekspresi

2
MATLAB, seperti mengakses help window dan lainnya. Command windows
juga digunakan untuk memanggil tool MATLAB seperti editor, debugger atau
fungsi. Ciri dari command window ini adalah adanya prompt (>>) yang
menyatakan MATLAB siap untuk menerima perintah.

Gambar 1. Command Window

Perintah yang dapat diterima oleh command window adalah bisa berupa
fungsi-fungsi pengaturan file maupun fungsi bawaan/toolbox MATLAB
sendiri. Berikut ini merupakan beberapa fungsi pengaturan file dalam
MATLAB :
» dir /ls : melihat isi direktori yang sedang aktif
» cd : pindah dari direktori aktif
» pwd : melihat direktori yang sedang aktif
» mkdir : membuat direktori
» what : melihat nama file m di direktori aktif
» who : melihat variabel yang sedang aktif
» whos : menampilkan name setiap variabel
» delete : menghapus file
» clear : menghapus variabel
» clc : membersihkan layar (display)
» doc : melihat dokumentasi online
» demo : menampilkan demo yang disediakan MATLAB
b). MATLAB Editor/Debugger (Editor M-File/Pencarian Kesalahan)

3
Window ini merupakan tool yang disediakan oleh MATLAB 5 ke atas.
Berfungsi sebagai editor script MATLAB (M-File). Walaupun sebenarnya
script ini untuk pemograman MATLAB dapat saja menggunakan editor lain
seperti notepad, worpad bahkan word. Untuk mengakses window m-file ini
dapat dilakukan dengan cara :
a. Pilih menu File kemudian pilih New
b. Pilih m-file, maka MATLAB akan menampilkan editor window :

Gambar 2. MATLAB Editor

Selain dengan cara di atas untuk menampilkan editor M-File ini dapat juga
dilakukan dengan mengetik perintah >>edit pada command window.
c). Figure Windows
Window ini adalah hasil visualisasi dari script MATLAB. Namun MATLAB
memberi kemudahan bagi programer untuk mengedit window ini sekaligus
memberikan program khusus untuk itu. Sehingga window ini selain berfungsi
sebagai visualisasi output dapat juga sekaligus menjadi media input yang
interaktif.

Gambar 3. Figure MATLAB


4
d). MATLAB help window
MATLAB menyediakan sistem help yang dapat diakses dengan perintah help.
Help tersebut berisi semua tentang MATLAB. Kita juga dapat belajar melalui
perintah help tersebut.

Gambar 4. Jendela Help MATLAB

Selain itu, perintah Help juga dapat diakses langsung pada commad window
dengan mengetik perintah >>help kemudian tekan enter maka akan muncul
list topik-topik help. Kita bisa pilih sendiri bantuan help apa yang kita
perlukan.

5
MATLAB
(Mathematics Laboratory)

1. Memulai MATLAB
Anda dapat memulai membuka program MATLAB dengan memilih Start
pilih Program pilih MATLAB 7.0 pilih MATLAB 7.0 lagi. Seperti pada gambar
dibawah ini

Gambar 5Membuka program MATLAB

Selanjutnya akan muncul tampilan MATLAB seperti pada gambar berikut ini :

6
Gambar 7. Tampilan Awal MATLAB
Sedangkan untuk mengakhiri program MATLAB, anda bisa melakukan
dengan cara pilih File pilih Exit MATLAB dalam window utama MATLAB yang
sedang aktif, atau ketik perintah quit dalam command window.

2. Variabel Pada MATLAB


MATLAB hanya memiliki dua jenis tipe data yaitu Numeric dan String. Setiap
variabel akan disimpan dalam bentuk matrix. Kita dapat langsung menuliskan
variabel baru tanpa harus mendeklarasinya terlebih dahulu pada command
window. Penamaan variabel pada MATLAB bersifat casseSensitif karena itu
perlu diperhatikan penggunaan huruf besar dan kecil pada penamaan variabel.
Apabila ada variabel lama dengan nama yang sama maka MATLAB secara
otomatis akan me-replace variabel lama tersebut dengan variabel baru yang akan
dibuat. Sebelum melihat lebih jauh tentang kemampuan MATLAB, kita coba
ketik perintah sederhana berikut pada MATLAB.
Ketik :
>> VarNum = 1+1 (selanjutnya tekan tombol “Enter”)
VarNum =
2
>> A= 2+1
A=
3
>> a = 2+2
a=
4
>> VarString = ‘Belajar Program MATLAB’
VarString =
Belajar Program MATLAB

7
Untuk penamaan variabel string, haru ditambahkan tanda petik buka dan
tanda petik tutup antara string yang dibuat (’ ... ’)
>> x = 2
x=
2
>> y = 3
y=
3
>> z = x + y
z=
5
Coba ketik perintah berikut dan lihat perbedaan dengan perintah diatas !
>> x = 2;
>>y = 3;
>> z = x + y;
>> z
x=
5
>> a=1+1
a=
2
>> 1+1
ans =
2
>> 2*3
ans =
6
>> b=2*3
b=
6

8
Sekarang kita lihat bagaimana MATLAB mendefinisikan duah buah vector,
yaitu vector x dan vector y.
Ketik :
>> x = [1 2 3]
x=
1 2 3
>> y= [4 5 6]
x=
4 5 6
Lihat bedanya dengan perintah berikut :
>> x = [1; 2; 3]
x=
1
2
3
>> y = [4; 5; 6]
x=
4
5
6

>>x(1)
ans =
1
Ulangi untuk y(1), y(2), dan y(3).

MATLAB menggunakan integer positif untuk index array. Elemen pertama


adalah y(1), elemen kedeua adalah y(2) dan elemen ketiga adalah y(3), begitu
juga untuk contoh yang lainnya. Nol atau bilangan negatif tidak diperbolehkan
untuk index array.

9
3. Bilangan dan Operator Matematika di MATLAB
Ada tiga bilangan di dalam MATLAB, yaitu :
1. Bilangan bulat atau integer
Contoh :
>>x = 10
x=
10

2. Bilangan real
Contoh :
>>x=10.01
x=
10.0100
3. Bilangan kompleks
Untuk bilangan kompleks yang bentuk umumnya adalah z=a+bi, salah
satu kehebatan MATLAB adalah tidak memerlukan penanganan khusus
untuk bilangan kompleks dan untuk bilangan ini diberi tanda i atau j
Contoh :
>>y = sqrt(-2)
y=
0 + 1.4142i
>>real (y)
ans =
0
>>imag(y)
ans =
1.4142
>>abs(y)
ans = 1.4142

10
MATLAB dapat melakukan operasi-operasi aritmatika dasar berikut :

Operasi Simbol
Penambahan, a+b +
Pengurangan, a-b -
Perkalian, a x b *
Pembagian, a:b / atau \
Perpangkatan, ab ^

Urutan operasi tersebut yang akan dikerjakan dalam suatu ekspresi yang
mengikuti aturan prioritas yang biasa. Aturannya adalah sebagai berikut :
” Ekspresi dikerjakan dari kiri ke kanan dengan pemangkatan mempunyai
perioritas tertinggi, diikuti dengan perkalian atau pembagian yang
mempunyai perioritas yang sama, diikuti dengan penambahan dan
pengurangan dan penambahan juga memiliki perioritas yang sama. Tanda
kurung dapat digunakan untuk merubah urutan pengerjaan yang biasa di
mana bagian yang dikejakan terlebih dahulu adalah bagian yang ada di
bagian kurung paling dalam kemudian ke luar”.

Contoh :
Misalnya anda mengambil kuliah sebanyak 12 SKS , yang terdiri dari
seismologi 4 sks , Analisis sinyal 3 sks , Tomografi 2 sks dan Gravitasi 3 sks .
Lalu pada akhir semester anda mendapat nilai sebagai berikut seismologi A ,
Analisis sinyal B , Tomografi C dan gravitasi A. Dengan point nilai A=4 , B=3
, C=2 Berapa nilai IP anda ?
Untuk menyelesaikan ini kita menggunakan pendekatan seperti perhitungan di
kalkulator :
>>ip = (4*4+3*3+2*2+3*4)/(4+3+2+3)
ip =
3.4167

11
Sebagai alternatif kita bisa menyelesaikan masalah di atas dengan terlebih
dahulu menyimpan informasi yang kita punya pada variabel.
>>seismologi = 4;
>>tomografi = 2;
>>analisis_sinyal = 3;
>>gravitasi = 4;
>>total_sks = 12;
>>ip = (seismologi*4+tomografi*2+analisis_sinyal*3+gravitasi*3)/total_sks
ip =
3.4167
4. Komentar dan Tanda Baca Dalam MATLAB
Dalam MATLAB, kita dapat menambahkan statemen komentar. Caranya
dengan menambah tanda persen (%). Semua teks sesudah tanda % dianggap
sebagai komentar.
Contoh :
>> 1+1 % Merupakan operasi penjumlahan dalam MATLAB
ans =
2
>>24-3 % Merupakan operasi pengurangan dalam MATLAB
ans =
21
Statemen komentar ini berguna untuk mendokumentasikan apa yang sudah
kita kerjakan. Sehingga nantinya kita bisa ingat kembali apa yang kita
maksudkan tentang apa yang kita kerjakan dalam MATLAB ini.
5. Fungsi-fungsi matematika dasar
MATLAB mempunyai berbagai fungsi matematika umu yang biasa digunakan
dalam matematik. Sebagian besar fungsi tersebut hampir sama dengan bila kita
menuliskannya secara matematis.
Contoh :
>> pi
ans = 3.1416
>>y = sin(pi/6)
y=

12
0.5000
Contoh lainnya :
1. Diberikan persamaan fungsi sebagai berikut :
M=4x2+3y10
N=e(2*x) +x
O=sqrt((1/(x+y))+(1/t+z)))
P=4*(e-x/2)*sin(pi*x)
Tentukan nilai fungsi tersebut dengan nilai-nilai : t=25, x=13, y=15.25
dan z=8.2!
Untuk penyelesaian di atas adalah :
Pertama, buat dulu variabelnya ,
>t=25;x=43;y=15.25;z=8.2;
Kedua masukkan nilai tersebut ke masing-masing fungsinya.
>>M=4*x^2+3*y+10
M=
7.4518e+003
>>N=exp(2*x)+x
N=
2.2352e+037
>>O=sqrt((1/(x+y))+(1/(t+y))
O=
0.2175
>>P=4*(exp(-x/2))*sin(pi*x)
P=
1.6223e-023
2. Sebuah silinder mempunyai diameter luar 6.3125 dan diameter dalam 5.762,
tentukan volumenya bila diketahui rumus untuk mencari volumenya :
4

V   RE 3  RI 3
3

di mana RE adalah diameter lur dan RI adalah diameter dalam.
Penyelesaian :
>>re=6.3125; ri=5.762;
>>v=4/3*pi*(re^3-ri^3);
>>disp([‘Volumennya= ‘, num2str(v)])

13
Volume = 252.3169

6. Matrix
Setiap data dalam MATLAB dapat diasumsikan dalam bentuk matrix. Sebuah
matrix dalam MATLAB didefinisikan sebagai suatu array (jajaran) dua
definisi yang terdiri dari bilangan-bilangan real atau kompleks dan disusun
dalam baris dan kolom.
Dalam pembuatan suatu matrix pada MATLAB, setiap isi data harus dimulai
dari kurung siku ’[’ dan diakhiri dengan kurung siku tutup ’]’. Untuk
membuat variabel dengan data yang terdiri beberapa baris, gunakan tandan
titik koma (;) untuk memisahkan tiap barisnya.
Contoh :
>> A = [1 2 3; 4 5 6; 7 8 9]
A=
1 2 3
4 5 6
7 8 9
atau bisa juga kita menulis dengan perintah :
>>A = [1 2 3
4 5 6
7 8 9]
A=
1 2 3
4 5 6
7 8 9
Matlab menyediakan beberapa fungsi yang dapat kita gunakan untuk
menghasilkan bentuk-bentuk matriks yang diinginkan. Fungsi-fungsi tersebut
antara lain:
• zeros : untuk membuat matriks yang semua datanya bernilai 0
• ones : matriks yang semua datanya bernilai 1
• rand : matriks dengan data random dengan menggunakan distribusi uniform
• randn : matris dengan data random dengan menggunakan distribusi normal
• eye : untuk menghasilkan matriks identitas

Contoh :
>>a = zeros(2,3)
a=
0 0 0

14
0 0 0
>>b = ones(3,3)
b=
1 1 1
1 1 1
1 1 1
>>c=rand(2,2)
c=
0.9501 0.6068
0.2311 0.4860
>>d= rand(1,4)
d=
0.8214 0.4447 0.6154 0.7919
>>e = eye(3,3)
e=
1 0 0
0 1 0
0 0 1

Untuk memanggil isi dari suatu data matriks, gunakan tanda kurung ’( )’
dengan indeks dari data yang akan dipanggil.
Contoh :
>>A
A=
1 2 3
4 5 6
7 8 9
>>A(3,3)
ans =
9
7. Operasi Logika dan Relasional
MATLAB menyediakan operasi logika dan relasional, hal ini diperlukan untuk
menjawab pertanyaan benar atau salah dan salah satu manfaat yang penting dari
kemampuan ini adalah untuk mengontrol urutan eksekusi sederetan perintah
MATLAB (biasanya dalam M-File) berdasarkan pada hasil pertanyaan
benar/salah. Sebagai masukan pada semua ekpresi relasi dan logika , MATLAB
menganggap semua angka tidak nol sebagai benar, nol sebagi salah. Hasil dari
semua ekspresi logika relasi dan logika adalah satu untuk benar dan nol untuk
salah dengan tipe array logika yaitu hasilnya memuat bilangan 1 dan 0 yang tidak

15
saja dapat digunakan untuk statemen matematika akan tetapi dapat juga untuk
pengalamatan .
Operator relasi MATLAB terdiri dari semua pembandingan :
Operasi Relasi Deskripsi
< Kurang dari
> Lebih dari
<= Kurang dari atau sama dengan
>= Lebih dari atau sama dengan
= Sama dengan
~= Tidak sama dengan

Operator relasi MATLAB dapat digunakan untuk membandingkan dua array


berukuran sama atau untuk membandingkan array dengan skalar. Operator logika
menyediakan cara untuk menggabung atau menegasikan ekspresi relasi.

Operator Logika dalam MATLAB terdiri dari :


Operasi Logika Deskripsi
& AND
| OR
~ NOT

8. Menyimpan dan Memanggil Data


Untuk Menyimpan dan memenggil data dari file pilih File Save Workspace
As … . Untuk memanggil data digunakan pilihan Load WorkSpace As atau
Open pada menu file. Sedangkan untuk mengimport data , untuk MATLAB
versi 6 keatas pilih file Import Data .. . MATLAB juga menyediakan dua
perintah ---- save dan load ------- yang jauh lebih fleksibel. Perintah save
untuk menyimpan satu atau lebih variabel dalam file format Yang sesuai
dengan pilihan anda.

Contoh :

>>clear all % Kita bersihkan dulu variable yang ada sebelumnya


>>x=1:10;
>>y=10:10:10:10:100; % Membuat array baru
>>save
Saving to : MATLAB.mat

Menyimpan semua variable MATLAB dalam format biner di MATLAB.mat.


Jenis tie save yang ada dalam MATLAB adalah :
save data: menyimpan semua variabel MATLAB dalam format biner di file
data.mat
save data_x x : menyimpan variabel x dalam format biner di file data_x.mat
save data_xy x y / ascii : menyimpan variabel x dan y dalam format biner di
file data_xy dalam format ascii, untuk membuka data digunakan perintah load,
misalnya >>load data_x.mat

16
M-FILE
Di dalam matlab, kita dapat menyimpan semua script yang akan digunakan
dalam file pada matlab dengan ekstensi .M. M-File dapat dipanggil dengan
memilih menu file->new->M-File. Tampilannya seperti gambar berikut !

Gambar 8. Tampilan Editor M-File

Di dalam M-File tersebut kita dapat menyimpan semua perintah dan menjalankan
dengan mengetikkan nama M-File yang kita buat pada command window.
Contoh:
1. Ketik program berikut dan simpan dengan nama Akar.m
%Akar kuadrat
a=1
b=5
c=6
x=-b/(2*a);
y=sqrt(b^2-4*a*c)/(2*a);
s1=x+y
s2=x-y

Kemudian coba run dengan mengetik kata Akar dicommand window.

Selain itu kita juga bisa menginput sendiri nilai yang kita inginkan, yaitu dengan
memanfaatkan disp(’ ’). Coba buat program berikut dan lihat perbedaan dengan
program sebelumnya.

17
2. Ketik Program berikut di M-File, simpan dengan nama Akar_Kuadrat.m
%rqroot : Mancari akar persamaan kuadrat
%format compact;

a=input('Masukkan a : ');
b=input('Masukkan b : ');
c=input('Masukkan c : ');
disp('')

%mencari nilai x dan y


x=-b/(2*a);
y=sqrt(b^2-4*a*c)/(2*a);
%hitung dan tampilkan akar
s1=x+y;
disp('Nilai dari akar kuadrat pertama adalah : '),disp(s1);
s2=x-y;
disp('Nilai dari akar kuadrat kuadrat adalah : '),disp(s2);

Kemudian coba anda run atau jalankan program tersebut dengan mengetik nama
Akar_Kuadrat di command window, maka akan muncul tampilan yang meminta
anda untuk menginput data yang ingin cari akarnya. Misal kita mau memasukkan
nilai yang sama dengan program diatas.

>> Akar_Kuadrat
Masukkan a : 1
Masukkan b : 5
Masukkan c : 6
Nilai dari akar kuadrat pertama adalah :
-2
Nilai dari akar kuadrat kuadrat adalah :
-3
Hasil yang kita dapatkan akan sama dengan hasil program diatas. Perbedaan
antara program pertama dengan program kedua adalah program pertama nilainya
sudah ditetapkan waktu program dibuat, sedangkan program kedua nilainya kita
yang input kan ketika program dijalankan.

18
3. Ketik Program berikut di M-File, simpan dengan nama lembah.m
z=peaks;
zplot=z;
%Buat Puncak

clf
subplot(221)
ind=find(z<0);
zplot(ind)=zeros(size(ind));

mesh(zplot)
axis tight
%Buat Lembah
subplot(222)
ind=find(z>0);
zplot=z;
zplot(ind)=zeros(size(ind));
mesh(zplot)
axis tight

Kemudian coba run program tersebut dengan mengetik lembah di command


window, maka akan muncul gambar seperti berikut :

19
0

-5
0
40 40
40 40
20 20 20 20

Selain itu di dalam M-File kita dapat menuliskan fungsi-fungsi yang berisikan
berbagai operasi sehingga menghasilkan data yang diinginkan.
Bentuk penulisannya adalah :
Function [Nilai keluaran ] = namaFungsi (nilai masukan)
% operasi dari fungsi
%…
%

contoh :
4. Ketik Program berikut di M-File, simpan dengan nama testFungsiJumlah
%fungsi yang akan dibuat bernama ’testFungsiJumlah’
%memiliki tiga nilai masukan ’c’,’d’,’e’
% dan dua nilai keluaran 'a,b'

function [a,b] = testFungsiJumlah(c,d,e)


%operasi yang dijalankan
a = c + d +e;
b = c * d *e;

20
Selanjutnya Fungsi tersebut akan dijalankan melalui command window dengan
nilai masukan ’10,2,4’. Perhatikan penulisan kurung siku ‘[ ]’ pada nilai keluaran dan
kurung biasa ‘( )’ pada nilai masukan berikut.

>> [a,b] = testFungsiJumlah(10,2,3)


a=
15
b=
60

Control Flow
Matlab bisa berlaku seperti bahasa pemrograman C ataupun pascal yang
mempunyai struktur kontrol program, biasanya pemrograman dengan matlab
memerlukan lebih dari satu baris dan memungkinkan untuk didokumentasikan dalam
m-file, kontrol program ini digunakan untuk memperbaiki tampilan atau membuat
tampilan sesuai yang kita inginkan. Dalam bagian dibahas sebagian kontrol program
yang diperlukan dalam pemrograman menggunakan matlab :

1. If, Else, Elseif


Bentuk dasar penggunaan statement jenis ini adalah sebagai berikut:
if ekspresi1
statements1;

elseif ekspresi2
statements2;

else
statements3;
end

21
Ekspresi akan bernilai 1 jika benar dan bernilai 0 jika salah.
contoh :
Ketik program berikut di M-File dan simpan dengan nama testFungsiIf.m
function testFungsiIf(A,B)
if A > B
disp('A lebih besar dari B')
elseif A == B
disp('A sama dengan B')
else
disp('A lebih kecil dari B')
end
Kemudian dijalankan melalui command window seperti berikut :
>>testFungsiIf(1,2)
A lebih kecil dari B
>> testFungsiIf(2,2)
A sama dengan B
>> testFungsiIf(3,2)
A lebih besar dari B

Selain di M-File, program diatas juga bisa dibuat langsung di command window,
seperti berikut :
>> A=10;
>> B=100;
>> if A > B
disp('A lebih besar dari B')
elseif A == B
disp('A sama dengan B')
else
disp('A lebih kecil dari B')
end

A lebih kecil dari B

2. Switch

22
Bentuk dasar penggunaan statement switch

switch switch_ekspresi
case case_ekspresi1
statement1
case case_ekspresi2
statement2
...
...
otherwise
statementN
end

Contoh :
Ketik program berikut di M-File dan simpan dengan nama testFungsiSwtich.m
function testFungsiSwitch(x)
switch x
case 1
disp('Angka x yang anda masukkan adalah 1')
case 2
disp('Angka x yang anda masukkan adalah 2')
case 3
disp('Angka x yang anda masukkan adalah 3 ')
case 4
disp('Angka x yang anda masukkan adalah 4')
otherwise
disp('Angka x yang anda masukkan adalah bukan 1,2,3, atau 4 Ini
cuma 1 sampai 4 aja, mohon check ulang')
end

23
3. while
Statement while digunakan untuk aliran data yang bersifat perulangan. Bentuk
dasar penggunaan while :
while ekspresi
statements
...
end
Contoh :
Ketik program berikut dan simpan dengan nama testFungsiWhile.m
function testFungsiWhile(x)
%selama nilai x kurang dari 10
while x < 10
disp('nilai saat ini : ');
%tampilkan nilai x
x
%increment nilai x
x = x+1;
end
Kemudian jalankan dicommand window dengan perintah :
>> testFungsi(6)
nilai saat ini :
x=
6
nilai saat ini :
x=
7
nilai saat ini :
x=
8
nilai saat ini :
x=
9

4. For
Bentuk dasar for adalah
for index = start:increment:stop
statement
...
...
statement

24
end
Contoh :
Ketik program berikut di M-Files dan simpan dengan nama testFungsiFor.m

function a = testFungsiFor
for y = 1:10
a(y) = y^2;
end
Kemudia bila dijalankan akan keluat outputnya :
>> a=testFungsiFor
a=
1 4 9 16 25 36 49 64 81 100

5. loop for
Loop for meungkinkan sekelompok perintah diulang sebanyak suatu jumlah yang
tetap. Bentuk umum dari loop for adalah :

for x= array

statement

end

untuk tiap iterasi, x diisi dengan kolom array berikutnya, yaitu dalam iterasi ke-n
dalam loop, x = array(:,n).

Contoh 1 :

>>for n = 1 : 10
x(n)=sin(n*pi/10);
end
>>x
x=

25
0.3090 0.5878 0.8090 0.9511 1.0000 0.9511
0.8090 0.5878 0.3090 0.0000

Contoh 2:
>>for i=1:10
disp('Saya Sedang Belajar Program Matlab');
% Pernyataan ini diulang sebanyak 10 kali
end
Maka akan keluar :
Saya Sedang Belajar Program Matlab
Saya Sedang Belajar Program Matlab
Saya Sedang Belajar Program Matlab
Saya Sedang Belajar Program Matlab
Saya Sedang Belajar Program Matlab
Saya Sedang Belajar Program Matlab
Saya Sedang Belajar Program Matlab
Saya Sedang Belajar Program Matlab
Saya Sedang Belajar Program Matlab
Saya Sedang Belajar Program Matlab

6. loop while
loop for mengerjakan sekelompok perintah yang diulang sebanyak suatu
sejumlah, tetapi loop while mengerjakan sekelompok perintah yang diulang secara
tidak terbatas Bentuk umum loop while adalah
while ekpresi
statement
end
semua elemen yang dieksekusi diantara while dan end dan harus bernilai benar
contoh :
>> x=0;
>> while x<5
disp('Diulang 5 kali');
x=x+1;
end
Maka akan keluar :

26
Diulang 5 kali
Diulang 5 kali
Diulang 5 kali
Diulang 5 kali
Diulang 5 kali

MATRIKS DAN OPERASI ARRAY

Matriks merupakan array dua dimensi yang mempunyai baris dan kolom yang
mirip dengan array vektor, yaitu ;
 dimulai dengan tanda ”[” dan diakhiri dengan tanda ”]”
 spasi atau koma dipakai untuk memisahkan elemen dalam sebuah baris
 semicolon ”;” atau ”enter” dipakai untuk memisahkan antar baris
contoh :
>>x=[0 10 20 30 40 50]
x=
0 10 20 30 40 50
Elemen dari vektor di dalam matlab dapat dipanggul berdasarkan alamat yang
dimiliki. Misal :
>>x(3)
ans =

27
20
>> x(6)
ans =
50
>> x(7)
??? Index exceeds matrix dimensions.

Untuk memanggil beberapa elemen sekaligus dapat digunakan teknik seperti


(start : increment : end). Start merupakan awal alamat yang dipanggil,
increment merupakan selang yang dipakai sedangkan end merupakan akhir
alamat yang dipanggil.
contoh :
>> x=(2:2:4)
x=
2 4
Perlu diketahui bahwa alamat elemen pada suatu vektor di matlab dimulai
dengan 1(satu). Beberapa perintah sangat berguna untuk berinteraksi dengan atau
menyusun suatu vektor pada matlab adalah seperti pada tabel berikut :

28
Tabel 1. Perintah-perintah untuk berinteraksi dengan atau menyusun vector pada matlab
Berikur operasai matematis pada vektor maupun matriks :

Tabel 2. Perintah matlab untuk array

Beberapa fungsi yang berhubungan dengan matriks dapat dilihat pada tabel
berikut :

29
POLYNOMIAL
Bagaimana menemukan akar suatu polinomial, yaitu suatu nilai yang membuat
polinomial bernilai nol, adalah problem yang muncul dalam berbagai bidang ilmu.
MATLAB menyelesaikan masalah ini dan sekaligus menyediakan sarana untuk
memanipulasi polynomial. Dalam MATLAB, polinomial direpresentasikan sebagai
vektor baris dari koefisien-koefisien polinomial tersebut dalam urutan dari derajat
tertinggi ke derajat terendah
Berikut ini fungís-fungsi yang berkaitan dengan polynomial pada matlab :

Tabel 3. Perintah-perintah matlab untuk operasi polynomial 30


Contoh:
Coba selesaikan soal berikut :
x4-12x3+10x2+25x+116 =0
Berapa akarnya?
Dalam matlab kita cukup menuliskan :
>> p =[1-12 0 25 116];
>> r=roots(p)
r=
2.5360
-1.2680 + 1.5971i
-1.2680 - 1.5971i
Karena baik suatu polinomial maupun akarnya adalah vektor dalam MATLAB,
MATLAB menggunakan konvensi bahwa polinomial haruslah vektor baris
sementara akarnya adalah vektor kolom

Penjumlahan Polynomial
MATLAB tidak menyediakan fungsi langsung untuk menjumlahkan polinomial.
Penjumlahan array biasa dapat digunakan jika kedua vektor polinomial mempunyai
ukuran yang sama.
Misal ada dua polynomial
a(x)=x3+2x2+3x+4
b(x)=x3+4x2+9x+16:
Untuk menjumlah polinomial a(x) dengan b(x) di atas anda tingla mengetik di
command window sebagai berikut :
>>a=[1 2 3 4]; b=[1 4 9 16];
>>c=a+b
c=
2 6 12 20

Perkalian Polynomial

31
Perkalian polinomial dikerjakan dengan fungsi conv (yang melakukan
“convolution” dari dua array). Perhatikan hasil perkalian dua polinomial
a(x)=x3+2x2+3x+4
b(x)=x3+4x2+9x+16:
>>a=[1 2 3 4]; b=[1 4 9 16];
>>d=conv (a,b)
d=
1 6 20 50 75 84 64
Pembagian Polynomial
Dalam beberapa kasus tertentu adalah perlu membagi suatu polinomial dengan
polinomial yang lain. Dalam MATLAB, hal tersebut dapat dilakukan dengan
menggunakan fungsi deconv. Dengan menggunakan polinomial b dan d pada contoh
sebelumnya :
>> [q,r] = deconv (d,b)
q=
1 2 3 4
r=
0 0 0 0 0 0 0
Nilai q yang dihasilkan sama dengan nilai a.
Turunan Suatu Polynomial
Turunan suatu polynomial dalam matlab mudah dilakukan, matlab menyediakan
fungsi khusus untuk turunan dalam polynomial, yaitu ”polyder(a)”
Contoh :
>>g=[1 6 20 48 69 72 44]
>>h=polyder (g)
h=
6 30 80 144 138 72

32
PLOTTIN Dalam MATLAB
Plotting merupakan sala satu keunggulan yang ditawarkan matlab. Dengan
proses ini kita bisa menvisualisasikan data ke dalam bentuk grafis yang komunitatif
dan menarik. Beberapa perintah plotting yang disediakan oleh matlab dapat dilihat
dalam tabel berikut :

33
Contoh 1:
>>x=linspace(-5,5,100);
% membentuk vektor antara -5 s/d 5 sebanyak 100 elemen
>>C=[1 3 3 1]; %membentuk Koefisien untuk polinomial Y(x)=x3+3x2+3x+1
>>Y=polyval(C,x);
>>plot(x,Y)
>>xlabel('x')
>>ylabel('Y(x)')

Maka akan muncul hasilnya sebagai berikut:

250

200

150

100
Y(x)

50

-50

-100
-5 -4 -3 -2 -1 0 1 2 3 4 5
x

Contoh 2 :
Ketik program berikut di command window, dan setiap kali anda menekan tombol
enter di keyboard, perhatikan apa yang berubah pada hasil program anda.

34
>> x = linspace (0, 10, 100); % membuat polinomial:
>> y = 2*x.^2 + 7*x + 9;
>> figure (1); % plotting polinomial:
>> subplot (2,2,1), plot (x,y);
>> title ('Polinomial, skala linier/linier');
>> ylabel ('y'), grid;
>> subplot (2,2,2), semilogx (x,y);
>> title ('Polinomial, skala log/linier');
>> ylabel ('y'), grid;
>> subplot (2,2,3), semilogy (x,y);
>> title ('Polinomial, skala linier/log ');
>> xlabel('x'), ylabel ('y'), grid;
>> subplot (2,2,4), loglog (x,y);
>> title ('Polinomial, skala log/log ');
>> xlabel('x'), ylabel ('y'), grid;

Hasil akhirnya seperti berikut :

Polinomial, skala linier/linier Polinomial, skala log/linier


300 300

200 200
y

100 100

0 0
0 5 10 -1 0 1
10 10 10

3
Polinomial, skala linier/log 3
Polinomial, skala log/log
10 10

2 2
10 10
y

1 1
10 10

0 0
10 10
0 5 10 -1 0 1
10 10 10
x x

Beberapa perintah lain yang diberikan oleh matlab dalam masalah plotting yang
penting adalah :

Tabel 5. Perintah matlab untuk axis (sumbu) grafik 35


Tabel 6. Perintah Matlab untuk legenda pada grafik

Tabel 7 Simbol warna untuk plotting Tabel 8. Simbol marker untuk plotting

Tabel 9. Simbol garis untuk plotting

3D Graphics
Contoh1:
Coba ketik program berikut :
>> [X,Y]=meshgrid(-8:.5:8);
>> R=sqrt(X.^2+Y.^2)+eps;
>> Z=sin(R)./R;

36
>> mesh(X,Y,Z)
Outputnya :

0.5

-0.5
10
5 10
0 5
0
-5 -5
-10 -10

Contoh2:
>> for i=1:20,
for j=1:20,
Z(i,j) = sin((i+j)/20);
end
end
>> mesh(Z)
>> surf(Z)
>>surfl(Z)

0.8

0.6

0.4

0.2

0
20
15 20
10 15
10
5 5
0 0

Grafik Batangan

37
Contoh1:
Ketik program berikut dan perhatikan outputnya :
>> Y=[5 2 1
873
986
555
4 3 2];
>> bar(Y)
>> bar3(Y)
>> bar3(Y,'group')

contoh2:
A = randn(10000,3);
>> hist(A)

Grafik Lingkaran
contoh :
>> X = [19.3 22.1 51.6;
34.2 70.3 82.4;
61.4 82.9 90.8;
50.5 54.9 59.1;
29.4 36.3 47.0];
>> X=sum(X);
>> exlpode=zeros(size(X));
>> [c,offset] = max(X);
>> explode(offset) = 1;
>> h = pie(X,explode); colormap summer
Output :

25%

42%
38
Fungsi Input Output
Fungsi-fungsi yang berkaitan dengan proses input dan output dalam MATLAB
antara lain:
- disp(NamaVariabel): dipergunakan untuk menampilkan string atau
numerik yang dikonversi ke dalam string ke layar.
contoh :

>>a=’nomor urut: ’, b=10


>>disp([a num2str(b)])
nomor urut: 10

- load file : memasukkan data dalam bentuk file teks sebagai array
contoh :
Ketik data berikut di NOTEPAD

Dalam file contoh.txt terdapat data dalam bentuk array. Kita dapat me-load isi
file tersebut ke dalam MATLAB, misal dengan membuat M-file loadteks.m seperti
berikut ini.

39
>>clear all
>>clc
>>load contoh.txt
>>disp(‘isi dari file contoh.txt adalah’)
>>A=contoh

Output seperti dalam command


matlab :

40
41

Anda mungkin juga menyukai