11 Apa Itu MATLAB
11 Apa Itu MATLAB
1
BAB 5 Tutorial Dasar Pemrograman MATLAB
2
BAB 1 Tutorial MATLAB Dasar
1.1 Apa Itu MATLAB?
MATLAB adalah kependekan dari MATrix LABoratory dikarenakan setiap data pada MATLAB
menggunakan dasar matriks. MATLAB adalah bahasa pemrograman tinggi, tertutup, dan case sensitive
dalam lingkungan komputasi numerik yang dikembangkan oleh MathWorks. Salah satu kelebihannya
yang paling populer adalah kemampuan membuat grafik dengan dukungan kustomisasi terbaik.
MATLAB mempunyai banyak tools yang dapat membantu berbagai disiplin ilmu. Ini merupakan salah
satu penyebab industri menggunakan MATLAB. Selain itu MATLAB mempunyai banyak library yang
sangat membantu untuk menyelesaikan permasalahan matematika seperti membuat simulasi fungsi,
pemodelan matematika dan perancangan GUI.
Manfaat MATLAB
MATLAB digunakan oleh kalangan pelajar, teknisi, peneliti di Universitas, Institusi Penelitian maupun
Industri untuk melakukan komputasi matematis dalam berbagai keperluan. MATLAB biasanya
digunakan untuk penelitian, pengembangan sistem dan desain sistem. Berbeda dengan bahasa
pemrograman lainnya, MATLAB merupakan bahasa pemrograman tertutup. Untuk dapat
mengkompilasi anda harus menggunakan software dari MathWorks sendiri. Berikut pengertian
MATLAB dan kegunaannya.
3
Jendela Software MATLAB
1. Matematika
Sebagai ilmu yang dikenal sebagai “The Mother of Science” sudah tentu, MATLAB dapat
membantu memecahkan berbagai permasalahan matematika baik dari perhitungan biasa,
simulasi fungsi maupun pemodelan matematika.
2. Statistika
4
3. Finansial
MATLAB dapat membantu dalam perancangan desain suatu sistem dan analisis suatu
algoritma. Tersedia beragam tool seperti fuzzy logic designer, control system tuner,control
system designer, linier system analyzer, neuro fuzzy designer, dan system identification.
5. Biologi
Perkembangan dunia semakin maju, dua ilmu dengan basis yang berbeda antara biologi dan
teknologi sekarang bisa disatukan. MATLAB memungkinkan untuk melakukan analisis sistem
organ, jaringan, bahkan DNA manusia, dan perancangan organ buatan. Banyak tool yang dapat
digunakan seperti molecul viewer, Symbiology
Industri besar dunia menggunakan MATLAB dalam analisis pengembangan sistem komunikasi
dan jaringan. Banyak tools MATLAB untuk disiplin ilmu ini seperti Bit Error Rate Analysis,
signal analysis dan lain-lain.
Sebelum anda melakukan installasi adapun spesifikasi minimum komputer untuk menjalankan
MATLAB 2015
Windows XP Service Pack 3 (x86) atau Windows XP x64 Edition Service Pack 2
Semua Prosesor Intel dan AMD dengan dukungan teknologi SSE2
Media Penyimpanan HDD 12 GB
RAM 2GB
VGA dengan dukungan teknologi Open GL 3.3
5
Sebelum melakukan installasi pastikan anda mempunyai DVD MATLAB/Data Software yang
berfungsi dengan baik
6
Pilih “Yes” lalu klik “Next”
7
4. Pilih Lokasi Install MATLAB
Centang software yang ingin anda install, disarankan untuk memilih semuanya. Setelah itu
klik “Next”
8
6. Melakukan Konfirmasi untuk memastikan
9
7. Notifikasi Konfigurasi SIMULINK
10
Cek apakah shortcut MATLAB sudah ada di All Programs Windows anda. Jika Belum anda perlu
membuat shortcut secara manual (C:\Program Files\MATLAB\MATLAB Production
Server\R2015a\bin\matlab.exe) ke desktop.
9. Aktivasi MATLAB
11
Replace terlebih dahulu file libmwservices.dll (di sediakan oleh tempat anda mendapat file
instalasi MATLAB) pada direktori (misalnya 2015a).
Sebelum replace tutup dulu program MATLAB nya apabila sudah terbuka.
Kemudian aktivasi menggunakan file lisensi dengan ekstensi .dat biasanya bernama
lic_standalone.dat atau license.dat (sesuai di mana memperoleh filenya).
12
Pindahkan file lisensi dengan ekstensi .dat misalnya lic_standalone.dat (nama bisa berbeda,
sesuai penyedia file) yang disediakan oleh tempat anda mendapatkan file installasi MATLAB,
pada direktori C:\Program Files\MATLAB\MATLAB Production Server\R2015a.
10. Lalu masukkan License File dengan memilih file lic_standalone.dat pada direktori C:\Program
Files\MATLAB\MATLAB Production Server\R2015a dengan klik tombol Browse… (Warna merah pada
gambar di atas, disesuaikan dengan nama lisensi .dat yang anda peroleh).
13
Klik “Finish”
14
CATATAN MATLAB 2015a KE ATAS (26 Februari 2019)
Sebelum replace tutup dulu program MATLAB nya apabila sudah terbuka.
Kemudian aktivasi menggunakan file lisensi dengan ekstensi .dat biasanya bernama lic_standalone.dat
atau license.dat (sesuai di mana memperoleh filenya).
ULANGI LANGKAH 9
Semoga Berhasil 🙂
15
1.3 Antarmuka Pengguna atau User Interface MATLAB
User interface MATLAB termasuk familiar dengan pengguna. Berikut User Interface dari MATLAB.
Secara umum MATLAB mempunyai user interface seperti gambar berikut.
1. Menu Bar
o Home
Home Bar berisi sebmenu yang berisi tool-tool dasar untuk menggunakan MATLAB.
Menu File berisi tool-tool untuk pengorganisasian file-file MATLAB seperti membuka
dan membuat baru. Menu Variable berisi tool-tool untuk mengorganisasi variable
matrik, menu ini terintegrasi langsung dengan workspace. Menu Code digunakan untuk
16
melakukan debugging code serta analisis waktu saat kode
dieksekusi. Menu Simulink digunakan untuk mengorganisasi Simulink Library dalam
berbagai kepentingan disiplin ilmu. Menu Preferences digunakan untuk melakukan
pengaturan software MATLAB dan Menu Resource digunakan untuk memanagemen
apps, seperti menambah dan menghapus apps/tool box.
Ketika anda membuat script dengan klik “New Script” Maka anda akan membuka Editor
Window.
o Plots
Plots Bar berisi tool-tool untuk membuat plot dari variable-variable di workspace.
o Apps
17
Apps Bar berisi apps yang terinstal pada MATLAB termasuk menambah dan
menghapus Apps.
Quick Acces Toolbar berisi perintah-perintah yang sering digunakan pada MATLAB. Anda
juga dapat menambah atau mengurangi perintah yang ditampilkan quick acces toolbar. Adapun
perintah default berupa add new, save, cut, copy, paste, redo, undo, switch window dan help
3. Current Folder
Current Folder berfungsi sebagai file manager untuk menampilkan file-file MATLAB yang
anda buat. Anda dapat mengakses file dengan mudah melalui current folder. Anda dapat
memilih current folder dengan cepat pada search bar di bawah menu bar. File MATLAB
menggunakan extension .m
18
4. Command Window
Command Window adalah jendela utama untuk melakukan eksekusi perintah, membuka
perintah, membuka jendela lain, menjalankan program yang ditulis pengguna serta
memanagemen apps.
5. Workspace
6. Status Bar
Status bar menyediakan informasi apa yang dilakukan MATLAB terhadap eksekusi yang
dilakukan.
19
1.4 Cara Menggunakan Command Window MATLAB
Pengertian command window adalah jendela utama untuk melakukan eksekusi perintah, membuka
jendela baru, menjalankan Toolbox dan memanagemen software pada MATLAB. Pada Tutorial ini
dijelaskan cara menggunakan command window pada MATLAB.
Untuk menulis kode MATLAB dimulai dengan klik pada perunjuk command promt (>>)
Setelah selesai menulis kode tekan Enter untuk melakukan eksekusi
20
Beberapa kode perintah dapat ditulis dalam satu baris kode dan dipisahkan dengan tanda koma (,)
MATLAB dapat melakukan koreksi kode saat terjadi kesalahan ketik dan anda dapat mengulang
eksekusi perintah yang sudah dikoreksi.
21
Anda dapat mengambil ulang kode yang telah anda eksekusi sebelumnya dengan menggunakan
tombol arah ke atas (↑) atau ke bawah (↓)
Jika kode perintah terlalu panjang anda dapat menulisnya di baris setelahnya. Anda dapat
melakukan dengan menulis 3 titik (…) pada baris sebelumnya
Semicolon (;)
22
Persen (%)
Persen digunakan untuk membuat komentar pada kode yang anda tulis. Persen ditulis sebelum
kode, ketika anda menekan Enter, kode tidak akan dieksekusi
clc
Perintah ini digunakan untuk membersihkan layar command window. Perintah ini tidak
berpengaruh terhadap variabel-varibel yang anda eksekusi sebelumnya.
clear
ans
ans adalah kependekan dari answer, kata ini akan muncul ketika mengeksekusi perintah dengan
operasi tertentu.
help
Perintah help berfungsi memberikan bantuan mengenai syntax-syntax pada MATLAB dan
Simulink.
Command History
23
Command history berfungsi untuk memperlihatkan riwayat eksekusi perintah yang anda
lakukan walaupun anda telah melakukan perintah “clc”. Apabila anda tidak melihat Command
History anda dapat menampilkannya dengan klik pada “Environment” -> “Command
History” -> “Docked” seperti gambar berikut
exit
24
1.5 Menggunakan Operasi Aritmatika pada MATLAB
Tutorial berikut mengenai cara menggunakan operasi aritmatika pada MATLAB dengan skalar sebagai
besarannnya. Operasi aritmatika atau operasi matematika pada MATLAB selalu digunakan dalam
membuat program. Berikut simbol dasar yang digunakan untuk melakukan operasi aritmatika dengan
MATLAB.
Penjumlahan + 5+3
Pengurangan – 8-8
Perkalian * 7*3
Perpangkatan ^ 9^2
Untuk menggunakan MATLAB sebagai kalkulator anda tidak perlu menulis tanda sama dengan di
akhir kode, langsung tekan ENTER untuk memunculkan jawabannya.
25
Operasi Aritmatika dengan MATLAB
Ketika anda menekan ENTER maka akan muncul ans = yang merupakan kependekan dari answer.
MATLAB menggunakan urutan operasi Aritmatika sama halnya dengan ilmu matematika.
Berikut urutan operasi aritmatika MATLAB,
1. Tanda Kurung
2. Perpangkatan
3. Perkalian dan Pembagian
4. Penambahan dan Pengurangan
Anda dapat mengubah format skalar sehinggan tampilan yang ditampilkan sesuai dengan
keperluan perhitungan anda. Anda dapat mengubahnya dengan menggunakan
perintah format. Berikut beberapa perintah-perintah format dalam MATLAB.
26
format short Menampilkan format skalar dengan 4 digit desimal 12.1200
Elementary Math Functions merupakan fungsi yang sering digunakan dalam perhitungan
matematika, berikut fungsi dalam MATLAB.
>> sqrt(16)
4
>> nthroot(80,5)
2.4022
exp(x) Exponensial Euler (e^x) >> exp(1)
27
ans =
2.7183
>> abs(-9)
9
>> log(1)
0
>> log10(100)
2
>> factorial(3)
factorial(x) Faktorial x!
ans =
>> sin(pi/2)
1
>> sind(90)
1
>> cos(pi)
-1
28
>> cosd(180)
-1
>> tan(pi/4)
1.0000
>> tand(45)
1
>> cot(pi/6)
1.7321
>> cotd(30)
1.7321
3. Selain itu anda juga dapat mencari invers trigonometri dengan menggunakan fungsi asin(x),
acos(x), atan(x) dan acot(x) untuk invers trigonometri x dalam π. Anda juga dapat
menggunakan asind(x), acosd(x), atand(x) dan acotd(x) untuk invers trigonometri x dalam
derajat.
4. Untuk menghitung fungsi trigonometri hiperbolik gunakan sinh(x), cosh(x), tanh(x) dan
coth(x) untuk trigonometri hiperbolik x dalam π.
5. Rounding Functions (Fungsi Pembulatan)
Rounding Functions berfungsi untuk membulatkan suatu nilai, pada tabel berikut x dapat
berupa angka maupun operasi aritmatika .
>>
Pembulatan round(2.123+4.5*7)
round(x) ke bilangan
bulat terdekat ans =
34
29
>> fix(13/5)
Pembulatan
fix(x)
ke bawah ans =
2
>> ceil(2.1)
Pembulatan
ceil(x)
ke atas ans =
3
>> floor(-3.1)
Ke minus
floor(x)
takhingga ans =
-4
Menampilkan >> rem(13,5)
sisa
rem(x,y)
pembagian x ans =
bagi y
3
Signum
Function, nilai >> sign(0)
1 untuk x>0,
sign(x)
nilai -1 untuk ans =
x<0 dan 0
untuk x=0 0
30
Anda juga dapat menampilkan bantuan di command window MATLAB dengan menggunakan
perintah help format
31
1.7 Cara Membuat Variabel Pada MATLAB
Variabel pada MATLAB adalah sebuah huruf atau beberapa huruf yang dapat memuat nilai numerik
atau operasi komputasi. Variabel yang sudah memuat nilai numerik dapat digunakan untuk perhitungan
baik operasi aritmatika, fungsi, toolbox maupun syntax perintah MATLAB lainnya. Ketika variabel
didefinisikan, MATLAB menyimpannya pada alokasi memory kosong. MATLAB secara otomatis
melakukan konfigurasi pointer yang efektif dan efesien. Pada tutorial berikut dibahas cara membuat
variabel pada MATLAB
Untuk membuat dan memberikan nilai numerik atau operasi komputasi, anda dapat menggunakan
command window dengan menggunakan assignment operator “=”
1» x = 12
Pada sisi kiri assignment operator merupakan nama variabel dan sisi kanan merupakan nilai numerik
atau operasi komputasi. Untuk melakukan eksekusi definisi variabel tekan ENTER. Sama seperti
bahasa pemrograman lainnya, nilai numerik pada variabel bersifat dinamis
1» x = 12
3x = 12
7x = 19
Anda juga dapat medefinisikan banyak variabel sekaligus dengan 1 perintah eksekusi menggunakan
tanda semicolon (;) tanpa penampilan nilai pada command window dan tanda koma (,) penampilan
nilai pada command window.
1» a = 1, A = 2, aA =3
3a = 1
32
5A = 2
7aA = 3
8
» x = 4; y = 5; %ketika Perintah dieksekusi nilai tidak tampil%
9
Terdapat 20 kata secara fundamental tidak bisa digunakan untuk membuat nama variabel
break case catch classdef continue else elseif end for function global if otherwise parfor p
ersistent return spmd switch try while
Jika saat anda melakukan eksekusi definisi variabel muncul kata berwarna biru, maka dapat diartikan,
arti dari kata itu sebagai berikut
Syntax Deskripsi
eps Nilai terkecil antara 2 angka dengan aproksimasi 2^(-52) atau 2.2204e–016
j Sama dengan i
33
C. Memanagemen Variabel MATLAB
Syntax Deskripsi
Script file adalah kumpulan perintah MATLAB, script file juga disebut program.
Script file dapat dijalankan (run) melalui command window.
Ketika script file dijalankan, output akan ditampilkan pada command window.
Dengan menggunakan script file, anda lebih mudah memodifikasi syntax serta dapat mengeksekusinya
berkali-kali.
Script file dapat dibuat melalui berbagai text editor misalkan notepad.
Script file disebut M-file karena ektensi file yang digunakan berakhiran dengan dot m (.m).
34
Berikut tutorial script file pada MATLAB
Untuk membuat script file baru, klik New Script pada Home Bar MATLAB atau
tekan CTRL+N pada command window
New Script
Setelah itu script editor window akan tampil. Anda dapat undock script editor window untuk
menampilkan script editor lebih besar. dengan klik (∨) pada pojok kanan script editor dan
klik undock
35
36
2. Mengganti Current Folder (Opsional)
Current Folder adalah folder tempat penyimpanan script file maupun GUI yang terindex untuk
digunakan MATLAB untuk mengeksekusi perintah pada command window. Anda dapat
membuat current folder kustom anda untuk program-program yang anda kelompokkan sesuiai
kebutahan anda. Berikut cara mengganti current folder.
37
o Klik set path pada home bar MATLAB bagian Environment, kemudian klik Add Folder
38
o Klik save lalu close set path window
39
3. Menulis Program Script File
Anda dapat menulis kode program anda di script editor. Fundamental penulisan sama halnya
ketika menulis kode di command window. Seperti penggunaan koma (,) dan semicolon (;)
40
4. Menyimpan Kode Program
Sebelum anda dapat mengeksekusi kode program, anda perlu menyimpan script file terlebih
dahulu. Klik CTRL+S pada editor window sehingga muncul jendela current folder anda, ubah
nama program anda tanpa spasi
41
5. Eksekusi atau Run Script File
Sekarang anda dapat menjalankan Script File dengan klik Run pada Editor Bar
Sehingga output ditampilkan melalui command window. Anda dapat melakukan debugging
serta menjalankan ulang script file yang anda buat.
6. Selamat Mencoba
Cara menampilkan rumus matematika di MATLAB adalah dengan menggunakan perintah “pretty”.
Sebelum anda menggunakan perintah “pretty” anda perlu mendefinisikan variabel terlebih dahulu.
Sedangkan untuk menyelesaikan persamaan matematika anda dapat menggunakan perintah “solve”
42
Misalkan anda ingin menampilkan equation berikut
Anda perlu mendefinisikan variabel x y sebagai symbolic variabel. Variabel jenis ini bersifat sebagai
variabel berukuran 1×1 tanpa nilai numerik yang terdefinisi. Sehingga kode MATLAB yang diperlukan
adalah
1» syms x y
2» A = sqrt(x^2+1/y)
4A =
6(x^2 + 1/y)^(1/2)
8» pretty(A)
%rumus matematika ditampilkan di sini
9
43
Untuk menyederhanakan persamaan matematika, sebelum anda mendefinisikan persamaan matematika
anda juga perlu mendefinisikan variable dalam persamaan yang anda buat nanti
menggunakan symbolic variabel. Perintah solve akan mendefinisikan persamaan matematika yang
anda buat f(x)=0.
Sehingga kode MATLAB yang diperlukan untuk menyelesaikan persamaan di atas adalah
44
1
»syms x
2 »y = 2*x^2+7*x-8
4 y =
6 2*x^2 + 7*x - 8
8 »solve (y)
10ans =
11
113^(1/2)/4 - 7/4
12
- 113^(1/2)/4 - 7/4
13
Anda dapat menampillkan solusi persamaan matematika diatas dalam format matematika atau
equation dengan cara berikut
1»syms x;
2»y = 2*x^2+7*x-8;
3»pretty (y),pretty(solve(y))
45
2. Menyelesaikan Persamaan Matematika dengan solve(‘f(x)’)
Anda dapat menyelesaikan persamaan matematika dengan lebih mudah tanpa harus
mendefinisikan variabel penyusun terlebih dahulu. Anda hanya perlu menulis kode persamaan
dalam tanda petik. Untuk permasalahan persamaan kuadrat di atas, kode yang digunakan
adalah:
1»solve('2*x^2+7*x-8')
3ans =
5 113^(1/2)/4 - 7/4
6 - 113^(1/2)/4 - 7/4
1»pretty(solve('2*x^2+7*x-8'))
46
3. Menyelesaikan Parameter Persamaan Matematika Multi Variabel
1» syms a b
2» F = 2*a+3*b;
3» solve(F,b)
5ans =
6
-(2*a)/3
7
47
8
9» pretty(solve(F,b))
48
BAB 2 Tutorial Array dan Matriks MATLAB
Array yang paling sederhana pada MATLAB merupakan Array yang hanya terdiri dari satu baris dan
satu kolom. Array jenis ini dapat membentuk vektor yaitu Array yang hanya terdiri dari satu baris
namun terdiri lebih dari satu kolom atau sebaliknya. Array yang lebih komplek secara konsep sama
dengan matriks di dalam ilmu matematika.
Berbeda dengan bahasa pemrograman lainnya anda tidak perlu mendefinisikan tipe data dari array yang
akan anda buat. Cukup mendefinisikan Array dengan tanda kurung siku (square bracket) menggunakan
MATLAB
Array berdimensi satu adalah Array yang terdiri dari satu kolom dengan beberapa baris atau
terdiri dari satu baris dengan beberapa kolom. Contoh Array berdimensi satu adalah vektor pada
sumbu kartesius 3 dimensi. Misalkan anda akan membuat array vektor
rA = 3i+7j+2k
Anda dapat membuat Array ini menggunakan 2 cara dari definisi vektor diatas.
3A =
53 7 2
49
Array dengan 1 kolom dan beberapa baris
1» A = [3; 7; 2;]
3A =
53
67
2
7
Anda juga dapat membuat Array terurut dengan interval tertentu. Misalkan anda ingin membuat
himpunan bilangan ganjil x ≤ 10 di mana x ∈ bilangan genap positif. Dari soal dapat kita lihat
beda bilangan genap adalah 2 sehingga kode yang anda butuhkan adalah sebagai berikut
1» x= [2 : 2 : 10]
3x =
52 4 6 8 10
Anda dapat membuat himpunan bilangan dengan interval diskret dengan mudah menggunakan
MATLAB. Misalkan y memenuhi -3 ≤ y ≤ 3. Sehingga kode yang anda butuhkan
1» y = [-3:3]
3y =
5-3 -2 -1 0 1 2 3
50
Anda juga dapat membuat Array yang terurut dari besar ke kecil. misalkan z merupakan
bilangan bulat 1 sampai dengan 10 yang diurutkan dari besar ke kecil. Sehingga kode yang anda
butuhkan adalah
1» z= [10:-1:1]
3z =
510 9 8 7 6 5 4 3 2 1
Membuat himpunan bulat dengan interval yang dapat membagi secara rata banyaknya bilangan
dari nilai minimum ke nilai maksimum. Anda dapat membuatnya dengan
perintah “linspace” secara fundamental dapat dirumuskan sebagai berikut
a = nama variabel, a1 = nilai angka sisi kiri, a2 = nilai angka sisi kanan dan a3 = jumlah angka
yang dihasilkan. Misangka darilkan anda ingin membagi dari 3 sampai 1 menjadi 4 bilangan
maka kode yang anda perlukan adalah sebagai berikut
1» a = linspace(3,1,4)
3a =
Array Berdimensi Dua disebut dengan dengan matriks karena Array berdimensi dua
mempunyai ukuran yang dapat dipresentasikan dengan panjang dan lebar. Secara fundamental
untuk membuat matriks dengan menggunakan MATLAB anda dapat menggunakan syntax
sebagai berikut
51
nama_variabel = [a11 a12 a13; a21 a22 a23; a31 a32 a33]
Pada a11 a12 a13 merupakan baris 1 matriks dan a11 a21 a31 merupakan kolom 1 dari matriks.
Banyaknya baris dan kolom disebut ukuran matriks yang dapat didefinisikan dengan mxn
dimana m banyaknya baris dan n banyak kolom.
1A = [1 2 3; 4 5 6; 7 8 9]
3A =
51 2 3
64 5 6
7 8 9
7
Sebelumnya Baca Juga: Pengertian Array di MATLAB dan Cara Membuat Array
Matriks juga disebut dengan array berdimensi dua dalam MATLAB. Secara fundamental untuk
membuat matriks dengan MATLAB anda dapat menggunakan sistematika berikut
52
Diapit oleh tanda kurung siku []
Pembatas kolom masing-masing entri adalah spasi
Pembatas baris masing-masing entri adalah semicolon
1» A =[1 2; 3 4; 5 6]
3A =
51 2
63 4
75 6
Dari syntax diatas dapat dilihat untuk mendefinisikan matriks menggunakan tanda kurung siku (squere
bracket) dan setiap elemen matriks pada kolom dipisahkan dengan spasi antar kolom dan dipisahkan
dengan semicolon (;) antar baris.
Anda dapat menggunakan operasi matematika sebagai anggota elemen matriks yang akan
didefinisikan.
Misalkan diketahui a = 1 , b = 2 , c = 3
Sehingga syntax yang anda perlukan untuk menyelesaikan perhitungan di atas adalah
53
1» a = 1; b = 2; c = 3;
5A =
73 2
83 5
4 6
9
Anda dapat mendefinisikan matriks-matriks dengan nilai khusus menggunakan Syntax berikut
Untuk membuat matriks nol anda dapat menggunakan syntax zeros (m,n). Dengan m
merupakan banyaknya baris dan n merupakan banyaknya kolom. Misalkan anda ingin membuat
matriks nol berukuran 6×4
1 » B = zeros (6,4)
3 B =
5 0 0 0 0
54
6 0 0 0 0
7 0 0 0 0
0 0 0 0
8
0 0 0 0
9
0 0 0 0
10
Untuk membuat matriks satu dengan cepat anda dapat menggunakan syntax ones(m,n). Dengan
m merupakan banyaknya baris dan n merupakan banyaknya kolom. Misalkan anda ingin
membuat matriks satu berukuran 2×3
1» C = ones (2,3)
3C =
51 1 1
61 1 1
Matriks diagonal adalah matriks yang semua elemen diagonal utamanya bernilai satu dan
elemen lainnya adalah nol. Matriks Diagonal merupakan matriks persegi berukuran n. Anda
dapat menggunakan syntax eye(n) untuk membuat matriks diagonal dengan cepat. Misalkan
anda ingin membuat matriks diagonal berukuran 3×3
55
1» D = eye(3)
3D =
51 0 0
60 1 0
0 0 1
7
Anda dapat menentukan transpose suatu matriks yang terdefinisi dengan menggunakan MATLAB.
Misalkan anda ingin menentukan transpose matriks A yang didefinisikan sebagai berikut
» A = [1 2; 3 4; 5 6]
1
2
A =
3
4
1 2
5
3 4
56
6 5 6
8 » A'
9
ans =
10
11
1 3 5
12
2 4 6
13
14
Dari pemaparan diatas anda cukup menambah tanda (‘) pada matriks yang ingin anda tentukan
transposenya.
Array Addressing adalah cara untuk mengidentifikasikan setiap elemen matriks menggunakan
MATLAB. Array Addressing dapat didefinisikan untuk satu elemen maupun untuk beberapa elemen
dalam suatu eksekusi. Array adressing secara manual diperlukan ketika anda akan mendefinisikan nilai
suatu elemen pada matriks yang telah ada dalam memory.
57
Cara melakukan Array Addressing untuk mencari nilai suatu elemen matriks dengan menggunakan
Syntax A(m,n). Misalkan anda akan mencari elemen matriks dengan index a(1,1) dan a(3,2).
1
» A = [1 1 2 3; 2 2 4 8; 3 7 7 8]
2
3
A =
4
5
1 1 2 3
6 2 2 4 8
7 3 7 7 8
9 » A(1,1)
10
11ans =
12
1
13
14
» A(3,2)
15
16
ans =
17
18
7
19
Anda juga dapat mengubah nilai elemen matriks dengan mendefinisikan elemen matriks menggunakan
Array Addressing melalui command window. Misalkan anda akan mengubah nilai elemen matriks
a(1,1) menjadi 8. Sebagai berikut
1>> A(1,1)= 8
3A =
58
4
58 1 2 3
62 2 4 8
3 7 7 8
7
Fundamental menggunakan colon dalam Array Adressing adalah indexing atau memberi index elemen-
elemen pada suatu matriks atau vektor yang ada dalam memory.
Untuk membuat vektor baru dari elemen b(1,2) sampai b(1,5) dapat dilakukan dengan menggunakan
syntax Array Addressing menggunakan colon (:) sebagai berikut.
1 » B = [1 3 8 9 4 3]
3 B =
5 1 3 8 9 4 3
7 » b = B (2:5)
9 b =
10
3 8 9 4
11
Sehingga untuk membuat vektor baru dari vektor B anda dapat menggunakan syntax nama_vektor =
vektor_utama(a:b) dengan a,b merupakan rentang index suatu vektor.
59
Misalkan dari matriks A di bawah anda dapat menggunakan colon (:) untuk membuat matriks atau
vektor baru dengan elemen-elemen dari A.
1 » A
3 A =
5 8 1 2 3
2 2 4 8
6
3 7 7 8
7
8
» A1 = A(:,2)
9
10
A1 =
11
12
1
13
2
147
15
16» A2 = A(3,:)
17
18A2 =
19
60
203 7 7 8
21
Misalkan anda akan membuat suatu vektor A3 dari baris ke-3 matriks A dengan index kolom 2
sampai 4. Serta vektor A4 dari kolom ke-2 matriks A dengan index 2 sampai 3. Berikut Syntax
Array Addressing yang dapat mengeksekusi hal persoalan tersebut.
1
» A
2
3
A =
4
5
8 1 2 3
6 2 2 4 8
7 3 7 7 8
9 » A3 = A(3,2:4)
10
11A3 =
12
137 7 8
14
» A4 = A(2:3,2)
15
16
A4 =
17
18
2
19
7
20
61
Membuat Vektor dengan beberapa elemen telah terdefinisi
Misalkan anda akan membuat vektor baru dengan elemen-elemennya di awali dengan 0 dan
dilanjutkan dengan elemen baris pertama matriks A. Anda dapat menggunakan Syntax berikut
1
» A
2
3 A =
5 8 1 2 3
6 2 2 4 8
7 3 7 7 8
9 » X = [0 A(1,:)]
10
X =
11
12
0 8 1 2 3
13
Misalkan anda akan membuat Matriks B yang elemen-elemennya dari matriks A yaitu dari
a(1,2) sampai dengan a(3,4). Anda dapat menggunakan syntax array addressing berikut,
» A
1
2
A =
3
4
8 1 2 3
5
2 2 4 8
6
3 7 7 8
62
7
8 » B = A(1:3,2:4)
10B =
11
1 2 3
12
2 4 8
13
7 7 8
14
15
Sehingga dapat diketahui untuk membuat suatu vektor atau matriks dari suatu matriks dapat
dilakukan dengan rumusan Syntax
variabel_baru = A (a:b,c:d) dengan a,b rentang minimum dan maksimum baris A dan c,d adalah
rentang minimum dan maksimum kolom A.
Anda dapat menambahkan elemen baru pada matriks baik berupa matriks maupun vektor pada suatu
matriks. Jika elemen yang ditambahkan sudah ada maka elemen tersebut akan digantikan dengan
elemen yang baru. Berikut beberapa cara untuk menambahkan elemen pada matriks.
1 » C = [1:1:6]
3 C =
5 1 2 3 4 5 6
7 » C (7:12)=[6:-1:1]
63
8
9 C =
10
111 2 3 4 5 6 6 5 4 3 2 1
Misalkan anda akan menambah baris ke-4 pada matriks C dengan elemen [0 1 3]. Anda dapat
menggunakan syntax berikut
1 » C = [1 2 3; 4 5 6; 7 8 9]
3 C =
4
1 2 3
5
4 5 6
6
7 8 9
7
8
» C(4,:)= [0 1 3]
9
10
C =
11
12
1 2 3
134 5 6
147 8 9
150 1 3
64
16
Dalam MATLAB anda dapat menambahkan elemen tanpa memperhitungkan kesesuain antar
baris dan kolom matriks yang akan ditambahkan. Ketika ini terjadi elemen-elemen lainnya yang
tidak terdefinisi akan didefiniskan menjadi elemen 0. Misalkan Pada Matriks C dengan ukuran
3 x 3 akan menambahkan elemen matriks dengan index C(4,4).
1
» C = [1 2 3; 4 5 6; 7 8 9]
2
3
C =
4
5
1 2 3
6 4 5 6
7 7 8 9
9 » C(4,4)= 7
10
11C =
12
131 2 3 0
4 5 6 0
14
7 8 9 0
15
0 0 0 7
16
Dalam dimensi satu atau vektor anda dapat menghapus elemen dengan index tertentu maupun
dalam range tertentu. Sedangkan dalam dimensi 2 atau matriks anda dapat menghapus semua
elemen dalam baris atau kolom sehingga ukuran matriks menjadi lebih kecil.Misalkan
didefiniskan suatu vektor
65
Kemudian anda akan menghapus beberapa elemen dari vektor T. Anda dapat menggunakan
syntax berikut
1
» T = [1:1:8]
2
3
T =
4
5 1 2 3 4 5 6 7 8
7 » T(1)=[]
9 T =
10
112 3 4 5 6 7 8
12
13» T(2:3)=[]
14
T =
15
16
2 5 6 7 8
17
Anda akan mengubah ukuran matriks menjadi 2 x 3 dengan menghapus baris ketiga. Anda
dapat menggunakan syntax berikut.
66
1
» A = [1 2 3; 4 5 6; 7 8 9]
2
3
A =
4
5 1 2 3
6 4 5 6
7 7 8 9
9 » A(3,:)=[]
10
A =
11
12
1 2 3
13
4 5 6
14
Terdapat banyak fungsi di MATLAB untuk melakukan eksekusi Array. Berikut fungsi-fungsi yang
sering digunakan dalam komputasi matriks menggunakan MATLAB.
»A
A=
123
length(A) Menampilkan panjang vektor A
» length(A)
ans =
3
size (A) Menampilkan ukuran matriks A » A = [1 2 3; 4 5 6]
67
A=
123
456
» size(A)
ans =
23
» A = [1 2 3; 4 5 6]
A=
123
Membuat matriks baru dengan ukuran m,n dengan syarat jumlah
reshape(A,m,n) 456
elemen yang dihasilkan harus sama
» reshape (A,1,6)
ans =
142536
» A = [1 2 3]
A=
123
diag(vektor) Melakukan transformasi vektor ke matriks diagonal
» diag(A)
ans =
100
020
003
» A = [1 2 3; 4 5 6; 7
8 9]
A=
diag(matriks) Membuat vektor dari elemen diagonal matriks
123
456
789
» diag(A)
68
ans =
1
5
9
String adalah array yang elemen-elemennya berupa karakter yang dapat memuat huruf, angka, simbol
dan spasi. String pada MATLAB dapat didefinisikan diantara tanda petik tunggal (‘). Saat anda
membuat tanda petik tunggal yang pertama warna font berubah menjadi merah marun dan ketika anda
menutup string warna font menjadi ungu. Contoh string adalah ‘a’, ‘ab cd’, ‘3#1*’, ‘{x|x>0}’. String
pada MATLAB biasanya digunakan untuk menampilkan tulisan sehingga output yang ditampikan lebih
mudah untuk dibaca. Untuk melakukan hal ini string digabungkan dengan syntax untuk menampilkan
output hasil eksekusi.
Variabel String adalah variabel matlab yang berupa array dengan elemen matriks berupa string.
Variabel String dapat digunakan untuk melakukan eksekusi yang mendukung eksekusi operasi
matematika maupun menjelaskan output dalam suatu eksekusi baik dalam toolbox, command window
maupun plot.
Untuk membuat variabel string anda menggunakan tanda petik tunggal (‘) baik melalui command
window maupun script file yang anda buat. Misalkan anda akan membuat variabel string A sebagai
berikut
1» A = 'Hello World!'
3A =
5Hello World!
69
Anda dapat membuat Variabel string dalam bentuk matriks. Misalkan anda akan membuat Variabel
string yang berisi nama-nama hari. Untuk melakukan hal ini dapat menggunakan syntax char sebagai
berikut
1
» Hari = char('senin', 'selasa','rabu', 'kamis', 'jumat', 'sabtu', 'minggu')
2
3
Hari =
4
5 senin
6 selasa
7 rabu
8 kamis
9 jumat
sabtu
10
minggu
11
Array Addressing pada Variabel String sedikit berbeda dengan Variabel Numerik. Variabel String
melakukan index per karakter. Namun untuk format Addressing sama dengan format Variabel
Numerik.
Nama_variabel(a:b,c:d)
Misalkan anda akan menampilkan Array Addressing untuk menampilkan hari rabu anda dapat
melakukan address pada baris ketiga dan semua kolom, dapat diilustrasikan sebagai berikut
1» Hari(3,:)
3ans =
5rabu
Misalkan anda ingin menampilkan semua hari dengan alias 3 digits pertama. Anda dapat melakukan
Address di semua baris dan kolom 1 sampai 3, sebagai berikut
70
1
>> Hari(:,1:3)
2
3
ans =
4
5 sen
6 sel
7 rab
8 kam
jum
9
sab
10
min
11
Angka pada variabel MATLAB secara umum bernilai numerik, namun anda dapat mendefinisikan
angka dengan nilai string dengan menggunakan tanda petik. Bedanya anda tidak dapat melakukan
perhitungan operasi matematika dengan Angka String. Angka string mempunyai nilai identitas yang
berbeda dengan angka numerik. Dapat diilustrasikan sebagai berikut
1 » a = '123'
3 a =
5 123
7 » b = 321
9 b =
10
321
11
71
12
13» c=a+b
14
15c =
16
370 371 372
17
Misalkan diketahui matriks A dan B, kemudian anda akan mencari nilai A+B
1» A = [1 2; 3 4]; B = [5 6; 7 8];
2» A+B
4ans =
72
5
66 8
710 12
Misalkan diketahui matriks C dan D, kemudian anda akan mencari nilai C-D
2» C-D
4ans =
61 25
7-11 -8
ukuran matriks yang akan dioperasikan dengan penjumlahan dan pengurangan harus sama.
Matriks dapat dilakukan operasi perkalian baik dengan skalar maupun vektor
73
Misalkan diketahui suatu skalar dan matriks kemudian dihitung kelipatan skalar matriks
tersebut
1» a = 7; B = [3 6; -3 8; 0 9];
2» a*B
4ans =
621 42
7-21 56
0 63
8
74
Anda dapat menggunakan syntax berikut untuk menghitungnya dengan cepat
2» A*B
4ans =
62752 2432
11202 6700
7
Perlu diketahui untuk mengalikan matriks A dengan B, ukuran baris A harus sama dengan
ukuran kolom B.
Pembagian Matriks pada MATLAB menggunakan fundamental dari aljabar linier. Sebelum ke Array
Division perlu diketahui tentang
Matriks Identitas
Matriks identitas adalah matriks persegi yang diagonal utamanya adalah 1 dan elemen lainnya
adalah 0. Untuk membuat matriks diagonal pada MATLAB dapat dilihat pada tuturial Cara
Membuat Matriks dengan Menggunakan MATLAB. Dalam konsep aljabar linier setiap matriks
yang dikalikan matriks identitas hasilnya matriks itu sendiri.
Invers Matriks
75
Anda dapat mencari invers suatu matriks menggunakan syntax inv(variabel) menggunakan
MATLAB. Misalkan anda akan mencari invers matriks A yang didefinisikan sebagai berikut
1
» A=[3 5; 1 2]
2
3 A =
5 3 5
6 1 2
8 » B=inv(A)
10B =
11
2.0000 -5.0000
12
-1.0000 3.0000
13
Determinan Matriks
Determinan matriks adalah fungsi khusus yang mengasosiasikan suatu bilangan real dengan
suatu matriks bujursangkar. Determinan matriks MATLAB menggunakan fundamental aljabar
liner sebagai konsep dasarnya. Untuk menghitung determinan suatu matriks berukuran mxn
anda dapat menggunakan syntax det(variabel). Misalkan anda akan menghitung determinan
matriks E yang berukuran 5 x 5
» E = [1 2 3 4 5; 6 7 8 9 1; 1 2 3 3 4; 1 2 6 7 8; 1 4 7 9 8]
1
2
E =
3
4
1 2 3 4 5
76
5 6 7 8 9 1
6 1 2 3 3 4
1 2 6 7 8
7
1 4 7 9 8
8
9
» det_E = det(E)
10
11
det_E =
12
13
114
14
15
MATLAB mempunyai 2 jenis pembagian yaitu right division (/) dan left devision(\).
Right Division
Misalkan anda mempunyai matriks A dibagi dengan matriks B menghasilkan matriks C dapat
diformulasikan sebagai berikut
Misalkan diketahui
2» A/B
77
4ans =
63.5000 -2.5000
2.5000 -1.5000
7
Left Division
Misalkan anda mempunyai matriks D dibagi dengan matriks E menghasilkan matriks F dapat
diformulasikan sebagai berikut
Misalkan diketahui
2» D\E
4ans =
6-1 -2
75 7
78
aplikasinya sangat mudah untuk diterapkan. Seperti namanya sistem persamaan linier multivariabel
mempunyai lebih dari satu variabel. Sistem Persamaan Linier Dua Variabel (SPLDV) dan Sistem
Persamaan Linier Tiga Variabel merupakan contoh dari sistem persamaan linier multivariabel.
Sebelum anda menyelesaikan persamaan linier dengan MATLAB anda perlu merubah bentuk
persamaan itu dalam bentuk matriks. Ini menggunakan konsep aljabar linier, sebagai berikut
79
Dengan menggunakan konsep array division pada MATLAB diperoleh solusi matriks X dengan entri
x,y,z sebagai berikut
» A = [3 2 1; 2 7 2; 8 2 -7]
1
2
A =
3
4
3 2 1
5
2 7 2
6
8 2 -7
80
7
8 » B = [12; 28; 4]
10B =
11
12
12
28
13
4
14
15
» X=A\B
16
17
X =
18
19
1.3245
203.0993
211.8278
22
23
1 » A = [3 2 8; 2 7 2; 1 2 -7]
3 A =
5 3 2 8
6 2 7 2
7 1 2 -7
81
9 » B = [12 28 4]
10
11B =
12
12 28 4
13
14
» X =B/A
15
16
X =
17
18
1.3245 3.0993 1.8278
19
Anda dapat menyelesaikan soal di atas dengan mudah sama dengan cara sistem persamaan linier tiga
variabel di atas.
82
Syntax yang diperlukan untuk menghitung soal di atas dengan solusi penyelesaian X adalah sebagai
berikut
1 » A = [1 2 3 1; 3 5 7 4; 4 1 1 3; 6 7 5 2]
3 A =
4
1 2 3 1
5
3 5 7 4
6
4 1 1 3
7
6 7 5 2
8
9
» B = [9; 12; 23; 0]
10
11
B =
12
139
1412
1523
83
160
17
18» X = A\B
19
X =
20
21
11.8824
22
-17.5294
23
12.9412
24
-6.6471
25
26
Anda dapat menyelesaikan persamaan linier dengan MATLAB untuk jumlah variabel yang lebih
banyak, dengan membuat bentuk matriks persegi dari sistem persamaan lalu menggunakan Array
Division untuk menghitung solusinya.
Operasi Element-by-Element pada MATLAB dapat digunakan untuk keperluan tertentu seperti
membuat grafik. Terdapa tiga jenis operasi Element-by-Element pada MATLAB sebagai berikut
A. Perkalian Element-by-Element
Operasi Perkalian Element-by-Element disimbolkan dengan tanda dot-star (.*) dan dapat
diformulasikan sebagai berikut
84
B. Perpangkatan Element-by-Element
Perpangkatan Element-by-Element disimbolkan dengan dot-caret (.^) dan operasi ini digunakan untuk
matriks dan skalar. Formulasi syntax dot-caret sebagai berikut
C. Pembagaian Element-by-Element
Terdapat dua jenis Pembagian Element-by-Element yaitu right division dan left difision Element-by-
Element yang konsepnya hampir sama dengan pembagian matriks pada umumnya.
Operasi Left Division Element-by-Element disimbolkan dengan dot-backslash (.\) dan dapat
diformulasikan dengan
Operasi Right Division Element-by-Element disimbolkan dengan dot-slash (./) dan dapat
diformulasikan sebagai berikut
Contoh Soal:
Penyelesaian:
Untuk menyelesaikan soal diatas anda dapat menggunakan syntax Element-by-Element sebagai berikut
85
1
» x = [1:6]
2
3
x =
4
5 1 2 3 4 5 6
7 » f_x = (x.^2+7)./(2*x.^3+3*x+6)
9 f_x =
10
11Columns 1 through 4
12
14
Columns 5 through 6
15
16
0.1181 0.0943
17
86
Berdasarkan definisi suatu data dengan banyak data N dapat diformulasikan
nilai rata-rata data dengan simbol μ .
Misalkan diketahui nilai praktikum Biologi 10 mahasiswa Akbar, Agus, Nary, Wikan, Sani,
Nanda, Rosa, Emerald, Dian dan Hafiz adalah 60, 70, 86, 67, 54, 78, 77, 87, 70, 66. Hitunglah
rataan hitung dari nilai praktikum mahasiswa tersebut?
1 » A = [60 70 86 67 54 78 77 87 70 66]
3 A =
5 60 70 86 67 54 78 77 87 70 66
7 » rataan = mean(A)
9 rataan =
10
71.5000
11
Untuk menghitung nilai maksimum suatu data anda dapat menggunakan syntax max(variabel),
variabel yang anda definisikan dapat berupa matriks ataupun vektor. Misalkan untuk persoalan
diatas dapat kita tentukan nilai maksimumnya menggunakan MATLAB sebagai berikut
» A = [60 70 86 67 54 78 77 87 70 66]
1
87
2 A =
4 60 70 86 67 54 78 77 87 70 66
5
» nilai_tertinggi = max(A)
6
7
nilai_tertinggi =
8
9
87
10
11
Sehingga dapat diketahui nilai tertinggi praktikum biologi adalah 87. Anda juga dapat
mengetahui siapa yang memeroleh nilai tertinggi dengan syarat data merupakan data terurut.
Anda dapat menggunakan syntax terdefinisi [a,b]=max(variabel) dengan a nilai tertinggi dan b
urutan data. Sehingga untuk persoalan diatas diperoleh
2
A =
3
4
60 70 86 67 54 78 77 87 70 66
5
6
>> [nilai,urutan]=max(A)
7
8
nilai =
9
10
87
11
12urutan =
13
88
148
15
Dari perhitungan diperoleh nilai tertinggi berada pada urutan ke-8 yaitu Emerald. Jadi, Nilai
tertinggi praktikum biologi diperoleh oleh Emerald.
Untuk menghitung nilai minimum format syntax yang digunakan sama dengan syntax nilai
maksimum. Syntax untuk mencari nilai minimum pada MATLAB adalah min. Sehingga
diperoleh nilai minimum pada persoalan diatas adalah sebagai berikut
1 » A = [60 70 86 67 54 78 77 87 70 66]
3 A =
4
60 70 86 67 54 78 77 87 70 66
5
6
» nilai_minimum = min(A)
7
8
nilai_minimum =
9
10
54
11
12
» [nilai,urutan]=min(A)
13
14
nilai =
15
1654
17
18urutan =
19
89
205
21
Sehingga diperoleh nilai minimum praktikum biologi adalah 54 yang diperoleh Sani (urutan ke-
5)
1 » A = [60 70 86 67 54 78 77 87 70 66]
3 A =
5 60 70 86 67 54 78 77 87 70 66
7 » jumlah = sum(A)
9 jumlah =
10
715
11
Anda dapat mengurutkan data menggunakan syntax sort(variabel). Untuk data diatas dapat
diurutkan sebagai berikut
1 » A = [60 70 86 67 54 78 77 87 70 66]
3 A =
90
5 60 70 86 67 54 78 77 87 70 66
7 » terurut = sort(A)
8
terurut =
9
10
54 60 66 67 70 70 77 78 86 87
11
Median data didefinisikan sebagai nilai tengah dari data yang telah terurut dari kecil ke besar.
Dapat diformulasikan sebagai berikut
Untuk soal diatas dapat ditentukan nilai tengah data dengan menggunakan
syntax median(variabel) sebagai berikut
1 » A = [60 70 86 67 54 78 77 87 70 66]
3 A =
5 60 70 86 67 54 78 77 87 70 66
7 » nilai_tengah = median(A)
9 nilai_tengah =
10
70
11
91
Jadi, nilai tengah nilai praktikum biologi 10 mahasiswa tersebut adalah 70.
Standar Deviasi atau Sebaran Baku Data adalah ukuran sebaran statistika yang menghitung
bagaimana nilai data tersebar. Pada MATLAB dapat digunakan syntax std(variabel) untuk
menghitung standar deviasi dari entri-entri vektor pada variabel. Pada soal diatas dapat anda
tentukan standar deviasi adalah sebagai berikut
1 » A = [60 70 86 67 54 78 77 87 70 66]
3 A =
5 60 70 86 67 54 78 77 87 70 66
7 » standar_deviasi = std(A)
9 standar_deviasi =
10
10.6275
11
Jadi, standar deviasi nilai praktikum biologi 10 mahasiswa tersebuat adalah 10,6275.
Dot product atau hasil kali titik dari 2 vektor u dan v didefinisikan sebagai
Untuk menghitung dot product dari kedua vektor tersebut anda dapat menggunakan
syntax dot(a,b) sebagai berikut
1 » a = [3 1 1]
92
2
3 a =
5 3 1 1
6
» b = [2 3 1]
7
8
b =
9
10
2 3 1
11
12
» dot_product = dot(a,b)
13
14
dot_product =
15
16
10
17
Berdasarkan definisi cross product atau hasil kali silang hanya berlaku di Ruang Dimensi 3.
Jika u dan v adalah vektor di dimensi 3 dapat diformulasikan untuk cross product u x v adalah
sebagai berikut
Dari vektor u dan v diatas dapat kita tentukan cross product dengan syntax berikut
1 » a = [3 1 1]
3 a =
93
4
5 3 1 1
7 » b = [2 3 1]
8
b =
9
10
2 3 1
11
12
» hasil_kali_silang = cross(a,b)
13
14
hasil_kali_silang =
15
16
-2 -1 7
17
A. rand
Syntax rand digunakan untuk membangkitkan bilangan random yang tersebar secara Uniform dengan
rentang 0 sampai 1. Variabel random dapat berupa vektor maupun matriks.
94
ans =
0.8147
» A = rand (1,3)
Untuk pembangkitan bilangan random sebanyak n dalam rentang 0
rand(1,n) A=
sampai 1
0.9058 0.1270
0.9134
» B = rand (2)
Untuk pembangkitan bilangan random dalam bentuk matriks dengan
rand(n) B=
ukuran nxn
0.6324 0.2785
0.0975 0.5469
» C = rand (2,3)
231
» D = randperm(5,3)
untuk pembangkitan bilangan random dengan entri a sampai b, dengan b
randperm(b,a)
>a D=
345
B. randi
Syntax randi digunakan untuk pembangkitan bilangan random dengan entri-entri bilangan bulat dari 1
sampai n. Berikut cara pembangkitan bilangan random menggunakan syntax randi
95
» randi(6,3)
C. randn
Syntax randn digunakan untuk membangkitkan bilangan acak berdistribusi normal dengan nilai rata-
rata 0 dan standar deviasi 1. Syntax ini diformulasikan dengan randn(m,n) dengan mxn adalah ukuran
matriks yang akan di bangkitkan.
misalkan pembangkitan bilangan acak dalam matriks 4×3 adalah sebagai berikut
1» A = randn(4,3)
3A =
96
Anda dapat menentukan nilai rata-rata dan standar deviasi suatu data dengan melakukan operasi
matematika sebagi contoh akan dibuat 10 bilangan acak dengan nilai rata-rata 78 dan standar deviasi 7
sebagai berikut
1
» A = 6*randn(1,10)+70
2
3
A =
4
5 70.6292 74.3335 85.5129 65.9987 71.1240 69.5050 58.4019 67.3662 59.2319 75.0423
7 » mean(A)
9 ans =
10
1169.7146
12
» std(A)
13
14
ans =
15
16
7.8836
17
97
BAB 3 Tutorial Script Files dan Managemen
Data MATLAB
3.1 Penggunaan dan Fungsi Workspace Pada MATLAB
Workspace pada MATLAB menyimpan seluruh data variabel yang telah terdefinisi dalam memory
komputer. Seperti yang diketahui pada tutorial mendefinisikan variabel, variabel dapat terdefinisi baik
secara langsung maupun hasil dari operasi matematika atau operasi fungsi tertentu. Workspace di
MATLAB akan lebih banyak digunakan ketika menjalanakan script file untuk melakukan komputasi
matematika dan bekerja dengan banyak data.
Workspace berfungsi untuk menyimpan seluruh variabel baik variabel terdefinisi secara langsung
maupun tidak langsung. Secara fundamental workspace mencatat seluruh data variabel MATLAB
dalam setiap segmen memory. Untuk menampilkan variabel yang tersimpan dalam memory anda juga
dapat menggunakan perintah who atau whos melalui command window. Syntax who digunakan untuk
menampilkan nama variabel yang tersimpan dalam memory dan syntax whos digunakan untuk
menampilkan detail variabel yang tersimpan dalam memory. Berikut contoh penggunaan kedua syntax
tersebut
1
» who
2
5 A B C
7 » whos
98
Bagaimana Cara Menampilkan Workspace Pada MATLAB?
Sebelum anda menampilkan variabel menggunakan Workspace pada MATLAB, anda perlu
menampilkan Workspace Window pada Layout MATLAB untuk mempermudah aksesibilitas. Untuk
menampilkan workspace klik Layout pada Home Bar, kemudian centang Workspace dapat
diilustrasikan sebagai berikut
Layout Workspace
99
Ketika variabel terdefinisi dan tersimpan dalam memory secara langsung workspace menampilkan data
dari variabel tersebut, seperti gambar berikut
Seperti pada gambar diatas anda dapat memanagemen data dengan workspace. Workspace pada matlab
hampir sama dengan spreadsheet pada microsoft excel. Berikut beberapa hal yang dapat anda lakukan
terhadap variabel menggunakan workspace MATLAB.
Anda dapat melakukan managemen data dengan klik 2x nama variabel pada workspace atau
klik kanan kemudian pilih Open Selection.
100
Setelah itu akan muncul Variabel Editor seperti gambar berikut
101
Anda dapat melakukan undock Variabel Editor sehingga lebih mudah untuk melakukan managemen
data. Klik Undock seperti gambar diatas. Maka Variabel Editor ditampilkan secara full window
sebagai berikut
102
Melalui Variabel Editor anda dapat menambah data, merubah ukuran data, melakukan
transpose, menghapus data, plot data dengan mudah.
Anda dapat membuat variabel baru menggunakan workspace, klik Panel (∇)
Workspace kemudian pilih New
Setelah itu akan terdefinisi variabel baru unnamed, ubah nama variabel tersebut dengan klik
kanan variabel lalu pilih Rename sebagai berikut
103
Ketik nama variabel baru, misalkan pada gambar di bawah dengan nama B, lalu tekan ENTER
Sehingga anda telah mendefinisikan Variabel baru, terlihat pada gambar di atas entri data
variabel B masih kosong (0). Anda dapat mengisi entri data dengan menggunakan variabel
editor dengan klik 2x variabel baru sebagai berikut
104
Anda dapat melakukan eksekusi variabel melalui command window.
Pada tutorial cara menggunakan command window variabel dapat dihapus menggunakan
syntax clear. Misalkan akan dilakukan eksekusi menghapus variabel A dapat digunakan clear
A melalui command window. Anda juga dapat menghapus variabel dengan menggunakan
workspace, misalkan akan dihapus variabel B, anda dapat klik kanan variabel B pada
workspace lalu klik Delete seperti gambar berikut
105
Kemudian klik OK apabila notifikasi penghapusan muncul. Sampai disini variabel sudah
terhapus. Anda juga dapat menghapus varibel sekaligus dengan tekan ctrl saat akan memilih
variabel mana saja yang akan dihapus.
Anda dapat membuat grafik atau plot dari workspace dengan mudah. Grafik yang digambarkan
akan terbentuk dalam bentuk fungsi matematika. Anda dapat membuatnya dalam 2 dimensi
maupun 3 dimensi dengan mudah. Klik kanan variabel, lalu pilih jenis grafik yang ingin anda
ilustrasikan.
106
Pada contoh berikut akan dilakukan surf pada matriks A yang merupakan matriks 4×3
107
Anda juga dapat memilih plot lain melalui plot catalog, seperti gambar berikut
108
Plot Catalog
Terdapat 3 cara melakukan input variabel pada MATLAB menggunakan Script File. Sebelumnya anda
perlu mengetahui Cara Membuat Script File atau M-File.
109
A. Membuat Variabel Terdefinisi di Script File
Dengan membuat variabel terdefinisi pada script file, anda dapat melakukan eksekusi langsung
menampilkan output final di command window. Namun saat anda ingin menyelasikan permasalahan
yang berbeda dengan program tersebut, anda harus merubah nilai variabel lagi melalui script file editor.
Misalkan anda membuat program yang menghitung nilai faktorial, dengan source code sebagai berikut
3Bilangan = 7;
4Faktorial = factorial(Bilangan)
110
B. Menggunakan Variabel Terdefinisi Melalui Command Window
Anda dapat mendefinisikan variabel melalui command window untuk kemudian digunakan oleh
program script file anda. Anda hanya perlu menyamakan nama variabel yang didefinisikan di command
window dengan nama variabel yang anda operasikan pada script file.
Misalkan anda akan membuat program yang dapat menghitung mean sekelompok data, dimana data
didefinisikan melalui command window. Dengan source code sebagai berikut
4Rataan_Hitung = mean(X)
berikut
111
C. Menggunkan Fungsi Input Pada Script File
Dengan menggunakan fungsi input, anda perlu mendefinisikan varibel dengan nilai sebagai fungsi
input. Sehingga nilai varibel tersebut akan didefinisikan melalui command windows setelah program
script file anda dijalankan.
Misalkan anda membuat program yang dapat menghitung mean data dengan fungsi masukan pada
varibel terdefinisi di script file dengan source code sebagai berikut
4Nilai_tengah = mean(x)
112
Dapat diilustrasikan sebagai
berikut
113
A. Statement disp
Syntax disp adalah syntax sederhana yang digunakan untuk menampilkan string dan output tanpa nama
variabel yang mewakili output yang ditampilkan. Adapun format penulisan syntax disp
Misalkan anda akan menampilkan variabel x dengan syntax disp dengan tambahan kalimat
penjelas, anda dapat menggunakan separator koma (,)
1» x = 7;
3nilai variabel x =
47
Anda dapat membuat output berupa tabel menggunakan syntax disp sehingga data yang
ditampilkan terlihat lebih baik. Misalkan anda akan mengurutkan data penjualan tahunan,
sehingga dibuat program menggunakan script file sebagai berikut
1
%Program Menampilkan Data Dalam TABEL
2
%Variabel tabel merupakan matriks
3
6 tabel(:,1)= tahun';
7 tabel(:,2)= terjual';
Sayangnya anda harus membuat heading/judul laporan dengan menggunakan spasi secara
manual. Ketika program dijalankan (run) dapat diilustrasikan sebagai berikut
114
B. Statement fprintf
Perintah output fprintf dapat digunakan untuk menampilkan output pada command window ataupun
menyimpan output dalam bentuk file. Selain itu format output yang ditampilkan dengan syntax ini
dapat disesuaikan. Berbeda dengan syntax disp yang tidak dapat melakukan formatting output yang
akan ditampilkan. Dengan beragamnya opsi formatting yang disediakan fprintf, syntax ini menjadi
sangat kompleks. Berikut beberapa cara menggunakan syntax fprintf
Untuk menampilkan output pada command window secara umum format yang digunakan
hampir sama dengan syntax disp, namun dengan beberapa tambahan untuk melakukan
formating.
Misalkan akan ditampilkan suatu string melalui command window sebagai berikut
115
1» fprintf('Jika hari ini hujan, maka saya tidak kuliah.')
Terlihat command prompt tidak ditampilkan dalam baris yang baru. Untuk membuat baris baru
anda perlu menggunakan karakter spasi khusus pada syntax fprintf. Berikut karakter khusus
yang dapat anda gunakan pada syntax fprintf
Karakter Fungsi
Contoh:
fprintf(‘……..%g……%g…….%f’,variabel1,variabel2,variabeln)
Berikut contohnya:
3Pada tahun 2017 pengunjung maksimal mencapai 300 perhari dengan rerata
4.300000 menit
116
3.4 Cara Menyimpan Output File MATLAB
Output command window MATLAB dapat disimpan dalam bentuk file dokumen untuk keperluan
arsip. Sebagaimana kita ketahui pada tutorial sebelumnya mengenai input dan output pada MATLAB,
output suatu eksekusi dapat disimpan dengan menggunakan perintah output fprintf dalam bentuk file.
sehingga data dapat dibaca menggunakan aplikasi lain seperti Notepad atau Microsoft Office. Berikut
cara menyimpan file MATLAB
Untuk menulis dan menyimpan file pada MATLAB diperlukan setidaknya tiga langkah yaitu
Langkah Pertama
Sebelum file dapat disimpan oleh MATLAB anda perlu memberikan izin akses MATLAB untuk
menulis file .txt di Current Folder aktif. Anda dapat membaca tutorial terkait Current Folder lebih
lanjut. Untuk menggunakan fopen dapat diformulasikan dengan syntax berikut dalam bentuk variabel.
membuka_file = fopen(‘nama_file’,’permission’)
Adapun beberapa permission code yang dapat anda berikan kepada variabel, sebagai berikut
Permission
Fungsi Permission Code
Code
r Membaca file
w Menulis ulang file, jika file tidak ada maka akan dibuat
Sama dengan code ‘w’ namun dengan prioritas system, jika file sudah ada maka output
a
ditulis diakhir teks yang sudah ada
Untuk menulis secara paksa. Jika file digunakan aplikasi lain maka dihapus dan jika tidak
w+
digunakan maka file dibuat ulang
sama dengan ‘w+’ namun dengan prioritas system yang lebih tinggi dan output ditulis diakhir
a+
teks yang sudah ada.
Jika anda mendefinisikan perintah tanpa permission code, maka secara default menggunakan
permission code ‘r’ hanya membaca file saja.
117
Anda dapat menggunakan perintah fopen tanpa atau dengan membuat buat file .txt pada current folder,
karena jika file tidak ada maka file otomatis dibuat MATLAB. Untuk membuat file .txt dapat
diilustrasikan sebagai berikut. (klik kanan pada direktori current folder pada windows explorer)
Opsional:
118
Wajib:
Untuk membangkitkan dan memberikan izin menulis file anda dapat menggunakan syntax berikut
1»buka = fopen('output_contoh.txt','w');
Langkah Kedua
Setelah anda berhasil memberikan izin akses file txt, anda dapat menulis file dengan perintah fprintf.
Penulisan file atau pembangkitan file menggunakan fprintf dapat diformulasikan dengan format
variabel berikut
fprintf(variabel_fopen,’string…%g…%g…%f’,varibel1,variabel2,variabeln)
misalkan anda akan menulis dan membangkitkan file txt untuk menulis suatu dokumen berikut
119
1» file = fopen('contoh.txt','w');
2» x = 1; y = 2;
Langkah Ketiga
Setelah anda berhasil menulis file anda dapat menutup file untuk mencegah kerusakan kode binary
pada file dan menghemat penggunaan RAM. Untuk menutup file dapat menggunakan
syntax fclose(nama_variabel_file)
1» file = fopen('contoh.txt','w');
2» x = 1; y = 2;
4» fclose(file)
Setelah itu anda dapat membuka file dengan aplikasi lain seperti Notepad atau Microsoft Office.
120
3.5 Save and Load Command | Menyimpan Variabel
Workspace MATLAB
Perintah save dan load / save and load command merupakan syntax yang berfungsi untuk
mempermudah memanagemen data, anda dimungkinkan memanagemen variabel-variabel suatu operasi
matematis pada Workspace untuk menyimpannya dan menggunakan kembali variabel beserta nilainya.
Syntax save digunakan untuk menyimpan variabel pada Workspace dan syntax load digunakan untuk
mengimport variabel yang tersimpan.
Syntax save
Syntax save digunakan untuk menyimpan variabel pada workspace dalam bentuk file. Variabel akan
disimpan dalam bentuk .mat atau mat-file. Mat-File adalah file yang ditulis menggunakan kode binary
sehingga file tidak dapat dibaca oleh aplikasi lain. Anda juga dapat menyimpannya dalam format
penulisan ASCII sehingga file dapat dibuka dengan aplikasi lain. Terdapat 2 cara penulisan syntax save
sebagai berikut.
Contoh :
1» x = 2; y = 3; z = 4;
2» save 'contoh_save'
121
Dapat diilustrasikan sebagai
berikut
Anda dapat menyimpan variabel khusus dengan menggunakan formula syntax berikut
Contoh:
1» x = 2; y = 3; z = 4;
2» save ('simpan_x_y','x','y')
122
Dapat diilutrasikan sebagai
berikut
Untuk menyimpan variabel workspace dengan format ASCII anda dapat menambahkan
parameter -ascii setelah syntax save kemudian dilanjutkan dengan nama file serta variabel
jika perlu. File dengan format ASCII akan dibuat dengan tanpa ektensi file. Anda dapat
langsung mendefinisikan jenis file baik .txt atau .docx
1>> x = 2; y = 3; z = 4;
123
Dapat diilustrasikan sebagai
berikut
Syntax load
Syntax load digunakan untuk memuat kembali variabel yang tersimpan dengan syntax save. Ketika
syntax load dieksekusi, semua varibel dalam file akan diimport ke Workspace MATLAB. Nama
variabel yang sudah ada, nilai entri-entri nya akan diganti.
Contoh:
1» load 'contoh_save'
124
Dapat diilustrasikan sebagai
berikut
Anda dapat mengimport hanya beberapa variabel saja dengan menggunakan formulasi syntax
berikut
Contoh:
1» load ('contoh_save','x','y')
125
Dapat diilustrasikan sebagai
berikut
Formulasi syntax untuk mengimport variabel pada file ASCII, hampir sama dengan mat-file.
Anda cukup menambahkan ekstensi file ASCII, contoh:
1» load ('simpan_ascii.txt')
126
Dapat diilustrasikan sebagai
berikut
Untuk mengimport sekaligus menampilkan data pada command window anda cukup
mendefinisikan fungsi load dalam bentuk variabel, contoh:
3tampil =
5x: 2
6y: 3
z: 4
7
127
Dapat diilustrasikan sebagai
berikut
Untuk mengimport data pada MATLAB anda dapat menggunakan Import Wizard dan command
window. Import Wizard lebih mudah dilakukan jika ekstensi file tidak anda ketahui, seperti ekstensi
csv yang juga merupakan standar excel. Namun dengan menggunakan command window, perintah
128
import pada MATLAB dapat menjadi lebih kompleks dengan menambah kode lain untuk keperluan
tertentu. Untuk menggunakan command window anda dapat mengimport file excel dengan ekstensi xls
(Microsoft Office 2007 kebawah) dan xlsx (Microsoft Office 2010 keatas). Anda juga dapat melakukan
eksekusi perintah import pada Script File.
Untuk import file excel anda dapat menggunakan syntax xlsread pada command window
dengan mendefinisikan suatu variabel yang dapat diformulasikan sebagai berikut
nama_variabel = xlsread(‘nama_file’)
File yang anda import harus berada pada current folder yang sedang aktif. Anda juga dapat
membaca Tutorial Terkait Current Folder.
1» buka = xlsread('Book1')
129
3buka =
51 2 3
4 5 6
6
7 8 9
7
Sehingga data dalam file excel Book1.xlsx terdefinisi dalam variabel ‘buka’
sebagaimana ditampilkan pada gambar berikut
Anda dapat menambahkan parameter sheet pada syntax xlsread untuk import sheet
tertentu pada workbook yang dapat diformulasikan sebagai berikut
nama_variabel = xlsread(‘nama_file’,’nama_sheet’)
Misalkan anda akan mengimport sheet2 pada file excel Book2.xls berikut
130
Sehingga syntax yang digunakan adalah
1» buka2 = xlsread('Book2','Sheet2')
3buka2 =
51 4 7
62 5 8
73 6 9
131
o Perintah Import Sheet dengan Range Data Terdefinisi
Import data excel dengan range tertentu, dapat membantu anda apabila data excel anda
dilengkapai string atau teks tertentu yang tidak perlu digunakan saat analisis data
menggunakan MATLAB. Perintah import sheet dengan range terdefinisi dapat
diformusikan dengan
nama_variabel = readxls(‘nama_file’,’nama_sheet’,’range_data’)
Misalkan dilakukan input data dari range C6:D15 berikut pada sheet1 pada workbook
Book3.xlsx
132
1
» buka3 = xlsread('Book3','Sheet1','C6:D15')
2
3 buka3 =
5 1 123
6 2 56
7 3 789
8 4 234
5 111
9
133
106 345
117 433
8 675
12
9 1424
13
10 2133
14
Import Wizard memungkinkan anda import data dengan mudah. Anda dapat menemukan
Import Wizard pada Home Bar MATLAB. Klik Import Data – Pilih Data – Open seperti
gambar berikut (Anda juga dapat menggunakan perintah uiimport melalui command window)
134
Kemudian jendela import Wizard akan terbuka untuk file Book3 seperti berikut
135
Anda dapat memilih range data yang akan diimport, anda juga dapat mengisi range secara manual
dengan memasukkan range data pada kolom Range. Terdapat pula opsi Variabel names row yang
digunakan untuk membentuk data jenis Column Vectors yaitu data dalam bentuk vektor dengan setiap
entri memiliki index kolom yang sama. Anda dapat membentuk data berupa column vectors, matrix,
cell array maupun dataset. Pada contoh gambar diatas merupakan ilustrasi import data matriks, setelah
range data dipilih klik Import Selection (tanda centeng).
136
Data akan diimport dengan nama variabel sesuia nama file (untuk jenis data matrik).
Untuk melakukan export anda dapat menggunakan perintah xlswrite yang dapat diformulasikan
dengan
xlswrite(‘nama_file’, nama_variabel)
Anda juga dapat menambah argumen tambahan sheet dan range data dalam bentuk array addressing
untuk melakukan export data yang spesifik dari suatu variabel. Misalkan akan dilakukan import data
pada variabel A dengan range data a11 sampai a33. Yang dapat diilustrasikan sebagai berikut,
137
Sehingga syntax yang diperlukan adalah
1
» A = [1 2 3 4; 5 6 7 8; 9 8 7 5; 7 7 3 4]
2
3 A =
5 1 2 3 4
6 5 6 7 8
7 9 8 7 5
8 7 7 3 4
9
» xlswrite('dataA',A(1:3,1:3))
10
Setelah perintah xlswrite dieksekusi, file dengan nama dataA.xls akan dibuat pada current folder aktif.
Dapat diilustrasikan sebagai berikut
138
File Excel dapat digunakan oleh aplikasi lain misalnya Microsoft Excel seperti gambar berikut
139
140
BAB 4 Tutorial Plot 2 Dimensi MATLAB
A. plot Command
Untuk membuat plot dua dimensi anda dapat menggunakan perintah plot yang dapat
diformulasikan dalam vektor x dan y sebagai berikut.
plot(x,y)
Vektor x dan y harus mempunyai ukuran yang sama. Vektor x merupakan sumbu horizontal dan
vektor y merupakan sumbu vertikal dari plot yang dibuat. Misalkan akan dibuat grafik dari data
x = [1:7] dengan y = [11 22 12 32 6 21 33] dapat menggunakan syntax berikut
1 » x = [1:7]
3 x =
5 1 2 3 4 5 6 7
7 » y = [11 22 12 32 6 21 33]
9 y =
10
141
1111 22 12 32 6 21 33
12
13» plot(x,y)
Setelah command plot dieksekusi, jendela plot grafik y terhadap sumbu x akan muncul sebagai
berikut
Plot yang dihasilkan MATLAB secara umum ditampilkan dengan garis berwarna biru seperti
gambar diatas. Anda dapat menambah argumen untuk merubahnya serta memberikan
penjelasan lain mengenai grafik yang dibuat. Untuk menambah argumen dapat menggunakan
formulasi berikut
plot(x,y,’lineSpecifiers’,’propertyName’,’propertyValue’)
142
o Line Specifiers merupakan argumen untuk melakukan kustomisasi tampilan garis, anda dapat
merubah warna garis, jenis garis serta marker titik yang ditampilkan pada grafik.
o Property Name dan Property Value merupakan jenis argumen terdefinisi yang berfungsi untuk
melakukan kustomisasi ukuran line specifier.
Misalkan pada grafik diatas akan diubah menggunakan Line Specifiers garis putus-putus
berwarana merah dan dilengkapai dengan marker bintang, dengan property ketebalan garis 2
dan warna bintang hijau sebagai berikut
1
» x = [1:7]
2
3 x =
5 1 2 3 4 5 6 7
7 » y = [11 22 12 32 6 21 33]
9 y =
10
11 22 12 32 6 21 33
11
12
» plot(x,y,'--r*','linewidth',2,'markeredgecolor','g')
13
143
Berikut Line Specifiers pada MATLAB
solid (default) –
dashed (putus-putus) —
dotted (titik-titik) :
dash-dotted (garis-titik) -.
144
red (merah) r
green (hijau) g
blue (biru) b
white (putih) w
yellow (kuning) y
cyan c
magenta m
black (hitam) b
Marker Specifier
circle (lingkaran) º
point (titik) .
cross (silang) x
segitiga ke atas ^
segitiga ke bawah v
square (kotak) s
diamond (berlian) d
bintang 5 titik p
bintang 6 titik h
145
asterisk *
Property Specifier
Nilai berupa color specifier untuk mengisi warna di dalam marker contoh
markerfacecolor dalam bentuk string (tanda penggunaan marker lingkaran, segitiga dan
petik) bintang.
Line Property Specifiers: Sama dengan line specifiers, namun jenis argumen ini bersifat global
dapat dipakai untuk syntax lainnya seperti syntax line dan hold on and hold off.
Line Style linestyle Untuk merubah jenis garis dengan variabel numerik
Line Color color untuk merubah warna garis dengan varibel string terdefinisi
Line Marker marker untuk merubah marker pada garis dengan variabel string terdefinisi
Untuk membuat grafik fungsi dengan plot command anda cukup mendefinisikan salah satu
sumbu yang dijadikan domain utama. Dalam ilmu matematika fungsi didefinisikan dengan f(x)
= y. Misalkan dibuat grafik dari fungsi y=x²+7x-3 dengan range x =(-9,9) Untuk membuat
formulasi fungsi pada MATLAB dapat digunakan operasi aritmatika biasa dan operasi element
by element matriks pada tutorial sebelumnya. Sehingga syntax yang diperlukan adalah
1» x = [-9:0.01:9];
2» y = x.^2+7.*x-3;
146
3» plot(x,y)
B. fplot Command
Perintah fplot digunakan untuk membuat grafik dalam formulasi fungsi matematika f(x) = y
dengan spesifikasi limit terdefinisi. fplot command dapat diformulasikan dengan
fplot(‘functions’,limits,’line specifiers’)
ofunctions merupakan fungsi matematika yang dapat anda definisikan dalam f(x)=y
olimits merupakan range domain dalam x yang akan anda plot menggunakan functions. limits
didefinisikan dalam bentuk vektor [xmin xmax]
o line specifiers merupakan argumen tambahan untuk merubah tampilan garis grafik
2. Membuat Grafik Fungsi Matematika dengan fplot Command
147
Misalkan anda akan membuat grafik dari fungsi dengan x = (0,7). Dapat
digunakan syntax berikut,
Sehingga grafik fungsi tersebut dibuat dengan garis titik-titik berwarna merah sebagai berikut
148
4.2 Multiple Graphs: Lebih Dari Satu Persamaan
Dalam Satu Plot MATLAB
Multiple graphs atau multi grafik merupakan cara menampilkan lebih dari satu persamaan dalam
satu plot pada MATLAB. Multi Grafik sering digunakan dalam pembandingan dan benchmark suatu
model atau persamaan matematika. Terdapat 3 cara untuk membuat multi grafik di satu plot pada
MATLAB. Cara yang paling sederhana adalah menggunakan plot command. Kemudian cara yang
lebih kompleks menggunakan hold on and hold off. Yang ketiga adalah line command untuk
menggabungkan grafik pada matlab yang telah terdefinisi sebelumnya.
Untuk membuat atau menampilkan lebih dari satu persamaan dalam satu grafik pada matlab dengan
plot command dapat diformulasikan sebagai berikut
plot(x,y1,argumen1,x,y2,Argumen2,x,y3,Argumen3, …,x,yn,ArgumenN)
Dengan x adalah domain utama baik sumbu horizontal, anda juga dapat menggunakan y sebagai
domain utama sebagai sumbu vertikal.
Argumen adalah line specifiers dan marker specifier untuk membedakan setiap grafik, anda dapat
membaca tutorial Cara Membuat Grafik di MATLAB terkait specifiers plot command.
Misalkan untuk membuat grafik dari 3 fungsi berikut yang masing-masing merupakan turunan pertama
dan kedua dari fungsi awal, sebagai berikut
1» x = [-1:0.01:1];
2» y = x.^4+3.*x.^3+7.*x.^2;
3» dy = 4.*x.^3+9.*x.^2+14.*x;
4» ddy = 12.*x.^2+18.*x+14;
5» plot(x,y,'-r',x,dy,':b',x,ddy,'-g')
149
B. Membuat Multi Grafik dengan hold on and hold off
Formulasi syntax ini menggunakan fundamental plot command. Grafik pertama didefinisikan dengan
plot command kemudian untuk grafik berikutnya diapit oleh syntax hold on and hold off dapat
diformulasikan sebagai berikut
plotCommand1
hold on
plotCommand2
plotCommand3
plotCommadN
hold off
150
Dengan menggunakan syntax ini anda dimungkinkan melakukan eksekusi secara simultan maupun
secara bertahap dan dengan specifiers plot command yang lengkap. Sehingga untuk soal di atas
diperoleh
1
» x = [-1:0.01:1];
2
» y = x.^4+3.*x.^3+7.*x.^2;
3» dy = 4.*x.^3+9.*x.^2+14.*x;
4» ddy = 12.*x.^2+18.*x+14;
5» plot(x,y,'-r','linewidth',3)
6» hold on
7» plot(x,dy,':b','linewidth',2)
» plot(x,ddy,'-g','linewidth',1)
8
» hold off
9
151
hold on and hold off grafik 1 matlab
152
hold on and hold off grafik 2 matlab
153
hold on and hold off grafik 3 matlab
Dengan menggunakan line Command, dimungkinkan untuk menambah grafik pada plot yang telah
terdefinisi sebelumnya. line command dapat diformulasikan sebagai berikut
line(x,y,’propertyName’,value)
Dengan specifiers property argumen standar. Misalkan akan dibuat turunan ketiga dan keempat dari
fungsi awal diatas dengan melanjutkan syntax hold on and hold off diperoleh
1 » x = [-1:0.01:1];
2 » y = x.^4+3.*x.^3+7.*x.^2;
154
3 » dy = 4.*x.^3+9.*x.^2+14.*x;
4 » ddy = 12.*x.^2+18.*x+14;
» plot(x,y,'-r','linewidth',3)
5
» hold on
6
» plot(x,dy,':b','linewidth',2)
7
» plot(x,ddy,'-g','linewidth',1)
8
» hold off
9
» dddy = 24.*x+18;
10» ddddy = 24;
11» line(x,dddy,'linewidth',3)
12» line(x,ddddy,'linestyle','--','linewidth',3)
13
155
line grafik 1
156
line grafik 2
Untuk melakukan formatting plot dapat dilakukan menggunakan formatting command atau
menggunakan plot editor secara langsung.
157
A. Formatting Plot Menggunakan Command
Untuk membuat judul, label dan legenda pada grafik, formatting command ditulis setelah syntax utama.
Berikut formulasi formatting command
y = x² + x + 1
1.
1. Membuat Label fungsi Axis
Untuk menambah label pada garis sumbu pada grafik dapat menggunakan syntax
fungsi xlabel dan fungsi ylabel pada MATLAB. Kedua label ditulis setelah syntax
deklarasi plot.
158
2. Membuat Judul Plot
Untuk membuat judul plot anda dapat menggunakan syntax fungsi title pda
MATLAB diformulasikan sebagai berikut
title(‘judul plot’)
3» title('x^{2}+x+1')
159
3. Menggunakan fungsi text Command
Dengan fungsi text command anda dapat membuat tulisan di plot dalam koordinat x,y.
Anda juga dapat menggunakan command fungsi gtext sehingga teks yang akan
dimunculkan dapat digeser. Berikut formulasi text command
3» title('x^{2}+x+1')
4» text(-1,2,'grafik kuadrat')
160
Terdapat beberapa argumen specifier yang dapat anda gunakan pada syntax text/gtext
command. Dengan formulasi syntax
Warna border pada teks yang specifier string warna standar terdefinisi,
EdgeColor
dibuat default: None
161
specifier nilai numerik, default: 10
FontSize Menentukan ukuran font
dengan besaran pt
3» title('x^{2}+x+1')
4» text(0,2.5,'Grafik Kuadrat','Rotation',45)
162
4. Menambah Legenda pada plot
Legenda adalah penjelasan garis dilengkapi dengan sampel garis yang dijelaskan. Untuk
membuat legenda pada plot anda dapat menggunakan syntax fungsi legend pada
MATLAB. Dapat diformulasikan sebagai berikut
Misalkan anda akan membuat turunan pertama dari fungsi awal dan kemudian
menambah fungsi legenda pada grafik dapat digunakan syntax berikut
1
» fplot ('x.^2+x+1',[-2 1],':r')
2» xlabel('sumbu x'),ylabel('sumbu y')
3» title('x^{2}+x+1')
4» text(-1,2,'grafik kuadrat')
5» x = [-2:0.001:1];dy = x+1;
» line(x,dy)
6
» legend ('grafik fungsi kuadrat','turunan pertama',-1)
7
163
5. Mengggunakan fungsi axis Command
Dengan menggunakan syntax fungsi axis pada MATLAB anda dapat menentukan range
tampilan dari suatu plot. Berbeda dengan syntax plot(x,y) yang mendefinisikan nilai
suatu fungsi lalu menampilkan plot grafik fungsi tersebut dalam x [min max], y[min
max], syntax axis hanya berperan untuk memberikan range tampilan suatu plot (tidak
merubah nilai). axis command menggunakan fundamental koordinat cartesius yang
dapat diformulasikan sebagai
164
Adapun syntax axis lainnya dilengkapi argumen tertentu
Fungsi grid pada MATLAB adalah untuk menampilkan grid pada plot yang anda buat.
penggunaan grid command sangat sederhana. Syntax grid on untuk menampilkan grid
dan syntax grid off untuk menyembunyikan grid.
165
B. Text Formatting: Karakter dan Format Penulisan label, title, text/gtext dan legend
Text Formatting memungkinkan anda untuk menulis teks dengan karakter khusus beserta format
kustom.
1. Text Modifiers
Text Modifiers berfungsi untuk memberikan efek tertentu pada teks yang akan ditampilkan.
Text Modifiers dapat diformulasikan sebagai berikut
166
\fontname{nama font} tulisan dengan font tertentu
2» title('\bf\it{x^{2}+x+1}')
Untuk membuat tulisan superscript dan subscript anda dapat menggunakan format penulisan
LATEX sebagaimana dalam fomulasi
Superscript x^{2}
Subscript x_{2}
167
3. Format Karakter Khusus
Untuk menulis karakter khusus pada MATLAB anda dapat menggunakan beberapa kode
berikut
Kode Karakter
\alpha α
\beta β
\gamma γ
\theta θ
\pi π
\sigma σ
\phi Φ
\delta Δ
\Gamma Γ
\Lambda λ
\Omega Ω
\Sigma Σ
Anda dapat melakukan formatting plot dengan modifikasi langsung pada Plot Editor. Namun untuk
penggunaan lebih lanjut anda tidak dapat hanya mengandalkan Plot Editor, misalkan pada script file
sehingga memunculkan formatting plot, tentunya harus menggunakan formatting command untuk
efesiensi penggunaan.
168
4.4 Cara Membuat Grafik Semi Logaritma Pada
MATLAB
Grafik semi logaritma merupakan grafik yang dipresentasikan dalam sumbu x dan y dengan visualisasi
data dalam bentuk eksponensial di kedua atau salah satu sumbunya. Grafik semi logaritma digunakan
dalam berbagai turunan disiplin ilmu matematika misalnya teknik, statistika maupun ekonomi untuk
mempresentasikan data. Pada tutorial berikut dijelaskan cara membuat grafik semi logaritma pada
MATLAB.
Untuk membuat plot dengan grafik semi logaritma pada MATLAB anda dapat menggunakan tiga
syntax fungsi logaritma berikut
Contoh Kasus:
Diketahui suatu model duplikasi amoeba dalam diformulasikan dalam bentuk eksponensial
Sehingga dapat dibuat script file untuk menampilkan fungsi semi logaritma pada sumbu y
dengan fungsi semilogy sebagai berikut
1
%semi logaritma amoeba
2%At dalam representasi eksponensial
4A0 = 3;
5t = [1:10];
6At = A0.*2.^t;
semilogy(t,At);
7
169
8xlabel('normal'),ylabel('logaritma');
Sehingga dapat dibuat script file untuk menampilkan fungsi semi logaritma pada sumbu x
dengan fungsi semilogx sebagai berikut
170
5At = A0.*2.^t;
6semilogx(t,At);
xlabel('logaritma'),ylabel('normal');
7
title('A_{t} = A_{0}\times 2^{t}')
8
Sehingga diperoleh
Sehingga dapat dibuat script file untuk menampilkan fungsi semi logaritma pada sumbu x,y
dengan fungsi loglog sebagai berikut
171
1
%logaritma amoeba
2
%t dalam representasi eksponensial
3%At dalam representasi eksponensial
4A0 = 3;
5t = [1:10];
6At = A0.*2.^t;
loglog(t,At);
7
xlabel('logaritma'),ylabel('logaritma');
8
title('A_{t} = A_{0}\times 2^{t}')
9
172
Dan jumlah amoeba keseluruhan pada menit ke-10 dapat dihitung melalui command window
sebagai berikut
1» max(At)
3ans =
53072
errorbar(x,y,e)
Variabel x,y adalah vektor dari koordinat x dan koordinat y dari grafik yang dibentuk.
Variabel e adalah vektor dari panjang error bar yang akan dibentuk.
Vektor x,y,e mempunyai ukuran atau panjang yang sama.
Fungsi errorbar di atas merupakan fungsi error bar yang simetris artinya titik fungsi grafik tepat
berada pada tengah-tengah garis error yang dibuat.
Contoh Kasus:
Diketahui jumlah penduduk Desa Beng dari tahun [2011:2017] adalah sebagai berikut 632, 680, 740,
811, 900, 967, 1000. Buatlah grafik dilengkapi error bar dari bilangan acak dengan standar deviasi 80
yang dapat merepresentasikan data tersebut?
173
1
%Jumlah Penduduk Desa Beng Tahun 2011-2017
2tahun = [2011:2017];
4error = 80*rand(1,7);
174
B. Error Bar Asimetris Pada MATLAB
Error Bar Asimetris atau Non-Simetris adalah Error bar yang dapat memberikan nilai kustom terhadap
titik tetap atas (uper bound value) dan titik tetap bawah (lower bound value) tiap titik fungsi pada
grafik. Error Bar Non-Simetris dapat diformulasikan sebagai berikut
errorbar(x,y,b,a)
Variabel x,y adalah vektor dari koordinat x dan koordinat y dari grafik yang dibentuk.
Variabel b,a masing-masing merupakan lower bound value dan uper bound value.
Vektor x,y,b,a mempunyai panjang atau ukuran yang sama.
Misalkan pada kasus diatas akan dibuat grafik dengan error bar Asimetris
1
%Grafik Error Bar Asimetris Jumlah Penduduk Desa Beng Tahun 2011-2017
2tahun = [2011:2017];
175
4.6 Cara Membuat dan Menampilkan Histogram Pada
MATLAB
Histogram adalah grafik yang divisualisasikan dalam bentuk batang yang memetakan distribusi
frekuensi sebagai representasi data dalam bentuk grafik. Untuk membuat histogram pada MATLAB
dapat digunakan fungsi hist. Fungsi hist diformulasikan dengan
hist(y)
Dengan y merupakan variabel dalam bentuk vektor dari data-data yang akan direpresentasikan dalam
bentuk histogram. MATLAB secara default akan membagi data menjadi 10 kelas interval data.
Contoh Kasus:
176
Diketahui nilai ujian statistika dari 34 mahasiswa adalah 60 68 74 75 85 76 98 87 76 45 56 77 89 87 78
65 54 46 67 78 98 55 44 56 77 89 34 55 66 77 88 55 45 89. Buatlah Histogram yang dapat
merepresentasikan nilai ujian statistika 34 mahasiswa tersebut!
2nilai_mahasiswa = [60 68 74 75 85 76 98 87 76 45 56 77 89 87 78 65 54 46 67 78 98
55 44 56 77 89 34 55 66 77 88 55 45 89];
3
hist(nilai_mahasiswa);
4title('Nilai Ujian Statistika');
177
B. Histogram Kelas Interval Data Terdefinisi
Untuk membuat histogram dengan jumlah interval data terdefinisi anda dapat menggunakan syntax
berikut
hist(y,n)
Misalkan untuk kasus di atas, akan dibuat histogram dengan 4 kelas interval data untuk menentukan
banyaknnya mahasiswa yang memperoleh nilai A,B,C atau D.
2nilai_mahasiswa = [60 68 74 75 85 76 98 87 76 45 56 77 89 87 78 65 54 46 67 78 98
55 44 56 77 89 34 55 66 77 88 55 45 89];
3
hist(nilai_mahasiswa,4);
4title('Nilai Ujian Statistika');
178
Sehingga dapat ditentukan banyaknya mahasiswa yang akan memperoleh nilai A,B,C atau D
berdasarkan histogram di atas.
Dalam perhitungan manual untuk membuat histogram akan ditentukan terlebih dahulu nilai tengah dari
kelas interval suatu histogram. Dalam aplikasinya di MATLAB anda dapat mengambil nilai tengah
kelas interval dengan mendefinisikan fungsi hist sebagai variabel vektor dengan 2 anggota yang dapat
diformulasikan sebagi berikut
Frekuensi merupakan banyaknya data terhadap suatu kelas interval suatu histogram.
Nilai merupakan nilai tengah dari kelas interval yang ditampilkan dalam vektor dengan ukuran jumlah
interval yang ditampilkan.
179
Sehingga ketika anda telah mengeksekusi script file diatas. Mudahnya anda dapat melakukan eksekusi
langsung melalui command window untuk mencari nilai tengah interval dalam bentuk vektor dengan
syntax berikut
3frekuensi =
55 9 11 9
7nilai =
942 58 74 90
Untuk menggabungkan plot grafik dalam satu figure anda dapat menggunakan fungsi subplot pada
MATLAB
Banyaknya subplot didefinisikan dalam m x n dengan m adalah banyaknya baris subplot dan n adalah
banyaknya kolom subplot pada figure.
Index subplot didefinisikan dalam i yang merupakan urutan dari subplot.
180
Anda dapat menggunakan berbagai fungsi plot yang ada pada library MATLAB
Contoh Kasus:
Misalkan akan dibuat 4 buah grafik dalam satu figure dari fungsi f(y) beserta 3 turunan pertamanya.
f(y)=x³ + x² + 1
1%Program Subplot
181
B. Cara Membuat Lebih dari Satu Figure MATLAB
Sudah Kita ketahui ketika fungsi plot dieksekusi, fungsi tersebut akan ditampilkan dalam figure yang
aktif. Figure dapat ditimpa secara keseluruhan ataupun ditambah dengan menggunakan fungsi Multiple
Graphs: Lebih Dari Satu Persamaan Dalam Satu Plot MATLAB pada tutorial sebelumnya. Pada suatu
kasus perlu ditampilkan grafik dengan jendela figure yang berbeda. Untuk melakukan hal ini Anda
dapat menggunakan fungsi figure sehingga setiap fungsi plot grafik ditampilkan pada jendela figure
yang berbeda. Fungsi figure dapat diformulasikan sebagai berikut
Untuk kasus diatas dapat dibuat script file yang dapat menampilkan lebih dari satu figure sebagai
berikut
1%Program Subplot
182
3figure(2); fplot('3.*x.^2+2.*x',[-3 3]); title('B'); axis ([-3 3 -10 10]);
Anda dapat menutup figure dengan index tertentu dengan melakukan eksekusi fungsi
close – menutup figure yang sedang aktif, pada gambar figure 3 akan ditutup karena mouse hover
berada pada figure 3.
close(i) – menutup figure dengan index i
close all – menutup semua figure
183
BAB 5 Tutorial Dasar Pemrograman MATLAB
5.1 Operasi Relasional dan Logika Pada MATLAB
Operasi Relasional dan Logika / Relational and Logical Operators adalah salah satu fundamental
setiap bahasa pemrograman. Kedua fundamental tersebut juga merupakan penerapan dari ilmu
matematika dalam bahasa pemrograman. Dalam aplikasinya operasi relasional dan operasi logika pada
MATLAB digunakan untuk membuat script file baik berupa program maupun fungsi (User Defined
Function).
Pengertian Operasi Relasional adalah operasi matematika yang berfungsi untuk membandingkan dua
variabel / operand numerik dalam bahasa pemrograman. Operasi relasional dapat dijumpai pada bahasa
pemrograman menengah dan tinggi. Adapun beberapa operasi relasional pada MATLAB.
== sama dengan
Dalam penggunaan operasi relasional pada MATLAB nilai yang ditampilkan (output) adalah 0 dan 1.
Nilai nol (0) berarti pernyataan salah dan nilai satu (1) berarti pernyataan benar.
Penggunaan operasi relasional pada array harus, kedua variabel / operand harus mempunyai ukuran
array yang sama. Hasil yang ditampilkan adalah array dengan ukuran yang sama dengan entri-entri 0
atau 1. Dimana operasi relasional membandingkan setiap entri data dengan index yang sama di kedua
array.
Berikut contoh program penggunaan operasi relasional variabel skalar melalui command window
1» x = 2; y = 3;
2» x <= y
184
4ans =
61
Pada contoh diatas dilakukan pembandingan antara variabel x = 2 dan y = 3 dengan operasi <= ,
dengan hasil 1. Yang mengindikasi operasi relasional kurang atau sama dengan bernilai benar untuk
command diatas.
Berikut contoh program penggunaan operasi relasional variabel array melalui command window
2» x == y
Pada hasil eksekusi command window diatas menampilkan bahwa matriks yang dibandingkan
memiliki ukuran yang berbeda sehingga operasi relasional tidak dapat dilakukan.
2>> x >= y
4ans =
60 0
71 1
Pada hasil eksekusi command window diatas terlihat output berupa matriks yang menyatakan index 11,
12 bernilai salah dan index 21, 22 bernilai benar untuk operasi >= lebih besar atau sama dengan untuk
variabel / operand matriks x dan y.
Pengertian operator logika pada MATLAB adalah operasi logika pada bahasa pemrograman MATLAB
yang menggunakan fundamental matematika modern. Adapun beberapa operator logika pada
MATLAB sebagai berikut.
185
&
Output bernilai (1) benar saat kedua operand yang diujikan bernilai benar. Output
AND
Contoh: x&y atau bernilai (0) salah saat salah satu atau kedua operand bernilai salah.
and(x,y)
|
Output bernilai (1) benar saat salah satu operand bernilai salah. Output bernilai (0)
OR
Contoh: x|y atau salah saat kedua operand bernilai salah.
or(x,y)
~
Output bernilai (1) benar saat operand bernilai salah. Output bernilai (0) salah saat
NOT
contoh: ~x atau operand bernilai benar.
not(x)
Operator logika dapat digunakan dalam pembuatan program dengan variabel / operand yang
didefinisikan sebagai operasi aritmatika atau operasi relasional.
o
Penggunaan AND pada MATLAB
3ans =
51
3ans =
50
186
Pernyataan yang diujikan bernilai benar
1» inf | inf
3ans =
51
1» 7==6 | 6==8
3ans =
50
1 » x = 7>3
3 x =
5 1
7 » ~x
9 ans =
10
0
11
187
C. Urutan Operasi Matematika Pada MATLAB
Dalam pemrograman komputer menggunakan MATLAB digunakan fundamental urutan operasi hitung
sebagai berikut
2 Perpangkatan / Eksponensial
6 Operasi Relasional
Terdapat fungsi built-in yang terkait dengan matematika modern pada MATLAB, sebagai berikut
Fungsi Operasi
Kegunaan Contoh
Logika
» xor(-1,88)
Output 1 saat salah satu operand benar dan operand lainnya
xor(a,b)
salah. ans =
0
» A = [1 2 3];
Output 1 saat operand merupakan array dengan entri-entri tak » all(A)ans =1» B = [1 0
all(A) nol. Output 0 saat operand merupakan array yang terdapat entri 0; 0 1 0; 0 0 1];
merupakan 0 » all(B)ans =
000
Output 1 saat entri operand terdapat entri tak nol. Output 0 saat » B = [1 0 0; 0 1 0; 0 0 1];
any(A)
semua entri merupakan nol » any(B)ans =1 1 1» A =
188
[0 0 0];
» any(A)ans =
0
Fungsi untuk menemukan index entri suatu array dimana entri- » A = [1 2 3 0 9 8];
find(A)
entri tersebut bernilai tak nol » find(A)ans =1 2 3 5 6
» C = [11 22 53 2 54 66
find(A operasi Fungsi untuk menemukan index entri suatu array dimana entri- 77 33 77 33];
relasional d) entri tersebut memenuhi operasi relasional yang digunakan. » find(C<53)ans =1 2 4 8
10
1. if-end
2. if-else-end
3. if-elseif-else-end
Anda juga dapat membaca tutorial terkait Operasi Relasional dan Operasi Logika pada MATLAB
untuk memahami lebih lanjut.
Contoh :
if x>10
If x^2>y | x = 2y
189
A. Fungsi if-end Pada MATLAB
Sistematika fungsi if-end dapat digambarkan pada diagram alir / flow-cart berikut
Jika if statement bernilai benar (1) maka command akan dieksekusi. Jika if statement bernilai salah
maka command akan dilewati. Kemudian akan dilanjutkan ke perintah end yang berarti conditional
statement sudah berakhir. Sehingga bisa dilanjutkan ke perintah program setelahnya.
Berikut akan dibuat program yang dapat menghitung biaya mencetak kertas dengan harga
Rp100,00/kertas dan akan mendapat harga khusus Rp80,00 saat mencetak lebih dari 10 kertas.
1
%Program Sederhana Biaya Cetak Kertas
2fprintf('Program Menghitung Biaya Cetak\n');
4harga = 0;
6harga = x*80;
end
7
fprintf('Biaya Cetak %g lembar = Rp%g,00\n',x,harga);
8
190
Dapat diilustrasikan ketika program dijalankan sebagai berikut
Dengan menggunakan fungsi if-else-end Anda dimungkinkan untuk membuat 2 grup perintah dalam
satu fungsi if-else-end. Sistematika fungsi if-else-end dapat digambarkan pada diagram alir / flow-cart
berikut
191
Jika if statement bernilai benar maka commands group 1 akan dieksekusi. Jika if statement bernilai
salah maka commands group 2 akan dieksekusi. Setelah itu if-else-end sudah berakhir dan dapat
dilanjutkan ke syntax berikutnya pada program bersangkutan.
Akan dibuat program yang dapat menghitung akar kuadrat dalam ruang populasi bilangan real.
1
%Akar Kuadrat di Bilangan Real
2x = input('Masukkan Bilangan = ');
3if x>=0
4y = sqrt(x);
6else
fprintf('\nBilangan menghasilkan nilai non-real\n');
7
end
8
192
C. Fungsi if-elseif-else-end Pada MATLAB
Fungai if-elseif-else-end memungkin Anda membuat commands group yang banyak dalam satu fungsi.
Sistematika if-elseif-else-end dapat diilustrasikan sebagai berikut
193
Diagram Alir if-elseif-else-end pada MATLAB
Jika if statement bernilai benar (1) maka command group 1 dieksekusi. Jika if statement bernilai salah
(0) maka elseif statement dieksekusi. Jika elseif statement bernilai benar (1) maka commanf group 2
dieksekusi. Jika elseif statement bernilai salah (0) maka command group 3 dieksekusi. Conditional
Statement berakhir.
Akan dibuat program yang dapat menghitung BMI (Body Mass Index) dengan berat Kg dan tinggi
Meter, lalu mengelompokannya. Diketahui formula BMI sebagai berikut
<18,5 Kurus
194
25 – 29,9 Gemuk
>30 Obesitas
1
%Program Menghitung BMI
2
W = input('Masukkan Berat Badan (Kg) = ');
3
H = input('Masukkan Tinggi Badan (M) = ');
4
x = W/H^2;
5 if x<18.5
195
5.3 Fungsi switch-case Pada MATLAB dan Contoh
Programnya
Fungsi switch-case pada MATLAB merupakan fundamental statement pemrograman untuk
menghasilkan diagram alir berupa input langsung nilai variabel baik berupa string maupun numerik
untuk mengeksekusi commands group suatu program atau script file. Berikut fundamental dan
sistematika dari switch-case pada MATLAB.
Baris pertama dari fungsi ini adalah syntax switch dilanjutkan dengan switch expression. Fungsi switch
expression adalah variabel yang digunakan sebagai nilai syarat yang digunakan pada case / switch
statement. Nilai variabel dapat berupa nilai numerik skalar maupun string. Contoh: switch hitung
Kemudian dilanjutkan dengan case yang merupakan statement dari fungsi switch untuk melakukan
eksekusi tertentu. Banyaknya case bergantung pada banyaknya logika diagram alir yang akan
dibuat. Contoh : case ‘A’
case statement dapat memuat lebih dari satu nilai. Anda dapat mendefinisikannya dengan
menggunakan tanda kurung kurawal. Contoh : case {‘A’,’B’}
196
Jika input terhadap switch expression tidak terdapat dalam switch statement, maka Anda dapat
menambahkan syntax otherwise sebagai eksekusi yang dilakukan. Jika input tidak ditemukan dan tidak
terdapat syntax otherwise maka group command tidak dieksekusi.
Akan dibuat program konversi kurs mata uang rupiah ke dolar Amerika (USA), dolar singapura (SGD)
dan yen Jepang (JPY). Yang masing-masing mempunyai nilai tukar Rp13.515,00 Rp9.966,82 dan
Rp82,68
197
6 case {'USA','Dolar'}
7 y = x/13515;
case 'SGD'
8
y = x/9966.82;
9
case 'JPY'
10
y = x/82.68;
11
otherwise
12
y = x;
13end
15
16
catatan: error=0; untuk memberikan variabel error matlab 0 atau tanpa notifikasi error.
198
5.4 Fungsi For Pada MATLAB dan Nested For Pada
MATLAB
Loop atau perulangan for pada MATLAB merupakan fundamental pemrograman berfungsi untuk
mengulang suatu perintah dalam jumlah yang ditentukan pengguna berdasarkan pemenuhan fungsi
ekspresi. Berikut tutorial Fungsi For Pada MATLAB dan Nested For Pada MATLAB.
Formulasi fungsi for pada matlab secara umum adalah for-end dengan sistematika sebagai berikut
Fungsi for diawali dengan syntax for kemudian dilanjutkan dengan variabel berjalan yang didefinisikan
sebagai vektor. Pada gambar dibawah vektor k didefinisikan sebagai vektor dengan
199
nilai f sampai t dengan beda s. Beda dapat berupa beda naik (increment) ataupun beda turun
(decrement).
k = 1:2:7 Maka vektor k mempunyai 4 elemen yaitu 1,3,5,7. Fungsi for dengan variabel k
mempunyai 4 iterasi
Setalah itu dilanjutkan dengan command group yang dieksekusi sebanyak jumlah entri vektor k.
Fungsi diakhiri dengan syntax end yang mengindikasi bahwa command group berakhir.
Nilai k dieksekusi sebagai nilai skalar, dimana setelah perulangan berakhir nilai k adalah nilai k pada
saat iterasi terakhir.
Akan dibuat program yang dapat menampilkan bilangan Fibonacci sampai suku n yang dimasukkan
pengguna. Sebagaimana barisan Fibonacci dirumuskan dengan
Fn = (Fn-1)+(Fn-2)
0, 1, 1, 2, 3, 5, 8, 13, 21…
Berdasarkan analisis dapat kita ketahui barisan fibonacci merupakan barisan rekursif. Sehingga untuk
menyelesaikan kasus ini digunakan penerapan Array Addressing pada MATLAB. Anda dapat
membaca tutorial Array Addressing Untuk Membuat dan Merubah Matriks di MATLAB lebih lanjut.
Sehingga dapat dibuat algoritma
1. Mulai
2. Definisikan Variabel n dimasukkan pengguna
3. Definisikan Vektor y = [1 1]
4. Definiskan dan lakukan perulangan x sebanyak 3-n
1. Definisikan a = x-1 dan b = x-2
2. Definisikan y(x)=y(a)+y(b)
5. Tampilkan Vektor y
6. Selesai
200
Sehingga diperoleh script file berikut
1
%Program Barisan fibonacci
2
n = input('Masukkan suku ke-n = ');
3 y=[1 1];
4 for x=3:1:n
5 a=x-1;b=x-2;
6 y(x)=y(a)+y(b);
7 end
fprintf('Barisan fibonacci sampai suku ke-%g adalah\n',n);
8
fprintf('%g ',y);
9
fprintf('\n');
10
201
Contoh program matlab sederhana barisan fibonacci
Fungsi for sederhana untuk beberapa kasus tidak dapat menyelesaikan kasus tersebut. Oleh karenanya
perlu digunakan Nested for atau perulangan bersarang for pada MATLAB. Banyaknya eksekusi
bergantung terhadap diagram alir yang dihasilkan, secara umum fungsi nested for mempunyai
nxm iterasi dimana n merupakan jumlan entri vektor for induk dan m jumlah entri vektor nested for.
Berikut sistematika Nested for pada MATLAB
202
Nested for pada matlab
Akan dibuat Program yang dapat menghasilkan segitiga sebanyak n input dengan nilai harus 1-9 dari
pengguna. Yang dapat diilustrasikan sebagai berikut
2 2
3 3 3
4 4 4 4
1. Mulai
2. Definisikan Variabel n dimasukkan pengguna
3. Baca n yang dimasukkan pengguna
4. Jika n>0 dan n<10 eksekusi blok berikut
1. Definisikan dan lakukan perulangan x sebanyak 1-n
1. Definisikan dan lakukan perulangan y sebanyak n-x dengan beda turun
1. Tampilkan string ‘ ‘
2. Definisikan dan lakukan perulangan z sebanyak 1-x dengan beda naik
1. Tampilkan variabel dan string ‘x ‘
3. Buat baris baru
5. Jika n lainnya
1. Tampilkan string kesalahan
6. Selesai
203
3 if n<10 &n>0
5 for x = 1:1:n
for y = n:-1:x
6
fprintf(' ')
7
end
8
for z = 1:1:x
9
fprintf ('%g ',x)
10
end
11fprintf('\n')
12end
13else
15end
16
204
Contoh program matlab sederhana Segitiga
205
Sistematika while pada matlab
Baris pertama fungsi perulangan adalah syntax while dilanjutkan dengan conditional
expressions berupa variabel dengan operasi relasional dan juga dapat berisi operasi logika pada
MATLAB.
Buatlah program yang dapat menghitung banyaknya jumlah uang yang disimpan oleh seorang nasabah
di Bank Mandiri dengan suku bunga majemuk 0,7% per bulan untuk jumlah tabungan Rp 1<50 juta dan
suku bunga 0,85% perbulan untuk jumlah tabungan Rp 50 juta<=500 juta.
Diketahui Nanda menyimpan uang Rp 47 Juta di tabungannya dan 1,1 Juta di tabungan Anaknya,
Estimasikan jumlah uang kedua buku tabungan tersebut 10 tahun kemudian jika diketahui biaya
administrasi kedua tabungan Mandiri bulanan Nanda Rp 12.500,00 dengan asumsi biaya administrasi
adalah tetap?
Dapat kita analisis jumlah uang setiap bulan merupakan barisan rekursif, sehingga digunakan konsep
array addressing. Anda dapat membaca tutorial Array Addressing Untuk Membuat dan Merubah
Matriks di MATLAB lebih lanjut.
1. Mulai
2. Definisikan varibel vektor x(1) jumlah uang disimpan dan y lama waktu yang dimasukkan pengguna
3. Baca x dan y
4. Definisikan z = 1
5. Lakukan blok berikut sampai x(z) < 50 juta atau z <=y
1. z=z+1
2. a=z-1;
3. x(z) = x(a)+x(a)*i-adm
6. Jika x(z)>=50 juta
1. Lakukan blok berikut sampai z <=y
1. z=z+1
206
2. a=z-1
3. x(z)=x(a)+x(a)*i-adm
7. Cetak jumlah uang terakhir
8. Selesai
8 x(z)=(x(a)+x(a)*0.007)-12500;
9 end
11while z<=y
z = z+1;
12
a = z-1;
13
x(z)=(x(a)+x(a)*0.0085)-12500;
14
end
15
end
16
format bank;
17fprintf ('Uang Nasabah %g Bulan Kemudian adalah Rp ',y),disp(x(z))
18
207
Contoh Program MATLAB Sederhana dengan Perulangan while bunga bank
Dapat disimpulkan tabungan pertama bertambah dan tabungan kedua berkurang dengan tingkat bunga
bank tahun 2017 untuk estimasi 10 tahun kedepan.
208
A. Fungsi break Pada MATLAB
Dengan menggunakan syntax break pada perulangan menggunakan bahasa pemrograman MATLAB,
suatu perulangan dapat dihentikan atau eksekusi akan lompat langsung ke syntax end. Adapun
beberapa fundamental dari syntax break pada MATLAB
Secara umum fungsi break biasanya digunakan di dalam perulangan, suatu perulangan akan di hentikan
saat iterasi awal.
Apabila fungsi break berada dalam nested looping atau perulangan bersarang, perulangan yag
dihentikan hanya pada perulangan bersarang, perulangan induk tetap berjalan.
Apabila fungsi break berada diluar looping, script file akan dihentikan langsung ke end dari script file
atau menghentikan script file ditengah eksekusi.
1for x =1:1:7
2disp(x);
3end
209
contoh program matlab sederhana dengan for
1for x =1:1:7
2disp(x);
3break
4disp('Program dicekal')
end
5
Karena fungsi break, perulangan for pada program tersebut hanya dieksekusi pada iterasi awal saja dan
sampai syntax sebelum break didefinisikan.
210
B. Fungsi continue Pada MATLAB
Fungsi continue pada MATLAB dapat digunakan pada perulangan for maupun while. Syntax
continue dapat mengontrol suatu perulangan dilanjutkan atau tidak terhadapa fungsi setelahnya dalam
iterasi tertentu. Secara fundamental syntax continue dapat diformulasikan dengan
If conditional statement
continue
end
Syntax continue biasanya dilengkapi dengan conditional statement menggunakan fungsi if. Apabila
conditional statement terpenuhi syntax continue akan dieksekusi pada iterasi bersangkutan dengan
melewati iterasi tersebut dan melanjutkannya ke iterasi berikutnya.
1for x =1:1:7
2if x<4;
3continue
4end
5disp(x);
end
6
Ketika program dieksekusi, saat iterasi dengan nilai x<4 fungsi disp(x) dilewati dapat diilustrasikan
sebagai berikut
211
contoh program matlab sederhana dengan fungsi continue
Baca Tutorial Selanjutnya: Cara Membuat Function Pada MATLAB dan Contoh Programnya
User Defined Function adalah function yang ditulis oleh pengguna dan disimpan dalam bentuk function
file serta dapat digunakan seperti built-in function. User Defined Function dapat berisi formula
matematika yang sederhana maupun formula yang rumit, serta dilengkapi dengan operasi logical atau
perulangan. Berikut sistematika function pada MATLAB.
212
Sistematika Function
Pada Pemrograman MATLAB
Suatu contoh, misalkan akan dibuat function yang dapat merubah satuan jam menjadi menit. Input yang
dilakukan adalah berupa scalar x, kemudian akan diproses oleh function file dengan formula f(x)=x ×
60. Sehingga output yang dihaslikan berupa konversi jam ke menit berupa scalar y.
User Defined Function biasanya digunakan dalam projects program skala besar atau program yang
akan digunakan oleh orang banyak. Sehingga program yang dibuat harus praktis dalam
penggunaannya. Penulisan function pada MATLAB hampir sama dengan bahasa BASIC, PASCAL, C,
FOTRAN. Sebelum membuat function, minimal harus memahami mengenai tutorial dasar MATLAB,
Array/Matriks, Managemen Data dan Pemrograman Dasar yang dapat dilihat pada situs ini.
Fundamental pembuatan function terdiri dari 4 struktur. Pertama, anda perlu membuat script file baru
dengan menekan CTRL+N atau klik New script pada Home Bar MATLAB.
Pada penjelasan berikut digunakan contoh: membuat function untuk menghitung keliling dan
luas (output) sebuah segiempat dengan diketahui panjang dan lebarnya (input).
213
Cara membuat function pada matlab
Function Definition Line adalah syntax yang mengindikasi bahwa program script file yang anda
buat merupakan function. Berikut sistematika function definition line.
214
2. Input dan Output Argumen
Input dan Output argumen digunakan untuk mengambil data dari function dibawa ke luar
function, umumnya berupa luaran pada command window.
oInput pada contoh diatas adalah (panjang, lebar) yang akan dihitung oleh function. Dalam
penggunaan lebih lanjut input argumen dapat didefinisikan secara interaktif menggunakan
perintah input.
o Output pada contoh datas adalah [keliling, luas] yang nilai variabelnya umumnya ditampilkan
pada command window. Dalam penggunaan lebih lanjut output argumen dapat ditampilkan
secara interaktif menggunakan perintah disp, fprintf maupun plot.
3. H1 Line dan Help Text
o H1 Line merupakan comment pada beris pertama dari function file. Comment pada MATLAB
diawalai dengan tanda %
o Help Text merupakan comment baris selanjutnya setelah H1 line. Help Text dapat ditampilkan
dengan menggunakan perintah “help function_name“, dengan syntax help yang mengindikasi
untuk memanggil Help Text suatu function.
1function[keliling,luas]=segiempat(panjang,lebar)
4. Function Body
Function Body adalah isi dari function yang kita buat. Function Body dapat memuat semua
syntax MATLAB seperti operasi matematika, built-in function, operasi logika, user defined
function, perintah input output serta flow control (conditional statement dan perulangan) yang
telah kita pelajari pada BAB sebelumnya.
1function[keliling,luas]=segiempat(panjang, lebar)
5keliling = 2*(panjang+lebar);
luas = panjang*lebar;
6
215
Simpan User Defined function yang telah dibuat pada current folder yang anda gunakan. Setelah
tersimpan maka terlihat file .m yang dibuat berisi logo fx seperti gambar diatas pada current folder
yang aktif. Ini berarti MATLAB telah mengetahui User Defined Function yang telah kita buat.
Untuk mencoba menggunakan function yang dibuat tadi, anda dapat menutup software MATLAB dan
membukanya kembali. Lalu mengaktifkan current folder tempat anda menyimpan function files.
Dengan menggunakan function segiempat.m yang dibuat tadi, dapat digunakan syntax berikut
untuk memanggil perintah help
1help segiempat
216
Cara menggunakan perintah help pada function
2. Menggunakan Function
Berbeda dengan function definition line, [output variabel] tidak dipisahkan menggunakan
tanda koma. Misalkan akan dihitung keliling dan luas segiempat dengan panjang 12 dan lebar 3.
Dapat digunakan beberapa syntax berikut melalui command window.
1[keliling luas]=segiempat(12,3)
1[a b]=segiempat(12,3)
1p = 12, l = 3; [a b] = segiempat(p,l)
217
Cara menggunakan function pada MATLAB
Catatan: Untuk menggunakan function yang hanya terdiri dari 1 variabel output anda cukup
memakai formula syntax
1function_name(input variable)
218
sebelumnya. Function jenis ini terdiri dari anonymous function dan inline function. Sehingga anda
dapat memanggil function pada MATLAB dengan tanpa membuatnya dalam bentuk file.
A. Anonymous Function
Anonymous function adalah user defined function sederhana yang terdiri dari satu baris kode, yang
dibuat dengan tanpa menggunakan M-file. Anonymous Function didefinisikan melalui command
window menggunakan formula berikut
Misalkan anonymous function dari f(x)=x² yang akan kita sebut sebagai fungsi kuadrat.
Dapat diilustrasikan cara membuat dan menggunakan anonymous function sebagai berikut
219
Cara membuat dan memanggil anonymous function
B. Inline Function
Inline Function adalah metode lain untuk membuat user defined function sederhana. Sama halnya
dengan anonymous function, inline function juga dapat membuat function tanpa menggunakan M-file
pada MATLAB. Inline function merupakan versi awal sebelum MATLAB R2010b dirilis oleh
Mathworks. Anonymous function mempunyai managemen memory yang lebih baik dari inline
function. Anda dapat menggunakan kedua syntax ini pada MATLAB versi yang lebih tinggi. Berikut
formula dari inline function pada MATLAB.
Misalkan inline function dari f(x) = A x B yang kita definisikan sebagi fungsi perkalian dengan nama
kali.
220
Cara memanggil function pada MATLAB, sama halnya dengan memanggil built-in function yang sudah
ada.
1» kali = inline('A*B','A','B')
221
Dalam penggunaan function function terdapat 3 metode yang dapat anda lakukan
Function handle menggunakan input argumen untuk memanggil function sebelum function
utama melakukan suatu perintah. Mudahnya dengan matode function handle, function utama
yang umumnya mengasosiasikan variabel input digantikan dengan function imported. Function
handle dapat digunakan untuk beberapa function pada MATLAB yang termasuk dalam built-in
function maupun user defined function. Berikut fundamental untuk mendefinisikan function
handle sebagai input suatu function utama.
o Untuk menggunakan function handle, function utama harus mempunyai input variabel yang
mengasosiasikan function imported pada body function.
o Untuk menjalankan dapat menggunakan karakter ‘@’, misalkan akan digunakan input “sin”.
Input variabel menjadi “@sin”.
Contoh:
Misalkan kita sebelumnya mempunyai function sebuah persamaan garis berikut yang kita sebut
“kurva”
f(x)=x²+x+1
1function y=kurva(x)y=x.^2+x+1;
Kemudian akan dibuat sebuah function utama yang dapat membentuk grafik dari function
tersebut.
function z = grafik(persamaan,a,b)
1
%variabel input : persamaan,a,b
2
% x membuat rentang 100 titik menggunakan linspace
3
% y memasukkan nilai x pada imported function
4
% output berupa tulisan dan grafik dari imported function interval a-b
222
5x=linspace(a,b,100);
6y=persamaan(x);
z = 'Grafik di buat!';
7
plot(x,y)xlabel('x'), ylabel('y')
8
Function utama
sehingga dapat digunakan syntax berikut untuk membuat grafik f(x)=x²+x+1 dengan rentang [-
10,10] menggunakan function function melalui comand window
1>> grafik(@kurva,-10,10)
223
Memanggil function function pada MATLAB
Baca Juga: Membuat dan Memanggil Anonymous dan Inline Function pada MATLAB
f(x)=cos x² + sin x
Sehingga dapat kita plot fungsi tersebut dengan mendefinisikan anonymous function terlebih
dahulu
224
1>> logaritma= @(x) cos(x).^2+sin(x)
3logaritma =
5@(x)cos(x).^2+sin(x)
Kemudian untuk melakukan plot fungsi tersebut pada interval [-2,8]. Dapat diilustrasikan
sebagai berikut dengan memanggil function function melalui command window.
1>> grafik(logaritma,-2,8)
225
Menggunakan Anonymous Function Function
Syntax feval adalah syntax yang merupakan kependekan dari “function evaluate”, digunakan
untuk melakukan eksekusi function baik bulit-in maupun user define function dengan input
argumen terdefinisi. Berikut sistematika syntax feval.
226
1 function z = grafik(persamaan,a,b)
8 y=feval(persamaan,x);
9 z = 'Grafik di buat!';
10plot(x,y)xlabel('x'), ylabel('y')
o Kemudian akan dibuat grafik fungsi dari built-in function cos dengan interval [1,20]
melalui command window
1>> grafik('cos',1,20)
227
o
Cara menggunakan syntax feval
228
BAB 6 Tutorial Analisis Numerik MATLAB
6.1 Syntax fzero: Menghitung Persamaan Non-Linier
dengan MATLAB
Syntax fzero adalah function yang digunakan untuk menghitung persamaan linier dan persamaan non-
linier MATLAB. Berbeda dengan tutorial sebelumnya mengenai Menyelesaikan Persamaan
Matematika di MATLAB yang menggunakn symbolic math, syntax fzero merupakan syntax
independent yang hanya dapat menghitung persamaan matematika dengan satu variabel.
x atau nama adalah nama variabel yang dijadikan solusi dari persamaan matematika yang ditulis.
fzero adalah syntax built-in function untuk mengekseskusi persamaan matematika satu variabel.
math equation ditulis dalam tanda petik dan dalam satu variabel.
fzero mencari solusi penyelesaian untuk nol fungsi yang didefinisikan. Jika solusi yang dicari tidak ada,
maka output berupa NaN.
a adalah nilai x dimana f(x)=0 dengan x mendekati a.
Diketahui sebuah fungsi kuadrat adalah sebagai berikut dan akan dicari penyelesaian dari persamaan
berikut,
f(x) = x² – 11
Penyelesaian:
Dapat kita ketahui, bentuk grafik dari fungsi di atas dengan melakukan eksekusi syntax berikut melalui
command window,
1fplot('x^2-11',[-7 7])
229
Grafik fungsi persamaan non-linier MATLAB
sehingga terlihat fungsi non-linier tersebut mempunyai 2 solusi yang masing-masing mendekati x = 4
dan x = -4. Kemudian digunakan rumus fzero untuk mencari masing-masing solusi tersebut,
Solusi mendekati 4, a = 4
1>> fzero('x^2-11',4)
3ans =
53.3166
1>> fzero('x^2-11',-4)
230
3ans =
5-3.3166
tmin adalah nama variabel yang digunakan untuk x_minimum dari fungsi matematika.
ymin adalah nama variabel yang digunakan untuk titik minimum f(x_minimum)
fminbnd adalah syntax yang mendeklarasikan function untuk mencari nilai minimum fungsi.
math expression adalah fungsi matematika yang ditulis dalam format string atau di dalam tanda petik.
a,b adalah rentang interval yang mengasosiasikan fungsi/math expression.
f(x)=x³ – 12x²
Sehingga dapat diketahui plot grafik tersebut, dengan melakukan eksekusi syntax berikut
231
Grafik fungsi minimum maksimum MATLAB
sehingga untuk mencari nilai minimum sebagai x_minimum dan y_minimum dengan menggunakan
syntax berikut,
1>> [x min]=fminbnd('x.^3-12*x.^2',-3,7)
3x =
56.9999
7min =
9-244.9987
232
Mencari nilai minimum fungsi pada MATLAB
Sehingga nilai minimum fungsi diatas adalah -244.9987 pada titik 6.9999
Untuk mencari nilai maksimum, anda tinggal mengalikan dengan -1, sehingga diperoleh syntax berikut,
1>> [x max]=fminbnd('-(x.^3-12*x.^2)',-3,7)
3x =
50.00
7max =
90.00
233
Sehingga nilai maksimum fungsi diatas adalah 0 di titik x = 0.
fungsi f(x) adalah fungsi yang diintegral terhadap variabel x dan a,b adalah limit dari fungsi integral.
Grafik fungsi integral dapat diilustrasikan sebagai berikut,
234
Dengan q adalah daerah penyelesaian dari integral f(x).
Syntax quad adalah function yang digunakan untuk menyelesaikan integral atau quadrature dengan
menggunakan metode simpson dalam analisis numerik. Metode simpson merupakan metode yang
umum digunakan dalam perhitungan komputasi integral. Berikut sistematika syntax quad,
q = quad(function,a,b)
Contoh:
Penyelesaian Metode 1:
Ini melakukan eksekusi dengan langsung menuliskan fungsi pada syntax quad.
3hasil =
531.4586
235
Penyelesaian Metode 2:
Buatlah function file yang mendefinisikan fungsi matematika di atas. Misalkan nama fungsi tersebut
‘fungsi’.
1function y = fungsi(x)
2y = x.*exp(0.25);
Setelah itu anda dapat memanggil user defined function yang anda buat dengan menggunakan karakter
‘@’ pada syntax quad. Sebagai berikut,
3hasil =
531.4586
236
Sehingga dapat diketahui hasil integral di atas menggunakan metode simpson adalah 31.4586
Syntax quadl adalah function yang digunakan untuk menghitung integral dengan metode Lobatto
dalam analisis numerik. Metode ini untuk beberapa kasus numerik, mempunyai tingkat akurasi dan
kehalusan grafik yang lebih tinggi dari metode yang digunakan syntax quad. Sistematika penulisan
syntax quadl sama dengan syntax quad hanya saja dengan penambahan huruf kecil ‘L’.
q = quad(function,a,b)
Pada integral di atas dapat diselesaikan dengan syntax ini, sebagai berikut.
3hasil =
531.4586
237
Begitu juga dengan metode 2.
Syntax trapz adalah function yang digunakan untuk menghitung aproksimasi integral berdasarkan titik
data berupa vektor dengan menggunakan metode trapezoidal. Berikut sistematika penulisan syntax
trapz,
p = trapz(x,y)
Contoh:
1 >> x = [1:1:5]
3 x =
5 1 2 3 4 5
7 >> y = x.^2
8
y =
9
238
10
111 4 9 16 25
12
13>> trapz(x,y)
14
ans =
15
16
42
17
Sehingga diperoleh aproksimasi nilai integral adalah 42, dimana nilai eksaknya 41.3333
239
6.4 Symbolic Math Toolbox: Fungsi sym syms dan
symvar Pada MATLAB
Symbolic Math Toolbox adalah toolbox standar yang terinstall pada MATLAB, berisi function untuk
melakukan symbolic operation. Berbeda dengan tutorial-tutorial sebelumnya yang menggunakan
fundamental bahasa pemrograman rendah dengan hasil akhir berupa nilai numerik. Symbolic Math
Toolbox memungkinkan untuk melakukan eksekusi matematika dengan hasil akhir dalam bentuk
aljabar. Dalam penerepan Symbolic Math Toolbox, digunakan fungsi symbolic pada MATLAB.
Syntax utama dari Symbolic Math Toolbox yaitu fungsi sym pada MATLAB.
Fungsi symbolic adalah syntax yang digunakan untuk mendeklarasikan symbolic object dan symbolic
expression. Symbolic object adalah objek yang dapat berupa angka numerik atau variabel yang tidak
mempunyai nilai numerik. Symbolic expression merupakan formula matematika pada MATLAB yang
memuat symbolic object.
Symbolic object dapat berupa angka numerik atau variabel. Terdapat 2 cara untuk membuat symbolic
object yaitu menggunakan syntax sym dan syms
Berikut sistematika syntax sym untuk membuat symbolic object pada MATLAB,
object_name = sym(value)
object_name adalah nama objek yang akan disimpan dalam memory oleh MATLAB.
Syntax sym dideklarasikan sebagai fungsi pada object.
value dapat berupa nilai numerik (tanpa tanda petik) atau variabel (dengan tanda ‘petik’).
Misalkan dibuat object numerik bernama x dengan nilai numerik 3, dapat digunakan syntax
berikut,
1x = sym(3)
240
Terlihat perbedaan antara objek dan variabel yang dapat dilihat melalui workspace.
Misalkan dibuat object yang bernama x dengan nilai variabel y, dapat digunakan syntax berikut,
1x = sym('y')
241
Terlihat nilai objeklah yang digunakan untuk eksekusi perintah pada MATLAB.
Syntax syms adalah fungsi symbolic yang sering digunakan, karena syntax ini lebih sederhana dan
penggunaannya lebih fokus untuk membuat objek berjenis variabel. Berikut sistematika penulisan
syntax sym,
Pada syntax syms hasil eksekusi memberikan output nama object dan variabel yang sama. Berikut
contoh penggunaannya,
1syms x y z
242
Terlihat 3 objek dibuat menggunakan syntax syms pada workspace.
Terdapat 2 cara yang dapat digunakan untuk membuat symbolic expression. Misalkan akan dibuat
symbolic expression dari,
1. Definisi langsung
1>> syms x y z
2>> f=3*x^2+6*y+12*z
243
2.
3. Menggunakan syntax sym
1f=sym('3*x^2+6*y+12*z')
4.
244
C. Mencari Symbolic Variable di Object Expression
Syntax symvar adalah syntax yang digunakan untuk mencari symbolic variable pada suatu object
expression. Berikut sistematika penulisan syntax symvar
symvar adalah syntax untuk memanggil function yang dapat mencari symbolic variable di suatu object
expression.
object_name adalah nama object expression yang akan dieksekusi
n adalah banyaknya variabel yang akan dicari
Contoh:
Akan dicari symbolic variabel dari fungsi f(x) di atas. Dapat digunakan syntax berikut,
Semua variabel
1>> symvar(f)
3ans =
5[ x, y, z]
Hanya 2 variabel
1>> symvar(f,2)
3ans =
5[ x, y]
245
6.5 Symbolic Integration: Penyelesaian Integral
dengan MATLAB
Fungsi symbolic integration adalah penerapan fungsi symbolic untuk penyelesaian integral dengan
MATLAB terhadap limit tak terdefinisi (integral tak tentu/indefinite integral) dan definite integral
menggunakan limit variabel maupun numerik. Symbolic integration dapat dilakukan menggunakan
syntax int pada MATLAB.
Untuk menyelesaikan integral tak tentu dapat dilakukan dengan menggunakan sistematika penulisan
syntax int berikut,
Sebelum menggunakan fungsi int, terlebih dahulu didefinisikan symbolic object untuk melakukan
eksekusi.
Syntax int dideklarasikan untuk melakukan penyelesaian integral dengan MATLAB.
F adalah fungsi metematika yang diintegralkan berupa symbolic expression.
246
int_var adalah argumen yang bersifat opsional. Apabila int_var didefinisikan maka syntax akan
mengintegralkan fungsi terhadap int_var (berupa symbolic object).
Contoh 1:
Penyelesaian:
Dapat digunakan syntax int dengan argumen F sebagai formula matematika dalam bentuk
mathematical expression berikut,
1>> syms x
Contoh 2:
Penyelesaian:
Dapat diketahui formula matematika di atas diintegralkan terhadap variabel y, sehingga dapat
digunakan syntax int dengan F sebagai formula matematika dan dilengkapai int_var y berikut,
247
1>> syms x y
2>> int(3*x^3+2*x^2*y^2+3,y)
Untuk menyelesaikan integral tentu menggunakan syntax int dapat digunakan sistematika penulisan
berikut,
Sebelum menggunakan fungsi int, terlebih dahulu didefinisikan symbolic object untuk melakukan
eksekusi.
Syntax int dideklarasikan untuk melakukan penyelesaian integral dengan MATLAB.
F adalah fungsi metematika yang diintegralkan berupa symbolic expression.
a,b adalah limit integral menggunakan variabel atau nilai numerik.
int_var adalah argumen yang bersifat opsional. Apabila int_var didefinisikan maka syntax akan
mengintegralkan fungsi terhadap int_var (berupa symbolic object)
Contoh 3:
Penyelesaian:
248
Dapat digunakan syntax int dengan argumen F sebagai formula matematika dan a,b sama dengan 0,π
sebagai berikut,
1>> syms x
2>> int(x^2+1,0,pi)
Contoh 4:
Penyelesaian:
Dapat diketahui formula matematika di atas diintegralkan terhadap variabel z, sehingga dapat
digunakan syntax int dengan F sebagai formula matematika dilengkapi argumen int_var z terhadap
limit a,b sama dengan 1,3 sebagai berikut,
1>> syms x y z
2>> int(2*x*y*z+3*y*z^2+1,z,1,3)
249
Sehingga diperoleh penyelesaian integral secara aljabar pada gambar di atas.
250