Modul MATLAB UMM. 742KB Mar 31 2011 12:26:52 AM

(1)

MODUL PRAKTIKUM 

MATLAB

 

Oleh : 

Team Labkomputer UMM 

DIVISI PENDIDIKAN DAN PELATIHAN 

LEMBAGA INFORMASI DAN KOMUNIKASI 

UNIVERSITAS MUHAMMADIYAH MALANG 


(2)

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 sebuahenvironment  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.


(3)

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


(4)

>> bilangan1=7  bilangan1 = 

>> bilangan2=9  bilangan2 = 

>> 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. 


(5)

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


(6)

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) 


(7)

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


(8)

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 = 

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


(9)

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 = 


(10)

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 : 


(11)

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


(12)

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


(13)

b.  Matriks yang didefinisikan olehUser 

Matlab juga menyediakan bentuk matriks yang didefinisikan olehuser.  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:  +3s ­15s ­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 :  +1 

ditulis di Matlab sebagai:  >> y = [1 0 0 0 1]


(14)

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 : 

+3s ­15s ­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 = 


(15)

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 = 


(16)

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)


(17)

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; 


(18)

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 


(19)

Matlab  juga  menyediakan  dalam  bentuk  3  dimensi,  yaitu  bar3.  Misal  grafik diatas disajikan dalam bar3, maka kita ketik perintah berikut: 


(20)

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


(21)

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.


(22)

(23)

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), danA danB sebagai matriks m×n. 

a.  Maksimum dan Minimum 

Nilai maksimum dan minimum diperoleh dengancommand berikut ini : 

COMMAND  KETERANGAN 

max(x)  menghitung nilai maksimum dari elemen  vektorx. 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

dan  Bdengan  elemen  berisi  nilai  terbesar  di  antara  elemenAdanBpada posisi yang sama 

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


(24)

Mari  kita  praktekkan  beberapa  contoh  untuk  menambah  pemahaman  terhadap sintaks di atas. Misalkan x ialah data tinggi badan dari 10 orang,  danA 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.


(25)

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

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 = 


(26)

>> 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, misalkaninterp(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, danxxharus 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]; 


(27)

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’


(28)

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}


(29)

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}


(30)

>> [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) 


(1)

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

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 = 


(2)

>> 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, misalkaninterp(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, danxxharus 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]; 


(3)

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’


(4)

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}


(5)

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} 


(6)

>> [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)