721 likes | 1.39k Views
MK Dasar Komputer (ENG12615 - 2 SKS). Pengantar Pemrograman MATLAB. Ir. Abdul Wahid, MT. Dept. of Chemical Engineering Faculty of Eng., University of Indonesia 2007. Home. 1 PENDAHULUAN. MATLAB Programming. Ir. Abdul Wahid, MT. Dept. of Gas and Petrochemical Eng.
E N D
MK Dasar Komputer (ENG12615 - 2 SKS) Pengantar Pemrograman MATLAB Ir. Abdul Wahid, MT. Dept. of Chemical Engineering Faculty of Eng., University of Indonesia 2007 Home
1 PENDAHULUAN MATLAB Programming Ir. Abdul Wahid, MT. Dept. of Gas and Petrochemical Eng. Faculty of Eng., University of Indonesia
Daftar Isi • Apa itu MATLAB • MATLAB dan Bahasa Pemrograman Lain • PC Command Window • Matematika Sederhana • Operasi Aritmatika Dasar • Ruang Kerja MATLAB • Variabel • Variabel Khusus • Perubahan Nilai Variabel • Komentar dan Tanda Baca • Ragam Cara Penulisan • Bilangan Kompleks • Operasi Matematika pada Bilangan Kompleks • Bentuk Polar dan Reactangular
Apa Itu MATLAB • Cara termudah: menganggap MATLAB sebagai sebuah kalkulator • Seperti kalkulator biasa: sanggup mengerjakan perhitungan sederhana (penambahan, pengurangan, perkalian dan pembagian) • Seperti kalkulator sains: dapat menangani bilangan kompleks, akar dan pangkat, logaritma, operasi trigonometri • Seperti kalkulator yang dapat diprogram: dapat • menyimpan dan memanggil data • Membuat, menjalankan dan menyimpan sederetan perintah untuk mengotomatisasi perhitungan suatu persamaan penting • Melakukan pembandingan logika dan mengatur urutan pelaksanaan perintah • Seperti kalkulator terbaik saat ini: memungkinkan untuk menggambarkan data dengan berbagai cara, mengerjakan aljabar matriks, memanipulasi polinomial, mengintegralkan fungsi, memanipulasi persamaan secara simbol, dll. • MATLAB adalah alat untuk melakukan perhitungan matematika
MATLAB dan Bahasa Pemrograman Lain MATLAB adalah suatu bahasa pemrograman sederhana dengan fasilitas yang jauh lebih hebat dan lebih mudah digunakan dari bahasa seperti BASIC, Pascal, atau C Melalui kemampuan grafisnya, MATLAB menyediakan banyak pilihan untuk visualisasi data MATLAB adalah lingkungan tempat membuat aplikasi sehingga dapat membuat antarmuka grafis (GUI: Graphical User Interface) dan menyediakan pendekatan visual untuk menyelesaikan problem-problem tertentu MATLAB menyediakan sekelompok alat penyelesaian masalah untuk problem-problem khusus yang disebut Toolbox (Control System Toolbox, Signal Processing Toolbox, Symbolic Math Toolbox, dsb. bahkan dapat membuat Toolbox sendiri)
Matematika Sederhana >> erasers=4; >> pads=6; >> tape=2; >> items=erasers+pads+tape items = 12 >> cost=erasers*500+pads*750+tape*8370 cost = 23240 >> average_cost=cost/items average_cost = 1.9367e+003 Lihat tanda ; >> 4+6+2 ans = 12 >> 4*500+6*750+2*8370 ans = 23240 Cara alternatif Lihat tanda _ • Ahmad pergi ke toko perlengkapan kantor dan membeli empat penghapus seharga 500 rupiah, 6 memo seharga 750 rupiah dan 2 pita perekam seharga 8370 rupiah. Berapa jumlah barang yang dibeli Ahmad, dan berapa harga keseluruhannya? • Seperti pakai kalkulator: 4+6+2=12 barang 4*500+6*750+2*8370=23240 rupiah • Dengan MATLAB: • Cara pertama:
Ruang Kerja MATLAB MATLAB membuat beberapa jendela pada monitor Jendela Commad merupakan tempat interaksi utama MATLAB MATLAB mengingat perintah-perintah yang diberikan dan nilai-nilai dari variabel yang dibuat Perintah dan variabel itu dikatakan tinggal dalam Ruang Kerja MATLAB, dan dapat dipanggil kapanpun dikehendaki Contoh: untuk mencek nilai tape, satu-satunya yang dikerjakan adalah dengan mengetih kata itu
Ruang Kerja MATLAB (2) >> who Your variables are: ans erasers pads cost items tape >> tape tape = 2 • Perintah whoakan menampilkan daftar variabel-variabel yang telah digunakan • Untuk menampilkan perintah sebelumnya gunakan panah atas () atau bawah ()
Perubahan Nilai Variabel >> erasers=4; >> pads=6; >> tape=2; >> items=erasers+pads+tape items = 12 >> erasers=6; >> items items = 12 >> items=erasers+pads+tape items = 14 Jika telah membuat beberapa variabel, mungkin ingin mengubah nilai dari suatu variabel, misal: erasers=4 menjadi =6 Nilai items jika dipanggil kembali tidak berubah, tapi jika dilakukan perhitungan kembali, akan berubah Saat MATLAB melakukan perhitungan, ia mengerjakannya dengan nilai-nilai yang diketahuinya pada saat suatu perhitungan dikerjakan. Harus dihindari pendefinisian kembali variabel-variabel kecuali jika benar-benar perlu Untuk menghapus variabel gunakan perintah clear
Komentar dan Tanda Baca >> erasers=6 % Jumlah penghapus erasers = 6 Semua teks sesudah tanda persen (%) dianggap sebagai pernyataan komentar dan tidak dilakukan perhitungan apapun Komentar diperlukan untuk memudahkan kita berkomunikasi dengan apa yang kita tulis
Ragam Cara Penulisan >> erasers=4, pads=6; tape=2 erasers = 4 tape = 2 >> average_cost=cost/... items average_cost = 1.9367e+003 Beberapa perintah dapat diletakkan pada baris yang sama dengan dipisahkan oleh koma atau titik koma Tanda koma memberitahu MATLAB untuk menampilkan hasil, titik koma mencegah penampilan hasil Deretan tiga titik (…) memberitahu MATLAB bahwa lanjutan pernyataan terdapat di baris berikutnya Pelanjutan pernyataan tersebut terjadi jika deretan tiga titik terdapat di antara nama variabel atau operator, artinya, nama variabel tidak dapat dipisah menjadi dua baris Untuk menginterupsi MATLAB setiap saat dengan menekan Ctrl-C
Bilangan Kompleks >> c1=1-2i % huruf i menunjukkan bagian imajiner c1 = 1.0000 - 2.0000i >> c1-2j % j menunjukkan hal yang sama ans = 1.0000 - 4.0000i >> c2=3*(2-sqrt(-1)*3) c2 = 6.0000 - 9.0000i >> c4=+sin(.5)*i c4 = 0 + 0.4794i Salah satu kehebatan MATLAB adalah bahwa ia tidak memerlukan penanganan khusus untuk bilangan kompleks Bilangan kompleks disimpan dalam beberapa cara Penghentian dengan i atau j hanya berlaku bagi konstanta numerik (2i atau 2j), bukan untuk ekspresi (sin(.5)i tidak dikenal, harus ditulis sin(.5)*i)
OperasiMatematikapadaBilanganKompleks >> c6=(c3+c4)/c5 c6 = 0 + 5.6641i >> c7=i^3 c7 = 0 - 1.0000i >> realc6=real(c6) realc6 = 0 >> imagc6=imag(c6) imagc6 = 5.6641 Ditulis dengan cara yang sama seperti menulis operasi pada bilangan real Operasi pada bilangan kompleks akan menghasilkan bilangan kompleks Perintah real dan imag digunakan untuk mengambil bagian real saja atau imajiner saja
Bentuk Polar dan Reactangular • Perhatikan identitas Euler (dibaca Oiler) yang menghubungkan bentuk polar bilangan kompleks ke bentuk reactangular-nya: M M . ej = a + bi dengan bentuk polar diberikan oleh besarnya M dan sudut ,sedangkan pada bentuk rectangular diberikan dengan a + bi.
Bentuk Polar danReactangular (2) >> c1=1-2i c1 = 1.0000 - 2.0000i >> mag_c1=abs(c1) mag_c1 = 2.2361 >> deg_c1=angle(c1)*180/pi deg_c1 = -63.4349 • Hubungan antara bentuk-bentuk itu adalah M = (a2 + b2) = tan-1 (b/a) a = M.cos b = M. sin
Bidang S imajiner s1 M real s2 • Bilangan kompleks: s = a ± bi s1 = a + bi s2 = a - bi
2 KEMAMPUAN SAINS MATLAB Programming Ir. Abdul Wahid, MT. Dept. of Chemical Engineering Faculty of Eng., University of Indonesia
Daftar Isi • Fungsi-fungsi Matematika Umum • Di Antara Fungsi-fungsi Umum • Contoh-contoh • Contoh Lain • Contoh: Memperkirakan Tinggi Bangunan • MATLAB untuk Estimasi Tinggi Bangunan • Contoh: Peluruhan Radioaktif • MATLAB untuk Peluruhan Radioaktif • Contoh: Masalah Konsentrasi Asam • MATLAB untuk Konsentrasi Asam • Contoh: Perhitungan Bunga • Rumus Perhitungan Bunga • MATLAB untuk Perhitungan Bunga
Fungsi-fungsi Matematika Umum Seperti kalkulator biasa, MATLAB mempunyai berbagai fungsi umum yang penting untuk matematika, teknik, dan ilmu pengetahuan MATLAB juga menyediakan ratusan fungsi khusus dan algoritma yang berguna untuk menyelesaikan permasalahan tertentu Semua fungsi tersebut dapat dilihat pada tabel referensi pada akhir buku rujukan Gunakan perintah help untuk melihat bagaimana suatu fungsi didefinisikan Web Matlab: http://www.mathworks.com
Contoh-contoh >> 4*atan(1) % suatu cara untuk mendekati pi ans = 3.1416
>> help atan2 % untuk menampilkan help fungsi atan2 ATAN2 Four quadrant inverse tangent. ATAN2(Y,X) is the four quadrant arctangent of the real parts of the elements of X and Y. -pi <= ATAN2(Y,X) <= pi. See also ATAN.
>> 180/pi*atan(-2/3) % atan2 menggunakan informasi tanda vektor ans = -33.6901
>> 180/pi*atan2(-2,-3) % 180/pi mengkonversi sudut ke derajat ans = -146.3099
Contoh Lain >> x=2.6, y1=fix(x), y2=floor(x), y3=ceil(x), y4=round(x) x = 2.6000 y1 = 2 y2 = 2 y3 = 3 y4 = 3 >> gcd(18,81) % 9 adalah FPB ans = 9 >> lcm(18,81) % 162 adalah KPK ans = 162
H h D Contoh: Memperkirakan Tinggi Bangunan • Berapa tinggi gedung? • Tinggi bangunan adalah h+H, dengan H adalah tinggi sisi segitiga di hadapan pengamat Tangen dari sudut : tan () = H/D H = D.tan () • Tinggi bangunan = h + D.tan()
MATLAB untuk Estimasi Tinggi Bangunan ??? • Jika h = 2 m, D = 50 m, dan = 60o >> h = 2; D = 50; thetha = 60; >> Tinggi_bangunan = h+D*tan(thetha*pi/180) Tinggi_bangunan = 88.6025
Contoh: Peluruhan Radioaktif Elemen radioaktif polonium mempunyai umur paruh 140 hari, yang berarti bahwa setelah 140 hari jumlah polonium tinggal separuh dari jumlah semula. Jika ada 10 gram polonium hari ini, berapa yang tinggal setelah 250 hari?
MATLAB untuk Peluruhan Radioaktif >> semula=10; waktu_paruh=140; waktu=250; >> Jumlah_tertinggal=semula*0.5^(waktu/waktu_paruh) Jumlah_tertinggal = 2.9003 • Setelah satu kali waktu paruh atau 140 hari, tertinggallah 10*.5 = 5 gr. Setelah 2 kali waktu paruh atau 280 hari, tertinggal 5*.5 = 10*.5*.5 = 10*(.5)2 • 250 hari berapa kali waktu paruh? 250/140 • Rumus untuk jumlah yang tertinggal = jumlah semula*(0.5)waktu/waktu paruh
Contoh: Masalah Konsentrasi Asam Sebagai bagian dari suatu proses pembuatan suku cadang di suatu pabrik otomatis, suku cadang tersebut dicelupkan kedalam air agar dingin, kemudian dicelup di bak air asam untuk membersihkannya. Setelah beberapa lama maka konsentrasi larutan asam akan menurun karena penambahan air saat pencelupan dan larutan yang terbuang saat suku cadang tadi diambil dari bak. Untuk memelihara kualitas, keasaman larutan asam tidak boleh kurang dari suatu batas minimum. Dimulai dengan konsentrasi asam 90% maka jika konsentrasi minimum 50%, air yang ditambahkan ke dalam bak asam adalah 1% dari volume bak dan 1% dari larutan terbuang saat suku cadang dikeluarkan. Berapa banyak suku cadang dapat dicelupkan ke bak air asam sebelum keasaman larutan dalam bak ada di bawah batas minimum?
MATLAB untuk Konsentrasi Asam >> Kons_awal=90; Kons_min=50; lost=0.01; >> n=floor(log(Kons_awal/Kons_min)/log(1+lost)) n = 59
Contoh: Perhitungan Bunga • Anda telah setuju untuk membeli mobil baru seharga $18500. Dealer mobil anda menawarkan dua pilihan keuangan: (1) bunga 2.9% dalam 4 tahun, atau (2) bunga 7% dalam 4 tahun dengan potongan harga $1500. Manakah pilihan terbaik?
Rumus Perhitungan Bunga • Pembayaran bulanan P untuk pinjaman A dollar dengan bunga bulanan R, dibayar pada bulan ke M adalah:
MATLAB untuk Perhitungan Bunga >> format bank % 2 desimal >> A=18500; >> M=12*4; >> FR=1500; >> % Penawaran 1 >> R=(2.9/100)/12; % tingkat bunga bulanan >> P=A*(R*(1+R)^M/((1+R)^M-1)) P = 408.67 >> T1 = P*M % total harga mobil T1 = 19616.06 >> % Penawaran 2 >> R=(8.9/100)/12; % tingkat bunga bulanan >> P=(A-FR)*(R*(1+R)^M/((1+R)^M-1)) P = 422.24 >> T2 = P*M % total harga mobil T2 = 20267.47 >> Selisih = T2 - T1 Selisih = 651.41 Penawaran 1 lebih baik
Perhitungan Kecepatan Aliran • Air pendingin mengalir sebanyak 72 m3 per jam melalui pipa berdiameter 0.1m. Berapa kecepatan aliran (dalam m/s) air pendingin itu? (dari buku Dasar-Dasar Teknologi Kimia, Vollrath Hopp, hlm. 198 – 199)
MATLAB untuk Perhitungan Kecepatan Aliran >> volumetricrate_h=72; D=0.1; >> volumetricrate_s=volumetricrate_h/3600; >> area=pi*D^2/4; >> velocity=volumetricrate_s/area velocity = 2.55
c b a Perhitungan Tekanan Sebatang balok besi mempunyai ukuran a = 5 cm, b = 6 cm, c = 10 cm dan berat jenis 7.8 g/cm3 serta gaya tarik bumi 9.81 m/s2. Berapa besar tekanan yang bekerja pada dasarnya?
Perhitungan Daya Angkat Sebuah lift mengangkat 1000 kg setinggi 25 m dalam 30 s (gaya tarik bumi 9.81 m/s2). Berapa daya angkatnya?
Perhitungan Daya Pompa Berapa besar daya sebuah pompa, jika 10 m3 dinaikkan setinggi 20 m dalam waktu 5 menit?
3 COMMAND WINDOW MATLAB Programming Ir. Abdul Wahid, MT. Dept. of Chemical Engineering Faculty of Eng., University of Indonesia
Daftar Isi • Mengatur Ruang Kerja MATLAB • Whos: Informasi Detail Variabel • Workspace Browser • Perintah Clear • Diary • Print • Menyimpan dan Memanggil Data • Format Penampilan Angka • Format-format Numerik
Mengatur Ruang Kerja MATLAB >> who Your variables are: A P T1 FR R T2 M Selisih Data dan variabel yang dibuat dalam jendela Command tersimpan dalam ruang kerja MATLAB Untuk menampilkan nama-nama variabel yang ada di ruang kerja MATLAB, digunakan perintah who
Whos: Informasi Detail Variabel • Perintah whos akan sangat berguna terutama setelah pembahasan array dan tipe data yang lain >> whos Name Size Bytes Class A 1x1 8 double array FR 1x1 8 double array M 1x1 8 double array P 1x1 8 double array R 1x1 8 double array Selisih 1x1 8 double array T1 1x1 8 double array T2 1x1 8 double array Grand total is 8 elements using 64 bytes
Workspace Browser Jendela ini memuat informasi seperti yang ditampilkan oleh perintah whos Jendela ini membuat anda dapat menghapus atau membersihkan variabel-variabel tertentu Jendela secara default ditampilkan saat menjalankan MATLAB