Apa itu Matlab?
Matlab merupakan bahasa komputasi terkenal dan banyak dipakai oleh mahasiswa atau periset yang ingin membuat suatu prototipe dengan algoritma baru. Terkadang aplikasi ini dijadikan alat ukur yang cukup adil terhadap dua metode, karena tidak bisa kita membandingkan metode tertentu yang dibuat dengan C++ dan metode lain yang dibuat dengan bahasa yang lain misalnya Java. Terkadang yang unggul adalah C++ terlepas dari metode yang dipakai karena memang jenis bahasanya yang lebih cepat.
Beberapa institusi melarang mahasiswanya menggunakan Matlab yang katanya terkesan tinggal pakai saja (toolbox-toolboxnya). Ketika orang ilmu komputer menjauhi Matlab, ternyata bidang lain malah mendekati. Tak dapat dipungkiri Matlab merupakan salah satu aplikasi yang justru mendekatkan ilmu komputer yang sebelumnya terkesan eksklusif menjadi terbuka terhadap cabang ilmu yang lain. Bahkan saat ini multi disiplin ilmu sedang giat-giatnya dijalankan. Jika dikatakan Matlab tidak opensource, ternyata ada bahasa setara dengan matlab yang open source juga seperti scilab, octave, dan sebagainya.
Beberapa tahun yang lalu Matlab masih sekedar alat bantu menghitung dengan sifat matriksnya yang memang cocok untuk operasi matematis. Tetapi karena kesulitan dalam penggunaannya, Matlab menambahkan Graphic User Interface (GUI) seperti bahasa pemrograman visual yang lain sehingga bisa dibuat menjadi program tersendiri dimana sebelumnya masih mengandalkan pemrograman visual lainnya seperti VB, Delphi, dan lain-lain.
Belajar GUI dengan Mudah
Untuk rekan-rekan yang bingung prinsip kerja GUI berikut teknik dasar belajar GUI tanpa buku. Sebenarnya ketika belum banyak buku Matlab yang dijual, para mahasiswa mempelajari GUI lewat Matlab sendiri. Buka Matlab dan ketik ‘guide’ di comman window.
Jika Anda sudah mahir, maka langsung aja memilih “Blank GUI (Default)”. Tetapi di sini kita mau belajar, maka paling dasar adalah kita memilih “GUI with Uicontrols”. Di sini Anda akan diberikan contoh program visual bagaimana menangkap masukan, melakukan komputasi, dan mengeluarkan hasil di kolom keluaran.
Pilih, dan klik OK, sehingga Matlab memunculkan GUI contoh dimana kita akan menghitung Massa benda berdasarkan masukan kerapatan dan volume. Lalu di mana kita mengetikkan programnya? Mudah saja, pertama – tama tekan tombol RUN (Ctrl-T) atau tombol segitiga berwarna hijau. Maka Matlab akan meminta anda memberi nama aplikasi yang baru saja dibuat. Beri nama, misalnya latihan, maka program siap dijalankan.
Tampak jika kita beri masukan Density sebesar dua dan volume tiga, diperolah massa 2×3 =6. Sederhana tetapi ini merupakan dasar GUI yang sederhana dimana Matlab menerima masukan, memproses dan menampilkan output. Di mana letak programnya? Mudah saja, di GUI desainer sebelumnya tekan tombol M-file editor dengan icon pulpen dan kertas. Maka Anda akan ditampilkan listing programnya.
Perhatikan listing di atas, baris ke 98 sampai 106 adalah teknik menangkap variabel density di tombol isian density di GUI. Baris 105 dan 106 adalah instruksi wajib agar density dapat dihitung di fungsi yang lain selain fungsi density (di GUI ditambah kata _Callback). Jika fungsi yang ada di Matlab cukup banyak (jumlah fungsi berdasarkan tombol yang Anda pasang di GUI) maka Anda membutuhkan bantuan f() yang dapat Anda klik dan langsung mengarahkan ke lokasi fungsi yang dituju.
Coba arahkan ke fungsi calculate_Callback yang akan menghitung massa. Tampak fungsi berikut ini, perhatikan di sini kita tidak mengalikan density dengan volume melainkan menambahkan awalan “handles”. Mengapa? Jawabannya karena density dan volume digunakan di fungsi lain, maka harus ditambah handles. Sebenarnya jika ingin mudah, kita tidak perlu membuat sub objek (metricdata). Bisa saja langsung dengan handles.density saja jika di awal kita tidak memerlukan metric data. Jika Anda berhasil membuat aplikasi sederhana seperti ini lewat pilihan GUI pertama (Blank GUI) maka Anda sudah dapat dikatakan mampu membuat GUI. Selamat mencoba. Cara membuat GUI dengan loading file tertentu bisa di lihat di postingan sebelumnya.
mass = handles.metricdata.density * handles.metricdata.volume;
set(handles.mass, ‘String’, mass);