modul praktikum - · pdf filedemo program, dan sebagainya. ... ­ pengurangan * perkalian...

30
MODUL PRAKTIKUM MATLAB Oleh : Team Labkomputer UMM DIVISI PENDIDIKAN DAN PELATIHAN LEMBAGA INFORMASI DAN KOMUNIKASI UNIVERSITAS MUHAMMADIYAH MALANG 2011

Upload: danghuong

Post on 31-Jan-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MODUL PRAKTIKUM

MATLAB

Oleh :

Team Labkomputer UMM

DIVISI PENDIDIKAN DAN PELATIHAN

LEMBAGA INFORMASI DAN KOMUNIKASI

UNIVERSITAS MUHAMMADIYAH MALANG

2011

Page 2: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 1

BAB I

PENGENALAN MATLAB

I.1 DEFINISI MATLAB

MATLAB (Matrix Laboratory) adalah bahasa tingkat tinggi dan interaktif yang

memungkinkan untuk melakukan komputasi secara intensif. MATLAB telah

berkembang menjadi sebuah environment pemrograman yang canggih yang berisi

fungsi­fungsi built­in untuk melakukan pengelolahan sinyal, aljabar linear dan

kalkulasi matematis lainnya. MATLAB juga berisi toolbox yang berisi fungsi­

fungsi tambahan untuk aplikasi khusus. Penggunaan MATLAB meliputi bidang­

bidang :

­ Matematika dan Komputasi

­ Pembentukan Algorithm

­ Akuisisi Data

­ Pemodelan, simulasi dan Pembuatan Prototype

­ Analisis Data, Explorasi, dan Visualisasi

­ Grafik Keilmuan dan Bidang Rekayasa

I.2 MEMULAI MATLAB

Setelah melakukan instalasi MATLAB pada PC, perhatikan icon MATLAB pada

tampilan desktop kemudian double­click pada icon tersebut. Selanjutnya akan

muncul tampilan seperti pada gambar berikut ini.

Page 3: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 2

Gambar 1. Tampilan awal MATLAB

Pada tampilan awal MATLAB, terlihat beberapa jendela yang merupakan bagian

penting di dalam MATLAB, antara lain :

a. Jendela perintah (Command Window)

Pada command window, semua perintah matlab dituliskan dan diekskusi.

Kita dapat menuliskan perintah perhitungan sederhana, memanggil fungsi,

mencari informasi tentang sebuah fungsi dengan aturan penulisannya (help),

demo program, dan sebagainya. Setiap penulisan perintah selalu diawali

dengan prompt ‘>>’. Misal, mencari nilai sin 750, maka pada command

window kita dapat mengetikkan:

>> sin(30*pi/180) ans =

0.5000

b. Jendela ruang kerja (Workspace)

Jendela ini berisi informasi penggunaan variabel di dalam memori MATLAB.

Misalkan kita akan menjumlahkan dua buah bilangan, maka pada command

window kita dapat mengetikkan:

Directory yang sedang aktif

Menu Memulai / membuka M­file

Daftar variable yang aktif

MATLAB start

Command window

Page 4: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 3

>> bilangan1=7

bilangan1 = 7

>> bilangan2=9 bilangan2 =

9 >> hasil=bilangan1+bilangan2 hasil =

16

Maka pada workspace akan menampilkan variable yang sedang digunakan.

Gambar 3. Tampilan workspace

Untuk melihat variabel yang aktif saat ini, kita dapat menggunakan perintah

who.

>> who Your variables are: bilangan1 bilangan2 hasil

c. Jendela history (Command History)

Jendela ini berisi informasi tentang perintah yang pernah dituliskan

sebelumnya. Kita dapat mengambil kembali perintah dengan menekan tombol

panah ke atas atau mengklik perintah pada jendela histori, kemudian

melakukan copy­paste ke command window.

Gambar 3. Tampilan command history

Page 5: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 4

BAB II

VARIABEL DAN OPERATOR

II.1 VARIABEL

Seperti bahasa pemrograman lainnya, matlab pun memiliki variabel, tetapi dalam

penulisannya, variabel di dalam matlab tidak perlu dideklarasikan, karena matlab

mampu mengenali tipe data dari variable dari isi variabel tersebut. Aturan

penulisan variabel pada matlab sama dengan aturan pada bahasa pemrograman

lainnya, yaitu bersifa case sensitive, diawali dengan huruf dan selanjutanya boleh

menggunakan gabungan huruf angka atau tanda garis bawah. Matlab mampu

mengenali sampai 31 karakter pertama, selanjutnya diabaikan.

Contoh : >> var_1=7.7 var_1 =

7.7000 >> var2=[2 3 4] var2 =

2 3 4

Semua tipe data di matlab memiliki bentuk yang sama, yaitu array. Array minimal

berukuran 0x0 dan dapat bertambah menjadi array n x m dimensi dengan sebarang

ukuran. Matlab mempunyai beberapa tipe data dasar (atau class), yaitu: logical,

char, numeric, cell, structure, java classes, function handles. Adapun variable

khusus pada matlab, yaitu :

VARIABEL KHUSUS

NILAI

ans Untuk hasil apapun

pi Perbandingan antara keliling lingkaran dengan garis tengahnya

eps Bilangan terkecil sedemikian rupa sehingga bila ditambahkan pada satu, menghasilkan bilangan lebih besar dari satu pada suatu komputer

Page 6: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 5

flops Jumlah operasi floating point

inf Tak berhingga, misalnya 1/0

Nan atau nan Bukan suatu bilangan, misalnya 0/0

i dan j i=j=√­1

nargin Jumlah argumen input suatu fungsi

nargout Jumlah argumen output suatu fungsi

realmin Bilangan real positif terkecil yang dapat digunakan

realmax Bilangan real positif terbesar yang dapat digunakan

II.2 OPERATOR Pada matlab, operator diklasifikasikan menjadi tiga bagian, yaitu:

a. Operator Aritmatika

Operator aritmatika digunakan untuk mengerjakan komputasi numeric.

OPERATOR KETERANGAN

+ Penjumlahan

­ Pengurangan

* Perkalian (aturan matriks)

.* Perkalian masing­masing elemen yang

bersesuaian (aturan array)

/ Pembagian kanan (matriks)

./ Pembagian kanan (array)

\ Pembagian kiri (matriks)

.\ Pembagian kiri (array)

^ Perpangkatan (matriks)

.^ Perpangkatan (array)

: Langkah

Page 7: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 6

b. Operator Relasional

Operator relasional digunakan untuk membandingkan operand­operand secara

kuantitatif.

OPERATOR KETERANGAN

== Sama dengan

~= Tidak sama dengan

< Kurang dari

> Lebih dari

<= Kurang dari sama dengan

>= Lebih dari sama dengan

c. Operator Logika

OPERATOR KETERANGAN

& Akan menghasilkan nilai 1 jika kedua

elemen yang bersesuaian memiliki

nilai true dan 0 untuk lainnya

| Akan bernilai 1 jika salah satu

elemennya true

~ Komplen dari elemen yang diinputkan

xor Akan bernilai 1 jika salah satu dari

kedua elemen memiliki nilai berbeda

dan bernilai nol jika sama

Page 8: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 7

BAB III

ARRAY, MATRIKS DAN POLINOMIAL

III.1 ARRAY

MATLAB menangani array secara intuitif. Untuk membuat array dalam

MATLAB, yang perlu dilakukan hanyalah mengetikkan kurung kotak kiri,

memasukkan elemen­elemen dengan dipisahkan oleh spasi atau koma, kemudian

menutup array dengan kurung kotak kanan. Berikut ini akan diberikan beberapa

contoh assignment untuk array :

a. Pengalamatan array

Dalam MATLAB elemen­elemen array diakses menggunkan

subcript; misalnya x(1) adalah elemen pertama x, x(2) adalah

elemen kedua x, dan seterusnya.

Contoh :

1. » x=[2 4 6 8 10]

dapai dilihat bahwa x(1)=2, x(2)=4, x(3)=6, x(4)=8,

x(5)=10

» x(4) %elemen keempat x

ans =

8

2. » x([1 3 5])=[0.2 0.5 0.7]

maka x(1)=0.1, x(3)=0.5, x(5)=0.7 dan x(i) untuk i=2,3,4

bernilai 0.

3. nilai array dapat juga diisikan sebagai berikut :

» x=4:1:9

x =

4 5 6 7 8 9

artinya bahwa nilai array yang diisikan dengan angka dari 4

sampai 9 dengan penambahan 1 (default). Penambahan

Page 9: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 8

dapat bernilai sebarang, bahkan dapat juga negatif, seperti

contoh berikut :

» z=10:­2:1

z =

10 8 6 4 2

4. Memisahkan elemen dengan titik koma membuat elemen berada

dalam baris yang berbeda, seperti contoh berikut :

» y=[1;3;5;7;9]

y =

1

3

5

7

9

b.Menambahkan elemen array » x=[x 1 2] % array sebelumnya

» x=[x 2 4] %menambahkan 2 elemen dibelakang

x =

1 2 2 4

» x=[1 2 x 3]%menambahkan dua elemen di

depan,

satu dibelakang

x =

1 2 1 2 2 4 3

c. Mengakses sebagian elemen array

Dari contoh sebelumnya misalkan hanya diakses elemen ke 2

sampai ke empat

» y=x(2:4)

y =

2 1 2

Page 10: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 9

d. Menghapus elemen array

Dapat dilihat contoh berikut :

Menghapus elemen terakhir dari array

» n=[1 3 5 7 9]

n =

1 3 5 7 9

» n=n(1:length(n)­1)

n =

1 3 5 7

a. Menghapus elemen pada index tertentu

Misalkan z =[1 2 3 4 5 ] dan ingin dihapus z pada index

ke 2 dan 4 maka:

» z=[1 2 3 4 5]

z =

1 2 3 4 5

» z([2 4])=[]

z =

1 3 5

III.2 MATRIKS

Matlab menggunakan matriks sebagai dasar komputasinya. Secara garis besar matlab

membagi matriks menjadi 2 bagian, yaitu :

a. Matriks Khusus

1. Matriks Nol

Matriks yang elemennya bilangan nol

Bentuk umum :

>> zeros(n,m)

Contoh :

>> zeros(4,5)

Page 11: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 10

ans =

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

0 0 0 0 0

2. Matriks Satu

Matriks yang elemennya bilangan satu

Bentuk umum :

>>ones(n,m)

Contoh :

>> ones(2,3)

ans =

1 1 1

1 1 1

3. Natriks Identitas

Bentuk umum :

>>eye(n)

Contoh :

>> eye(4)

ans =

1 0 0 0

0 1 0 0

0 0 1 0

0 0 0 1

Page 12: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 11

4. Matriks Bujur Sangkar Ajaib

Matriks yang memiliki hasil jumlah yang sama pada elemen­elemen

baris, kolom dan diagonalnya.

Bentuk umum :

>>magic(n)

Contoh :

>> magic(3)

ans =

8 1 6

3 5 7

4 9 2

5. Matriks Acak

Matriks yang memiliki nilai acak berdasarkan distribusi statistic pada

elemnnya.

Bentuk umum :

>>rand(n,m)

Contoh :

>> rand(3,2)

ans =

0.9501 0.4860

0.2311 0.8913

0.6068 0.7621

Page 13: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 12

b. Matriks yang didefinisikan oleh User

Matlab juga menyediakan bentuk matriks yang didefinisikan oleh user.

Contoh :

>> S=[1 2 3;7 8 9]

S =

1 2 3

7 8 9

Tanda semicolon ‘;’ digunakan untuk memisahkan baris satu dengan yang

lain.

III.3 POLINOMIAL

Di Matlab, sebuah polinomial diwakilkan oleh sebuah vektor. Untuk menciptakan

polynomial di Matlab, masukkan coefficient polynomial kedalam vector dalam

orde yang menurun.

Misalkan polynomial berikut:

s 4 +3s 3 ­15s 2 ­2s+9

Untuk memasukkan ke dalam Matlab, masukkan :

>> x = [1 3 ­15 ­2 9]

x =

1 3 ­15 ­2 9

Matlab dapat menginterpretasikan sebuah panjang n+1 sebagai nth order

polynomial. Jika polynomial missing pada coefficients, anda harus memasukkan

nilai nol kedalam tempat yang bersesuaian di dalam vector.

Contoh :

s 4 +1

ditulis di Matlab sebagai:

>> y = [1 0 0 0 1]

Page 14: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 13

Anda dapat mencari nilai polynomial menggunakan fungsi polyval.

Contoh :

untuk mencari nilai polynomial pada s=2, yaitu :

>> z = polyval([1 0 0 0 1],2)

z =

17

Anda dapat mengekstrak akar polynomial.

Contoh :

s 4 +3s 3 ­15s 2 ­2s+9

Untuk mencari akar polynomial :

>> roots([1 3 ­15 ­2 9])

ans =

­5.5745

2.5836

­0.7951

0.7860

JIka anda ingin mengalikan hasil 2 polynomials lakukan dengan convolution dari

coefficients. Fungsi conv dapat digunakan.

>> x = [1 2];

>> y = [1 4 8];

>> z = conv(x,y)

z =

1 6 16 16

Page 15: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 14

Untuk membagi 2 polynomials dapat dilakukan dengan fungsi deconv. Misalkan z

dibagi y dengan hasil x.

>> [xx, R] = deconv(z,y)

xx =

1 2

R =

0 0 0 0

Jika anda ingin menambah 2 polinomial secara bersamaan dengan orde yang

sama, buatlah z=x+y akan berhasil (vectors x dan y harus mempunyai panjang

yang sama). Secara umum, anda dapat mendefinisikan fungsi polyadd.

>> z = polyadd(x,y)

x =

1 2

y =

1 4 8

z =

1 5 10

Page 16: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 15

BAB IV

M­FILE DAN GRAFIK

IV.1 PEMROGRAMAN M­FILE

M­file merupakan sederetan perintah matlab yang dituliskan secara berurutan

sebagai sebuah file. Nama file yang tersimpan akan memiliki ekstensi .m yang

menandakan bahwa file yang dibuat adalah file matlab. M­file dapat ditulis

sebagai sebuah script atau dapat pula ditulis sebagai sebuah fungsi yang menerima

argument atau masukan yang menghasilkan output.

Contoh script sederhana dari matlab :

%menghitung akar dari

%persamaan kuadrat y=ax^2 + bx + c

clc

clear

a=input('masukkan konstanta a=')

b=input('masukkan konstanta b=')

c=input('masukkan konstanta c=')

x1=(­b+sqrt(b^2­4*a*c))/(2*a)

x2=(­b­sqrt(b^2­4*a*c))/(2*a)

Page 17: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 16

IV.2 GRAFIK

Matlab mempunyai bermacam­macam fungsi untuk menampilkan grafik, dimana

setiap fungsi memiliki perbedaan dalam menskalakan garis sumbu. Setiap

menerima inputan dalam bentuk vector atau matriks, matlab akan menskalakan

secara otomatis.

a. Plot

Fungsi plot digunakan untuk menggambar grafik 2D dengan skala linear

pada kedua sumbunya.

Contoh:

>> x=­10:10;

>> y=x.^2;

>> plot(x,y)

Hasilnya akan tampak sebagai berikut:

b. Plot3

Fungsi plot3 digunakan untuk menampilkan grafik 3 dimensi. Plot3

memerlukan 3 argumen dengan bentuk plot3(x,y,z), dimana x, y, z

merupakan 3 bagian vector yang sama panjang.

Contoh:

>> t=0:pi/100:10*pi;

>> plot3(sin(2*t), cos(2*t), t)

Page 18: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 17

Hasilnya akan tampak sebagai berikut:

c. Bar

Fungsi bar digunakan untuk menampilkan data yang berbentuk vector

maupun matriks. Grafik bar digunakan untuk menampilkan sekumpulan

data selama kurun waktu terentu dan cocok untuk menampilkan data

dalam bentuk diskrit.

Contoh: >> t=[10 30 21 52; 34 67 12 23; 90, 23, 45, 26; 58 94 30

20];

>> bar(t)

>> grid on

Hasilnya akan tampak sebagai berikut:

Page 19: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 18

Matlab juga menyediakan dalam bentuk 3 dimensi, yaitu bar3. Misal

grafik diatas disajikan dalam bar3, maka kita ketik perintah berikut:

>>bar3(t)

Page 20: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 19

BAB V

STATEMENT KONTROL

Sama seperti bahasa pemrograman yang lain, matlab juga memiliki statemen

kontrol. Berikut adalah beberapa pembahasan statemen kontrol yang ada di

Matlab:

V.1 IF, ELSE DAN ELSEIF

If merupakan statemen control yang digunakan untuk mengevaluasi ekspresi

logika dan mengekskusi kelompok statemen yang didasarkan pada nilai ekspresi.

Penulisan kontrol if else adalah sebagai berikut :

if <ekspresi logika> statement­statement

else if <ekspresi logika> statement­statement

else<ekspresi logika> statement­statement

end

contoh:

V.2 WHILE

While digunakan untuk melakukan proses perulangan selama kondisi ekspresi

terpenuhi. Begitu kondisi sudah tidak terpenuhi lagi, maka proses perulangan akan

langsung dihentikan.

Bentuk umum dari while adalah :

while <ekspresi>

Statement­statement

end

Page 21: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 20

contoh :

V.3 FOR

For digunakan untuk melakukan proses perulangan selama kondisi ekspresi

terpenuhi. Perbedaannya dengan while adalah pada for jumlah perulangan dapat

diketahui, sedangkan pada while bergantung pada nilai ekspresi.

Bentuk umum dari for adalah :

for indeks=nilai awal:step:nilai akhir

statement­statement

end

contoh:

V.4 CONTINUE DAN BREAK

Statemen continue dan break digunakan pada statemen kontrol for atau while.

Fungsi continu adalah melanjutkan ke iterasi berikutnya tanpa menjalankan

statemen yang ada di bawah kondisi continu. Sedangkan break, digunakan untuk

menghentikan proses iterasi tanpa melanjutkan perulangan.

Page 22: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 21

Contoh:

Page 23: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 22

BAB VI

ANALISA DATA DAN INTERPOLASI

VI.1 ANALISA DATA

Dalam bab ini, kita akan belajar bagaimana menganalisis dan memanipulasi data

mempergunakan MATLAB, terutama untuk perhitungan statistik: rentang data,

maksimum/minimum, rata­rata, deviasi, jumlah kumulatif, dan sebagainya. Di

MATLAB fungsi­fungsi statistik semacam ini telah ada dan bisa digunakan secara

fleksibel. Dalam penjelasan bab ini, x dan y kita misalkan sebagai vector (baris

ataupun kolom), dan A dan B sebagai matriks m×n.

a. Maksimum dan Minimum

Nilai maksimum dan minimum diperoleh dengan command berikut ini :

COMMAND KETERANGAN

max(x) menghitung nilai maksimum dari elemen

vektor x. Jika x bernilai kompleks maka

dihitung max(abs(x))

max(A) menghitung nilai maksimum dari setiap kolom

di matriks A; hasilnya berupa vektor 1×n

max(max(A)) menghitung nilai maksimum dari elemen

matriks A

max(A,B) menghitung matriks berukuran sama dengan A

dan Bdengan elemen berisi nilai terbesar di antara

elemen Adan Bpada posisi yang sama

min( ... ) sama dengan sintaks max( ... )di atas, tetapi

untuk mencari minimum

Page 24: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 23

Mari kita praktekkan beberapa contoh untuk menambah pemahaman

terhadap sintaks di atas. Misalkan x ialah data tinggi badan dari 10 orang,

dan A ialah data indeks prestasi (IP) dari 4 mahasiswa dalam 3 semester.

Data tinggi badan (dalam cm)

175 177 173 165 160 170 174 177 168 170

Data IP mahasiswa

Nama IP sem­1 IP sem­2 IP sem­3

Agus 3,3 2,8 3,3

Dedy 3,9 4,0 3,8

Tanjung 3,8 3,5 2,9

Vijay 2,9 3,2 3,1

>> x=[175 177 173 165 160 170 174 177 168 170];

>> A=[3.3 2.8 3.3;3.9 4.0 3.8;3.8 3.5 2.9;2.9 3.2

3.1];

>> max(x)

ans =

177

>> max(A), max(A’)

ans =

3.9000 4.0000 3.8000

ans =

3.3000 4.0000 3.8000 3.2000

>> max(max(A))

ans =

4

Kita bisa melihat bahwa max(x) menghitung tinggi maksimum dari 10

orang yang ada, max(A) menghitung IP tertinggi pada setiap semester,

sedangkan max(A’) menghitung IP tertinggi dari setiap mahasiswa.

Page 25: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 24

Sementara itu, max(max(A)) menghitung IP tertinggi yang pernah dicapai

mahasiswa selama 3 semester.

b. Statistika

Sekarang kita akan belajar command untuk analisis data statistik.

COMMAND KETERANGAN

mean(x) menghitung rata­rata aritmatik dari elemen

vektor x

mean(A) menghitung rata­rata aritmatik dari elemen

setiap kolom di matriks A; hasilnya berupa vektor 1×n

median( ... ) sama seperti sintaks mean( ... ), tetapi untuk

std( ... )

menghitung median (nilai tengah) sama seperti sintaks

mean( ... ), tetapi untuk

var( ... )

menghitung deviasi standar (simpangan baku) sama

seperti sintaks mean( ... ), tetapi untuk

menghitung variansi

Sebagai contoh, kita gunakan kembali data tinggi badan dan nilai IP

mahasiswa seperti sebelumnya. >> x=[175 177 173 165 160 170 174 177 168 170];

>> A=[3.3 2.8 3.3;3.9 4.0 3.8;3.8 3.5 2.9;2.9 3.2

3.1];

>> rataan_IP_sem = mean(A)

rataan_IP_sem =

3.4750 3.3750 3.2750

>> rataan_IP_mhs = mean(A')

rataan_IP_mhs =

3.1333 3.9000 3.4000 3.0667

>> rataan_IP_total = mean(mean(A))

rataan_IP_total =

3.3750

Page 26: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 25

>> nilai_tengah = median(x), deviasi = std(x), ...

variansi = var(x)

nilai_tengah =

171.5000

deviasi =

5.4661

variansi =

29.8778

VI.2 INTERPOLASI

Pada fungsi yang memiliki sejumlah titik terbatas, dimungkinkan untuk

menentukan titik­titik perantaranya dengan interpolasi. Cara termudah untuk

menghitungnya ialah dengan menggunakan interpolasi linier untuk

menghubungkan dua titik yang berdekatan. Command interp1 menggunakan

algoritma khusus untuk interpolasi titik­titik data yang terpisah secara seragam.

Untuk command ini, kita harus tambahkan tanda asteris ‘*’ di depan nama metoda

yang diinginkan, misalkan interp(x,y,xx,’*nearest’).

yy = interp1(x,y,xx) menghitung vektor yyyang panjangnya sama dengan vektor

xx. Dalam hal ini yyfungsi dari xxmerupakan interpolasi dari yfungsi dari x.

Vektor xharus diurutkan secara ascending / descending interp1(x,y,xx,’string’)

menghitung interpolasi 1­dimensi; stringmenunjukkan metode yang digunakan,

yaitu: linear nearest spline cubic interpolasi linier interpolasi “nearest­neighbor”

interpolasi “cubic­spline” interpolasi kubik, membutuhkan jarak pisah seragam

pada x Apabila string tidak dituliskan, maka digunakan interpolasi linier. Untuk

semua metode tersebut, xharus diurutkan ascending / descending.

interp1q(x,y,xx) bekerja seperti interp1namun lebih cepat untuk titik­titik data

yang terpisah tak seragam. x, y, dan xxharus berupa vektor kolom.

Misalkan kita memiliki data tekanan udara dalam suatu ruang tertutup yang diukur

pada jam­jam tertentu sebagai berikut:

>> t = [0 2 3 5 8.5 10 12];

>> pres = [660 900 400 300 500 50 300];

Page 27: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 26

Sekarang kita interpolasi dengan beberapa metode dan kita plot pada satu gambar

sekaligus :

>> tt = linspace(0,12,100);

>> PP1 = interp1(t,pres,tt,’*linear’);

>> PP2 = interp1(t,pres,tt,’*cubic’);

>> PP3 = interp1q(t’,pres’,tt’);

>> figure;

>> plot(t,pres,’k*’,tt,PP1,’k­‘,tt,PP2,’k:’, ...

tt,PP3,’k­­’)

>> grid on;

>> xlabel(‘waktu (jam)’), ylabel(‘Pressure’)

>> legend(‘data’,’linier’,’kubik’,’interp1q’)

>> title(‘Perbandingan metode interpolasi’

Page 28: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 27

BAB VII

VISUALISASI DAN FUNCTION M­FILE

VII.1 VISUALISASI 2D DAN 3D

MATLAB memiliki beberapa bentuk grafik yang dapat dibuat dengan mudah dan

cara penggunaannya­pun sederhana. Berikut ini akan diberikan contoh­contoh

untuk menampilkan berbagai grafik berdasarkan kategori :

a. Grafik 2D :

1. Grafik garis, mencetak grafik chirp.

>> x=0:0.05:5; Enter

>> y=sin(x.^2); Enter

>> plot(x,y); Enter

2. Grafik Batang (Bar), mencetak kurva BELL.

>> x=­2.9:0.2:2.9; Enter

>> bar(x,exp(­x.*x)); Enter

3. Grafik Tangga, mencetak Gelombang sinus dalam grafik tangga.

>> x=0:0.25:10; Enter

>> stairs(x,sin(x)); Enter

4. Grafik ErrorBar, mencetak Grafik ErrorBar pada fungsi dengan

kesalahan secara acak.

>> x=­2:0.1:2; Enter

>> y=erf(x); Enter

>> e=rand(size(x))/10; Enter

>> errorbar(x,y,e); Enter

Page 29: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 28

5. Grafik Polar, mencetak fungsi perkalina sin dan cos dalam

bentuk polar.

>> t=0:.01:2*pi; Enter

>> polar(t,abs(sin(2*t).*cos(2*t)));Enter

6. Grafik Stem, mencetak perkalian fungsi sin dengan

eksponensial.

>> x=0:0.1:4; Enter

>> y=sin(x.^2).*exp(­x); Enter

>> stem(x,y) Enter

b. Grafik 3D :

1. Grafik Mesh, mencetak bentuk grafik mesh dari fungsi "peaks"

yang telah disiapkan didalam MATLAB.

>> z=peaks(25); Enter

>>figure(2);surf(z);Enter

2. Grafik Surface, mencetak grafik permukaan dari fungsi "peaks"

dengan pola warna "jet" yang telah didefinisikan didalam

MATLAB.

>> z=peaks(25); Enter

>> surf(z); Enter

>> colormap(jet); Enter

3. Grafik Contour, mencetak kontur dari fungsi "peaks".

>> z=peaks(25); Enter

>> contour(z,16); Enter

4. Grafik Quiver, mencetak pola arah gerakan suatu nilai.

>> x = ­2:.2:2; y = ­1:.2:1; Enter

>> [xx,yy] = meshgrid(x,y); Enter

>> zz = xx.*exp(­xx.^2­yy.^2); Enter

Page 30: MODUL PRAKTIKUM - · PDF filedemo program, dan sebagainya. ... ­ Pengurangan * Perkalian (aturan matriks) ... menerima inputan dalam bentuk vector atau matriks, matlab ak an menskalakan

MATLAB LABORATORIUM KOMPUTER 29

>> [px,py] = gradient(zz,.2,.2); Enter

>> quiver(x,y,px,py,2); Enter

VII.2 FUNCTION M­FILE

Fungsi adalah m­file yang menerima argument input dan menghasilkan argument

output. Fungsi dapat dipanggil langsung dari command window atau dari suatu m­

file yang berbeda. Aturan penulisan fungsi adalah sebagai berikut :

Fungsi di dalam matlab jika disimpan secara default akan tersimpan dengan nama

yang sama dengan nama fungsinya.

Contoh :

Jika kita akan menggunakan fungsi tersebut, maka pada command window kita

tuliskan : >> akar( 1, 8, ­2)

Maka akan menghasilkan x1 = 1.1231 x2 = ­7.1231