PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa...

26
Modul Praktikum MATLAB-YF Page 1 PENGENALAN MATLAB 1. Matlab sebagai alat komputasi matriks Matlab merupakan perangkat Lunak yang cocok di pakai sebagai alat komputasi yang melibatkan penggunaan Matriks dan Vektor. Fungsi-fungsi dalam toolbox Matlab dibuat untuk memudahkan dalam perhitungan tersebut. Misalnya dalam menyelesaikan permasalahan sistem persamaan linier, program linier dengan simpleks, hingga sistem yang kompleks seperti peramalan runtun waktu (time series), pengolahan citra, dan lain- lain. Matlab menyediakan fungsi-fungsi khusus untuk menyelesaikan model jaringan syaraf tiruan, dimana pemakai tinggal memasukkan vektor masukan, target, model, dan parameter yang diinginkan ( laju pemahaman, threshold, bias, dll) Matlab memiliki 6 jendela, yaitu : Jendela Perintah (command windows) Merupakan tempat untuk memasukkan tempat untuk memasukkan perintah-perintah yang kita inginkan. Baik perintah maupun keluaran Matlab akan muncul dalam jendela perintah. Jendela daftar Perintah (command history) Jendela ini memuat daftar perintah yang pernah kita ketikkan dalam jendela perintah. Jika ingin mengeksekusi kembali perintah yang pernah dipakai, drag perintah tersebut dari jendela daftar perintah ke jendela perintah Jendela launch pad Jendela ini berisi fasilitas yang disediakan Matlab untuk menjalankan paket perangkat lunak (toolbox) untuk menyelesaikan masalah tertentu. Jendela help Jendela ini dipakai jika kita mengalami kesulitan sewaktu memilih perintah atau formatnya. Jendela direktor Jendela workspace

Transcript of PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa...

Page 1: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 1

PENGENALAN MATLAB

1. Matlab sebagai alat komputasi matriks

Matlab merupakan perangkat Lunak yang cocok di pakai sebagai alat komputasi yang

melibatkan penggunaan Matriks dan Vektor. Fungsi-fungsi dalam toolbox Matlab dibuat

untuk memudahkan dalam perhitungan tersebut. Misalnya dalam menyelesaikan

permasalahan sistem persamaan linier, program linier dengan simpleks, hingga sistem

yang kompleks seperti peramalan runtun waktu (time series), pengolahan citra, dan lain-

lain.

Matlab menyediakan fungsi-fungsi khusus untuk menyelesaikan model jaringan syaraf

tiruan, dimana pemakai tinggal memasukkan vektor masukan, target, model, dan

parameter yang diinginkan ( laju pemahaman, threshold, bias, dll)

Matlab memiliki 6 jendela, yaitu :

Jendela Perintah (command windows)

Merupakan tempat untuk memasukkan tempat untuk memasukkan perintah-perintah

yang kita inginkan. Baik perintah maupun keluaran Matlab akan muncul dalam

jendela perintah.

Jendela daftar Perintah (command history)

Jendela ini memuat daftar perintah yang pernah kita ketikkan dalam jendela perintah.

Jika ingin mengeksekusi kembali perintah yang pernah dipakai, drag perintah tersebut

dari jendela daftar perintah ke jendela perintah

Jendela launch pad

Jendela ini berisi fasilitas yang disediakan Matlab untuk menjalankan paket perangkat

lunak (toolbox) untuk menyelesaikan masalah tertentu.

Jendela help

Jendela ini dipakai jika kita mengalami kesulitan sewaktu memilih perintah atau

formatnya.

Jendela direktor

Jendela workspace

Page 2: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 2

2. Memulai Matlab

Selain jendela-jendela Fasilitas Editor program. File~New~M-File (menekan Alt–N).

3. Matlab dan Manipulasinya

3.1 Matriks

Matriks adalah elemen dasar dalam Matlab. Ada 2 macam matriks yang dapat dipakai

yaitu matriks yang dimasukkan oleh pemakai dan matriks khusus yang disediakan oleh

Matlab.

3.1.1 Matriks Umum

Matrik ini pemakai memasukkan elemen-elemen matriks diantara 2 kurung siku, dimana

sebagai pembatas elemen-elemen matriks dalam satu baris digunakan spasi, dan pembatas

baris matriks digunakan semicolon (;). Baris matriks yang berbeda dapat dituliskan dalam

satu baris ataupun dalam baris yang berbeda.

Contoh :

1 -3 2 4

Matriks A = 4 2 -1 2

-3 -2 1 -4

Perintah di atas ditulis dalam jendela perintah sebagai berikut :

>> A = [ 1 -3 2 4 ; 4 2 -1 2 ; -3 -2 1 -4]

atau

>> A = [ 1 -3 2 4 ;

4 2 -1 2 ;

-3 -2 1 -4]

Sebagai respon setelah penekanan enter, Matlab akan menampilkan matriks yang baru saja

dimasukkan

A =

1 -3 2 4

4 2 -1 2

-3 -2 1 -4

Page 3: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 3

Catatan :

o Apabila kita tidak ingin menampilkan hasil terhadap perintah yang kita ketikkan, maka

ketikkan semicolon (;) pada akhir perintah.

o Bedakan nama variabel yang berupa huruf besar dan huruf kecil

o Menampilkan isi suatu variabel X gunakan perintah disp (X), matlab akan

menampilkan isi variabel X (baik berupa numerik, vektor, matriks, maupun string)

tanpa menuliskan nama variabelnya.

3.1.2 Matriks khusus

Matlab menyediakan fasilitas bagi pemakai untuk membuat matriks khusus secara cepat.

Beberapa matriks khusus dan perintahnya anatara lain :

a. Matriks Diagonal

Adalah matriks bujur sangkar yang semua elemen di luar diagonal utamanya = 0.

Elemen-elemen matriks diagonal dapat dipandang sebagai vektor.

Contoh :

2 0 0

matriks diagonal A = 0 -1 0 memiliki elemen diagonal berupa vektor V =

[ 2 -1 3]

0 0 3

Perintah Diag (V) dalam Matlab dipakai untuk membentuk matriks diagonal yang

elemen diagonalnya adalah vektor V. Perintah yang digunakan untuk membentuk

matriks diagonal A diatas adalah

>> V = [ 2 -1 3]

>> A = diag (V)

b. Matriks Identitas

Adalah matriks diagonal yang semua elemen diagonalnya = 1. Perintah yang dipakai

untuk membentuk matriks identitas ordo n x n adalah eye (n).

Contoh :

Jika n = 3

>> eye (3)

Ans =

1 0 0

Page 4: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 4

0 1 0

0 0 1

3.2 Vektor

Merupakan kasus khusus matriks yaitu hanya terdiri dari sebuah baris (disebut vektor

baris) atau sebuah kolom (disebut vektor kolom).

Pembuatan vektor baris dilakukan dengan menuliskan elemen-elemen vektor (dipisahkan

dengan spasi) diantara 2 buah kurung siku. Sebaliknya untuk vektor kolom, elemen vektor

dipisahkan dengan semicolon (;).

Contoh :

Vektor x = (2 3 -1) dan y = 2

3

-1

Perintah yang digunakan dalam matlab adalah

>> x = [2 3 -1]

x =

2 3 -1

>> y = [2 ; 3 ; -1]

Y =

2

3

-1

Page 5: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 5

3.3 Operasi skalar

Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah

sebagai berikut :

Tabel 1. Operasi Skalar

Operator Keterangan

+ Penjumlahan 2 skalar

- Pengurangan 2 akalar

* Perkalian 2 skalar

/ Pembagian 2 skalar

^ Perpangkatan

Mod (m,n) Sisa hasil bagi m dengan n

Fix (n) Pembulatan terdekat n ke arah 0

Floor (n) Pembulatan terdekat n ke arah - ∞

Ceil (n) Pembulatan terdekat ke arah + ∞

Round (n) Pembulatan n ke bilangan bulat

terdekat

Contoh

A = 3 1 -4 B = 2 -1 3

2 1 5 1 1 -3

Hasil operasi kedua matriks tersebut adalah sebagai berikut :

>> A = [ 3 1 -4 ; 2 1 5]

A =

3 1 -4

2 1 5

>> B = [2 -1 3 ; 1 1 -3]

B =

2 -1 3

1 1 -3

>> A + B

Ans =

5 0 -1

3 2 2

>> A – B

Page 6: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 6

Ans =

1 2 -7

1 0 8

>> A * B

??? Error using === > *

Karena ukuran matriksnya 3 x 2, kecuali matriks B di lakukan transpose menjadi 3 x 2

Perintah yang digunakan :

>> B ‘ = C

>> A * B’ atau C = A * B’ atau D = A * C

Ans =

-7 16

18 -12

>> mod (A.B)

Ans =

1 0 2

0 0 -1

3.4 Manipulasi Matriks

3.4.1 Transpose Matriks

Transpose matriks menukarkan baris dan kolom pada sebuah matriks. Perintah yang

digunakan adalah ‘.

A’ = transpose (A)

Contoh :

A = 3 1 -4

2 1 5

Perintah yang digunakan adalah

>> A’

ans =

3 2

1 1

Page 7: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 7

-4 5

3.4.2 Ordo matriks

Perintah size (A) akan menghasilkan ordo matriks A. Jika A berupa suatu vektor, maka

hasilnya berupa jumlah elemen dalam vektor tersebut. Statemen [m,n] = size (A) akan

menyebabkan variabel m dan n berisi ordo matriks A.

Contoh :

A = 3 1 -4

2 1 5

>> A = [3 1 -4 ; 2 1 5]

>> [m,n] = size (A)

m =

2

n =

3

3.4.3 Invers matriks

Contoh :

>> A = [ 2 -1 -1 ;

-3 2 1 ;

2 5 1]

>> B = inv (A)

>> A * B

3.4.4 Menjumlahkan elemen diagonal

Perintah Trace digunakan untuk menjumlahkan semua elemen yang berada di diagonal

utama dan untuk mencari nilai eigen suatu matriks secara iteratif.

>> B = [ 4 2 -1 ; 3 1 8 ; 9 3 2]

>> k = trace (B)

>> k = trace (B’)

Hasilnya adalah trace (B) = 4+1+2 = 7

Page 8: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 8

3.4.5 Menjumlahkan elemen-elemen matriks

Matriks berordo m x n.

Perintah sum (A) atau sum (A,1) akan menjumlahkan semua elemen dalam satu kolom,

akan menghasilkan suatu vektor baris 1xn.

Perintah yang digunakan untuk penjumlahan perbaris adalah sum (A,2).

Contoh :

>> A = [2 -1 -1 ; -3 2 1 ; 2 5 1]

>> sum (A)

>> sum (A,2)

3.5 Mengakses Elemen Matriks

3.5.1 Mengakses sebuah elemen matriks

- Menulis nama matriks diikuti indeksnya diantara 2 buah kurung

- Penggunakan kurung biasa ( ‘( )’ ) digunakan untuk mengakses elemen matriks atau

juga sebagai parameter fungsi

- Penggunaan kurung siku ( ‘[ ]’ ) digunakan untuk membentuk matriks.

Contoh :

A = 16 2 3 13

5 11 10 8

9 7 6 12

4 14 15 1

>> A (4,2) hasilnya 14 ( 4 = baris 4 ; 2 = kolom 2)

>> A (4, : ) hasilnya ?

>> A ( : , 2 ) hasilnya ?

3.5.2 Mengakses seluruh elemen dalam satu baris/kolom

Elemen matriks bisa diakses satu persatu baik per baris maupun per kolom. Proses

perhitungan yang melibatkan elemen dalam satu baris/kolom dapat diakses dengan cepat,

selain itu matlab menyediakan fasilitas untuk menghapus/menambahkan baris/kolom, serta

penggabungan 2 buah matriks.

Ada beberapa cara memprosesannya, adalah sebagai berikut :

a. Mengakses sebuah elemen matriks

Menuliskan nama matriks diikuti indeksnya diantara 2 kurung kurawal

Perhatikan perbedaan penggunaan kurung biasa (‘( )’) dan kurung siku (‘[ ]’).

Page 9: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 9

Kurung biasa (‘( )’) digunakan untuk mengakses elemen matriks atau bisa sebagai

parameter fungsi.

Kurung siku (‘[ ]’) digunakan untuk membentuk matriks.

Contoh :

Misalkan A adalah matrik ajaib yang diperoleh dengan perintah magic, dimana akan

mengakses elemen baris ke-4 kolom ke-2 dilakukan dengan statement A(4,2)

>> A = magic (4)

>> A(4,2)

b. Mengakses seluruh elemen dalam satu baris/kolom

Mengakses seluruh elemen dalam satu baris/kolom digunakan indeks titik dua (:).

Beberapa cara mengakses seluruh elemen adalah sebagai berikut :

o Jika akan mengakses suatu vektor yang isinya adalah seluruh elemen baris ke-4

matriks A dilakukan dengan statement A(4, : ).

o Jika akan mengakses suatu vektor yang isinya adalah seluruh elemen kolom ke-4

matriks A dilakukan dengan statement A( :, 4).

o Jika akan menghasilkan suatu vektor yang isinya elemen matriks pada kolom-n,

mulai baris-1 hingga baris-n dilakukan dengan statement A(1:m, n).

Misalkan akan menghitung jumlah elemen baris 3, cukup gunakan sum(A(3, : )).

Contoh :

>> A = magic (4)

>> A(4,:)

>> A(: ,4)

>> A(2:3 ,4)

>> sum (A(3, : ))

c. Menambahkan baris/kolom matriks

Jika A berordo 4x4, maka statement A(4,5)

Misalkan A = ones(4,4)

Maka statement A(4,5) = 7 akan menyebabkan matriks A berordo 4 x 5.

Semua elemen pada kolom ke-5, kecuali A(4,5)=7

Contoh :

>> A = ones (4)

>> A (4,5) = 7

Penambahan elemen dapat dilakukan beberapa baris/kolom sekaligus.

Misalnya ststemen A (2:4, 5 :6) = 12 akan menambahkan semua elemen

pada baris-2 hingga 4, kolom 5 hingga 6 (jadi ditambahkan 2 kolom baru)

dengan bilangan 12.

Contoh :

>> A = ones (4)

>> A (2:4, 5 :6) = 12

Page 10: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 10

Apabila indeks matriks berada dalam range matriks mulai-mula,

maka efeknya adalah menggantikan (bukan menambahkan) elemen semula.

Contoh :

>> A = ones (4)

>> A (2:4, 5:2) = 12

d. Menghapus baris/kolom matriks

Cara menghapus baris/kolom matriks hampir sama dengan penambahan

baris/kolom, bedanya di sisi kanan assignment adalah sepasang kurung siku

kosong.

Contoh :

>> A = magic (4)

>> A(: , 3) = [ ] statement menghapus kolom ke-3 matriks A.

>> A(2 , : ) = [ ] statement menghapus baris ke-2 matriks A.

Misalkan menggunakan statement A(2,3) = [ ] akan terjadi kesalahan karena jika

dihapus maka hasilnya bukan lagi suatu matriks.

e. Menggabungkan beberapa matriks

Penggabungan matriks dilakukan dengan menempatkan matriks kedua disebelah

matriks pertama.

Contoh :

>> A = ones (4) berordo 4 x 4

>> [A magic(4) ] Statement menambahkan matriks magic (4) di sebelah

kanan matriks A sehingga A berordo 4 x 8

Misalkan menambahkan magic (4) di bawah matriks A, statement yang digunakan

adalah [ A ; magic(4) ]

Contoh :

>> A = ones (4) berordo 4 x 4

>> [A ; magic(4) ]

Catatan :

Penambahan matriks dalam kolom dan baris sekaligus harus menghasilkan matriks yang

ordonya benar.

Page 11: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 11

PEMROGRAMAN MATLAB

1. Membentuk M-File

Merupakan sederetan perintah matlab yang ditulis secara berurutan sebagai sebuah

file

Nama filenya bereksentsi m, menandakan bahwa file adalah file matlab

M-file dapat ditulis sebuah script yang sederhana atau sebuah fungsi yang menerima

argumen atau masukan dan menghasilkan keluaran

Memberikan kontrol lebih banyak dibandingkan dengan command line.

Bisa melakukan percabangan, perulangan, dan lain-lain.

Struktur program mirip dengan Bahasa C, dimana membagi progrm dalam blok

program berupa fungsi-fungsi. Tiap fungsi dapat memanggil fungsi lain.

Script dalam jendela perintah berguna untuk menyelesaikan permasalahan yang

pendek.

Dapat dipakai sebagai aplikasi sesuai keingginan pemakai.

Perbedaan m-fie sebagai script dan m-file sebagai fungsi

Script m-file Function m-file

1. Tidak menerima argument

input atau menghasilkan

argumen output

2. Pengoperasian data di dalam

workspace

1. Dapat menerima argument input

atau menghasilkan argumen output

2. Secara default, variabel internalnya

adalah local terhadap fungsi

Script adalah

m-file yang sangat sederhana karena tidak memerlukan argument input atau output.

Digunakan untuk otomatisasi sederet command matlab

Mengoperasikan data yang ada di dalam workspace atau membuat data baru

Contoh script sederhana untuk menampilkan grafik fungsi sinus

Ketik perintah berikut pada command window

>> x=30:180;

alfa=deg2rad(x);

y=sin(alfa);

plot(x,y);

Page 12: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 12

fungsi adalah

m-file yang menerima argument input dan menghasilkan argument output.

Digunakan untuk otomatisasi sederet command matlab

Perintah membuka jendela M-File adalah File ~ New ~ Blank M File, maka akan tampil

kotak dialog sebagai berikut :

Fungsi dalam Matlab terdiri dari 2 (dua) bagian yaitu :

a. Definisi fungsi

Bentuknya adalah :

Function <argumen keluaran> = <nama fungsi> (<argumen masukan>)

Contoh :

function y = average (x)

dimana :

function = kata kunci

y = argumen keluaran, bisa berupa variabel skalar, vektor maupun matriks

average = nama fungsi

x = argumen masukan

Untuk mengetik program

Untuk mengedit &

menjalankan program

Page 13: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 13

catatan :

Argumen masukan dan argumen keluaran, bisa berupa variabel skalar, vektor

maupun matriks, atau tanpa argumen sama sekali.

Argumen masukan boleh lebih dari elemen dan dipisahkan dengan tanda koma.

Argumen keluaran boleh lebih dari elemen, dipisahkan dengan tanda koma dan

diletakkan diantara kurung siku. Misalnya : function [x,y,z] = sphere(theta, phi,

rho)

b. Tubuh fungsi

Berisi semua perintah matlab yang berguna untuk membuat komputasi dan

memberikan harga kepada argumen keluaran.

Statemen dalam tubuh fungsi bisa berupa pemberian nilai pada suatu variabel,

masukan/keluaran, fungsi kontrol, iterasi, ataupun pemanggilan kepada fungsi lain.

Tanda % = membuat komentar

Contoh :

function y = average (x)

% fungsi untuk menghitung rata-rata elemen di dalam vektor x

y = sum(x)/length(x) ;

Catatan :

Agar dapat dijalankan dengan benar, maka program harus disimpan ke dalam file

yang namanya sama (berekstensi *.m) dengan nama fungsi.

2. Masukan dan Keluaran

2.1 Perintah Masukan-Keluaran dari Keyboard

Sintaksnya adalah : nama_variabel = input (‘teks’)

Perintah yang digunakan untuk memasukkan data vektor dari keyboard ke dalam

variabel x, adalah :

x = input (‘data = ‘)

Perintah yang digunakan untuk menampilkan isi suatu variabel, adalah :

a. Perintah disp

Sintaksnya adalah : disp (nama_variabel)

Page 14: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 14

contoh :

disp (x)

catatan :

Apabila argumen disp berupa string (teks diantara 2 tanda petik), maka akan

ditampilkan teks tersebut.

b. Perintah fprintf

Sintaksnya adalah : fprintf (format, A, ...)

dimana :

format adalah bentuk penulisan yang akan ditampilkan di layar seperti jumlah

angka desimal, tab, lebar karakter, penulisan di baris baru, dll.

A, ... adalah nama variabel yang isinya dicetak di layar.

Format penulisan bilangan riil adalah sebagai berikut :

% - 12.5 e

12 : lebar penulisan (optional)

- : tanda +/- (optional)

5 : jumlah digit desimal (optional)

e : konversi karakter (harus ada)

Konversi karakter yang umum di pakai, adalah

Konversi Keterangan

‘%c’' Karakter tungal

‘%d’ Notasi desimal dengan tanda +/-

‘%e’ Notasi eksponen

‘%f’ Notasi titik tetap (fixed point)

‘%i’ Notasi desimal dengan tanda +/-

2.2 Perintah Masukan-Keluaran dari berkas

Membuka berkas

fid = fopen(filename, permission)

Menulis isi variabel ke berkas

fprintf (fid, format, A, ...)

Page 15: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 15

Dimana :

fid : nama variabel identitas file yang dipakai pada perintah fopen

format : format penulisan

A, ... : nama variabel yang isinya dituliskan pada berkas.

Membaca berkas teks

A = fread(fid,size, precision)

Size : jumlah data yang dibaca dan ditempatkan di variabel A

Precision : menyatakan format teks yang dibaca (integer dengan tanda, dll)

Contoh 1 (Perintah menggunakan fprintf):

Ketik perintah berikut di Editor dan simpan dengan nama rata2.m

function rata2 clc x = input('masukkan data vektor x = ') rata = sum(x)/numel(x); sd = sqrt (dot(x,x)/numel(x)-rata^2); fprintf ('Rata-rata = %5.2f ; std dev = %5.2f ',rata,sd) end

fungsi dieksekusi dari command matlab, menghasilkan :

masukkan data vektor x = [2 -3 4 6 4 1]

x =

2 -3 4 6 4 1

Rata-rata = 2.33 ; std dev = 2.87 >>

Page 16: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 16

Contoh 2 (menggunakan disp tanpa function) :

Ketik perintah berikut di Editor dan simpan dengan nama luas3.m % perintah untuk mengosongkan memory MATLAB dari semua variabel yang

pernah diolah

clear all; % perintah untuk membersihkan layar command window

clc; disp('---------------------------------------'); disp('Progmam Menggunakan Disp Tanpa Function'); disp('---------------------------------------'); pjg = input('Panjang = '); lbr = input('Lebar = '); luas = pjg * lbr;

% menampilkan dengan penggabungan 2 tipe data string dan numerik

(luas, sehingga fungsi % disp membutuhkan tanda [ ] di dalam tanda

kurungnya dan variabel luas yang bertipe

% numerik harus dikonversi menjadi string terlebih dahulu (menggunakan

num2str) disp(['Luas =' num2str(luas)]);

fungsi dieksekusi dari command matlab, menghasilkan :

---------------------------------------

Progmam Menggunakan Disp Tanpa Function

---------------------------------------

Panjang = 2

Lebar = 5

Luas =10

Contoh 5 :

Ketik perintah berikut di Editor dan simpan dengan nama statistik.m function [rata,tengah] = statistik (u) %fungsi utama n = length(u); rata=rata_rata(u,n); tengah=median(u,n);

function a=rata_rata(v,n) % sub fungsi % menghitung rata-rata. a = sum(v)/n;

function m = median (v,n) % sub fungsi % menghitung median; w = sort(v); if rem(n,2)==1 m = w((n+1)/2); else m = (w(n/2) + w(n/2+1)/2) ; end

Fungsi dieksekusi dari command matlab, menghasilkan :

>> x=[3 5 1 8 3 2 6 5]

x =

3 5 1 8 3 2 6 5

Page 17: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 17

>> [rata,nilai_tengah] = statistik(x)

rata =

4.1250

nilai_tengah =

5.5000

3. Statemen Kendali

Mengontrol alur program

Format perintah 1 percabangan :

If expression

Statements

end

dimana :

expression adalah kondisi yang menentukan arah percabangan

statements adalah kondisi jika benar maka akan dilakukan

Format perintah lebih dari 1 percabangan

If expression

Statements1

Else

Statements2

end

Contoh 1 (IF tanpa function)

Ketik perintah berikut di Editor dan simpan dengan nama jika1.m clear all;

clc ;

disp('---------------------------------------------------');

disp('Program Pencabangan (Tanpa function) menggunakan IF');

disp('---------------------------------------------------');

uts=input('Nilai UTS = ');

uas=input('Nilai UAS = ');

tgs=input('Nilai Tugas = ');

absn=input('Nilai absen = ');

na=(uts*30/100)+(uas*30/100)+(tgs*30/100)+(absn*10/100);

disp(['Nilai Akhir = ' num2str(na)]);

if na>80

disp('Huruf Mutu = A');

Page 18: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 18

elseif na<=80 & na>70

disp('Huruf Mutu = B');

elseif na<=70 & na>60

disp('Huruf Mutu = C');

elseif na<=60 & na>50

disp('Huruf Mutu = D');

else

disp('Huruf Mutu = E');

end;

Perintah di atas jika dieksekusi, menghasilkan :

---------------------------------------------------

Program Pencabangan (Tanpa function) menggunakan IF

---------------------------------------------------

Nilai UTS = 70

Nilai UAS = 50

Nilai Tugas = 80

Nilai absen = 90

na =

69

Nilai Akhir = 69

Huruf Mutu = C

Contoh 2 (tanpa function)

Ketik perintah berikut di Editor dan simpan dengan nama jika2.m clear all;

clc ;

disp('-----------------------------------------------------

');

disp('Program Pencabangan (Tanpa function) menggunakan

CASE');

disp('-----------------------------------------------------

');

disp('Pilihan Rumus Perhitungan');

disp('1. Luas Kotak');

disp('2. Volume Kotak');

disp(' ');

pilih=input(' Pilihan Rumus yang akan digunakan = ');

switch pilih

case 1

disp('Hitung Luas Kotak');

pjg=input('Panjang Kotak = ');

lbr=input('Lebar Kotak = ');

tgi=input('TinggiKotak = ');

luas=2*pjg+2*lbr+2*tgi;

disp(['Luas Kotak = ' num2str(luas)]);

case 2

Page 19: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 19

disp('Hitung Volume Kotak');

pjg=input('Panjang Kotak = ');

lbr=input('Lebar Kotak = ');

tgi=input('TinggiKotak = ');

vol=pjg*lbr*tgi;

disp(['Volume Kotak =' num2str(vol)]);

otherwise

disp('Tidak ada Pilihan');

end;

Perintah di atas jika dieksekusi, menghasilkan :

-----------------------------------------------------

Program Pencabangan (Tanpa function) menggunakan CASE

-----------------------------------------------------

Pilihan Rumus Perhitungan

1. Luas Kotak

2. Volume Kotak

Pilihan Rumus yang akan digunakan = 1

Hitung Luas Kotak

Panjang Kotak = 1

Lebar Kotak = 2

TinggiKotak = 3

Luas Kotak = 12

4. Statemen Perulangan : Struktur For dan While

Digunakan untuk mengulang-ulang suatu blok perintah

2 bentuk perulangan, yaitu :

a. Struktur For

Jumlah perulangan yang akan dilakukan ditentukan oleh pemakai.

Format perintahnya :

For variable = skalar : skalar expression

Statements

......

Statements

end

b. Struktur While

Jumlah perulangan ditentukan dari kondisi syarat yang ditetapkan.

Page 20: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 20

Selama kondisi bernilai benar, maka perulangan terus dilakukan.

Format perintahnya :

While expression op_rel expression

Statements

end

dimana :

op_rel adalah ==, <, >, <=, >=, atau ~=.

Contoh 1 (IF tanpa function)

Ketik perintah berikut di Editor dan simpan dengan nama perulangan1.m clear all;

clc ;

disp('------------------------------------------------------

-------');

disp('Program Statement Perulangan (Tanpa function)

menggunakan For');

disp('------------------------------------------------------

-------');

% Meminta input batas iterasi dari user dan disimpan dalam

variabel ndat

ndat=input('batas perulangan (iterasi) = ');

% Mulai melakukan iterasi

% iterasi pertama iterasi maju dan itersi kedua iterasi

mundur (-1)

for n = 1 : ndat

for m = ndat :-1:1

a(n,m)=n^2+(5*m)

end;

end;

Perintah di atas jika dieksekusi, menghasilkan :

-------------------------------------------------------------

Program Statement Perulangan (Tanpa function) menggunakan For

-------------------------------------------------------------

batas perulangan (iterasi) = 2

a =

Page 21: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 21

0 11

a =

6 11

a =

6 11

0 14

a =

6 11

9 14

Contoh 2 (WHILE tanpa function)

Ketik perintah berikut di Editor dan simpan dengan nama perulangan2.m clear all;

clc ;

disp('------------------------------------------------------

---------');

disp('Program Statement Perulangan (Tanpa function)

menggunakan While');

disp('------------------------------------------------------

---------');

vkolom=input('Volume Kolom (ltr) = ');

vember=input('Volume ember(ltr) = ');

nember = 0;

while vkolom > 0

nember=nember+1;

vkolom=vkolom-vember;

end;

disp(['ember dibutuhkan = ' num2str(nember)]);

Perintah diatas jika dieksekusi menghasilkan :

---------------------------------------------------------------

Program Statement Perulangan (Tanpa function) menggunakan While

---------------------------------------------------------------

Volume Kolom (ltr) = 2

Volume ember(ltr) = 1

ember dibutuhkan = 2

Page 22: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 22

5. Pembuatan Grafik

Fasilitas grafik yang disediakan oleh matlab : garis, histograf, dll

Grafik 2 dimensi (yang akan digunakan) maupun 3 dimensi

Langkah-langkah membuat grafik :

a. Tentukan interval sumbu x dimana grafik di buat

Statemen x = a : b : c

b. Tuliskan fungsi yang akan dibuat grafiknya

Statemen p = [an an-1 .....a2 a1 a0) polyval(p,x)

c. Pilih jendela dan posisi di mana grafik digambarkan

Statemen subplot (m,n,p)

d. Panggil fungsi penggambaran

Contoh 1 :

Ketik perintah berikut di Editor dan simpan dengan nama Grafik3.m

function Grafik3

x = -5 : 0.1:5;

p = [1 2 -5];

y = polyval (p,x);

figure(1)

subplot(1,1,1)

plot(x,y);

Perintah diatas jika dieksekusi menghasilkan :

Contoh 2 :

Ketik perintah berikut di Editor atau di command window dan simpan dengan nama

grafis1.m

Page 23: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 23

sdt = [0:360];

y = sin(sdt*pi/180);

plot(sdt,y)

title('Grafik Sinus');

xlabel('sudut dalah derajat');

ylabel('Nilai Sinus');

Perintah diatas jika dieksekusi menghasilkan :

Mengubah Garis, Tanda dan Warna

Statementnya adalah plot(x,y,simbol)

Dimana :

x dan y : variabel data yang akan diplot

simbol : karakter yang akan digunakan untuk menggantikan format tampilan default

grafik, dapat berupa karakter tunggal maupun kombinasi dari beberapa karakter.

Misalnya : plot (x,y,’*r’)

Simbol Garis

- Solid line

: Dotfed line

-. Dash dot line

- - Dash line

Simbol Tanda

. Point

O Cicle

X Cross

* Asterisk

S Squerce

Page 24: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 24

D Diamond

V Triangle (down)

^ Triangle (up)

< Triangle (left)

> Triangle (right)

P Pentagram

H Hexagram

Simbol Warna

B Blue

G Green

R Red

C Cyan

M Magenta

Y Yellow

K Bkack

/w white

Contoh 3 :

Ketik perintah berikut di Editor atau di command window dan simpan dengan nama

grafis4.m

sdt = [0:360];

y = sin(sdt*pi/180);

% *r garis warna merah

plot(sdt,y,'r')

title('Grafik Sinus');

xlabel('sudut dalah derajat');

ylabel('Nilai Sinus');

%menampilkan grid

grid on;

Perintah diatas jika dieksekusi menghasilkan :

Page 25: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 25

Mengatur Properti Warna & Huruf pada Grafik

Warna dasar dari grafik defaultnya adalah putih

Dapat mengubah dengan teknik pengaturan warna komposit

Sintaks dasar memberi warna pada area grafik :

Set (gca,’color’, [R G B]);

Sintaks dasar memberi nama pada judul grafik :

Title (‘teks’,’color’, [R G B]);

Sintaks dasar memberi nama pada label x grafik :

xlabel(‘teks’,’color’, [R G B]);

Sintaks dasar memberi nama pada label y grafik :

ylabel(‘teks’,’color’, [R G B]);

dimana :

R = nilai 0.0 – 1.0 untuk level warna merah

G = nilai 0.0 – 1.0 untuk level warna Hijau

B = nilai 0.0 – 1.0 untuk level warna biru

Mengatur huruf pada Area Grafik

Set (gca, fontproperty, value)

title (‘teks’, fontproperty, value)

xlabel (‘teks’, fontproperty, value)

ylabel(‘teks’, fontproperty, value)

fontproperty yang dapat digunakan

Fontproperty Value

Fontname Arial, time newroman, dll

Fontweight Bold, normal

Fontsize 1, 2, 3 s.d 30

Fontangle Italic, normal

clear all;

clc ;

Page 26: PENGENALAN MATLAB · 2017. 6. 13. · Modul Praktikum MATLAB-YF Page 5 3.3 Operasi skalar Beberapa skalar yang dapat dioperasikan untuk menghasilkan skalar yang baru, adalah sebagai

Modul Praktikum MATLAB-YF Page 26

disp('----------------------------------------');

disp('Modifikasi Grafik dengan Warna dan Huruf');

disp('----------------------------------------');

sdt = [0:10:180];

y = sin(sdt*pi/180);

% oy bulat warna Kuning

plot(sdt,y,'oy')

% Agar Penggambaran kurva berikutnya bersifat

% overlay dengan kurva sebelumnya

hold on;

set(gca,'color', [0.5 0.5 0.4],'fontname','arial');

title('Grafik Sinus','color',[0 0 1],

'fontweight','bold','fontsize',16);

xlabel('sudut dalah derajat','color',[.5 .4 1],

'fontweight','bold','fontsize',9);

ylabel('Nilai Sinus','color',[1 0 .5],

'fontweight','bold','fontsize',9);

%menampilkan grid

grid on;