Rabu, 04 Juni 2014

BELAJAR MATLAB

           Matlab Basics Tutorial
Matlab adalah interactive program untuk numerical computation dan data visualization; digunakan secara extensif oleh control engineers untuk analysis dan design. Terdapat banyak toolboxes yang tersedia yang terdiri dari basic functions di Matlab dalam aplikasi yang berbeda.

Ide pada tutorialini adalah pengguna dapat melihat Matlab pada satu window ketika menjalankan Matlab di Window yang lain. Pengguna dapat membuat plot dan menggunakan program yang tersedia dalam m-file.

Vektor


Berikut ini adalah contoh pembuatn vector :



a = [1 2 3 4 5 6 9 8 7] Matlab akan menjalankan :


a =
1    2    3    4    5    6    9    8    7
Jika anda membuat vector dengan elemen 0 dan 20 dengan kenaikan 2 (metode ini digunakan untuk menciptakan vector waktu):


t = 0:2:20



t =
0    2    4    6    8    10     12     14     16     18     20
Manipulasi vectors sering digunakan untuk system operasi. Misalkan anda ingin menambahkan 2 untuk setiap elemen 'a'. Persamaan menjadi :


b = a + 2


b =
3    4    5    6    7    8    11     10     9
Jika anda ingin menambah 2 vektor secara bersamaan dengan panjang yang sama :


c = a + b


c =
4    6    8    10     12     14     20     18     16
Pengurangan vector dengan panjang yang sama juga dapat dilakukan dengan metode yang sama.

Fungsi


Matlab memiliki banyak fungsi standar. Setiap fungsi akan mempunyai tugas yang berbeda Matlab berisi functions standard seperti sin, cos, log, exp, sqrt, dan fungsi lainnya. Secara umum fungsi konstanta seperti pi, dan i atau j atau aka -1, juga tersedia di Matlab. Sebagai contoh :

sin(pi/4)


ans =


0.7071


Untuk menentukan kegunaan setiap fungsi, ketik help [nama fungsi] di command window Matlab.

Matlab juga mengijinkan anda menulis fungsi sendir dengan perintah    function; pelajari bagaimana anda membuat program sendiri dan lihat fungsi yang tersedia di Matlab.



Plot


Sangat mudah membuat plots di Matlab. Misalkan anda ingin memplo sebuah gelombang sinus sebagai fungsi waktu. Pertama buat vector waktu,   dan kemudian hitung nilai sin untuk setiap vector waktu :




t=0:0.25:7; y = sin(t); plot(t,y)



Gambar 1.   Satu periode gelombang sinus.


Polynomials


Di Matlab, sebuah polynomial diwakilkan oleh sebuah vektor. Untuk menciptakan polynomial di Matlab, masukkan coefficient polynomial kedalam vector dalam orde
yang menurun. Misalkan polynomial berikut:



Untuk memasukkan ke dalam Matlab, masukkan :

 3    -15     -2    9



Matlab dapat menginterpretasikan sebuah panjang n+1 sebagai nth order polynomial. Jika polynomial missin pada coefficients, anda harus memasukkan nilai nol kedalam
tempat yang bersesuaian di dalam vector. Sebagai contoh,



ditulis di Matlab sebagai:



y = [1 0 0 0 1]
Anda dapat mencari nilai polynomial menggunakan fungsi polyval. Sebagai contoh, untuk mencari nilai polynomial pada s=2,


z = polyval([1 0 0 0 1],2)


z =
17


Anda dapat meng ekstrak akar polynomial. Contoh :





Polynomials


Di Matlab, sebuah polynomial diwakilkan oleh sebuah vektor. Untuk menciptakan polynomial di Matlab, masukkan coefficient polynomial kedalam vector dalam orde
yang menurun. Misalkan polynomial berikut:

s4+3s3-15s2-2s+9

Untuk memasukkan ke dalam Matlab, masukkan :s4+3s3-15s2-2s+9



x = [1 3 -15 -2 9]


x =
1    3    -15     -2    9



Matlab dapat menginterpretasikan sebuah panjang n+1 sebagai nth order polynomial. Jika polynomial missin pada coefficients, anda harus memasukkan nilai nol kedalam
tempat yang bersesuaian di dalam vector. Sebagai contoh,

          s4+1

ditulis di Matlab sebagai:



y = [1 0 0 0 1]
Anda dapat mencari nilai polynomial menggunakan fungsi polyval. Sebagai contoh, untuk mencari nilai polynomial pada s=2,


z = polyval([1 0 0 0 1],2)


z =
17


Anda dapat meng ekstrak akar polynomial. Contoh :



          S4+3s3-15s2-2s+9

Untuk mencari akar polinomial;



roots([1 3 -15 -2 9])




ans =
-5.5745
2.5836
-0.7951
0.7860


JIka anda ingin mengalikan hasil 2 polynomials lakukan dengan convolution dari coefficients. Fungsi conv dapat digunakan.



x = [1 2];



y = [1 4 8];
z = conv(x,y)


z =
1    6    16    16
Untuk membagi 2 polynomials dapat dilakukan dengan fungsi deconv. Misalkan z dibagi y dengan hasil x.


[xx, R] = deconv(z,y)


xx =
1    2


R =
0    0    0    0



Jika anda ingin menamba 2 polinomial secara bersamaan dengan orde yang sama, buatlah z=x+y akan berhasil (vectors x dan y harus mempunyai panjang yang sama). Secara umum, anda dapat mendefinisikan fungsi,  polyadd ..



z = polyadd(x,y)


x =
1    2


y =
1    4    8


z =
1    5    10




Matriks


Masukkan matriks ke dalam Matlab seperti vector, kecuali penggunaan (,).




B =
1



2


3


4
5

6
7
8
9

10
11
12

B = [ 1    2    3

4



5    6
7
8


9 10 11 12]


B =
1         2         3            4
5         6         7            8
9       10       11         12
Matriks di Matlab dapat dimanipulasi dengan banyak cara. Misalkan dengan membuat transpos:


C = B'


C =
1       5         9
2       6       10
3       7       11
4       8       12
Untuk mendapatkan transpose, gunakan .'.


Sekarang anda dapat mengalikan kedua matriks B dan C secara bersamaan.



D = B * C


D =


30
70
110

70
174
278

110
278
446




D =


107
122
137
152

122
140
158
176

137
158
179
200

152
176
200
224
Manipulasi matrix lain adalah dengan menggunakan operator .* .


E = [1 2;3 4] F = [2 3;4 5] G = E .* F




E =
1       2
3       4


F =
2       3
4       5


G =
2       6
12     20
If you have a square matrix, like E, you can also multiply it by itself as many times as you like by raising it to a given power.


E^3




ans =


37         54
81       118


Jika anda ingin membuat pangkat dari tiap elemen matriks, gunakan fungsi berikut .^




E.^3




ans =


1            8
27         64


Anda juga dapat menghitung inverse sebuah matrix:


X = inv(E)


X =
-2.0000          1.0000
1.5000       -0.5000
atau nilai eigen matriks:


eig(E)


ans =
-0.3723
5.3723
Untuk mendapatkan coefficients characteristic polynomial sebuah matrix. Gunakan fungsi "poly" :


p = poly(E)


p =


1.0000       -5.0000       -2.0000


Ingat eigenvalues sebuah matrix adalah sama seperti akar polynomial karakteristik :


roots(p)






ans =


5.3723


-0.3723




Printing (Mencetak di MATLAB)


Printing di Matlab sangat mudah. Ikuti step berikut: Macintosh
Untuk nge print sebuah plot atau sebuah m-file dari Macintosh,klik pada plot atau m-file, pilih Print dibawah menu File dan tekan return.
Windows
Untuk nge printsebuah plot atau sebuah m-filedari sebuah computer jalankan Windows, pilih Printdari menu File di window of the plot atau m-file, and tekan return.



Using M-files di Matlab


Macintosh


Buka built-in editor untuk m-files; pilih "New M-file"dari menu File. Anda juga dapat menggunakan    editor .

Windows


Running Matlab dari Windows seperti pada Macintosh. Pastikan file Matlab tersimpan pada filename.m

Getting help di Matlab


Matlab menyediakan help; ketik
help commandname (nama perintah)


akan menampilkan informasi seperti yang anda inginkan. Here are a few notes to end this tutorial.

DIFERENSIAL


Turunan fungsi tunggal f(x) dapat di tentukan dari dua, tiga, lima dst titik data yang berdekatan yaitu x, x ± h, x ± 2h, dst . Dengan metode ini turunan pertama dan kedua dari sebuah fungsi dapat ditentukan dengan menyelesaikan penjabaran suatu fungsi di sekitar




titik acuan dengan deret taylor. Pada praktikum kali ini akan dipelajari cara mempelajari
Pengahmpiran turunan sebuah fungsi dan mengaplikasikan untuk fungsi yang sederhana.




MEMBUAT M-file


Tujuan : setelah menyelesaikan praktikum ini dharapkan mahasiswa akan: Bisa membuat M-file sederhana; Bisa menjalankan M-file ;Bisa membuat fungsi dengan M-file; Bisa menjalankan fungsi dengan M-file. M-file adalah file yang dapat di akses oleh MATLAB. M-file dapat berupa sederetan peryataaan yang di simpan dalam sebuah file, dapat pula berbentuk sebuah fungsi. Disebut M-file karena filenya berextension m. Modul ini dikhususkan untuk mempelajari cara membuat M-file dan mengaksesnya.

CONTROL FLOW


Tujuan : Mengetahui struktur loop dengan sintak for; Mengetahui struktur loop dengan sintak while; Mengetahui struktur kondisi if. Bahasa pemrograman MATLAB menyediakan intruksi yang dapat mengatur alur porogram. Pengaturan dilakukan berdasarkan kondisi yang terjadi selama program berlangsung. Ada tiga buah instruksi yang disediakan yaitu:
· For loop
· While loop
· Struktur If -Else-End


Perintah for loop memungkin sekelompok instruksi dikerjakan berulang ulang, dengan jumlah perulangan yang pasti dan telah ditentukan. Perintah while loop akan mengulangi instruksi selama kondisi yang diekspresikan masih memenuhi. Dalam struktur ini suatu instruksi akan dikerjakan tergantung dari hasil evaluasi pernyataan yang ada.

GRAFIK 2D


Dengan bahasa pemrograman MATLAB, data hasil pengukuran atau hasil analisa dapat divisualisasikan dalam bentuk grafik 2 dimensi atau 3 dimensi. Pada praktikum kali ini akan dipelajari beberapa fungsi untuk menggambarkan data dalam bentuk grafik
2Dimensi. yaitu: perintah plot, perintah yang akan memvisualisasikan data perkawanan satu satu antara data pada variabel dependen dengan data pada variabel independen. Bebera fungsi penggambar grafik lainnya yang mirip dengan plot adalah bar dan stairs. MATLAB juga mampu menggambarkan suata data yang berbentuk medan dalam bentuk
2D. Banyak perintah yang dapat digunakan dua diantaranya adalah: menggambar kontur dari medan contour dan menggambar sebaran dari medan pcolor(Z). Praktikum kali ini akan mempelajari cara menggambarkan grafik 2 dimensi dengan MATLAB




TOOLBOX DALAM MATLAB
Integral dengan batas tertentu atau luas daerah dibawah kurva dalam range yang finitive dapat ditentukan dengan tiga buah fungsi yang dimiliki matlab yaitu :
trapz quad quad8


fungsi trapz mendekati integral dengan metode trapesium, sedangkan quad berdasar pada metode quadratude.
Kebalikan dari integral, diferensial membahas fungsi dalam satu selang yang sangat sempit. Dengan sedikit modifikasi deretan data dapat dideferensial dengan fungsi yang dimiliki MATLAB yaitu polyval dan polyder. Dalam praktikum kali ini akan dipelajari cara menggunakan fungsi integral dan deferensial.

MATRIK


Praktikum kali ini bertujuan untuk mempelajari penyusunan permasalahan linear simultan dan menyelesaikan permasalahan linear simultan.

FITTING DAN INTERPOLASI


Fitting pada dasarnya mencari koefisien dari sebuah polinom yang tepat untuk susunan data yang difitting. Secara sederhana fitting dapat dikerjakan dengan batuan fungsi polyfit dan polyval sementara itu interpolasi digunakan jika kita mempunyai data yang tidak lengkap, atau data yang kurang lengkap dengan MATLAB interpolasi dapat dikerjakan dengan fungsi interp. Pada praktikum kali ini bertujuan untuk mempelajari fitting dan interpolasi sebuah data dan mengaplikasikan dalam permasalahan sederhana.

GRADIENT


Gradient suatu fungsi V(x,y,z) dapat di definisikan sebagai diferensial parsial dari V(x,y,z) terhadap masing-masing komponennya: Dalam kasus dua dimensi (x,y); Grad V(x,y) dapat dicari dengan cara menjabarkan ÑV pada masing masing variabel independennya. Dengan demikian ÑV terhadap x dapat di cari dengan cara menurunkan V terhadap x dan mengganggap variabel y konstan. Demikian juga sebaliknya untuk turunan ke arah y. Dan selanjutnya setiap persamaan diatas dapat di dekati dengan metode metode numerik untuk deferensial satu variabel. Jika terdapat data sebaran V




dalam sebuah bidang, maka gradient dari V dapat ditentukan dengan tool MATLAB gradient kemudian untuk menggambarkan hasil perhitungan gradient MATLAB telah menyediakan fungsi untuk menggambarkan yaitu quiver sedangkan untuk menggambarkan garis eqipotensial dari V dapat menggunakan perintah contour: Dalam praktikum kali ini akan dipelajari fungsi dari gradient dan aplikasi gradient dalam permasalahan sederhana.

INTEGRAL


Integral dengan batas tertentu atau luas daerah dibawah kurva dalam range yang finitive dapat ditentukan dengan tiga buah fungsi yang dimiliki matlab yaitu :
trapz quad quad8


fungsi trapz mendekati integral dengan metode trapesium, sedangkan quad berdasar pada metode quadratude.
Kebalikan dari integral, diferensial membahas fungsi dalam satu selang yang sangat sempit. Dengan sedikit modifikasi deretan data dapat dideferensial dengan fungsi yang dimiliki MATLAB yaitu polyval dan polyder. Dalam praktikum kali ini akan dipelajari
cara menggunakan fungsi integral dan deferensial.



pendekatan integral dan mengaplikasikan untuk fungsi sederhana.


AKAR PERSAMAAN


Mencari akar persamaan sebuah fungsi tunggal, pada dasarnya sama dengan mencari sebuah harga variabel yang dapat membuat nilai fungsi tersebut sama dengan nol. Akar persamaan dapat ditentukan dengan menjabarkan fungsi f(x) dievaluasi di titik x kedalam bentuk deret Taylor. Pada praktikum kali ini akan dipelajari dan diaplikasikan dua buah metode untuk mencari akar persamaan yaitu: Metode Newton dan metode
Secant.



PERSAMAAN DIFERENSIAL




PD orde satu adalah persamaan yang mengandung hanya derivative pertama dari y(x). Secara numerik banyak metode yang dapat digunakan untuk menyelesaian PD. Beberapa diantaranya adalah metode Euler: Metode ini menyelesaikan PD di titik x dengan initial x0  secara  iterative.  Metode  Nilai  Tengah  (Midpoin Method):  Midpoint   method mendekatpenyelesaian  PD dengan slope pada titik tengah pada interval..  dan Heun method :Metode ini menentukan slope dari garis dengan cara merata rata slope pada sisi kiri dan sisi kanan dari interval. Modified Midpoint Method : Metode ini merupakan pengembanga Midpoint  Method  yang  merupakan   second  order  method.  Tujuan praktikum  kali ini adalah  mempelajari  pendekatan  penggunaan  dan mengaplikasikan

dalam fungsi sederhana.