modul 2 fungsi m dan visualisasi fungsi … pada pascal, file berekstensi .bas pada basic, dan file...

20
Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI DALAM BENTUK GRAFIK DAN KONTUR KOMPETENSI: 1. Praktikan memahami apa yang dimaksud dengan Fungsi M . 2. Praktikan dapat membuat suatu Fungsi M dengan format yang baik. 3. Praktikan dapat menggunakan fungsifungsi grafis yang ada dalam MATLAB. I. DASAR TEORI PENGERTIAN FUNGSI M Fungsi yang dapat dipanggil oleh MATLAB ada dua, yaitu : Fungsifungsi yang sudah ada dalam Matlab dan Fungsifungsi yang berekstensi .m. Fungsi yang sudah ada dalam Matlab ini disebut fungsi built in. Sedangkan fungsi berekstensi .m disebut dengan Fungsi M. Fungsi M adalah suatu file yang berisi perintah/fungsifungsi built in yang disimpan dengan ekstensi .m. Fungsi M ini adalah file program dalam matlab, sama halnya dengan file berekstensi .pas pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe yang dapat dipanggil oleh MATLAB adalah file berekstensi .m. A. Penulisan Fungsi M Fungsi M dapat disimpan dengan sembarang editor teks. Matlab menyediakan editor teks yaitu MEditor untuk membuat M file. Agar M file yang dibuat dapat dieksekusi dari Matlab, maka harus dipastikan dulu bahwa M file tersebut disimpan ke directory yang termasuk pathpath Matlab, atau tersimpan pada current directory dari Matlab! Atau current directory Matlab yang diubah ke directory dimana M file yang hendak dieksekusi berada! Untuk membuka MEditor, yang merupakan editor Matlab, dapat dilakukan dengan memilih menu File New MFILE pada menu windows Matlab. Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur 2-1

Upload: votu

Post on 26-May-2018

227 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

MODUL 2 

FUNGSI M DAN VISUALISASI FUNGSI  

DALAM BENTUK GRAFIK DAN KONTUR 

 

KOMPETENSI: 

1. Praktikan memahami apa yang dimaksud dengan Fungsi M . 

2. Praktikan dapat membuat suatu Fungsi M dengan format yang baik.  

3. Praktikan dapat menggunakan fungsi‐fungsi grafis yang ada dalam MATLAB. 

 

I.  DASAR TEORI  PENGERTIAN FUNGSI M  

Fungsi yang dapat dipanggil oleh MATLAB ada dua, yaitu : 

• Fungsi‐fungsi yang sudah ada dalam Matlab dan  

• Fungsi‐fungsi yang berekstensi .m.  

Fungsi  yang  sudah  ada    dalam  Matlab  ini  disebut  fungsi  built  in.  Sedangkan  fungsi 

berekstensi  .m  disebut  dengan  Fungsi  M.  Fungsi  M  adalah  suatu  file  yang  berisi 

perintah/fungsi‐fungsi built in yang disimpan dengan ekstensi .m. 

Fungsi M ini adalah file program dalam matlab, sama halnya dengan file berekstensi 

.pas pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. 

Jadi jelas di sini bahwa tipe yang dapat dipanggil oleh MATLAB adalah file berekstensi .m. 

 A.  Penulisan Fungsi M  

Fungsi  M  dapat  disimpan  dengan  sembarang  editor  teks.  Matlab  menyediakan 

editor teks yaitu MEditor untuk membuat M file. Agar M file yang dibuat dapat dieksekusi 

dari Matlab, maka harus dipastikan dulu bahwa M file tersebut disimpan ke directory yang 

termasuk  path‐path  Matlab,  atau  tersimpan  pada  current  directory  dari  Matlab!  Atau 

current directory Matlab yang diubah ke directory dimana M  file yang hendak dieksekusi 

berada! 

  Untuk membuka MEditor, yang merupakan editor Matlab, dapat dilakukan dengan 

memilih menu File   New   M‐FILE  pada menu windows Matlab.  

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-1

Page 2: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

 

B.  Struktur Fungsi M 

Fungsi M terdiri dari fungsi‐fungsi built in yang ada dalam MATLAB serta baris‐baris 

komentar untuk memperjelas fungsi dari program yang dibuat. Secara garis besar Fungsi M 

dapat  dibagi menjadi  tiga  bagian,  yaitu  bagian  ‘header’  yang  terdiri  dari  pendeklarasian 

fungsi  dan  bagian  help,  bagian  ‘process’  yang  berisi  perhitungan/komputasi  untuk 

mendapatkan hasil yang diinginkan. Dan yang  terakhir adalah bagian  ‘resolusi’ yang berisi 

penampilan hasil‐hasil  yang didapat dari bagian procces. Untuk  lebih  jelasnya perhatikan 

struktur Fungsi M yang pada gambar 2.1 : 

 

         I           function  [X,Y, ... ]=file1[A,B, ...] 

  %  Baris‐baris komentar yang berfungsi sebagai bagian dari  

        II  %  tampilan help. Baris ini akan ditampilan jika diberikan  

  %   perintah help file1. 

  Fungsi built‐in Matlab 

        III                    . 

  Fungsi built‐in Matlab 

%  Komentar keterangan fungsi dari bagian program 

  Fungsi built‐in Matlab 

IV                    . 

                        . 

 . 

  Fungsi built‐in Matlab 

  X          %  untuk menampilkan hasil perhitungan. 

  Y 

V

                Gambar 2.1 Struktur M File 

 Keterangan Struktur Fungsi M di atas : 

Bagian  I adalah bagian Pendeklarasian Nama Fungsi (‘file1’), varible yang akan dilewatkan 

ke Fungsi M (A,B, ..) dan variable yang dihasilkan (X,Y, ...). 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-2

Page 3: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta Bagian  II adalah bagian Tampilan Help dari Fungsi M  tersebut. Bagian  ini  juga mencakup 

keterangan/komentar penjelasan tentang kegunaan dari Fungsi M. 

Bagian  III  adalah  rangkaian perintah‐perintah matlab  yang biasanya berupa  fungsi‐fungsi 

built in matlab. 

Bagian  IV  adalah  bagian  dari  Fungsi M  yang mempunyai  satu  kesatuan  fungsi  tertentu, 

sehingga perlu diberikan  keterangan  tentang  kegunaan bagian  ini  agar memudahkan 

pemeriksaan dan perawatan Fungsi. 

Bagian V adalah bagian untuk menampilkan informasi yang dihasilkan. 

 

 

C. Contoh Pembuatan Fungsi M 

Untuk lebih jelasnya perhatikan contoh di berikut ini : 

Misal kita ingin membentuk Fungsi M dengan nama baru.m. 

baru.m  ini  dapat menghitung  invers,  determinan,  dan  eigen  value  secara  langsung  dari 

matriks 

A   = [   7 8 9  

 4 5 6  

 1 2 3 ] 

 Bukalah Meditor dan ketikan script dibawah ini dan disimpan sebagai  baru.m adalah  

  function baru 

  %   Fungsi M untuk menghitung invers,determinan dan  

  %  eigen value dari matrik A. Matrik A bernilai : 

  %              [ 7  8  9 

  %                4  5  6 

  %                1  2  3 ] 

  %  B bernilai invers dari A 

  %  C bernilai determinan dari A 

  %  D bernilai eigen value dari A 

 

A = [ 7 8 9 ; 4 5 6 ; 1 2 3 ]; 

%  untuk mencari invers A 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-3

Page 4: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

B = inv(A);    

%  untuk mencari determinan A 

C = det(A);     

%  untuk mencari nilai eigen A 

D = eig(A);   

  %  untuk menampilkan hasil perhitungan 

  A 

  B 

  C 

  D  

A, B, C, D di atas merupakan satu kesatuan dalam baru.m 

 

 

Jika diberikan perintah : 

    >> help baru 

maka di layar matlab akan dihasilkan : 

  Fungsi M untuk menghitung invers,determinan dan  

  eigen value dari matrik A. Matrik A bernilai : 

              [ 7  8  9 

                4  5  6 

                1  2  3 ] 

  B bernilai invers dari A 

  C bernilai determinan dari A 

  D bernilai eigen value dari A 

Tanda titik koma (;) dibelakang baris perintah berfungsi untuk tidak menampilkan nilai dari 

variabel yang sedang dihitung. 

 

FUNGSI‐FUNGSI GRAFIS DASAR MATLAB menyediakan banyak fasilitas untuk fungsi‐fungsi grafis. Di bawah ini akan 

diberikan beberapa fungsi grafis dasar beserta fungsi secara globalnya. Untuk fungsi grafis 

yang lain, dapat dipelajari lebih mendalam pada  langkah percobaan. 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-4

Page 5: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta  Beberapa Fungsi‐Fungsi Grafis Dasar antara lain : 

Echo on 

Echo off 

Title 

Plot 

Mesh 

Grid 

Loglog 

Pause 

Hold 

Xlabel 

Ylabel 

untuk menampilkan sesuatu. 

untuk tidak menampilkan sesuatu. 

untuk memberi judul. 

untuk mengambar 2 dimensi. 

untuk mengambar 3 dimensi. 

untuk memberikan garis‐garis grid pada gambar. 

untuk menggambar 2 dimensi dalam skala log. 

untuk menghentikan langkah program sementara. 

untuk mengabungkan atau menghapus grafik dengan grafik baru. 

untuk memberi nama pada axis X. 

untuk memberi nama pada axis Y. 

 

Perlu diperhatikan fungsi dari perintah echo dan hold. Kedua perintah  itu berfungsi untuk 

mengubah  keadaan.  Untuk  perintah  echo,  jika  keadaan  echo  sedang  on  dan  diberikan 

perintah echo lagi, maka keadaan echo menjadi off, lalu diberikan perintah echo lagi maka 

keadaan echo akan kembali menjadi on. Echo pada saat on akan menampilkan semua baris 

perintah yang ada dalam Fungsi M.  

Begitu pun dengan perintah hold. Hold dalam keadaan on akan mengabungkan grafik lama 

dengan grafik baru. Sedangkan perintah echo on, echo off, hold on, hold off adalah perintah 

yang pasti, keadaan akan berubah sesuai dengan kata yang mengikutinya (on atau off). 

 

II. DEMO 

KASUS: 

 Seorang  tuan  tanah  meminta  anda  untuk  menghitung  berapa  panjang  pagar  yang 

dibutuhkan  untuk  mengelilingi  atau  membatasi  bidang  tanahnya.  Bidang  tanahnya 

berbentuk  persegi  panjang  dengan  sisi  yang  satu  23  meter  dan  sisi  lainnya  17  meter.     

Anda  sebagai  pengguna  editor  Matlab  dapat  menggunakan  fasilitas  M‐file,  untuk 

membantu menyelesaikan permasalahan tersebut. 

 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-5

Page 6: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta LANGKAH‐LANGKAH KERJA: 

1. Aktifkan  aplikasi Matlab dengan  cara  double  click  pada  icon matlab  yang  tersedia di 

desktop. Dan akan muncul jendela command Matlab. 

2. Lalu buka Meditor dengan cara pilih menu File   New   M‐file 

3. Kemudian akan muncul jendela Meditor yang hampir sama seperti Notepad.  

4. Kemudian ketikkan kode di bawah: 

function keliling =  persegipanjang(p,l) %menghitung keliling persegi panjang dengan masukan melalui  %parameter input keliling = 2*(p+l); 

 

5. Setelah selesai maka simpan dengan nama yang sama dengan function yang dibuat 

(dalam hal ini adalah ”persegipanjang”) . Pilih menu File   Save  

6. Pilih direktori yang  telah ditentukan oleh asisten  (C:\MATLAB6p1\work) dan  simpan 

dengan  nama  persegipanjang.m.  Perlu  diketahui,  bahwa  dapat  memanggil  sebuah 

function  dari matlab,  kita  perlu mengubah  Current  Directory   Matlab  ke  directory 

dimana file yang dibuat itu disimpan. Kemudian tutup m‐editor dan kembali ke jendela 

command. 

7. Untuk menjalankannya maka ketik  

>> persegipanjang(23,17) 

Maka hasilnya akan muncul: 

ans = 

    80 

Jalankan dengan cara lain: 

>> KP = persegipanjang(23,17) 

Maka hasilnya: 

KP = 

    80 

9. Selain  dengan  cara  di  atas,  kita  juga  bisa  memvariasikan  kode  sesuai  kebutuhan. 

Perhatikan kode di bawah ini: 

function persegipanjang1 %menghitung keliling persegi panjang dengan masukan melalui  %piranti keyboard p = input('masukkan panjang tanah > '); l = input('masukkan lebar tanah > '); 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-6

Page 7: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

keliling = 2*(p+l); display(keliling) 

 

10. Setelah itu simpan dengan nama persegipanjang1.m pada folder yang telah ditentukan. 

Dan dapat dipanggil dengan cara yang sama seperti di atas. 

>> persegipanjang1 

masukkan panjang tanah > 23 

masukkan lebar tanah > 17 

Maka Hasilnya adalah: 

keliling = 

                80 

11. Dengan  cara  yang  sama  seperti  sebelumnya  kita  dapat memodifikasi  fungsi  serupa 

dengan kode M‐file seperti dibawah ini.   

function V = persegipanjang2 %menghitung keliling persegipanjang dengan outputnya berupa vektor %dan nilai diinputkan langsung dalam fungsi p = 23; l = 17; keliling = 2*(p+l); luas = p*l; V = [keliling, luas]; 

 

12. Setelah itu simpan dengan nama persegipanjang2.m pada folder yang telah ditentukan. 

Dan dapat dipanggil dengan cara yang sama seperti di atas, yaitu: 

>> V = persegipanjang2 

V = 

80      391 

keliling luas

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-7

Page 8: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta III. LATIHAN TERPANDU 

Untuk  setiap  nomer  latihan  dibawah  ini,  cetaklah  hasilnya  dan  laporkan  analisanya  di 

laporan resmi! Untuk tiap nomor yang memberi output grafik, harap dicetak grafiknya dan 

disertakan  untuk  melengkapi  analisa  pada  nomor  yang  bersangkutan.  Salin  grafik  atau 

tampilan apa saja yang ada dari Matlab ke aplikasi MS Office dengan cara menekan tombol: 

Ctrl+Alt+PrtScr dari keyboard kemudian di‐paste dengan menekan tombol: Ctrl+V

 1. Buatlah fungsi untuk menampilkan tanggal bulan dan tahun sekarang! 

• Ketikkan kode dibawah ini dengan Meditor: 

function sekarang echo on % Fungsi M untuk menampilkan  % tanggal, bulan, dan tahun sekarang echo off m=fix(clock); Tanggal_sekarang=m(3); Bulan_sekarang=m(2); Tahun_sekarang=m(1);  Tanggal_sekarang Bulan_sekarang Tahun_sekarang  clc % Penampilan tulisan dengan perintah text figure(1); text(0.1,0.6,'    NAMA SAYA : [nama masing‐masing]') text(0.1,0.5,'    NOMOR MAHASISWA : (NIM masing‐masing)') text(0.1,0.4,'    UNIVERSITAS ATMA JAYA YOGYAKARTA') clc 

 

• Simpan kode diatas sebagai sekarang.m  ke directory yang ditentukan dan pastikan 

dapat dipanggil dari Matlab 

• Jalankan dengan mengetikkan :  

>> sekarang 

• Amati  hasilnya.  Dari  fungsi  tersebut,  ada  dua  output  yang  akan  tampil,  yang 

pertama  berupa  tampilan  Tanggal,  Bulan  dan  Tahun  di  command window,  yang 

kedua  adalah  tampilan  grafik  yang berisi  identitas pembuat program  (praktikan). 

Salin tampilan tersebut ke aplikasi word processing.  

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-8

Page 9: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

• Grafik‐grafik yang tampil disimpan ke direktory C:\MATLAB6p1\work dengan nama 

yang sama dengan nama  file (sekarang) berekstensi  .fig, sehingga nama file untuk 

grafik yang tampil adalah sekarang.fig. Selanjutnya, anda diminta menyimpan dua 

buah file, yang pertama berekstensi .m  kedua berekstensi .fig. 

2. Buatlah gambar kompas cara berikut: 

• Ketikan kode m‐file dibawah ini dengan Meditor  

function kompas echo on  % Menggambar kompas dengan perintah compass z = eig(rand(4)); figure(2); compass(z) clc  % Membentuk plot batang x=‐2.9:0.2:2.9; figure(3); bar(x,exp(‐x.*x)); clc  % Membentuk plot anak tangga x=0:.25:10; figure(4); stairs(x,sin(x)); clc 

• Simpan  sebagai kompas.m didirektory yang  telah ditentukan dan pastikan dapat 

dipanggil  dari  Matlab.  Amati  dan  pahami  perintah‐perintah  built‐in  yang  ada 

seperti bar, stairs dan compass..!!! 

• Jalankan di Matlab dengan mengetikkan : >> kompas 

 

3. Nomor ini akan mencoba penggunaan fungsi built‐in hold (fungsi hold berulang). 

Ketikkan, simpan dan jalankan kode m‐file dibawah ini: 

function ujihold %penggunaan perintah hold  x=‐pi:pi/100:pi; figure(5); plot(x,sin(x));  x=‐pi:pi/100:pi; figure(6); 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-9

Page 10: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

plot(x,sin(x)); hold; plot(x,cos(x));  x=‐pi:pi/100:pi; figure(7); plot(x,sin(x)); hold plot(x,cos(x)); hold; plot(x,sin(x));  Jelaskan  pada  laporan  apa  perbedaan  antara  figure  5,  6,  dan  7  dengan  adanya penggunaan perintah hold berulang ?   

4. Buatlah  fungsi  m‐file  untuk  mencari  determinan  dari  invers  suatu  matriks,  dengan 

ketentuan data matriks dimasukkan oleh user pada saat fungsi dijalankan!  

Caranya: ketikkan, simpan dan jalankan fungsi m‐file berikut : 

 

function detinv %script file untuk menghitung determinan dari invers suatu  %matrix 3x3 for n=1:3    for m=1:3       A(n,m) = 0;    end end for n=1:3   for m=1:3     A(n,m) = input('masukkan   end end  I = inv(A); D = det(I); display(A); display(I); display(D); 

♦  Jalankan dan masukkan data sepe

>> detinv 

masukkan elemen = 4    < ENTER >

masukkan elemen = 2    < ENTER >

masukkan elemen = 3    < ENTER >

Modul 2 –Fungsi M dan Visualisasi Fungsi d

Untuk menjadikanmatrix A menjadi matrix null

elemen = ') 

rti dibawah ini 

 

 

 

alam Bentuk Grafis dan Kontur 2-10

Page 11: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

masukkan elemen = 2    < ENTER > 

masukkan elemen = 0    < ENTER > 

masukkan elemen = 1    < ENTER > 

masukkan elemen = 3    < ENTER > 

masukkan elemen = 2    < ENTER > 

masukkan elemen = 5    < ENTER > 

 

A = 

     4     2     3 

     2     0     1 

     3     2     5 

I = 

    0.2000    0.4000   ‐0.2000 

    0.7000   ‐1.1000   ‐0.2000 

   ‐0.4000    0.2000    0.4000 

 

D = 

            ‐0.1000 

 

5. Buatlah  sebuah  fungsi  untuk  mencari  akar‐akar  kuadrat  dari  sebuah  persamaan 

kuadrat. Dengan  permintaan  dari  user  untuk memasukkan  koefisien  dari  persamaan 

kuadrat yang mau dicari akar‐akarnya langsung melalui parameter input dan outputnya 

langsung ditampilkan. 

 ♦ Pertama‐tama buka M‐file baru lalu ketikkan kode di bawah ini: 

function mykuadrat(a,b,c) %mencari akar‐akar kuadrat dari sebuah persamaan kuadrat yang  %koefisiennya dimasukkan melalui parameter input   x1 = (‐b + sqrt(b.^2 ‐ (4*a*c)))/(2*a); x2 = (‐b ‐ sqrt(b.^2 ‐ (4*a*c)))/(2*a); display(x1); display(x2); 

 

♦ Setelah itu simpan dengan nama mykuadrat.m  

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-11

Page 12: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

♦ Panggil dengan cara ketik: 

>> mykuadrat(1,10,16)             

      ans = 

    ‐2   

‐8 

♦ Dari persamaan kuadrat di atas yakni X2 + 10X + 16, diperoleh akar‐akarnya adalah 

sebagai  berikut  X1  =  ‐2  dan  X2  =  ‐8.  Dengan  akar‐akar  fungsi  kuadrat  tersebut, 

bandingkan penelusuran kembali koefisian polynomialnya  jika anda menggunakan 

fungsi built in‐ poly. 

♦ Sebelumnya dibuat sebuah vektor yang berisi akar‐akar persamaan di atas : 

>> m = [‐2 ‐8] 

Hasilnya : 

m = 

    ‐2    ‐8 

♦ Ketikkan perintah  :  

>> poly(m) 

ans = 

         1    10    16 

 

>> p = poly(m) 

p = 

         1    10    16 

♦ Setelah mendapat koefisian polynomialnya, bandingkan pencarian akar‐akarnya jika 

anda menggunakan fungsi built in‐ roots. 

>> roots(p) 

ans = 

        ‐8 

         ‐2 

 

♦ Jelaskan maksud dari penggunaan fungsi built in‐ poly dan roots diatas...! 

 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-12

Page 13: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta 6. Mirip dengan langkah ke‐5, buatlah sebuah fungsi untuk mencari akar‐akar kuadrat dari 

sebuah  persamaan  kuadrat. Dengan  permintaan  dari  user  agar  koefisien  persamaan 

kuadrat  ditampung  ke  dalam  sebuah  vektor  lalu  vektor  tersebut  yang  akan menjadi 

input bagi fungsi yang dibuat. 

• Pertama‐tama buka M‐file baru lalu ketikkan kode di bawah ini: 

function V = mykuadrat2(k) %mencari akar‐akar kuadrat dari sebuah persamaan kuadrat yang ditampung %dalam sebuah vektor a = k(:,1); b = k(:,2); c = k(:,3); x1 = (‐b + sqrt(b.^2 ‐ (4*a*c)))/(2*a); x2 = (‐b ‐ sqrt(b.^2 ‐ (4*a*c)))/(2*a); V = [x1,x2]; 

 

♦ Setelah itu simpan dengan nama mykuadrat2.m  

♦ Kemudian  buat  sebuah  vektor  k  yang  berisi  koefisien  dari  persamaan  yang mau 

dicari akar‐akarnya.  

>> k=[1,‐6,‐7]     

k = 

       1    ‐6    ‐7 

 

♦ Lalu panggil melalui command window Matlab dengan mengetikkan: 

>>mykuadrat2(k)               

ans =        

7 ‐1 

 ♦ Atau  kita  dapat menyimpan  hasil  perhitungan  dalam  sebuah  variabel  yang  kita 

tentukan misalnya ditampung dalam variabel vektor. 

>> vektor =  mykuadrat2(k)               

vektor =        

       7      ‐1 

♦ Jelaskan  perbedaan  yang  terdapat  pada  function mykuadrat  dan mykuadrat2,  pada 

laporan Anda! 

 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-13

Page 14: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta 7. Agar menjadi  lebih mudah, user meminta Anda untuk menampilkan grafiknya beserta 

hasil  pencarian  akar‐akar  dari  persamaan  kuadrat  dengan  range 

atau jangkauan nilai X antara ‐2π sampai 2π. 

cbxaxy ++= 22 2

♦ Pertama‐tama buka M‐file baru lalu ketikkan kode di bawah ini: 

function Mykurva(a,b,c) %menggambarkan kurva persamaan y = 2*a*x*x + 2*b*x + c  x = linspace(‐2*pi,2*pi,30); y = ((2*a)*(x.^2)) + ((2*b)*x) + (c);  x1 = (‐(2*b) + sqrt((2*b).^2 ‐ (4*(2*a)*(c))))/(2*(2*a)); x2 = (‐(2*b) ‐ sqrt((2*b).^2 ‐ (4*(2*a)*(c))))/(2*(2*a)); display([x1,x2]) plot(x,y,'ro') 

 

♦ Setelah itu simpan dengan nama Mykurva.m  

♦ Panggil fungsi dengan cara ketik: 

 

>> Mykurva(1,1,‐12) 

 

ans = 

2    ‐3 

 

 

♦ Output grafik atau kurva yang diplotkan adalah sebagai berikut : 

 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-14

Page 15: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

 

 

♦ Salin  grafik  tersebut  ke  aplikasi  MS  Word  dengan  cara  menekan  tombol: 

Ctrl+Alt+PrtScr dari keyboard kemudian di‐paste dengan menekan tombol: Ctrl+V.  

Simpan pula grafik atau figure tersebut pada direktory yang sama dengan  nama file 

Mykurva.fig. 

♦ Jelaskan  pada  laporan  Anda maksud  dari  baris  perintah  terakhir  yakni  perintah 

plot(x,y,'ro') dari function Mykurva! 

  8. Seorang  user meminta  dibuatkan  function  untuk menampilkan  grafik  3  dimensi  dari 

persamaan x2+y2+z2= 0. Untuk itu gunakanlah M‐file dan perintah mesh.  

♦ Pertama‐tama buka M‐file baru lalu ketikkan kode di bawah ini: 

function mymesh clc echo on  % Membuat Kurva dengan persamaan z‐x^2‐y^2=0 x=‐7.5:.5:7.5; y=x; [x,y]=meshgrid(x,y); z=(x.^2+y.^2); 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-15

Page 16: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

figure(1); mesh(x,y,z)  title('Kurva Persamaan z‐x^2‐y^2=0')   xlabel('Sumbu x') ylabel('Sumbu y') zlabel('Sumbu z') 

 

♦ Setelah itu simpan dengan nama mymesh.m  

♦ Kemudian kembali ke jendela command matlab dan panggil dengan cara ketik: 

>> mymesh              

 

 

9. Buatkan  sebuah  function  untuk  menghasilkan  transpose  dari  suatu  matriks  yang 

elemennya diinputkan oleh user saat fungsi dijalankan. 

♦ Pertama‐tama buka M‐file baru lalu ketikkan kode di bawah ini: 

function [b] =  transpose(a) %menghasilkan matriks b yang merupakan  %transpose dari sebuah matriks a for i=1:3     for j=1:3         b[i,j] = a[j,i]     end end   

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-16

Page 17: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

 

♦ Setelah itu simpan dengan nama transpose.m pada folder yang telah ditentukan. 

♦ Kemudian  kembali  ke  command window matlab, buatlah  sebuah matriks bernilai 

random  4x4  dengan  mengetikkan  A  =  rand(4),  lalu  panggil  function  transpose 

dengan mengetikkan transpose(A). Catat hasilnya..!!! 

♦ Untuk  pemanggilan  function  yang  memiliki  parameter  output  gunakan  variabel 

untuk menampungnya, misalnya : 

>> P =  [  1     1     6<enter> 

6     1    1<enter> 

1     6     1] 

 

  >> Q = transpose(P) 

       Q = 

           1     6     1 

           1     1     6 

          6     1     1 

 

♦ Jelaskan  pada  laporan  resmi  mengapa  pemanggilan  fungsi  transpose  dilakukan 

seperti di atas! 

  10. Visualisasi Fungsi dengan KONTUR 

Jika plot adalah statemen MATLAB untuk visualisasi fungsi  )(xfy = ,                   maka 

contour adalah statemen MATLAB untuk memvisualisasikan fungsi  .  ),( yxfz =

Fungsi  mengungkapkan  hubungan  antara  pasangan  dua  variabel  bebas 

  dengan  sebuah  variabel  tak  bebas  z.  Kedua  variabel  bebas    itu  pada 

dasarnya  dapat  digambarkan  merupakan  sebuah  titik  dalam  bidang  datar  yang 

dibentuk  oleh  sumbu‐datar  x  dan  sumbu‐tegak  y.  Misalkan  bidang  datar  yang 

digunakan  adalah  sebuah  kertas  yang  di  atas  kertas  itu  sebuah  fungsi  hendak 

ditampilkan,  maka  pada  dasarnya  visualisasi  dapat  berupa  tampilan  titik‐titik  data 

  pada  posisi  atau  lokasi  yang  tepat,  dengan  data  nilai  z  yang  bersangkutan 

dengan  titik  itu dituliskan di dekatnya. Namun  jika  cara  itu dilakukan, maka hasilnya 

),( yxfz =

),( yx ),( yx

),( yx

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-17

Page 18: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

adalah tampilan yang pasti  membosankan – apalagi jika data yang tersedia cukup besar 

jumlahnya…..!             Maka cara yang lebih elegan adalah dengan : 

(1) menghubungkan titik‐titik (x,y) dengan nilai z yang sama dalam garis kontur dan (2) 

mencantumkan nilai z yang sesuai untuk kontur itu didekat garis kontur tersebut. 

 

Garis  kontur  adalah garis dengan nilai    z    sama  (iso‐z).  Sehingga, garis‐garis  itu  tidak 

berpotongan  satu  sama  lain  dan  pada  dasarnya  garis  kontur membentuk  lingkaran 

tertutup.  Cacah  garis  kontur  sebenarnya  dapat mencapai  nilai  tak  terhingga,  namun 

pada  dasarnya  dapat  dibatasi  sesuai  dengan  kebutuhan.  Yang  secara  visual  dapat 

diamati  adalah  informasi  tentang  arah  ke  mana  terjadi  gerakan  “mendaki”  atau 

“menurun”  dan  apakah  ”pendakian”  atau  “penurunan”  itu  “terjal”  atau  “curam”.     

Kontur merupakan visualisasi yang paling akurat tentang fungsi dua variabel bebas dari 

sebuah besaran tak bebas. Informasi tentang  lokasi dimana terjadi kondisi maksimum, 

atau minimum, atau lokasi lokal dimana terjadi sekaligus maksimum dan minimum juga 

dapat diidentifikasi. Singkatnya kontur merupakan teknik visualisasi yang penting dalam 

komunikasi ilmiah dan hidup sehari‐hari. 

 

Sebuah contoh hasil eksekusi adalah di bawah  ini, untuk  . 

Skrip MATLAB untuk menampilkan kontur dari fungsi di atas : 

22 22 yxyxyxz +++−=

% kontur z = x ‐ y + 2x^2 + 2xy + y^2  clear; clc; clf;  set(gcf,'DefaultLineLineWidth',2,...     'DefaultAxesFontSize',13,...     'DefaultAxesPosition',[0.13 0.11 0.775 0.775],...     'DefaultTextFontSize',12)  

m

 xx = ‐4 : .01 : 4; yy = ‐4 : .01 : 4 ; [x,y] = meshgrid (xx,yy); z = x ‐ y + 2.*x.^2 + 2.*x.*y + y.^2 ; v = [‐1 0 1 2 3 5 10 15 20 30 40]; [C,h] = contour (x,y,z,v);   xlabel ('sumbu x'); 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

Statemen ini bermaksud

emberi spesifikasi tentang

format grafis yang

diharapkan.

SKRIP KUNCI

2-18

Page 19: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

ylabel ('sumbu y'); title ('kontur z = x ‐ y + 2x^2 + 2xy + y^2'); clabel (C,h); grid on; hold on;  % menemukan nilai minimum zmin = min(min(z)); cmin = find (z==zmin); titik_min = [x(cmin), y(cmin)]; plot (x(cmin), y(cmin), 'o'); text (x(cmin), y(cmin), 'Min'); 

 

♦ Setelah itu simpan dengan nama kontur.m pada folder yang telah ditentukan. 

♦ Kemudian  kembali  ke  command window matlab,  lalu  panggil  function  transpose 

dengan mengetikkan : 

>> kontur              

♦ Amati hasilnya..!!! Salin tampilan kontur ke MS Word, kemudian simpan file asli ke 

direktory C:\MATLAB6p1\work, beri nama figure dengan nama : kontur.fig. 

♦ Hasil yang tampak sebagai berikut : 

 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-19

Page 20: MODUL 2 FUNGSI M DAN VISUALISASI FUNGSI … pada PASCAL, file berekstensi .bas pada BASIC, dan file berekstensi .c pada TURBO C. Jadi jelas di sini bahwa tipe ... 2 dimensi dalam skala

Laboratorium Komputasi Fakultas Teknologi Industri Universitas Atma Jaya Yogyakarta

 

 

♦ Jelaskan  pada  laporan  resmi  tentang  pemanggilan  fungsi  contour  yang  dilakukan 

seperti  di  atas!  Anda  dapat menggali  berbagai  hal  teknis  tentang  pemrograman 

MATLAB  dengan  mengacu  kepada  hasil  eksekusi,  menggunakan  perintah  help 

diikuti nama fungsi, serta membuat latihan secukupnya. 

Modul 2 –Fungsi M dan Visualisasi Fungsi dalam Bentuk Grafis dan Kontur

2-20