Professional Documents
Culture Documents
MATLAB atau Matrix Laboratory adalah suatu aplikasi berbasis expert system yang
digunakan untuk keperluan komputasi sains, seperti halnya Maple dan Mathematica. Aplikasi
yang dibuat oleh MathWorks.inc ini sangat handal untuk komputasi yang terkait dengan array
atau matriks. Selain digunakan untuk komputasi, MATLAB juga dapat dibuat untuk sarana
simulasi.
Tool box-tool box sebagai pelengkap MATLAB juga disediakan dalam paketnya, seperti
toolbox untuk keperluan fuzzy logic, artificial neural network, image processing dsb. Tool box
ini berisi paket yang di dalamnya terdapat perintah-perintah untuk melakukan tugas khusus
sesuai dengan nama tool boxnya, misalnya perintah untuk membaca nilai pixel suatu image,
perintah ini terdapat dalam tool box image processing. Daftar nama-nama tool box ini dapat kita
lihat sewaktu proses instalasi MATLAB.
Pada bagian ini, kita akan membahas dasar-dasar cara penggunaan MATLAB.
Untuk menuliskan perintah atau command perhitungan, dalam MATLAB sudah disediakan
COMMAND WINDOW. Di dalam COMMAND WINDOW ini terdapat tanda prompt >>. Di
sinilah perintah MATLAB dituliskan, seperti halnya menuliskan perintah dalam DOS atau
SHELL LINUX. Berikut ini contoh pemberian perintah untuk mencari hasil penjumlahan 3 dan
4.
>> 3 + 4
Apabila setelah menuliskan perintah di atas kemudian ditekan ENTER, maka hasil
penjumlahannya langsung ditampilkan di bawah perintah tersebut, ditandai dengan ‘ans’
(answer)
>> 3 + 4
ans =
7
Apabila kita menginginkan output perhitungan tidak ditampilkan, namun hanya disimpan dalam
memory, maka tambahkan tanda semicolon di akhir perintah.
>> 3 + 4;
Tampilan COMMAND WINDOW MATLAB memang berbasis teks, sehingga tampilan
MATLAB tidak seindah Maple atau Mathematica.
Suatu saat mungkin kita menemui kesulitan dalam menuliskan perintah dalam MATLAB,
mungkin karena lupa sintaksnya atau lupa nama perintahnya. Tidak usah khawatir karena
MATLAB menyediakan fasilitas HELP. Bagaimana cara menampilkan HELP terkait dengan
topik tertentu? Caranya cukup mudah, yaitu tinggal tulislah HELP dan dilanjutkan dengan topik
yang diinginkan. Misalnya
>> help ops
Perintah di atas akan menampilkan penjelasan tentang operator-operator yang ada di MATLAB
>> help elfun
Sedangkan perintah di atas akan menampilkan nama-nama perintah untuk perhitungan
matematis.
Untuk menampilkan daftar topik yang ada, ketikkan perintah
>> help
Kita juga dapat meminta penjelasan terhadap sintaks suatu perintah, yaitu dengan menuliskan
HELP dan dilanjutkan dengan nama perintah. Misalnya
>> help abs
Perintah di atas akan menampilkan penjelasan tentang perintah abs(), cara penulisannya atau
sintaks, termasuk juga contoh penggunaannya.
Suatu vektor 1 kali 100 yang menyusun sample pada sinyal cosinus dapat dibangkitkan dengan
>> x = cos(0.1*pi*(0:99));
Untuk membangkitkan suatu "ramp" dari 1 sampai 50 coba:
>> x = [1:1:50];
bilangan kedua mengindikasikan step kenaikan dari dari 1 sampai 50. Untuk membangkitkan
suatu fungsi "ramp" dari 1 sampai 50 coba berikut ini:
>> x = [1:1:50];
Ketika anda tidak memasukkan angka kedua pada perintah diatas, maka secara otomatis (default)
step kenaikan ditetapkan bernilai “1”:
>> x = [1:50];
Anda bisa juga secara khusus mendefinisikan suatu rentang nilai pada x sebagai berikut::
>> x(51:100) = [50:-1:1]
Ini merupakan metode yang sangat bermanfaat untuk mensepsifikasi nilai “waktu” untuk
penggambaran. Sebagai contoh, ditetapkan interval sampling dalam contoh diatas adalah 1 detik.
Selanjutnya anda dapat mendefisnisikan seperti berikut:
>> time = [0:0.001:0.099];
Langkah kita yang pertama adalah dengan menentukan variable scalar dengan cara melakukan
pengetikan seperti berikut:
» x = 2 (selanjutnya tekan “Enter”)
x=
2
»y=3
y=
3
»z=x+y
z=
5
Tidak terlalu menjadi masalah bagi anda? Saya percaya anda tidak mengalami kesulitan, sebab
anda adalah orang yang sangat cerdas. Nah bagaimana dengan yang satu berikutnya ini? Disini
kita mulai dengan mendefinisikan dua buah vector, yaitu vector x dan vector y:
» x = [1 2 3]
x=
123
» y = [4 5 6]
y=
456
Selajutnya ketik:
>> y(1)
ans =
4
dan ulangi untuk y(2) and y(3).
Matlab menggunakan integer positif untuk index array. Elemen pertama adalah y(1), elemen
kedua adalah y(2), dan seterusnya. Nol atau bilangan negatif tidak diperbolehkan untuk indek
array. Sekarang kita jumlahkan keduanya:
» x+y
ans =
579
dan sekarang hitung inner product:
» x*y'
ans =
32
Jawabannya adalah 1*4 + 2*5 + 3*6 = 32! Catat, bahwa y' adalah transpose pada ydan
merupakan suatu vector kolom. Untuk memeriksanya, ketikkan perintah berikut:
>> y'
ans =
4
5
6
Cara lain pada pengkombinasian dua vector adalah diakukan melalui perkalian elementdemi-
element:
>> x.*y
ans =
4 10 18
Catat periode sebelum perkalian simbol. Sekarang kita dapat mendefinisikan suatu matrix:
» A = [1 2 3
456
7 8 9];
Catat bahwa matrik tidak diulang kalau kita menggunakan semi colon. Kita sekarang kalikan
A dengan transpose dari x:
» A*x'
ans =
14
32
50
Sekarang kita harus mentranspose x untuk memenuhi perkalian suatu matrik dan suatu vector
kolom. Matrik-matrik ini dapat juga dikalikan satu sama lain diantara mereka:
» B = [1 2 3 4
5678
7 6 5 4];
» A*B
ans =
32 32 32 32
71 74 77 80
110 116 122 128
Sekarang coba anda lakukan penjumlahan antara A dan B:
» A+B
??? Error using ==> +
Matrix dimensions must agree.
Baiklah, kita tidak dapat menambah suatu matrik 3 kali 3 dengan matrix 3 kali 4 , dan Matlab
akan mendeteksi dimensi yang mismatch dan selanjutnya memeberikan pesan error. Sekarang
kita cari cara lain untuk mendefinisikan matrik dan vektor. Sebagai contoh suatu matrik nol
dengan dimensi 3 baris dan 6 kolom dapat dinyatakan sebagai:
>> zeros(3,6)
ans =
000000
000000
000000
tentu saja jika anda tambahkan suatu ";" setelah zeros(3,6), jawabannya tidak akan ditampilkan
di layar monitor anda. Angka pertama, 3 menunjukkan jumah baris, sedangkan angka kedua, 6,
adalah jumlah kolom. Kita dapat pula melakukan hal yang sama untuk menampilkan angka satu
seperti berikut:
>> ones(3,6)
ans =
111111
111111
111111
Array atau Matriks dalam MATLAB
Kesederhanaan dalam proses assignment variabel terhadap nilai bertipe array atau
matriks ini disebabkan tidak diperlukannya pendefinisian ukuran (size) array atau matriks pada
variabel tersebut. Secara otomatis, size atau dimensi dari variabel bertipe array ini akan
menyesuaikan dengan array yang diassign atau dengan kata lain size untuk variabel bertipe array
ini bersifat dinamis. Dengan demikian, kita tidak perlu pusing memikirkan size variabel yang
diperlukan untuk suatu proses perhitungan.
Bagaimana caranya melakukan proses assignment variabel dengan nilai bertipe array atau
matriks? Mudah sekali… yaitu hanya dengan mengapit elemen-elemen array dengan tanda
kurung siku. Contoh:
>> arrayKu = [1 2 3 4 5]
Maksud perintah di atas adalah mengassign ‘arrayKu’ dengan nilai bertipe data array dengan size
1 x 5, dengan elemennya {1, 2, 3, 4, 5}. Kita bisa melihat outputnya di command window seperti
di bawah ini:
arrayKu =
1 2 3 4 5
Dimensi array dapat juga diubah menjadi bentuk kolom 5 x 1, dengan cara:
>> arrayKu = [1; 2; 3; 4; 5]
Outputnya:
arrayKu =
1
2
3
4
5
Bagaimana dengan array berdimensi 3 x 4? berikut ini contohnya:
>> arrayKu = [1 2 3 4; 5 6 7 8; 9 10 11 12]
Outputnya:
arrayKu =
1 2 3 4
5 6 7 8
9 10 11 12
Mungkin ada yang bertanya misalkan diketahui suatu array, katakanlah ‘arrayKu’ seperti di atas,
bagaimana caranya mengambil atau menampilkan elemen yang bernilai ‘7′? untuk melakukan
hal ini, kita harus tahu posisi elemen ‘7′ ini, yaitu pada baris ke 2 kolom ke 3. Lalu tuliskan saja
perintah ini:
>> arrayKu(2, 3)
Outputnya:
ans =
7
Berikutnya, misalkan kita ingin mengganti elemen ‘arrayKu’ pada baris ke 3 kolom ke 4 dengan
nilai 100. Bagaimana caranya?
>> arrayKu(3, 4) = 100
Outputnya:
arrayKu =
1 2 3 4
5 6 7 8
9 10 11 100
Ada pertanyaan lagi, bagaimana caranya mengambil semua elemen pada kolom pertama dari
‘arrayKu’? Ini dia perintahnya
>> arrayKu(:, 1)
Outputnya:
ans =
1
5
9
Bagaimana dengan mengambil semua elemen pada salah satu barisnya? misalkan baris ke 2? >>
arrayKu
Outputnya:
ans =
5 6 7 8
Kita juga dapat memanipulasi semua elemen dalam satu kolom atau baris sekaligus melalui suatu
perhitungan. Misalkan baris kedua dari ‘arrayKu’ diubah menjadi 2 kali mula-mula.
>> arrayKu(2, = 2*arrayKu(2,
Outputnya:
arrayKu =
1 2 3 4
10 12 14 16
9 10 11 12
\
Matlab (Matrix Laboratory) merupakan software aplikasi interaktif untuk komputasi numerik
dan visualisasi data. Dengan menggunakan bahasa tingkat tinggi (high level
language), Matlab sangat mudah untuk dioperasikan oleh penggunanya. Matlab banyak
digunakan oleh kalangan akademisi maupun industri.
Tampilan desktop Matlab terdiri dari Current Folder, Toolstrip, Command Window,
Workspace, dan Command History.
tombol-tombol fungsi
2 Toolstrip perintah
Command
3 Window jendela perintah utama
3 5 7
3 5 7 9
1
3
5
7
9
2
4
6
8
10
2) Matriks Indexing
membuat matriks berukuran 2 x 2
>> X = [1 2; 3 4]
X=
1 2
3 4
6 7
8 9
1 2
3) Operasi Aritmetika
perkalian matriks
>> X*Y
ans =
22 25
50 57
perkalian array (perkalian dilakukan per elemen)
>> X.*Y
ans =
6 14
24 36
1 4
9 16
3.5000 -2.5000
2.5000 -1.5000
-4.0000 -5.0000
5.0000 6.0000
0.1667 0.2857
0.3750 0.4444
6.0000 3.5000
2.6667 2.2500c
Pengertian Matlab Matlab atau Matrix Laboratory merupakan bahasa pemrograman dengan
kemampuan tinggi dalam bidang komputer. Aplikasi yang dibuat oleh MathWorks.inc ini
memiliki kemampuan mengintegrasikan komputasi, visualisasi, dan pemrograman. Pada awalnya
Matlab dibuat untuk memberikan kemudahan mengakses data matrik pada proyek LINPACK
dan EISPACK. Saat ini Matlab memiliki ratusan fungsi yang dapat digunakan sebagai problem
solver mulai dari simple sampai masalah-masalah yang kompleks dari berbagai disiplin ilmu.
Adapun penggunaan Matlab meliputi pada bidang–bidang berikut: a. Matematika dan Komputasi
b. Pembentukan Algorithm c. Akusisi Data d. Pemodelan, simulasi, dan pembuatan prototype 1.
Analisa data, explorasi, dan visualisasi 2. Grafik Keilmuan dan bidang Rekayasa
2. Sejumlah rutin yang yang biasa diakses dan dimodifikasi dengan mudah.
4. Kemudahan untuk menulis program yang singkat, sederhana, yang dapat dikembangkan
sesuai kebutuhan.
Semula MATLAB diciptakan untuk menyederhanakan komputasi matriks dan aljabar linier yang
terdapat berbagai aplikasi. Salah satu masalah yang paling umum dalam aljabar linier adalah
menemukan penyelesaian dari sekumpulan permasalahan linier.
Contoh :
Dengan symbol persamaan matematis (.) diartikan dalam konteks matriks, tidak dalam konteks
array. Dalam MATLAB perkalian matriks dilambangkan dengan asrteriks (*). Persamaan diatas
berarti perkalian matriks antara matriks A dengan vektor x sama dengan vektor b. ada atau
tidaknya solusi bagi persamaan diatas adalah masalah aljabar linier. Jika terdapat suatu
penyelesaian, maka juga terdapat beberapa metode untuk menemukan penyelesaian itu, seperti
elimunasi Gauss, faktorisasi LU, atau penggunaan langsung dari A-¹.
Selain fungsi – fungsi untukmenyelesaikan himpunan persamaan linier, MATLAB juga banyak
menyediakan fingsi Matriks tang berguna untuk menyelesaikan masalah – masalah numeric
aljabar linier. Untuk informasi lebih lanjut dapan digunakan on–line help atau referensi on–
line MATLAB.
inv : invers
lu : faktorisasi LU
qr : faktorisasi QR
det : determinan