You are on page 1of 59

Daftar Isi

Saturday, February 12, 2011 1:33 PM

JANS HENDRY / S2 TE UGM 09

1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14.

Yang akan dipelajari pada topik Matlab Dasar adalah: pendahuluan Variabel dan Case Sensitif Perhitungan sederhana Fungsi Matematis I Fungsi Matematis II Fungsi Matematis III Plotting I Plotting II Ku Suka Matriks I Ku Suka Matriks II Ku Suka Matriks III Bonus: CInta Soal-soal Jawab

Matlab Dasar Page 1

Lecture 1 - Pendahuluan
Wednesday, February 16, 2011 4:11 PM

JANS HENDRY / S2 TE UGM 09

Matlab adalah sebuah perangkat lunak yang dapat digunakan untuk menyelesaikan masalah komputasi mulai dari yang paling mudah hingga yang kompleks. Tidak masalah bila saat ini anda tidak memiliki kemampuan dalam pemrograman karena banyak toolbox yang bisa anda gunakan secara langsung untuk menyelesaikan permasalahan anda. Awalnya matlab ditulis berdasar Fortran, lalu perkembangan dilanjutkan dengan penulisan menggunakan bahasa C. Pada dasarnya pemrograman dalam Matlab relatif mudah. Anda cukup mengetahui alur pemrograman yang standar telah dihadirkan pada bahasa pemrograman lainnya. Terlebih bila anda sudah mengerti bahasa C, maka pindah ke lingkungan Matlab tidak akan terlalu sulit. Untuk kedepannya materi yang akan dibicarakan pada Matlab Dasar adalah materi yang benar-benar dasar. Diharapkan bahwa pembaca tidak hanya copy paste program dari tempat lain, tetapi bisa membuat program sendiri dan mengerti menerjemahkan permasalahan yang ada menjadi sebuah bahasa matematika versi Matlab. Saya akan memberikan contoh-contoh program yang ditulis dalam Command Window Matlab dan juga dalam bentuk M-File nya. Untuk lebih jelas, perhatikan gambar dibawah ini.

Gambar diatas adalah Command Window dari Matlab dimana anda bisa menuliskan syntax yang bisa langsung dieksekusi. Perlu diketahui juga bahwa Matlab merupakan interpreted language karena tidak menghasilkan file executable. Perhatikan gambar dibawah ini.

Gambar di atas memperlihatkan tempat dimana kita bisa menulis sebuah algoritma menjadi sebuah program tanpa langsung dieksekusi. Note: Perlu diingat bahwa pada tiap lecture yang saya hadirkan, akan dibuat sesederhana dan semudah mungkin sehingga tidak bertele-tele untuk teori yang sebenarnya tidak perlu dibahas terlalu rumit. Agar anda bisa langsung mengaplikasikan kemampuan anda. Dalam lecture ini saya juga akan memberikan soal latihan dan jawaban untuk menguji sejauh mana anda telah memahami apa yang telah anda pelajari. Jangan kaget bila jumlah

Matlab Dasar Page 1

memberikan soal latihan dan jawaban untuk menguji sejauh mana anda telah memahami apa yang telah anda pelajari. Jangan kaget bila jumlah halamannya tidak terlalu banyak, tapi anda sudah mengerti banyak! Hehehe selamat belajar! ~~~ TERIMA KASIH ~~~

Matlab Dasar Page 2

Lecture 2 - Variabel dan Case Sensitif


Wednesday, February 16, 2011 4:11 PM

JANS HENDRY / S2 TE UGM 09

Sebelum mempelajari lebih lanjut tentang variabel dan case sensitif, terlebih dahulu saya ingin memberikan tips. Tips: untuk membersihkan jendela command matlab (ingatkan yang mana? Hehe) ketik clc. Untuk membersihkan semua variabel yang telah digunakan dalam program ketik clear.

Variabel Sama halnya dengan bahasa pemrograman lain, Matlab juga memberikan kita keleluasaan untuk membuat dan menggunakan variabel. Seperti apa variabel? Perhatikan contoh berikut ini. >> a=10 a= 10 Operasi diatas disebut sebagai operasi penugasan atau assignment. Dimana "a" diberi nilai 10. Yang menjadi variabel pada operasi di atas adalah "a". Sementara yang menjadi nilai adalah "10" yang bersifat integer. Anda dapat menggunakan berbagai jenis variabel, tapi usahakan bahwa variabel tersebut memiliki arti terhadap operasi yang dilaksanakan dalam program anda. Karena bila menggunakan variabel yang asal-asalan akan menyulitkan anda pada saat debug atau memperbaiki kesalahan dalam pemrograman. Beberapa aturan dalam membuat variabel: 1. Variabel bisa berupa huruf tunggal atau kata yang terdiri dari huruf dan angka. Tapi di awal variabel tidak boleh menggunakan angka. Harus huruf yang menjadi awal dari variabel. 2. Tidak boleh mengandung variabel unik seperti : ~!@#$%^&*()=-?/ dan variabel sejenis. 3. Tidak boleh menggunakan reserved variable karena telah digunakan oleh matlab, seperti "I,j,pi, e" dan lain-lain. 4. Tidak boleh menggunakan fungsi-fungsi yang sudah ada di dalam matlab. Ada kasus yang saya alami, ketika menamakan sebuah program yang saya buat, matlab tidak bisa menjalankan program tersebut. Ternyata karena nama tersebut telah digunakan oleh matlab sebagai toolbox nya. Tips: bila anda tidak ingin menampilkan nilai variabel yang telah ditugaskan dapat menggunakan ";". Contoh: >> a=10; Dalam hal ini nilai "a" tidak akan ditampilkan seperti pada contoh yang diatas. Ada juga yang perlu anda ingat dan pahami ketika membuat program, yakni tipe-tipe data. Perhatikan tabel berikut ini:

Dan untuk menentukan format bilangan dapat digunakan keterangan pada tabel berikut:

Matlab Dasar Page 1

Untuk penggunaan format, perhatikan contoh berikut: Dalam keadaan default maka matlab akan menggunakan format short sebagai pemformatan bilangannya. >> a=1; >> b=3; >> bagi=a/b [tekan ENTER] bagi = 0.3333 Misalkan anda menginginkan jumlah angka dibelakang koma (angka penting) lebih dari yang ada diatas. Anggap saja anda membutuhkan angka untu analisa yang lebih rinci. Untuk itu, sebelum operasi tentukan lebih dulu format bilangan yang ingin anda gunakan. Perhatikan contoh di bawah ini. >> format long >> a=1; >> b=3; >> bagi=a/b bagi = 0.333333333333333 Tampak bahwa hasil nya sangat berbeda. Case Sensitif Sama halnya dengan bahasa C (bila anda sudah pernah berkenalan dan menggunakannya), Matlab juga mengenal istilah case sensitif yang berarti bahwa untuk dua variabel yang sama tapi salah satu ditulis dengan huruf besar dan yang lain ditulis dengan huruf kecil maka Matlab menganggap kedua nya adalah berbeda. Misalkan variabel aku tidak sama dengan variabel AKU. Perhatikan contoh berikut ini. >> aku=2; >> AKU=4; >> hasil = aku + AKU hasil = 6 Tampak pada contoh diatas bahwa aku dan AKU adalah dua variabel yang berbeda, maka nya bila dijumlahkan menghasilkan 6. Demikianlah untuk lecture ini. Akan dilanjutkan pada topik bahasan berikutnya. ~~~ TERIMA KASIH ~~~

Matlab Dasar Page 2

Lecture 3 - Kenalin Saya M-File


Wednesday, February 16, 2011 4:11 PM

JANS HENDRY / S2 TE UGM 09

Pada lecture sebelumnya anda telah diperkenalkan dengan sekelumit dasar-dasar menggunakan Matlab dan bagaimana menuliskan program didalam nya dengan mudah. Pada Lecture ini kita akan mulai menulis program untuk perhitungan sederhana baik menggunakan matlab command window atau editor m-file. Matlab Command Window Sebelumnya saya sudah memperkenalkan kepada anda bagian mana dari Matlab yang merupakan Matlab Command Window. Jadi, kita langsung saja menuju menulis perhitungan sederhana di Matlab. Terlebih dahulu pastikan anda telah membuka program matlab. Dalam hal ini saya akan memberikan contoh perhitungan dengan menggunakan tanpa variabel dan dengan variabel. Lecture ini mungkin tidak terlalu panjang, karena hanya mengenalkan beberapa operasi yang biasa saja. Sebelumnya saya jelaskan lebih dulu tentang jenis-jenis operator yang ada di Matlab: + = operator penjumlahan - = operator pengurangan * = operator perkalian \ atau / = operator pembagian ^ = operator pemangkatan - Operasi penjumlahan >> a=120; >> b=212; >> jumlah = a + b jumlah = 332 - Operasi pengurangan >> kurang = a - b kurang = -92 - Operasi perkalian >> kali = a * b kali = 25440 - Operasi pembagian Operasi pembagian terdiri atas 2 jenis dengan arti yang berbeda. Perhatikan contoh berikut ini. Bagi kanan >> bagikanan = a/b bagikanan = 0.5660 Bagi kiri >> bagikiri = a\b bagikiri = 1.7667 Operasi pembagian seperti ini bisa diberlakukan untuk vektor dan matriks. Akan sangat berguna sekali. Nanti akan dibahas pada lecture "Ku Suka Matriks". % dalam hal ini kita tidak lagi perlu mendefinisikan nilai a dan b, karena nilai a dan b telah didefinisikan di awal dan tersimpan dalam workspace Matlab. Untuk membersihkan workspace ini bisa digunakan clear. Ingat Tips ini sudah saya berikan di lecture sebelumnya. Begitu juga untuk operasi lain di bawahnya.

Matlab Dasar Page 1

- Operasi perpangkatan Operasi ini pada dasarnya adalah perkalian, tapi dilakukan terhadap bilangan yang sama beberapa kali. Pertimbangannya, tidak efisien jika harus menulis bilangan yang sama beberapa kali dalam perkalian, sehingga timbullah ide untuk menampilkan sebuah notasi untuk menyelesaikan masalah tersebut. Notasi tersebut adalah notasi perpangkatan (^). Perhatikan contoh di bawah ini. Contoh: >> pangkat = 5^10 pangkat = 9765625 Operasi yang saya contohkan diatas masih bisa dikembangkan lebih rumit. Misalnya anda memiliki banyak suku variabel yang ingin dioperasikan dan ada tingkat prioritas dalam operasi maka gunakan saja tanda ( dan ). Sama halnya dengan operasi matematika yang dihitung secara manual, demikian juga dalam Matlab ada prioritas operasi yang didahulukan. Bila saya buat dari paling tinggi ke rendah adalah - Perkalian dan pembagian - Penjumlahan - Pengurangan Perkalian dan pembagian di bedakan berdasarkan tanda ( dan ). Mudahkan??? Operasi diatas merupakan operasi sederhana menggunakan variabel. Berikut ini contoh bila anda hanya ingin melakukan operasi secara langsung tanpa variabel. >> 434*423 ans = 183582 Dan anda bisa melakukan untuk banyak suku angka yang akan dioperasikan. Editor M-File Bila anda ingin melakukan berbagai operasi dalam satu eksekusi, dengan menggunakan matlab command window tentu menjadi tidak praktis. Untuk itulah Matlab menyediakan fasilitas yang satu ini yakni Editor M-File dimana anda bisa menuliskan secara keseluruhan program anda lalu di eksekusi secara bersamaan. Perhatikan contoh dibawah ini: Dalam hal ini saya akan menggunakan contoh operasi sederhana diatas untuk diaplikasikan pada Editor M-File. Tujuannya agar anda tidak bingung bila saya langsung memberikan contoh yang rumit. Sehingga anda pun bisa membandingkan keefektifan dari menggunakan M-File dibanding Command Window ketika anda ingin menuliskan program yang lebih kompleks. Selain itu, saya juga akan menunjukkan kepada anda nanti, bahwa M-File dan Command Window bisa bekerja saling mendukung. Contoh dibawah ini akan menjelaskan cara menjalankan program nya. 1. Buat file baru, lalu save dengan sebuah nama file.

Matlab Dasar Page 2

2. Lalu tuliskan program anda.

3. Lalu jalankan program (eksekusi).

4. Setelah dieksekusi akan tampil dialog box seperti dibawah ini. Pilih lah Add To Path (Ingat!!!).

Matlab Dasar Page 3

5. Setelah dieksekusi, lihatlah hasilnya di Matlab Command Window.

Tampak bahwa hasil eksekusi langsung menampilkan semua operasi anda. Sangat efisien dan efektif bukan??? Demikian lecture kali ini. Untuk lecture berikutnya kita akan mempelajari tentang fungsi-fungsi matematis standar yang ada di Matlab termasuk bagaimana cara menggunakannya. ~~~ TERIMA KASIH ~~~

Matlab Dasar Page 4

Lecture 4 - Fungsi Matematis I


Wednesday, February 16, 2011 4:12 PM

JANS HENDRY / S2 TE UGM 09

Pada lecture sebelumnya anda telah mengenal bagaimana cara melakukan operasi sederhana pada Matlab Command Window dan Editor M-File. Dengan demikian, saya berharap sudah tidak ada kebingungan dalam membedakan penggunaan dari kedua fasilitas tersebut. Pada lecture ini, saya akan memberikan sekelumit fungsi matematis dasar pada Matlab yang akan sangat berguna nantinya ketika anda berhadapan dengan problem komputasi atau bidang lain yang memanfaatkan Matlab. Topik ini saya bagi menjadi 2 lecture karena bila semuanya saya masukkan dalam 1 lecture, dikhawatirkan anda akan bosen dan berhenti membaca (sepertinya itu adalah sifat alami bangsa kita hehe). Fungsi Trigonometri Fungsi ini tidak ada matinya, banyak problema matematis yang selalu melibatkan fungsi ini, terlebih ketika anda berhadapand dengan sinyal dan kontrol. Tapi yang pernah saya temui adalah kebanyakan orang yang baru mengenal matlab, tidak tau bagaimana cara menggunakan nya. Misalkan: dalam matematika kita mengenal bahwa sin 90 = 1. Tapi bagaimana cara menghasilkan nilai tersebut dalam matlab? Apakah susah atau terlalu sederhana? Yang biasa dilakukan oleh programmer baru pada Matlab adalah seperti ini: >> sin(90) Dan ketika dieksekusi maka menghasilkan: ans = 0.8940 Lho apa yang salah???? Nah itulah problem dasar yang beberapa kali saya temui dialami oleh rekan sekitar saya (bukan berarti rekan-rekan S2 saya lho) :-) Di matlab ukuran sudut nya perlu dibuat dalam radian dengan mengalikan nilai sudut yang ingin dicari dengan pi/180. Contoh: >> sin(90*pi/180) ans = 1 Tampak bahwa hasilnya sesuai seperti yang kita inginkan. Apa yang telah saya jelaskan diatas berlaku untuk fungsi trigonometri yang lainnya: - cos (x) - tan(x) Bagaimana dengan invers dari fungsi trigonometri? Invernya adalah: - asin(x) untuk fungsi sin(x) - acos(x) untuk fungsi cos(x) - atan(x) untuk fungsi tan(x) Invers trigonometri ini bila dieksekusi akan menghasilkan bilangan radian nya. Contoh: jika tadi kita mendapatkan bahwa sin(90) = 1 maka kita berusaha mencari sudut dalam radian bila yang diketahui adalah nilai sin(x) nya. >> asin(1) ans = 1.5708

Matlab Dasar Page 1

Hasil dari operasi asin(x) tidak menarik tampaknya, tapi anda jangan salah nilai tersebut berasal dari: >> 90*pi/180 ans = 1.5708 Anda mengerti kan maksudnya??? Sehingga klo anda menggunakan hasil asin(x) menjadi masukan untuk sin(x) maka akan dihasilkan nilai yang sama dengan menggunakan rumus = x*pi/180. Matlab yang membantu Bila ternyata anda lupa bahwa Matlab membutuhkan rumus konversi radian tersebut, maka Matlab lagi-lagi telah memudahkan kita dalam menyelesaikan permasalahan trigonometri dengan menggunakan toolbox yang telah disediakan menjadi standar di dalam Matlab. Fungsi tersebut adalah: - sind(x) - cosd(x) - tand(x) Bagaimana dengan penggunaannya? Tidak perlu serepot seperti contoh yang saya kemukakan diatas. Contoh: >> sind(90) ans = 1 Jelas sekali mudahkan? Anda cukup dengan memasukkan bilangan bulat saja, tanpa harus melakukan konversi nilai ke radian terlebih dahulu. Karena fungsi tersebut sudah melakukan konversi secara otomatis ketika mengeksekusi perintah dari anda. Tapi saya yakin bahwa ada keunikan dari penggunaan fungsi dasar trigonometri seperti di atas, mungkin bila anda butuh melakukan analisa lebih detail dalam matematis. Tapi untuk persoalan sederhana anda bisa menggunakan secara langsung fungsi yang baru saja saya kasih diatas. Jangan sampai anda terbelit pada sesuatu yang tidak penting sehingga membuat anda terhambat dalam membuat program untuk permasalahan komputasi anda. Demikian saya rasa untuk lecture kali ini, kita akan lanjutkan dengan fungsi-fungsi lainnya pada lecture berikutnya.

~~~ TERIMA KASIH ~~~

Matlab Dasar Page 2

Lecture 5 - Fungsi Matematis II


Thursday, February 17, 2011 8:07 AM

JANS HENDRY / S2 TE UGM 09

Pada lecture sebelumnya kita telah membahas cepat dan tuntas tentang fungsi trigonometri yang ada pada Matlab. Pada lecture ini kita akan melanjutkan dengan Fungsi Matematis lainnya yang akan sangat berguna buat anda untuk diaplikasikan pada permasalahan komputasi. Karena begitu banyaknya fungsi matematis dalam matlab, memang menjadi sebuah kesulitan ketika harus menghapalnya. Menghapal??? Tidak saya sarankan anda untuk menghapal, karena anda akan terjerumus dalam penggunaan formula yang anda sendiri tidak tau artinya sehingga anda akan terjatuh pada sikap tidak patriotis aliyas copy paste program. Berbeda tentu dengan membuat sebuah tulisan atau artikel atau buku, anda memang membutuhkan referensi. Tapi dalam membuat program, usahakan untuk mengerjakannya sendiri terlebih dahulu agar anda tahu persis apa yang sedang dan telah anda perbuat. Baik, tanpa memperpanjang omongan yang tidak penting kita langsung saja membahas fungsi-fungsi matematis lainnya. Dalam hal ini saya memilih beberapa yang sangat penting dan sering saya temui dalam pembuatan program komputasi dan hasil membaca-baca referensi yang saya punya, untuk selebihnya anda bisa mencari sendiri fungsi-fungsi tersebut. A. Fungsi abs Fungsi ini kita kenal juga dengan fungsi Mutlak yang memiliki perumusan |x| = (x)2. Ini sama saja dengan membuat positif bilangan. Berbeda dengan (x2 ) karena ini akan menghasilkan dua buah angka yang bernilai + dan -. Tidak percaya??? Silahkan dibuktikan pemahaman anda. Contoh: >> x=abs(-4) x= 4 B. Fungsi round Fungsi ini akan membulatkan bilangan sesuai dengan aturan "angka penting" yang pernah diperkenalkan ketika sekolah menengah dulu. Round berarti akan membulatkan bilangan ke nilai Integer terdekat. Contoh: >> x=1/3 x= 0.3333 >> y=2/3 y= 0.6667 >> a=round(x) a= 0 >> b=round(y) b= 1 Bisa kan anda melihat fungsi dari round berdasarkan contoh diatas? Round akan membulatkan ke atas untuk bilangan desimal 0.5 dan membulatkan ke bawah untuk bilangan desimal 0.5. C. Fungsi floor Fungsi ini akan membulatkan sebuah bilangan ke arah negatif tak berhingga. Dalam contoh ini nila x telah kita definisikan di atas, dan ada variabel baru z.

Matlab Dasar Page 1

Contoh: >> a=floor(x) a= 0 >> z=5/3 z= 1.6667 >> b=floor(z) b= 1 Dari contoh diatas tampak bahwa berapa pun nilai dibelakang koma, maka bilangan tersebut akan dibulatkan menuju bilangan didepan koma. Tampak bahwa nilai a=0 karena yang ingin dibulatkan adalah 0.33333 Sedangkan untuk b=1 karena yang ingin dibulatkan adalah 1.6667 Ini akan sangat berguna ketika anda membutuhkan hasil 0 atau 1 saja, atau bilangan bulatnya dari bilangan desimal tanpa ada pembulatan. Ini beberapa kali saya temui dalam memprogram sesuatu. Bisa dibilang kita bisa menggunakan fungsi ini sebagai siasat dalam menyelesaikan program. D. Fungsi ceil Fungsi ini merupakan kebalikan dari fungsi floor, karena fungsi ini akan membulatkan ke positif tak berhingga. Dengan membandingkan terhadap fungsi diatas, saya rasa anda bisa langsung tau apa yang dimaksudkan dengan fungsi ini. Nilai-nilai x,y dan z telah didefinisikan sebelumnya. Contoh: >> a=ceil(x) a= 1 >> b=ceil(y) b= 1 >> c=ceil(z) c= 2 Bisa kita simpulkan bahwa berapa pun angka dibelakang koma, maka hasil dari ceil adalah menambahkan angka 1 ke angka didepan koma. E. Fungsi Fix Fungsi ini akan membulatkan bilangan menuju nol. Contoh: >> a=fix(x) a= 0 >> b=fix(y)

Matlab Dasar Page 2

>> b=fix(y) b= 0 >> c=fix(z) c= 1 Bisa disimpulkan bahwa berapa pun angka di belakang koma, semua nya dianggap nol. Lalu hasil pembulatan adalah menambahkan nol tersebut ke bilangan di depan koma. Sehingga hasilnya adalah bilangan di depan koma itu sendiri. TIPS: jadi apa bedanya antara fungsi floor dan fix??? Yang perlu diingat adalah fungsi floor akan berperilaku berbeda ketika menangani bilangan 0. Sementara fungsi fix akan berperilaku sama di kawasan positif maupun negatif. Perhatikan contoh dibawah ini: Contoh: >> floor(-10.0023) ans = -11 >> floor(10.0023) ans = 10 Tampak kan perbedaannya?? Itu karena floor membulatkan menuju negatif tak terhingga (negative infinity). Untuk fungsi fix konsepnya stabil atau konstan sesuai dengan contoh yang telah saya berikan sebelumnya. TIPS: lalu bagaimana dengan fungsi ceil??? Apakah ada pengecualian juga? Ya! Karena fungsi ini akan bekerja berkebalikan dengan floor untuk bilangan 0. Perhatikan contoh di bawah ini: Contoh: >> ceil(-10.7023) ans = -10 >> ceil(10.7023) ans = 11 Jelas sekalikan perbedaannya?? Anda bisa membuktikan dengan contoh yang lainnya. E. Fungsi rem Fungsi ini merupakan sisa dari pembagian. Biasanya ini penting untuk membuat bilangan desimal ke bilangan biner. Fungsi ini membutuhkan 2 buah input agar bisa beroperasi. Contoh: >> a=rem(5,3) a= 2 Artinya sisa pembagian 5 oleh 3 adalah 2. sementara hasil pembagiannya adalah 1. Untuk dapat memahami teori-teori di atas, saya buatkan sebuah contoh yang saling terkait. Semoga anda bisa memahaminya.

Matlab Dasar Page 3

Bila program tersebut dieksekusi akan menghasilkan:

Sekarang anda bisa menggunakan fungsi-fungsi diatas sesuai dengan peruntukan dan kondisinya. Kita lanjutkan pada lecture berikutnya untuk Fungsi Matematis yang lain.

~~~ TERIMA KASIH ~~~

Matlab Dasar Page 4

Lecture 6 - Fungsi Matematis III


Thursday, February 17, 2011 1:46 PM

JANS HENDRY / S2 TE UGM 09

Ternyata oh ternyata, kita harus melanjutkan fungsi matematis ini hingga 3 babak.. Dikarenakan ada beberapa fungsi matematis penting lain yang harus saya hadirkan dan bila saya memasukkan semuanya ke dalam fungsi matematis II (lecture) ditakutkan akan menghasilkan halaman yang banyak dan membuat anda malas dan tidak fokus. Untuk itu ijinkan saya untuk melanjutkan dalam Fungsi Matematis III. F. Fungsi sqrt Fungsi ini digunakan untuk mencari akar dari sebuah bilangan. Contoh: >> a = 4; >> akar = sqrt(a) akar = 2 G. Fungsi eksponential (exp) Fungsi ini untuk menghitung nilai eksponential dengan perpangkatan berapa pun. Contoh: >> exp(1) ans = 2.7183

H. Fungsi log Fungsi yang menghitung logaritma alami (natural algoritmic) dari sebuah bilangan. Klo dalam matematika kita simbolkan sebagai ln (bacanya lon). Jadi dia berbasis bilangan e yang telah ditunjukkan di point sebelumnya. Contoh: >> log(exp(1)) ans = 1 I. Fungsi log10 Merupakan fungsi logaritma yang berbasis 10. Contoh: >> log10(10) ans = 1 J. Fungsi log2 Logaritma dengan basis 2. Contoh: >> log2(2) ans = 1 K. Fungsi conj Fungsi ini akan mengembalikan nilai konjugasi dari sebuah nilai berbentuk kompleks (a + ib). Untuk bilangan yang hanya mengandung komponen real saja, maka yang dikembalikan adalah bilangan itu sendiri. Secara konsep: (a+ib) memiliki konjuget (a-ib) Contoh: >> a=3+5*i a=

Matlab Dasar Page 1

3.0000 + 5.0000i >> konj=conj(a) konj = 3.0000 - 5.0000i L. Fungsi imag Fungsi ini akan mengembalikan nilai imaginer dari bilangan kompleks. Bila bilangan hanya mengandung real saja, maka nilai yang akan dikembalikan adalah nol. Contoh: >> imaj=imag(a) imaj = 5

M. Fungsi real Fungsi ini bekerja terbalik dari fungsi imag karena dia akan mengembalikan nilai real dari bilangan kompleks. Jika bilangan hanya mengandung nilai imajiner, maka fungsi ini akan mengembalikan nilai 0. Contoh: >> re=real(a) re = 3 N. Fungsi sign Fungsi ini akan mengembalikan tanda (positif atau negatif) dari bilangan yang ingin di uji. Fungsi ini akan mengembalikan nilai 1 bila bilangan > 0 dan -1 bila bilangan <0 Serta 0 bila bilangan = 0. Contoh: >> b=100; >> tanda=sign(b) tanda = 1 >> b=-100; >> tanda=sign(b) tanda = -1 >> b=0; >> tanda=sign(b) tanda = 0 O. Fungsi angle Fungsi ini untuk menghitung sudut yang dibentuk oleh bilangan kompleks antara bagian real dan imaginer. Contoh: >> a=3 + 5*i >> sudut=angle(a) sudut = 1.0304 TIPS: perlu diingat bahwa dalam matlab, i dan j dianggap sebagai tanda imajiner. Jangan sampai bentrok dalam menggunakannya.

Matlab Dasar Page 2

menggunakannya. P. Fungsi-fungsi tambahan untuk trigonometri - sinh, cosh, tanh dengan inversnya: - asinh, acosh, atanh. Fungsi-fungsi tersebut merupakan fungsi hiperbolic. Demikianlah fungsi-fungsi matematis yang sering digunakan dalam penyelesaian komputasi. Saya harapkan anda telah mengerti walau hanya sebagainnya saja. Karena ini akan sangat berguna nantinya. Lecture berikutnya saya akan membahas tentang mem-plot grafik pada Matlab. Semoga anda masih bersemangat ~~~ TERIMA KASIH ~~~

Matlab Dasar Page 3

Lecture 6 - Fungsi Matematis III


Thursday, February 17, 2011 1:46 PM

JANS HENDRY / S2 TE UGM 09

Ternyata oh ternyata, kita harus melanjutkan fungsi matematis ini hingga 3 babak.. Dikarenakan ada beberapa fungsi matematis penting lain yang harus saya hadirkan dan bila saya memasukkan semuanya ke dalam fungsi matematis II (lecture) ditakutkan akan menghasilkan halaman yang banyak dan membuat anda malas dan tidak fokus. Untuk itu ijinkan saya untuk melanjutkan dalam Fungsi Matematis III. F. Fungsi sqrt Fungsi ini digunakan untuk mencari akar dari sebuah bilangan. Contoh: >> a = 4; >> akar = sqrt(a) akar = 2 G. Fungsi eksponential (exp) Fungsi ini untuk menghitung nilai eksponential dengan perpangkatan berapa pun. Contoh: >> exp(1) ans = 2.7183

H. Fungsi log Fungsi yang menghitung logaritma alami (natural algoritmic) dari sebuah bilangan. Klo dalam matematika kita simbolkan sebagai ln (bacanya lon). Jadi dia berbasis bilangan e yang telah ditunjukkan di point sebelumnya. Contoh: >> log(exp(1)) ans = 1 I. Fungsi log10 Merupakan fungsi logaritma yang berbasis 10. Contoh: >> log10(10) ans = 1 J. Fungsi log2 Logaritma dengan basis 2. Contoh: >> log2(2) ans = 1 K. Fungsi conj Fungsi ini akan mengembalikan nilai konjugasi dari sebuah nilai berbentuk kompleks (a + ib). Untuk bilangan yang hanya mengandung komponen real saja, maka yang dikembalikan adalah bilangan itu sendiri. Secara konsep: (a+ib) memiliki konjuget (a-ib) Contoh: >> a=3+5*i a=

Matlab Dasar Page 1

3.0000 + 5.0000i >> konj=conj(a) konj = 3.0000 - 5.0000i L. Fungsi imag Fungsi ini akan mengembalikan nilai imaginer dari bilangan kompleks. Bila bilangan hanya mengandung real saja, maka nilai yang akan dikembalikan adalah nol. Contoh: >> imaj=imag(a) imaj = 5

M. Fungsi real Fungsi ini bekerja terbalik dari fungsi imag karena dia akan mengembalikan nilai real dari bilangan kompleks. Jika bilangan hanya mengandung nilai imajiner, maka fungsi ini akan mengembalikan nilai 0. Contoh: >> re=real(a) re = 3 N. Fungsi sign Fungsi ini akan mengembalikan tanda (positif atau negatif) dari bilangan yang ingin di uji. Fungsi ini akan mengembalikan nilai 1 bila bilangan > 0 dan -1 bila bilangan <0 Serta 0 bila bilangan = 0. Contoh: >> b=100; >> tanda=sign(b) tanda = 1 >> b=-100; >> tanda=sign(b) tanda = -1 >> b=0; >> tanda=sign(b) tanda = 0 O. Fungsi angle Fungsi ini untuk menghitung sudut yang dibentuk oleh bilangan kompleks antara bagian real dan imaginer. Contoh: >> a=3 + 5*i >> sudut=angle(a) sudut = 1.0304 TIPS: perlu diingat bahwa dalam matlab, i dan j dianggap sebagai tanda imajiner. Jangan sampai bentrok dalam menggunakannya.

Matlab Dasar Page 2

menggunakannya. P. Fungsi-fungsi tambahan untuk trigonometri - sinh, cosh, tanh dengan inversnya: - asinh, acosh, atanh. Fungsi-fungsi tersebut merupakan fungsi hiperbolic. Demikianlah fungsi-fungsi matematis yang sering digunakan dalam penyelesaian komputasi. Saya harapkan anda telah mengerti walau hanya sebagainnya saja. Karena ini akan sangat berguna nantinya. Lecture berikutnya saya akan membahas tentang mem-plot grafik pada Matlab. Semoga anda masih bersemangat ~~~ TERIMA KASIH ~~~

Matlab Dasar Page 3

Lecture 7 - Plotting I
Thursday, February 17, 2011 8:08 AM

JANS HENDRY / S2 TE UGM 09

Dengan membaca lecture ini berarti anda kemungkinan besar sudah membaca dan memahami apa yang telah kita pelajari pada lecture sebelumnya. Di lecture ini kita akan mempelajari mengenai bagaimana cara memplot grafik dari fungsi matematika atau program yang telah kita buat. Grafik menjadi sangat penting ketika kita harus memvisualisasikan data-data yang cukup banyak ke dalam 1 frame, sehingga lebih mudah dan cepat dimengerti. Sekali lagi saya tekankan bahwa konsep-konsep di setiap lecture disini adalah konsep dasar, sangat dasar dan sederhana sehingga akan memungkinkan anda mampu untuk memperdalam kemampuan anda ke depannya. Dengan memberikan lecture yang sangat dasar dengan cara sederhana dan singkat maka anda bisa memiliki waktu yang banyak untuk melanjutkan ke penggunaan Matlab secara advance. Dibandingkan dengan buku-buku dan referensi yang sering saya baca, terlalu bertele-tele walaupun penting, tapi tidak untuk semua orang. Anda berhak memutuskan untuk apa anda akan gunakan Matlab. Teori yang bertele-tele hanya akan menjebak anda dalam kemalasan, sehingga anda menjadi orang yang akan menganggap bahwa Matlab itu susah. Untuk itu saya harapkan, anda telah menanamkan dari awal, tujuan dari diadakan nya lecture ini. Untuk menghindari teori yang bertele-tele maka saya akan langsung saja memasuki lecture berikutnya. Plot Plot merupakan fungsi dasar yang sangat penting dalam menampilkan grafik di Matlab. Hampir semua permasalahan pemrograman akan berakhir di plot. Instruksi umum yang digunakan dalam menampilkan grafik adalah: plot(x,y) Agar lebih mudah dimengerti, perhatikan contoh dibawah ini. Contoh: Misalkan saya ingin menampilkan bentuk sinyal sinus dalam Matlab pada range -pi hingga pi. TIPS: bila ingin membuat komentar pada program anda, ketik % [komentar]. Maka statemen setelah tanda % tidak akan diproses oleh Matlab.

Berikut ini adalah programnya:

Bila program itu telah dieksekusi akan menghasilkan:

Matlab Dasar Page 1

Berikut ini penjelasan untuk program diatas. - xlabel(' ') menyatakan label yang ingin anda berikan di sumbu-x. - ylabel (' ') menyatakan label yang ingin anda berikan di sumbu-y - title(' ') menyatakan judul grafik yang ingin anda tampilkan di grafik. - grid adalah fungsi untuk menampilkan (ketik on) atau menghilangkan (ketik off) grid pada grafik. Tips: urutan penulisan pada program diatas adalah yang benar, jangan anda menuliskan plot(x,y) pada urutan terbawah, karena akan menyebabkan grafik tidak menampilkan title, xlabel, ylabel dan grid. Contoh: Bila saya ingin menampilkan grafik setengah gelombang sinus.

Hasil eksekusi:

Matlab Dasar Page 2

Gampang kan??? Kuncinya adalah anda harus memutuskan dulu rumus matematis yang ingin anda tampilkan. Setelah itu anda tinggal menggunakan fungsi plot. Pada lecture berikutnya saya akan menjelaskan cara menambahkan aksesoris penting pada grafik, menentukan lebar koordinat yang ingin ditampilkan dan lain-lain.

~~~ TERIMA KASIH ~~~

Matlab Dasar Page 3

Lecture 8 - Plotting II (Selesai)


Thursday, February 17, 2011 3:00 PM

JANS HENDRY / S2 TE UGM 09

Setelah mengerti dalam menggunakan plot selanjutnya pada lecture ini kita akan menggali lebih dalam tentang aksesoris penting lainnya dalam menampilkan grafik. Subplot Subplot digunakan ketika anda ingin menampilkan beberapa grafik dalam satu frame, tujuannya adalah untuk membandingkan dua atau lebih fungsi yang di plot. Bisa saja memang anda tidak perlu menggunakan subplot karena pada dasarnya anda bisa menampilkan beberapa grafik dalam satu frame saja dengan menggunakan plot. Tapi bagaimana bila pada kondisi tertentu anda ingin menampilkan beberapa grafik dengan panjang sumbu-x dan sumbu-y yang masing-masing grafik berbeda? Tentu susah kan bila menggunakan plot saja. Untuk itulah adanya subplot. Sudah mengertikan kegunaannya? Dalam membuat subplot bentuk umumnya adalah subplot(m,n,p) atau subplot (mnp) Dengan m = jumlah baris n = jumlah kolom p = dibagian mana grafik tersebut ditampilkan Baik, untuk dapat mengerti penggunaan suplot perhatikanlah contoh berikut ini.

Hasil eksekusinya adalah sebagai berikut

Matlab Dasar Page 1

Ya, program di atas merupakan peletakan yang tepat untuk bisa menampilkan grafik dengan segala atributnya. Contoh berikut akan memberikan tampilan yang berbeda bila saya mengubah susunan dari m dan n. Perhatikan contoh dibawah.

Hasil eksekusi program di atas adalah

Matlab Dasar Page 2

Tampak bahwa di contoh pertama kita mendapatkan frame dengan matriks 2x1 sementara pada contoh kedua kita mendapatkan matriks 1x2. Menarik bukan??? Anda tentu saja bisa membuat jumlah grafik yang lebih banyak untuk ditampilkan dalam 1 frame. Ikuti saja aturan penulisan yang tepat, seperti di atas. Atribut Ada atribut lainnya yang tidak kalah penting. Biasanya atribut ini digunakan ketika menggunakan satu buah figure untuk menampilkan beberapa grafik untuk membedakan fungsi-fungsi yang menghasilkan grafik tersebut. Untuk lebih jelas, perhatikan tabel di bawah ini.

Tabel di atas adalah tabel resmi dari Matlab, sehingga bisa dijadikan acuan. Color Symbol : maksudnya anda bisa menggunakan ini untuk menampilkan grafik-grafik dalam warna yang berbeda-beda. Line Symbol : dalam hal ini selain variasi warna, bisa juga anda menggunakan bentuk-bentuk grafik yang berbeda pula. Untuk lebih memahami maksud dari tabel diatas, tolong perhatikan contoh di bawah ini.

Matlab Dasar Page 3

Bila program tersebut dieksekusi menghasilkan

Baik, saya akan menjelaskan maksud dari penggunaan atribut pada program tersebut.

Atribut pada perintah plot di atas adalah: r--, g--, m-. Artinya: - Grafik sin(t) akan terbentuk dari "--" dashed yang berwarna "r" red atau merah. - Grafik cos(t) akan terbentuk dari "-" solid atau garis padat yang berwarna "g" green atau hijau. - Grafik sin(0.5*t) akan terbentuk dari "-." dashed-dot yang berwarna "m" magenta. Selain atribut diatas, ada atribut baru yang saya perkenalkan dalam program yakni legend(' '). Fungsi ini digunakan untuk memberikan label terhadap semua grafik yang ada. Anda perlu menuliskan sendiri sebagai masukan untuk legend ketika anda menampilkannya. Bila anda tidak menuliskan pada program, maka yang pada legend akan ditampilkan tulisan data1, data2,, datan. Tentu legend sangat berguna bila kita memiliki banyak grafik agar mudah dikenali.

Axis Axis digunakan ketika kita ingin mengatur range pada figure tempat grafik ditampilkan. Axis secara umum memiliki rumus seperti berikut:

axis(Xmin Xmax Ymin Ymax)

Matlab Dasar Page 4

Untuk memudahkan pemahaman tolong perhatikan contoh berikut ini.

Bila program diatas dieksekusi menghasilkan

Tampak bahwa grafik pertama dan kedua sekarang memiliki range axis yang berbeda sehingga axis yang kedua menunjukkan grafik secara kesuluruhan seolah-olah sedang melayang. Demikianlah lecture tentang grafik telah kita bahas tuntas. Sebenarnya masih ada yang berkaitan dengan menampilkan grafik secara 3D. Namun jarang digunakan kecuali untuk peneliti. Untuk itu akan dibahas pada topik yang intermediate. Selanjutnya kita akan membahas lecture tentang Matriks yang juga sangat penting dan mendasar dalam Matlab.

~~~ TERIMA KASIH ~~~

Matlab Dasar Page 5

Lecture 9 - Ku Suka MATRIKS I


Thursday, February 17, 2011 8:09 AM

JANS HENDRY / S2 TE UGM 09

Matriks merupakan elemen yang penting dalam Matlab. Terlalu banyak operasi pada Matlab yang berkaitan dengan matriks. Sebelum mempelajari lebih lanjut tentang matriks, kita terlebih dahulu mengenal beberapa point penting yang juga sering ditemui dalam pemrograman Matlab. Notasi Colon Colon atau titik dua berguna ketika anda ingin menampilkan angka dalam range tertentu yang mengalami increment yang bisa diatur juga. Secara umum bentuk dari penggunaan notasi ini adalah: Batas_Bawah:increment:Batas_Atas Untuk lebih memahami konsep tersebut, perhatikan contoh berikut: >> angka=0:1:10 angka = 0 1 2 3 4 5 6 7 8 9 10 Contoh diatas menampilkan bilangan 1-10 dengan ikremen atau penaikan sebesar 1 unit. Batas_bawah < Batas_atas, sedangkan increment bisa anda buat berapa pun. Jika anda ingat sebenarnya notasi ini sudah pernah kita gunakan dalam menampilkan grafik, karena kita ingin menggenerate nilai tertentu. Vektor Vektor merupakan penyusun dari matriks. Vektor terdiri atas 2 yakni vektor baris dan vektor kolom. Aplikasi mudah yang bisa kita temukan adalah dalam menampilkan sebuah titik dalam dua dimensi dan 3 dimensi, bahkan bisa lebih dari itu. Jika hanya 1 dimensi, maka dikatakan sebagai skalar, bukan vektor. Sebelum mengenal operasi yang bisa diaplikasikan pada vektor, terlebih dahulu kita belajar bagaimana menggunakan matlab untuk menghasilkan vektor baris dan vektor kolom. - Vektor baris Vektor baris adalah gugusan angka dalam yang berdimensi mxn dengan m=1 dan n>1. Berarti vektor baris merupakan gugusan angka yang memiliki hanya 1 baris saja. Bentuk umumnya adalah sebagai berikut: v = [N1 N2 N3.Nn] Perhatikan contoh berikut: >> v = [1 2 3 4 5] v= 1 2 3 4 5

>> v = [1,2,3,4,5] v= 1 2 3 4 5

Contoh diatas menunjukkan vektor baris berukuran 1x5. Berarti ada 2 cara untuk menampilkan vektor baris. - Vektor kolom Vektor kolom memiliki dimensi mxn dengan m>1 dan n=1. Artinya vektor kolom adalah gugusan angka yang tersusun dalam hanya 1 kolom tapi memiliki banyak baris. Bentuk umumnya adalah sebagai berikut: v = [N1 N2 N3 . .

Matlab Dasar Page 1

. . Nm]

Perhatikan contoh berikut: >> v = [1;2;3;4;5] v= 1 2 3 4 5 Bisa dilihat bahwa untuk menggenerate vektor baris dan kolom memiliki cara yang berbeda, dalam membuat vektor kolom kita membutuhkan penggunaan semicolon (;) atau titik koma. Di lecture sebelumnya dijelaskan bahwa penggunaan notasi ini adalah untuk mengatakan kepada matlab agar tidak menampilkan hasil perhitungan terhadap variabel tersebut. Namun dalam vektor, kita menggunakannya untuk membuat baris baru. Bukan berarti kita tidak bisa menggunakan notasi ini diakhir pembentukan vektor kolom lho, karena artinya sudah berbeda, jadi kita bisa saja menambahkan notasi semicolon diakhir notasi kurung siku untuk mengatakan kepada matlab agar tidak menampilkan nilai dari variabel tersebut. Yang perlu diperhatikan disini adalah, bahwa dalam menyatakan vektor maka harus dimulai dengan kurung siku dan di tutup dengan kurung siku juga. Operasi vektor Vektor juga bisa dioperasikan sesuai dengan kebutuhan. Beberapa operasi yang bisa dilakukan pada vektor adalah: - Penjumlahan Syarat dua buah atau lebih vektor agar dapat dijumlahkan adalah dimensinya harus sama. Contoh: >> v1 = [1;2;3;4;5]; >> v2 = [3;4;5;6;7]; >> jumlah=v1+v2 jumlah = 4 6 8 10 12 Bila penjumlahan dilakukan pada dimensi yang berbeda, maka matlab akan memberi peringatan:

- Pengurangan Untuk operasi pengurangan, syaratnya juga sama yakni dimensi masing-masing vektor harus sama. Contoh: >> selisih=v1-v2 selisih = -2 -2 -2 -2 -2 - Perkalian Ada dua jenis perkalian untuk vektor. Yakni perkalian titik atau dalam atau dot dan perkalian biasa. Kedua jenis perkalian itu, juga harus memenuhi syarat bahwa dimensi masing-masing vektor harus sama. Perkalian dalam

Matlab Dasar Page 2

Perkalian dalam Secara umum bentuk perkalian dalam dua buah vektor adalah sebagai berikut:

Maka perkalian dalam adalah i*i, j*j, k*k.

oleh karena itu perkalian ini disebut juga dengan perkalian antar elemen. Perkalian ini bisa digunakan baik untuk vektor baris maupun vektor kolom. Dalam Matlab, perkalian dalam memiliki operator: (.*) sehingga kali = v1.*v2 Contoh: >> a = [1 2 3 4 5]; >> b = [5 4 3 2 1]; >> kal_dalam = a.*b Kal_dalam = 5 8 9 8 5

Perkalian biasa Untuk perkalian biasa, kedua vektor harus memiliki dimensi yang sama tapi jenisnya berbeda. Artinya vektor baris hanya bisa dikalikan dengan vektor kolom. Bentuk umumnya adalah sebagai berikut:

Dengan hasil perkaliannya:

Yang tentu saja menghasilkan bilangan skalar aliyas bukan lagi dalam bentuk vektor baris maupun kolom. Contoh: >> a = [2 3 4]; >> b = [1;2;3]; >> kali = a*b kali = 20 Bila rumusan umumnya diubah menjadi:

Maka hasil perkaliannya adalah:

Contoh: >> kali = b*a kali = 2 4 6 3 4 6 8 9 12

Yang jelas terlihat bahwa hasilnya adalah berbentuk matriks.

Matlab Dasar Page 3

Yang jelas terlihat bahwa hasilnya adalah berbentuk matriks. - Perpangkatan Dalam vektor juga dikenal adanya perpangkatan. Notasi yang digunakan adalah (^), sehingga bisa lebih efisien bila ingin mengetikkan perkalian vektor yang sama. Tapi yang perlu diingat, bahwa hal ini hanya berlaku untuk perpangkatan tiap elemen, bukan hanya vektornya saja. Karena perpangkatan pada dasarnya adalah perkalian dan perkalian pada vektor harus memenuhi syarat-syarat tertentu. Sehingga perpangkatan notasinya menjadi (.^). Contoh: >> A = [1,2,3,4,5]; >> B = A.^3 B= 1 8 27 64 125 Jika titik (.) dihilangkan, maka akan timbul pesan error:

- Transpose Transpose pada vektor sama dengan mengubah jenis dari vektor tersebut. Misalkan sebuah vektor A, maka transpose dari vektor tersebut adalah vektor B yakni: B = AT Dalam matlab intruksi yang digunakan untuk transpose adalah: B = transpose(A) Contoh: >> A = [1 2 3 4 5]; >> B = transpose(A) B= 1 2 3 4 5 - Perkalian vektor dengan skalar Sebuah vektor bisa saja dikalikan dengan skalar. Misalkan sebuah vektor A ingin dikalikan dengan sebuah bilangan skalar x yang menghasilkan vektor baru B. Maka bentuk umumnya adalah: B = xA Contoh: >> A = [1,2,3,4,5]; >> x = 3; >> B = x*A B= 3 Atau >> B = A*x B= 3 6 9 12 15 6 9 12 15

% vektor baris % bilangan skalar

Jadi posisi skalar x bisa dimana saja, karena dia hanya berdimensi 1x1. Contoh berikut ini menggambarkan bentuk-bentuk perkalian skalar:

Matlab Dasar Page 4

Contoh berikut ini menggambarkan bentuk-bentuk perkalian skalar: >> A = [1,2,3,4,5]; >> B = [5,4,3,2,1]; >> Z = [A 2*B] Z= 1 2 3 4 5 10 8 6 4 2

Pada vektor, operasi-operasi nya bisa juga dikombinasikan antara perkalian dengan penjumlahan dan lain-lain. TIPS: bila anda ingin melakukan pengurutan terhadap segugus bilangan acak bisa juga digunakan konsep vektor. Caranya adalah dengan menjadikan gugusan bilangan tersebut menjadi vektor baris lalu gunakan perintah sort(). Contoh: >> Q = [5 2 8 9 5 1 0 4 5 11 2]; >> P = sort(Q) P= 0 1 2 2 4 5 5 5 8 9 11

Demikianlah lecture tentang vektor ini, untuk lecture berikutnya kita akan mempelajari tentang matriks dan operasinya. ~~~ TERIMA KASIH ~~~

Matlab Dasar Page 5

Lecture 10 - Ku Suka Matriks II


Thursday, February 17, 2011 9:15 AM

JANS HENDRY / S2 TE UGM 09

Sebelum saya menerukan bahasan tentang matriks, ada beberapa hal yang perlu saya tambahkan tentang vektor. Karena informasi ini penting untuk anda. - Operasi transpose. Selain dengan menggunakan fungsi atau instruksi seperti yang telah saya kemukakan pada lecture sebelumnya, ada cara lain untuk menyatakan transpose. Bentuk umumnya adalah B = A' Bisa anda lihat bahwa anda cukup membubuhkan tanda ' saja disebalah kanan vektor yang ingin ditranspose. Contoh: >> A = [1,2,3,4,5]; >> B = A' B= 1 2 3 4 5 - Operasi transpose untuk vektor yang berisi bilangan kompleks. Untuk vektor seperti ini, tingkah dari transpose menjadi berbeda karena transpose mengerjakan dua hal. Hal tersebut adalah: Mentranspose vektor secara biasa Elemen yang ditampilkan hasil transpose adalah konjugate dari masing-masing elemen Untuk memahami tingkah laku ini, perhatikan contoh di bawah. Contoh: >> A = [2 - 3*i;4 + 2*i]; >> B = A' B= 2.0000 + 3.0000i 4.0000 - 2.0000i Bisa dimengerti kan dari contoh diatas??? Semoga bisa - Penggabungan vektor-vektor menjadi vektor baru. Ada saat dimana anda harus menggabungkan vektor-vektor yang ada menjadi sebuah vektor baru yang akan digunakan untuk pengolahan data selanjutnya. Untuk menggabungkan vektor-vektor tersebut, syaratnya adalah jenis masing-masing vektor harus sama. Maksudnya masing-masing vektor harus berupa vektor baris saja atau vektor kolom saja. Bila tidak, matlab akan memberikan pesan error pada saat dieksekusi. Contoh: >> A = [0,1,2,3]; >> B = [2,3,4]; >> C = [A B] C= 0 1 2 3 2 3 4

Untuk vektor kolom ditunjukkan oleh contoh berikut ini: >> A = [0,1,2,3]; >> B = [2,3,4,5]; >> C = [A' B'] C=

Matlab Dasar Page 1

C= 0 1 2 3 2 3 4 5

- Memanggil nilai tertentu dari sebuah vektor Maksudnya adalah bila anda memiliki sebuah vektor dengan beberapa elemen/nilai didalamnya, dan suatu waktu anda ingin menampilkan hanya beberapa nilai saja. Sehingga anda tidak perlu repot-repot harus mencari secara manual nilai dari elemen tersebut. Untuk lebih jelas, langsung perhatikan contoh di bawah ini. Contoh: Misalkan saya punya sebuah vektor bernama P dengan definisi sebagai berikut: >> P = [5,2,7,4,9,3] P= 5 2 7 4 9 3

Lalu saya ingin menghitung ukuran atau size dari vektor tersebut, maka bisa digunakan perintah size(). >> [Y Z] = size(P) Y= 1

Z= 6 Dalam hal ini, Y = jumlah baris (m) sedangkan Z = jumlah kolom (n). Lalu saya ingin menampilkan 1 buah elemen, yakni elemen nomor 5, maka bisa digunakan: >> Q = P(Z-1) Q= 9 Atau bisa saja anda ganti (Z-1) menjadi 5. Kemudian saya ingin menampilkan 2 buah elemen dari vektor tersebut. Katakan saja elemen nomor 5 dan 6. >> Q = P(5:6) Q= 9 3

Lalu saya ada triky, dimana saya ingin menampilkan semua elemen vektor tapi dalam keadaan terbalik dari urutan yang seharusnya. Perhatikan! >> Q = P(Z:-1:1) Q= 3 9 4 7 2 5

Dimana Z = 6, hasil intruksi sebelumnya. Bisa dilihat bahwa banyak hal yang bisa dilakukan dengan menggunakan vektor. Dalam pengalaman saya triky seperti ini sering digunakan dalam mengolah data. Lakukan apa saja selagi masih bisa diterima oleh matlab, karena matlab sangat fleksibel dan dibuat sangat bagus.

Tips: di lecture sebelumnya saya telah menjelaskan tentang penggunaan notasi colon. Ada informasi tambahan yang perlu anda ketahui adalah ketika anda ingin menampilkan bilangan dari batas_bawah hingga batas_atas dengan inkremen = 1, maka anda tidak perlu menuliskan inkremen nya, cukup tulis batas_bawah:batas_atas. Karena matlab akan langsung mengenali maksud dari perintah anda tersebut. Contoh: >> A = 1:5

Matlab Dasar Page 2

A= 1 2 3 4 5 Anda bisa melihat bahwa contoh diatas adalah inkremen = 1. Semoga informasi ini bisa bermanfaat bagi anda. Untuk lecture kali ini, saya cukupkan dulu karena matriks kelihatannya akan membutuhkan halaman yang banyak sehingga bila ditambahkan dengan ini akan membuat anda menjadi malas membacanya. Jadi kita akan menyelesaikan topik tentang matriks pada lecture selanjutnya.

~~~ TERIMA KASIH ~~~

Matlab Dasar Page 3

Lecture 11 - Ku Suka Matriks III (Selesai)


Friday, February 18, 2011 11:31 AM

JANS HENDRY / S2 TE UGM 09

Setelah mengenal tentang vektor, kita beranjak ke topik yang lebih menarik yaitu matriks. Matriks adalah gugusan angka yang tersusun dalam dimensi mxn dengan m,n>1. A. Menampilkan matriks Untuk menampilkan sebuah matriks dalam matlab, tidak dibutuhkan instruksi yang susah. Mirip dengan cara menampilkan vektor atau bisa dibilang merupakan gabungan dari cara menampilkan kedua jenis vektor. Perhatikan contoh dibawah ini. Contoh: Misalkan saya ingin menampilkan matriks A yang berdimensi 3x3. Instruksi dalam matlab adalah sebagai berikut. >> A = [1,2,3;4,5,6;7,8,9] A= 1 4 7 2 5 8 3 6 9

Atau bisa juga dengan melakukan pemisahan perbaris seperti di bawah ini: >> A = [1,2,3 4,5,6 7,8,9] A= 1 4 7 2 5 8 3 6 9

TIPS: saran saya gunakanlah metode pertama, karena lebih umum dan mudah dimengerti serta mudah untuk dibaca. B. Ukuran dari matriks. Ukuran dari matriks bisa juga dipanggil dengan menggunakan matlab sama halnya dengan metode pada vektor. Misalkan saya ingin mengecek ukuran dari matriks A diatas. Yang perlu anda ingat bahwa matriks terdiri atas 2 dimensi, sehingga ada dua kemungkinan variabel ukuran yang harus kita gunakan, misalkan saja X dan Y. Anda akan menyadari, bahwa metodenya persis sama dengan metode untuk vektor. Contoh: >> [X Y] = size(A) X= 3

Y= 3 Yang artinya adalah matriks A memiliki jumlah baris X = 3 dan jumlah kolom Y = 3. Anda bisa juga menuliskan [X,Y]. C. Jumlah elemen dalam matriks. Selain dengan menggunakan fungsi size, ada fungsi lain yang bisa digunakan untuk langsung mengetahui jumlah elemen dalam suatu matriks. Contoh: >> P = numel(A) P= 9 TIPS: numel = number of element in array atau jumlah elemen dalam array.

Matlab Dasar Page 1

D. Memanggil elemen dalam matriks. Sama halnya dengan vektor, elemen dalam matriks juga bisa diakses sesuai dengan keinginan anda. Kita akan menggunakan beberapa cara dalam mengakses elemen dari matriks. Contoh: >> Q = A(2) Q= 4 Perlu diingat bahwa dalam matriks penomoran elemen dimulai dari sudut atas kiri lalu kebawah dan kembali lagi ke atas. Oleh karena itu, elemen ke dua adalah angka 4. Untuk mengakses dua elemen atau lebih bisa dilakukan dengan contoh berikut ini. >> Q = A(4:5) Q= 2 5

Coba anda cari tahu mengapa bisa begini berdasarkan konsep yang telah saya beritahu di atas. Tapi, ada cara lain yakni dengan mengakses berdasarkan dimensi dari matriks itu sendiri. Bentuk umum nya adalah sebagai berikut: B = A(m,n) Untuk lebih jelas perhatikan contoh berikut. Contoh: >> B = A(2,3) B= 6 Angka 6 merupakan elemen yang berada di baris (m) ke 2 dan kolom (n) ke 3. kedua cara akses elemen yang telah saya kemukakan diatas bisa sama-sama bermanfaat, tergantung kepada anda. E. Penggabungan matriks. Misalkan anda memiliki 2 buah matriks yang berbeda tapi memiliki dimensi yang sama. Suatu ketika anda membutuhkan kedua matriks tersebut untuk digabungkan demi kepentingan analisa. Dengan demikian anda bisa melakukan seperti yang ditunjukkan oleh contoh. Contoh: >> I = [1,2,3;4,5,6]; >> J = [6,5,4;3,2,1]; >> K = [I J] K= 1 4 2 5 3 6 6 3 5 2 4 1

F. Transpose matriks Notasi yang digunakan untuk menampilkan transpose dari sebuah matriks adalah sama dengan notasi pada vektor yakni ('). Contoh: >> trans = I' trans = 1 2 3 4 5 6

Hal yang sama dengan vektor terjadi ketika elemen dari matriks mengandung kompnen imajiner. Perhatikan contoh berikut. >> trans = I'

Matlab Dasar Page 2

trans = 1.0000 0 - 1.0000i -1.0000 -1.0000 0 + 1.0000i 1.0000

Tampak bahwa elemen komplek berubah menjadi konjugat nya. G. Determinan matriks Determinan sebuah matriks bisa dihasilkan hanya bila matriks tersebut bujur sangkar. Untuk menghitung determinan sebuah matriks dapat digunakan perintah det(). Berikut ini bentuk umumnya: B = det(A) Contoh: >> A = [4,3,6;4,2,6;8,6,4] A= 4 4 8 3 2 6 6 6 4

>> B = det(A) B= 32 Berikut ini contoh untuk determinan = 0. >> A = [1,1;1,1] A= 1 1 1 1

>> det(A) ans = 0 H. Operasi pada Matriks Penjumlahan Syarat operasi penjumlahan pada matriks sama saja dengan vektor, dimana dimensi kedua matriks harus sama. Jika tidak maka matlab akan memberikan error message di layar command window. Contoh: >> jumlah = I + J jumlah = 7 7 7 7 7 7 % Dalam perkalian, j=m

Pengurangan Persis sama dengan operasi penjumlahan hanya saja, operator nya diganti menjadi operator pengurangan (-). Contoh: >> kurang = I - J kurang = -5 -3 -1 1 3 5 Perkalian

Matlab Dasar Page 3

Perkalian Operasi perkalian pada matriks juga ada dua, yakni perkalian antar elemen dan perkalian biasa. Perkalian antar elemen Perkalian antar elemen memiliki bentuk umum seperti ini:

Maka C = A.*B

Untuk lebih jelas, perhatikan contoh dibawah ini: >> K = I.*J K= 6 10 12 12 10 6 Perkalian biasa Perkalian biasa adalah perkalian yang memenuhi persyaratan : C = A*B Dengan syarat bahwa jumlah kolom matriks A = jumlah baris matriks B. Sehingga matriks C akan memiliki dimensi "jumlah baris matriks A x jumlah kolom matriks B". Bila dinotasikan maka dimensi dari masing-masing matriks adalah: A=ixj B=mxn Maka: C=ixn Untuk lebih jelas, perhatikan contoh di bawah ini: >> K = I*J' K= 28 10 73 28 Dalam hal ini, matriks J terlebih dahulu saya jadikan transpose nya, karena dimensi nya sama dengan matriks I yang tentu saja tidak bisa dioperasikan bila menggunakan perkalian biasa. Pembagian Pembagian antar elemen Bagi kanan (right division) Dalam hal ini tiap elemen pada matriks A akan dibagi dengan tiap elemen pada matriks B sesuai dengan letak posisinya. Contoh: >> K = I./J K=

Matlab Dasar Page 4

0.1667 0.4000 0.7500 1.3333 2.5000 6.0000 Ingat! Karena dia adalah pembagian tiap elemen maka tanda pembagian menjadi (./). Bagi kiri (left division) Dalam hal ini tiap elemen pada matriks B akan dibagi dengan tiap elemen pada matriks A sesuai dengan letak posisinya. Contoh: >> K = I.\J K= 6.0000 2.5000 1.3333 0.7500 0.4000 0.1667 Pembagian sebagai pengganti Invers() Dalam matlab ada fungsi inv() yang akan mencari nilai invers suatu matriks. Ketika anda ingin mengoperasikan perkalian matriks seperti ini: C = A-1B Maka matriks ternyata memberi masukan agar menggunakan fungsi pembagian, dengan alasan bahwa invers bisa memakan waktu lama dan tidak akurat apalagi untuk matriks yang berukuran besar. Jadi anda bisa menggunakan ini: C = A\B Perpangkatan Perpangkatan pada matriks juga menggunakan notasi yang sama dengan perpangkatan pada vektor yakni (^). Bedanya, perpangkatan pada matriks dapat dilakukan terhadap matriks itu sendiri selama dia bujur sangkar, dan juga bisa dilakukan perpangkatan antar elemen seperti yang dilakukan pada vektor. >> A = [4,3,6;4,2,6;8,6,4]; >> B = A^3 B= 1048 976 1392 732 680 984 1044 984 1288

I. Invers matriks Untuk menghitung invers dari suatu matriks adalah cukup dengan menggunakan fungsi inv(). Bentuk umumnya adalah: B = inv(A) Contoh: >> A = [4,3,6;4,2,6;8,6,4]; >> B = inv(A) B= -0.8750 0.7500 0.1875 1.0000 -1.0000 0 0.2500 0 -0.1250 J. Jenis-jenis matriks dalam matlab Ada beberapa jenis matriks yang sering dipakai dalam pemrograman komputasi menggunakan matlab. Beberapa diantaranya adalah: Matriks satuan Adalah matriks bujur sangkar yang seluruh elemennya = 1. Contoh: >> A = ones(3) A=

Matlab Dasar Page 5

1 1 1

1 1 1

1 1 1

Matriks identitas Adalah matriks yang elemen diagonalnya = 1 sedangkan elemen lainnya bernilai 0. Contoh: >> A = eye(3) A= 1 0 0 0 1 0 0 0 1

Matriks nol Adalah matriks yang semua elemennya = 0. Contoh: >> A = zeros(3) A= 0 0 0 0 0 0 0 0 0

TIPS: pernah mendengar magic matriks pada matlab? Itu adalah sebuah permainan angka yang sebenarnya sudah sering kita temui dalam dunia nyata. Untuk menghasilkan matriks ini, perintah matlab yang digunakan adalah magic(). Contoh: >> A = magic(3) A= 8 1 6 3 5 7 4 9 2 Dengan perintah magic(), dihasilkan matrik yang setiap baris, kolom dan diagonal memiliki jumlah = 15. Demikianlah materi tentang matriks telah selesai yang berarti telah menutup lecture tentang matlab dasar. Untuk materi yang lebih mendalam akan dibahas pada matlab intermediet dan advance. Mohon kesabarannya agar lecture tersebut bisa segera di unggah. Semoga materi yang sederhana pada topik matlab dasar ini, bisa menjadi sangat bermanfaat untuk para pembaca. Saya percaya bahwa mungkin ada kekurangan materi (tidak lengkap) pada topik ini, tapi saya akan mencari tahu dan menambah (bila perlu) atau memperbaiki kekurangan dan kesalahan yang ada. Jangan lupa untuk mempelajari juga soal-soal yang saya berikan, lalu coba bandingkan jawaban anda dengan jawaban saya. Perlu diingat, keberagaman cara menjawab bukanlah sebuah masalah, selama jawaban sama maka program anda sudah benar. Tapi untuk profesionalisme coba lah untuk belajar melogikan sesuatu agar program anda menjadi lebih efisien.

~~~ TERIMA KASIH ~~~

Matlab Dasar Page 6

Lecture 13 - PENUTUP
Saturday, February 19, 2011 3:20 PM

JANS HENDRY / S2 TE UGM 09

Demikianlah saya telah menyelesaikan semua lecture dari dasar-dasar matlab. Konsep yang saya berikan sangat sederhana dan mendasar, karena apa yang saya tulis pada lecture ini adalah yang akan paling sering anda temui termasuk saya. Memang masih banyak fungsi-fungsi dasar yang ada pada matlab, tapi itu terlalu banyak dan belum perlu anda pelajari sekarang bila anda merupakan pengguna awam terhadap matlab. Karena akan membuat anda menjadi bingung akan fungsi apa yang harus anda pakai bila menemui permasalahan komputasi termasuk yang paling sederhana sekalipun. Saya tidak menghadirkan semua fungsi itu sekarang, karena ketika anda telah mengenal matlab lewat lecture ini, anda akan terbiasa sendiri untuk menjelajah matlab, dan itulah sebenarnya tujuan dari lecture ini. Untuk mengenalkan anda terhadap matlab dan memberikan anda bayangan tentang kelebihan dari matlab. Sebenarnya ada beberapa program lagi yang bekerja untuk komputasi, misalnya wolfram mathematica dan scilab. Untuk wolfram, sangat susah untuk pemula bahkan anda bisa bingung untuk menggunakannya, tapi menurut saya banyak kelebihannya. Scilab adalah program gratisan, tapi toolbox nya masih kurang, sehingga peminatnya tidak sebanyak matlab. Karena matlab memang dibangun oleh orang-orang yang profesional. Apakah lecture akan berhenti disini? Tentu saja tidak, karena saya akan menlanjutkan dengan lecture matlab intermediet dan advance dan matlab untuk aplikasi pada bidang elektro. Tujuan saya adalah agar informasi yang anda miliki tentang matlab tidak tercampur aduk sehingga membuat anda bertambah bingung. Saya memberikan tahapan agar anda bisa mencerna dengan baik satu demi satu sehingga dasar anda sudah kuat dan siap dengan tingkat yang lebih susah. Kembali ke pada spirit dari lecture ini adalah dibuat sesedarhana mungkin dengan halaman yang sangat sedikit dan bahasa yang tidak terlalu baku sehingga tidak menimbulkan kebosanan dalam diri anda. Sehingga ketika anda telah selesai pada lecture yang satu kemudian anda akan merasa bangga karena telah menyelesaikan satu lecture yang hampir sama informasinya dengan buku-buku yang beredar tapi dibuat dalam versi ringkas nya. Dalam lecture ini saya juga menyertakan soal-soal dan jawab untuk melatih pemahaman anda terhadap apa yang telah anda pelajari. Karena saya percaya bahwa anda tidak mudah untuk menantang diri sendiri terhadap masalah yang ada. Untuk itu saya akan memberikan soal-soal yang sesuai dengan lecture. Ingat, kerjakan dahulu soal-soal sesuai dengan kemampuan anda, lalu bandingkan dengan jawaban saya. Jawaban harus sama, tapi perlu diingat bahwa cara mengerjakannya boleh saja berbeda. Anda tidak perlu memikirkan itu! Sebagai tambahan pada lecture yang ada, saya juga beberapa kali menambahkan TIPS yang merupakan informasi tambahan untuk anda. Bila ada pertanyaan, kritik ,saran atau apa pun itu, asal janga SPAM ya. Hehe,,, silahkan kirim ke: jans_bt02@yahoo.com. Saya sangat paham bahwa bisa saja saya melakukan kesalahan dalam penulisan atau kurang bagus dalam menjelaskan apa yang saya tulis. Maklum otak dan tangan saya suka tidak sinkron, tapi untuk menguji apakah saya mampu terkait tulisan saya, anda boleh mengirim email kepada saya. Bila saya punya kekurangan dan tidak bisa menyelesaikan pertanyaan anda, maka saya akan berusaha lebih dan mengatakan yang sebenarnya kepada anda. Tapi saya TIDAK MENERIMA PEMESANAN PEMBUATAN PROGRAM. MAAF!!! Akhir kata, selamat atas anda yang telah menyelesaikan lecture ini dan bagi anda yang membaca tulisan ini sebelum menyelesaikan atau memulai lecture maka saya ucapkan selamat belajar. Semoga bisa membantu anda.

~~~ TERIMA KASIH ~~~

Matlab Dasar Page 1

Soal - Soal
Thursday, February 17, 2011 9:16 AM

JANS HENDRY / S2 TE UGM 09

A. TINGKAT I 1. Buatlah tabel 4x4 yang berisi elemen-elemen dengan ketentuan: Jumlah kolom = jumlah baris = 34 Jumlah diagonal kiri = jumlah diagonal kanan = 34 2. Buatlah matriks seperti di bawah ini.

3. Diketahui ada sebuah matriks seperti ini: (a)

(b)

Yang dibuat dengan menggunakan perintah diag(-1,2) dan diag(-1,-2). Dengan menambahkan instruksi tersebut yang boleh anda modifikasi lalu gunakan juga matriks ones, maka bentuklah matriks seperti ini:

Matriks diatas disebut juga sebagai matriks tridiagonal. 4. Misalkan saya punya data sebagai berikut : 12 53 3 65 33 75 31 22 45 9 4 48 77 23 19. carilah: a. Urutan dari yang terkecil ke yang terbesar b. Urutan dari yang terbesar ke yang terkecil 5. Bila saya punya nilai (3,4) dan (6,5), plotkanlah dalam bidang x-y. Tentukan sendiri symbol dan color nya. 6. Buatlah sebuah matriks satuan yang merupakan gabungan dari beberapa matriks dengan ketentuan berikut: a. Terdiri dari 1 buah matriks satuan 3x3 b. Terdiri dari 1 buah matriks satuan 2x3 c. Terdiri dari 1 buah matriks satuan 3x2 d. Terdiri dari 1 buah bilangan skalar 7. Seperti diketahui juga bahwa matlab bisa dipergunakan untuk menyelesaikan persamaan linear dengan banyak kekangan. Untuk itu selesaikanlah persamaan linier berikut ini. Bila saya memiliki 2 kekangan, maka tentukanlah nilai x1 dan x2. 3x1 + 4x2 = 11 x1 - 6x2 = -12 Ingat! Anda hanya diperbolehkan dengan menggunakan matlab. Pergunakanlah format Ax = B. 8. Plot lah pada sebuah figure, grafik sinyal listrik yang terdiri dari 3 sinyal yang berbeda fase 1200. Perhatikan gambar di bawah ini.

Matlab Dasar Page 1

9. Plotkanlah sinyal dc pada tegangan = 5v pada grafik tegangan (v) vs waktu (t), seperti yang ditunjukkan oleh gambar di bawah.

10. Carilah nilai a dari persamaan vektor berikut ini.

B. TINGKAT II Untuk tingkat II, saya meminta anda untuk membuat program dalam m-file editor. Jadi buka dahulu m-file editor anda, dan tuliskanlah penyelesaian dari permasalahan ini di dalamnya. 1. Buatlah program untuk menghitung akar-akar persamaan kuadrat dari x2-5x+4 = 0.

Matlab Dasar Page 2

1. Buatlah program untuk menghitung akar-akar persamaan kuadrat dari x2-5x+4 = 0. 2. Sebuah bak mandi terisi penuh dengan air. Lalu dimasukkan balok es ke dalam bak sehingga air yang di dalamnya tumpah. Jika bak mandi memiliki ukuran panjang=1.5 m, lebar=0.75 m dan tinggi = 1 m. Sedangkan balok es memiliki ukuran panjang=30 cm, lebar=15 cm dan tinggi=15 cm, hitunglah volume air yang sekarang ada di bak mandi. 3. Buatlah grafik seperti ini.

4. Misalkan saya punya sekumpulan data hasil ujian seorang mahasiswa S2 Teknik Elektro seperti ini: Nama Matakuliah Teknik Komputasi Riset Operasi Pengolahan Isyarat Digital Pengolahan Citra Sistem Informasi Sistem Adaptif Antena dan Perambatan Gelombang Teknik Neuro Fuzzy Manajemen Proyek Penginderaan Jarak Jauh Metodologi Penelitian Hitung: a. Urutkan data tersebut dari yang terbesar ke yang terkecil b. Rerata nilai UTS dan UAS c. Plotkan data-data tersebut dalam grafik TIPS: Anda bisa saja menghitung rerata dari nilai-nilai di atas dengan menggunakan metode manual atau metode biasa. Tapi saya mencoba menghadirkan keunggulan dari matlab yang juga memberikan fungsi-fungsi statistik yang bisa digunakan secara langsung. Fungsi-fungsi tersebut antara lain: mean() untuk menghitung nilai rerata median() untuk mencari nilai tengah dari gugusan data Kedua fungsi di atas sering dipakai. Untuk sementara saya menghadirkan itu saja dulu. 5. Hitunglah hasil pembagian dan sisa pembagian dari -103/7, tapi hasil dan sisa nya harus positif. 6. Bentuklah gambar berikut. Nilai UTS Nilai UAS 70.09 89.65 99 100 80.90 97.12 88 89.98 87.09 88 80.99 90.60 88.90 90 96.30 77 98.20 100 99.99 78.87 99 90.88

Matlab Dasar Page 3

Ada beberapa atribut untuk plot yang juga penting, diantaranya adalah: - LineWidth = lebar garis di gambar diatas tidak dipakai, karena kita tidak membuat garis - MarkerEdgeColor = warna pinggir dari marker nya di gambar atas adalah BIRU - MarkerFaceColor = warna dari isi markernya, digambar atas adalah HIJAU - MarkerSize = ukuran markernya dalam gambar diatas adalah 50 Berikut ini adalah contoh pemakaiannya (saya ambil dari Help MATLAB agar mudah dimengerti)

7. Buatlah matriks tridiagonal seperti di bawah ini.

Matlab Dasar Page 4

Clue: gunakanlah instruksi diag (telah saya beritahukan pada soal Tahap I) dan ones. 8. Plotkanlah seperti yang ditunjukkan oleh gambar berikut.

9. Buatlah grafik sinus, cosinus dan tangen dalam figure yang sama dengan dimensi 1x3. 10. Bentuklah gambar di bawah.

Matlab Dasar Page 5

~~~ TERIMA KASIH ~~~

Matlab Dasar Page 6

Jawab - Jawab
Thursday, February 17, 2011 9:16 AM

JANS HENDRY / S2 TE UGM 09

A. TINGKAT I 1. Soal yang dimaksudkan adalah membuat matrik magic yang berukuran 4x4. >> A = magic(4) A= 16 2 3 13 5 11 10 8 9 7 6 12 4 14 15 1 2. Untuk menyelesaikan ini, pergunakanlah matriks identitas dan matriks satuan. >> A = ones(3); >> B = eye(3); >> C = A + -1*B C= 0 1 1 1 0 1 1 1 0

3. Untuk menyelesaikan ini kita perlu menggunakan ones dan diag. >> A = diag(-1,2) A= 0 0 0 0 -1 0 0 0 0

>> B = ones(3); >> C = diag(-1,-2) C= 0 0 -1 0 0 0 0 0 0

>> D = A + B + C D= 1 1 0 1 1 1 0 1 1

4. Untuk mengurutkan gugusan bilangan telah diperkenalkan dalam lecture sebuah instruksi. a. Urutan dari terkecil ke yang terbesar >> A = [12 53 3 65 33 75 31 22 45 9 4 48 77 23 19]; >> B = sort(A) B= 3 4 9 12 19 22 23 31 33 45 48 53 65 75 77

b. Urutan dari terbesar ke yang terkecil >> [X Y] = size(B); >> C = B(Y:-1:1) C= 77 75 65 53 48 45 33 31 23 22 19 12 9 4 3

Atau anda bisa juga dengan tetap menggunakan sort() tapi dengan modifikasi. Perhatikan alternatif dengan sort() di bawah. >> C = sort(-A)*-1 C= 77 75 65 53 48 45 33 31 23 22 19 12 5. Perhatikan gambar dibawah ini. >> x1 = 3; y1 = 4; x2 = 6; y2 = 5; >> plot(x1,y1,'ro',x2,y2,'g+'); axis([0 10 0 10]); 9 4 3

Matlab Dasar Page 1

>> plot(x1,y1,'ro',x2,y2,'g+'); axis([0 10 0 10]); Hasil eksekusi:

6. Cukup dengan menggunakan instruksi ones(). >> A = ones(3); >> B = ones(3,2); >> C = ones(2,3); >> D = ones(2); >> E = [A,B;C,D] E= 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

7. Untuk menjawab pertanyaan ini, cukup dengan menggunakan konsep Ax = B. Sehingga untuk mencari nilai A-1Ax = A-1B. Perhatikan code dibawah ini. >> A = [3,4;1,-6] A= 3 4 1 -6 >> B = [11;-12] B= 11 -12 >> x = inv(A)*B x= 0.8182 2.1364 Perlu diingat bahwa A-1A = matriks identitas sehingga jika dikalikan dengan x maka akan dihasilkan x juga. 8. Perhatikan code berikut. >> t = 0:0.001:2*pi; >> y1 = sin(t); >> y2 = sin(t-120); >> y3 = sin(t-240); >> plot(t,y1,'m-',t,y2,'g-',t,y3,'b-') >> axis([0 7 -2 2]) >> legend('sin(t)','sin(t-120)','sin(t-240)'); >> xlabel('waktu (t)'); ylabel('y = sin'); >> title('grafik 3 gelombang sinus berbeda fase 120 derajat');

9. Tegangan dc adalah tegangan yang memiliki waktu konstan atau tetap dari 0 hingga waktu tak berhingga. Perhatikan code berikut ini. >> v = 5;

Matlab Dasar Page 2

>> v = 5; >> t = 0:10; >> plot(t,v,'r-'); axis([0 10 0 10]); >> xlabel('waktu(t)'); ylabel('tegangan(v)'); title('tegangan vs waktu'); 10. Untuk mencari nilai a cukup dengan melakukan jenis operasi yang telah diperkenalkan dalam diskusi vektor. Misalkan bila persamaan disimbolkan: P -a*S = Q Sehingga penyelesaiannya adalah: >> P = [6;4;8]; >> Q = [4;1;7]; >> R = P-Q R= 2 3 1 >> S = [6;9;3]; >> a = R./S a= 0.3333 0.3333 0.3333 Atau dengan kata lain a = 1/3. jangan dipikirkan tentang ada 3 nilai a, itu terjadi karena kita mengoperasikan semua baris padahal kita hanya membutuhkan sebuah bilangan skalar. Sementara dalam menyelesaikan permasalahan ini kita menggunakan pembagian tiap elemen pada vektor.

B. TINGKAT II 1. Perhatikan gambar di bawah.

Hasil eksekusi

2. Perhatikan gambar di bawah.

Matlab Dasar Page 3

Bila dieksekusi akan menghasilkan:

3. Perhatikan gambar di bawah.

Bila program dieksekusi akan menghasilkan

Matlab Dasar Page 4

4. Jawaban dari masing-masing point tergambar dalam satu program. Sehingga dengan menggunakan m-file kita bisa mengeksekusi secara bersamaan semua point.

Bila program tersebut dieksekusi akan menghasilkan.

Matlab Dasar Page 5

Gambar hasil plotnya.

5. Perhatikan gambar dibawah ini.

Bila dieksekusi menghasilkan.

6. Perhatikan program di bawah ini.

Hasil eksekusi.

Matlab Dasar Page 6

Hasil eksekusi.

7. Perhatikan gambar di bawah.

Bila program tersebut dieksekusi menghasilkan.

8. Perhatikan gambar berikut.

Matlab Dasar Page 7

Bila program dieksekusi akan menghasilkan.

9. Perhatikan program berikut.

Bila program dieksekusi akan menghasilkan:

Matlab Dasar Page 8

10. Perhatikan program berikut.

Hasil eksekusi program tersebut adalah:

~~~ TERIMA KASIH ~~~

Matlab Dasar Page 9

You might also like