Matlab
Posted by the evolution | Posted in
MATLAB adalah sebuah lingkungan perhitungan aritmatika sekaligus bahasa pemrograman. Dibuat oleh The Mathworks, MATLAB menyediakan fasilitas dan sarana dalam memanipulasi matriks, memplot data dan fungsi matematika, pembuatan UI (User Interface), implementasi algoritma, serta antarmuka dengan bahasa-bahasa pemrograman lainnya.
Sebagai singkatan dari "matrix laboratory", MATLAB diciptakan di akhir 1970 oleh Cleve Moler, yang kemudian menjadi chairman dari Jurusan Ilmu Komputer Universitas New Mexico. Dia mendesain MATLAB untuk memberikan anak didiknya akses ke LINPACK dan EISPACK dengan tanpa mempelajari Fortran. Dengan cepat software ini menyebar ke universitas-universitas lainnya. Jack Little, seorang insinyur, mengetahui potensi komersil MATLAB ketika Moler mengunjungi Universitas Stanford di tahun 1983. Ia bergabung dengan Moler dan Steve Bangert untuk menulis ulang MATLAB ke dalam bahasa C dan mendirikan perusahaan The MathWorks di tahun 1984 untuk melanjutkan pengembangannya. Software pengembangan ini juga disebut JACKPAC.
MATLAB pertama kali diadopsi oleh insinyur-insinyur desain kontrol, yang merupakan bidang ilmu Little, akan tetapi dengan cepat menyebar ke bidang-bidang ilmu lainnya. Sekarang MATLAB digunakan di area pendidikan, khususnya pembelajaran aljabar dan analisis numerik, dan terkenal di kalangan akademik yang berhubungan dengan image processing.
Karakteristik MATLAB:
• Bahasa pemrogramannya didasarkan pada matriks (baris dan kolom).
• Lambat (dibandingkan dengan Fortran atau C) karena bahasanya langsung diartikan.
• Automatic memory management, misalnya kita tidak harus mendeklarasikan arrays terlebih dahulu.
• Tersusun rapi.
• Waktu pengembangannya lebih cepat dibandingkan dengan Fortran atau C.
• Dapat diubah ke bahasa C lewat MATLAB Compiler.
• Tersedia banyak toolbox untuk aplikasi-aplikasi khusus.
Beberapa kelebihan MATLAB jika dibandingkan dengan program lain seperti Fortran, dan Basic adalah:
1. Mudah dalam memanipulasi struktur matriks dan perhitungan berbagai operasi matriks yang meliputi penjumlahan, pengurangan, perkalian, invers dan fungsi matriks lainnya.
2. Menyediakan fasilitas untuk memplot struktur gambar (kekuatan fasilitas grafik tiga dimensi yang sangat memadai).
3. Script program yang dapat diubah sesuai dengan keinginan user.
4. Jumlah routine-routine powerful yang berlimpah yang terus berkembang.
5. Kemampuan interface (antarmuka, misal dengan bahasa C, word dan mathematica).
6. Dilengkapi dengan toolbox, simulink, stateflow dan sebagainya, serta mulai melimpahnya source code di internet yang dibuat dalam MATLAB ( contoh toolbox misalnya : signal processing, control system, neural networks dan sebagainya).
Secara umum lingkungan kerja MATLAB terdiri dari tiga bagian yang penting yaitu:
1. Command Windows
Windows ini muncul pertama kali ketika kita menjalankan program MATLAB. Command Windows digunakan untuk menjalankan perintah-perintah MATLAB, memanggil tool MATLAB seperti editor, fasilitas help, model simulink, dan lain-lain. Ciri dari windows ini adalah adanya prompt (tanda lebih besar) yang menyatakan bahwa MATLAB siap menerima perintah. Perintah tersebut dapat berupa fungsi-fungsi pengatur file maupun fungsi-fungsi bawaan (toolbox) MATLAB itu sendiri.
2. Editor Windows
Windows ini merupakan tool yang disediakan oleh MATLAB yang berfungsi sebagai editor script MATLAB (listing perintah-perintah yang harus dilakukan oleh MATLAB). Ada dua cara untuk membuka editor ini, yaitu:
· Klik : File, lalu NEW dan kemudian M-File.
· Ketik pada command windows : “ edit ”.
3. Figure Windows
Windows ini merupakan hasil visualisasi dari script MATLAB. MATLAB memberikan kemudahan bagi programmer untuk mengedit windows ini sekaligus memberikan program khusus untuk itu sehingga selain berfungsi sebagai visualisasi output yang berupa grafik juga sekaligus menjadi media input yang interaktif.
Kelengkapan pada Sistem MATLAB
Sebagai sebuah system, MATLAB tersusun dari 5 bagian utama:
1. Development Environment
Merupakan sekumpulan perangkat dan fasilitas yang membantuanda untuk menggunakan fungsi-fungsi dan file-file MATLAB. Beberapa perangkat ini merupakan sebuah graphical user interfaces (GUI). Termasuk didalamnya adalah MATLAB desktop dan Command Window, command history, sebuah editor dan debugger, dan browsers untuk melihat help, workspace, files, dan search path.
2. MATLAB Mathematical Function Library
Merupakan sekumpulan algoritma komputasi mulai dari fungsi-fungsi dasar sepertri: sum, sin, cos, dan complex arithmetic, sampai dengan fungsi-fungsi yang lebih kompek seperti matrix inverse, matrix eigenvalues, Bessel functions, dan fast Fourier transforms.
3. MATLAB Language.
Merupakan suatu high-level matrix/array language dengan control flow statements, functions, data structures, input/output, dan fitur-fitur object-oriented programming. Ini memungkinkan bagi kita untuk melakukan kedua hal baik "pemrograman dalam lingkup sederhana " untuk mendapatkan hasil yang cepat, dan "pemrograman dalam lingkup yang lebih besar" untuk memperoleh hasil-hasil dan aplikasi yang komplek.
1. Graphics.
MATLAB memiliki fasilitas untuk menampilkan vector dan matrices sebagai suatu grafik. Didalamnya melibatkan high-level functions (fungsi-fungsi level tinggi) untuk visualisasi data dua dimensi dan data tiga dimensi, image processing, animation, dan presentation graphics. Ini juga melibatkan fungsi level rendah yang memungkinkan bagi anda untuk membiasakan diri untuk memunculkan grafik mulai dari bentuk yang sederhana sampai dengan tingkatan graphical user interfaces pada aplikasi MATLAB.
2. MATLAB Application Program Interface (API).
Merupakan suatu library yang memungkinkan program yang telah ditulis dalam bahasa C dan Fortran mampu berinterakasi dengan MATLAB. Ini melibatkan fasilitas untuk pemanggilan routines dari MATLAB (dynamic linking), pemanggilan MATLAB sebagai sebuah computational engine, dan untuk membaca dan menuliskan MAT-files.
Karakter Spesial MATLAB :
· Tanda % merupakan penanda komentar. Keterangan setelah tanda tersebut akan diabaikan dalam proses perhitungan. Contoh:
y = 2:1:5 % y = [2345];
y = 2.00 3.00 4.00 5.00
· Tanda ; merupakan perintah pembatas yang tidak ditampilkan di jendela kerja, merupakan pemisah kolom dan baris dalam matriks. Contoh:
A = [1 2 3 ; 3 2 1];
· Tanda : merupakan pembatas jangkauan, contohnya:
B = [0:3:9]
B = 0.00 3.00 6.00 9.00
· Tanda ` merupakan transpose matriks yang merupakan suatu vector kolom
X = [3 2 4 5;7 6 5 8]
X= 3.00 2.00 4.00 5.00
7.00 6.00 5.00 8.00
X=X `
X= 3.00 7.00
2.00 6.00
4.00 5.00
5.00 8.00
· Tanda ... digunakan untuk menuliskan baris perintah yang panjang, contohnya:
P = sin(1) – sin(2) + sin(3) – sin(4) + sin(5) + cos(6) + ...
cos(7) – cos(8) + cos(9) – cos(10) + cos(11) + cos(12)
P = 1.0273
Sintaks Penulisan pada MATLAB
MATLAB dibuat dengan mengacu pada bahasa MATLAB, kadang-kadang disebut M-code atau M saja. Cara termudah mengeksekusi (menjalankan) M-code adalah dengan mengetikkannya secara langsung di prompt pada jendela Command Window, sebuah elemen UI di desktop MATLAB. Dengan cara ini, MATLAB dapat digunakan sebagai shell (pengeksekusi perintah) matematis yang interaktif. Urutan-urutan perintah yang lebih kompleks dapat disimpan dan dimasukkan ke dalam sebuah M-file, dengan menggunakan MATLAB Editor, sebagai skrip sehingga dapat memperluas perintah-perintah yang tersedia.
Variabel
Variabel didefinisikan dengan operator assignment, =. Perintah pada MATLAB bisa diketik secara dinamis, dalam artian variabel-variabel dapat langsung diisi tanpa mendefinisikan jenisnya terlebih dahulu, kecuali bila variabel tersebut merupakan objek simbolis. Nilai yang diisikan ke sebuah variabel dapat berupa konstan, yang didapat dari hasil perhitungan yang melibatkan variabel lainnya, atau dari keluaran suatu fungsi. Contohnya:
>> x = 17
x =
17
>> x = 'hat'
x =
hat
>> x = [3*4, pi/2]
x =
12.0000 1.5708
>> y = 3*sin(x)
y =
-1.6097 3.0000
Vektor/Matriks dalam MATLAB
MATLAB adalah sebuah "Matrix Laboratory", dan karenanya ia menyediakan berbagai cara untuk membuat matriks dengan dimensi berbeda-beda. Menurut gaya bahasa di dalam MATLAB, sebuah vektor mengacu pada sebuah matriks satu dimensi (1×N or N×1), yang biasanya disebut sebagai sebuah array di bahasa pemrograman lainnya. Sebuah matriks umumnya multi-dimensional, yang artinya terdiri dari satu/lebih dimensi, contohnya sebuah matriks N×M, matriks N×M×L, dsb, dimana N, M, and L lebih besar dari 1. Di bahasa lain, matriks seperti ini dapat dilukiskan sebagai array dari array-array, atau array dari array-array dari array-array, atau array multi-dimensi saja.
Untuk membuat array yang sederhana di MATLAB, sintaks penulisan perintahnya adalah nilai awal:langkah:nilai akhir. Contohnya, perintah
>> array = 1:2:9
array =
1 3 5 7 9
akan membuat sebuah variabel bernama array dengan isi 1, 3, 5, 7 dan 9. Yaitu, sebuah array dengan nilai awal 1, dengan nilai selanjutnya berjarak 2 dari sebelumnya, kemudian berhenti ketika sampai ke 9.
a. Vektor
Baris vektor adalah daftar angka-angka yang dipisahkan oleh koma (,) atau spasi. Jumlah masukan dikenal sebagai panjang vektor. Masukan harus ditulis dalam tanda kurung siku ([]).
Perhatikan contoh berikut :
Vektor baris :
>> v = [-2 sin(45) 4 6]
v =
-2.0000 0.8509 4.0000 6.0000
>> length(v) % menghitung panjang vektor
ans =
3
Vektor kolom :
>> x = [6; 5 ; 9]
x =
6
5
9
b. Matriks
Dapat diasumsikan bahwa didalam MATLAB setiap data akan disimpan dalam bentuk matriks. Dalam membuat suatu data matriks pada MATLAB, setiap isi data harus dimulai dari kurung siku ‘[‘ dan diakhiri dengan kurung siku tutup ‘]’. Untuk membuat variabel dengan data yang terdiri beberapa baris, gunakan tanda ‘titik koma’ (;) untuk memisahkan data tiap barisnya.
MATLAB menyediakan beberapa fungsi yang dapat kita gunakan untuk menghasilkan bentuk-bentuk matriks yang diinginkan. Fungsi-fungsi tersebut antara lain:
· zeros : untuk membuat matriks yang semua datanya bernilai 0
· ones : matriks yang semua datanya bernilai 1
· rand : matriks dengan data random dengan menggunakan distribusi uniform
· randn : matris dengan data random dengan menggunakan distribusi normal
· eye : untuk menghasilkan matriks identitas
Operasi dan Fungsi pada Matrik
Perintah | Keterangan | Contoh |
Det | Menghasilkan determinan matriks | Det(A) |
Size | Menghasilkan ukuran matriks | Size(A) |
+ | Menjumlahkan matriks | C = A + B |
* | Mengalikan matriks | C = A * B |
.* | Mengalikan elemen dengan elemen, dengan ketentuan memiliki ukuran yang sama | C = A .* B |
^ | Memangkatkan matriks dengan suatu skalar | C = A^ k |
.^ | Memangkatkan elemen per elemen matriks dengan skalar | C = A .^ k |
’ | Transpose matriks | A’ |
./ | Membagi elemen per elemen dengan ketentuan memiliki ukuran yang sama | C = A ./ B |
\ | Menghasilkan solusi AX = B | C = A \ B |
/ | Menghasilkan solusi XA = B | C = A / B |
Inv | Menghasilkan invers matriks dengan ketentuan matriks merupakan matriks bujur sangkar | C = Inv(A) |
Comments (0)
Posting Komentar