Basic Matlab
Basic Matlab
Di sini kita akan belajar bagaimana menulis kode Matlab untuk membuat fungsi transfer dan kemudian
menganalisis kode transfer ini untuk melihat reaksinya terhadap beberapa jenis stimulus yang diberikan..
Vektor
Mari kita mulai dengan membuat sesuatu yang sederhana, seperti vektor. Masukkan setiap elemen vektor
(dipisahkan oleh spasi) di antara tanda kurung, dan setel sama dengan variabel. Misalnya, untuk membuat
vektor a, masuk ke jendela perintah Matlab (Anda dapat "copy" dan "paste" dari browser Anda ke Matlab
untuk memudahkannya):
a = [1 2 3 4 5 6 9 8 7]
Matlab seharusnya menghasilkan:
a =
1 2 3 4 5 6 9 8 7
Misalkan Anda ingin membuat vektor dengan elemen-elemen antara 0 dan 20 berjarak sama dengan
kelipatan 2 (metode ini sering digunakan untuk membuat vektor waktu):
t = 0: 2: 20
t =
0 2 4 6 8 10 12 14 16 18 20
Memanipulasi vektor hampir sama mudahnya dengan membuatnya. Pertama, misalkan Anda ingin
menambahkan 2 ke setiap elemen dalam vektor 'a'. Persamaannya seperti dibawah ini:
b = a + 2
b =
3 4 5 6 7 8 11 10 9
Sekarang misalkan, Anda ingin menjumlahkan dua vektor. Jika kedua vektor memiliki panjang yang sama,
itu mudah. Cukup tambahkan keduanya seperti yang ditunjukkan di bawah ini:
c = a + b
c =
4 6 8 10 12 14 20 18 16
Pengurangan vektor dengan panjang yang sama bekerja dengan cara yang persis sama.
Fungsi
Untuk membuat pekerjaan lebih mudah, Matlab menyertakan banyak fungsi standar. Setiap fungsi adalah
blok kode yang menyelesaikan tugas tertentu. Matlab berisi semua fungsi standar seperti sin, cos, log, exp,
sqrt, dan banyak lagi lainnya. Konstanta yang umum digunakan seperti pi, dan i atau j untuk akar kuadrat
-1, juga dimasukkan ke dalam Matlab.
sin (pi / 4)
ans =
0,7071
Untuk menentukan penggunaan fungsi apapun, ketik help [nama fungsi] di jendela perintah
Matlab.
Matlab bahkan memungkinkan Anda untuk menulis fungsi Anda sendiri dengan fungsi perintah;
ikuti tautan untuk mempelajari cara menulis fungsi Anda sendiri dan melihat daftar fungsi yang kami
buat untuk tutorial ini.
Membuat Plot
Sangat mudah untuk membuat plot di Matlab. Misalkan Anda ingin memplot gelombang sinus sebagai
fungsi waktu. Pertama buat vektor waktu (titik koma setelah setiap pernyataan memberi tahu Matlab bahwa
kita tidak ingin melihat semua nilai tersebut) dan kemudian menghitung nilai sin setiap saat.
t = 0: 0.25: 7;
y = sin (t);
plot (t, y)
Plot berisi kira-kira satu periode gelombang sinus. Metode plotting dasar sangat mudah di Matlab, dan
perintah plot memiliki kemampuan tambahan yang ekstensif. Saya akan merekomendasikan Anda
mengunjungi halaman plotting untuk mempelajari lebih lanjut tentang itu.
Polinomial
Dalam Matlab, polinomial diwakili oleh vektor. Untuk membuat polinomial di Matlab, cukup
masukkan setiap koefisien polinomial ke dalam vektor dalam urutan menurun. Misalnya, Anda
memiliki polinomial berikut:
Untuk memasukkannya ke Matlab, masukkan saja sebagai vektor dengan cara berikut :
x = [1 3 -15 -2 9]
x =
1 3 -15 -2 9
Matlab dapat menginterpretasikan sebuah vektor dengan panjang n + 1 sebagai polinomial orde-n. Jadi,
jika polinomial Anda kehilangan koefisien apapun, Anda harus memasukkan angka nol di tempat yang
y = [1 0 0 0 1]
Anda dapat menemukan nilai polinomial menggunakan fungsi polival. Misalnya, untuk mencari nilai
polinomial di atas pada s = 2,
z =
17
Anda juga dapat mengekstrak akar polinomial. Ini berguna ketika Anda memiliki polinomial orde tinggi
seperti
ans =
-5.5745
2.5836
-0.7951
0.7860
Misalkan Anda ingin mengalikan dua polinomial. Produk dari dua polinomial ditemukan dengan
mengambil konvolusi koefisiennya. Fungsi Matlab conv yang akan melakukan ini untuk Anda.
x = [1 2];
y = [1 4 8];
z = conv(x, y)
z =
1 6 16 16
Membagi dua polinomial sama mudahnya. Fungsi deconv akan mengembalikan sisa dan hasilnya.
Mari bagi z dengan y dan lihat apakah kita mendapatkan x.
[xx, R] = deconv(z, y)
xx =
1 2
R =
0 0 0 0
Seperti yang Anda lihat, ini hanyalah polinomial / vektor x dari sebelumnya. Jika y tidak menjadi z
secara merata, vektor sisanya akan menjadi sesuatu selain nol.
Jika Anda ingin menjumlahkan dua polinomial yang memiliki urutan yang sama, z = x + y sederhana akan
berfungsi (vektor x dan y harus memiliki panjang yang sama). Dalam kasus umum, fungsi yang ditentukan
pengguna, polyadd dapat digunakan. Untuk menggunakan polyadd, salin fungsi tersebut ke dalam
file-m, lalu gunakan seperti yang Anda lakukan pada fungsi lainnya di toolbox Matlab. Dengan asumsi
Anda memiliki fungsi polyadd yang disimpan sebagai m-file, dan Anda ingin menambahkan dua
polinomial yang tidak rata, x dan y, Anda dapat melakukannya dengan memasukkan perintah:
function[poly]=polyadd(poly1,poly2)
if length(poly1)<length(poly2)
short=poly1;
long=poly2;
else
short=poly2;
long=poly1;
end
mz=length(long)-length(short);
if mz>0
poly=[zeros(1,mz),short]+long;
else
poly=long+short;
end
z = polyadd(x, y)
x =
1 2
y =
1 4 8
z =
1 5 10
Matriks
Memasukkan matriks ke dalam Matlab sama dengan memasukkan vektor, kecuali setiap baris elemen
dipisahkan oleh titik koma (;) atau kembalian:
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]
B =
1 2 3 4
5 6 7 8
9 10 11 12
Matlab dapat dimanipulasi dengan berbagai cara. Pertama, Anda dapat menemukan transpose matriks
menggunakan kunci apostrof:
C = B'
C =
1 5 9
2 6 10
3 7 11
4 8 12
Perlu dicatat bahwa jika C kompleks, apostrof sebenarnya akan memberikan transpos konjugat
kompleks. Untuk mendapatkan transpos, gunakan. ' (kedua perintah itu sama jika matriks tidak
kompleks).
Sekarang Anda bisa mengalikan dua matriks B dan C bersama-sama. Ingatlah bahwa urutan penting saat
mengalikan matriks.
D = B*C
D =
70 11030
70174 278
110 278 446
D = C*B
D =
107 122 137 152
122 140 158 176
137 158 179 200
152 176 200224
Opsi lain untuk manipulasi matriks adalah Anda dapat mengalikan elemen yang sesuai dari dua
matriks menggunakan operator. * (Matriks harus berukuran sama untuk melakukan ini ).
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
Jika Anda memiliki matriks persegi, seperti E, Anda juga dapat mengalikannya dengan dirinya sendiri
sebanyak yang Anda suka dengan menaikkannya ke pangkat tertentu.
E^3
ans =
37 54
81 118
Jika ingin memangkatkan kubik setiap elemen dalam matriks, gunakan saja dot
ans =
1 8
27 64
Anda juga dapat mencari invers dari sebuah matriks:
X = inv (E)
X =
-2.0000 1.0000
1.5000 -0.5000
atau nilai eigennya:
eig (E)
ans =
-0,3723
5,3723
Bahkan ada fungsi untuk mencari koefisien dari polinomial karakteristik suatu matriks. Fungsi "poly"
membuat vektor yang menyertakan koefisien polinomial karakteristik.
p = poly(E)
p =
Ingatlah bahwa nilai eigen sebuah matriks sama dengan akar dari polinomial karakteristiknya:
roots(p)
ans =
5.3723
-0.3723
Printing
Mencetak di Matlab cukup mudah. Ikuti saja langkah-langkah yang diilustrasikan di bawah ini:
Macintosh
Untuk mencetak plot atau m-file dari Macintosh, cukup klik pada plot atau m-file, pilih Print di
bawah menu File, dan tekan kembali.
Windows
Untuk mencetak plot atau m-file dari komputer yang menjalankan Windows, cukup pilih Print
dari menu File di jendela plot atau m-file, dan tekan kembali.
Unix
Untuk mencetak plot pada workstation Unix masukkan perintah:
print -P <printername>
Jika Anda ingin menyimpan plot dan mencetaknya nanti, masukkan perintah:
print plot.ps
Beberapa saat kemudian, Anda dapat mencetak plot menggunakan perintah "lpr -P plot.ps" Jika
Anda menggunakan workstation HP untuk mencetak, Anda sebaiknya menggunakan perintah "lpr
-d plot.ps"
Untuk mencetak m-file, cetak saja seperti yang Anda lakukan pada file lain, menggunakan
perintah "lpr -P <name of m-file> .m" Jika Anda menggunakan workstation HP untuk mencetak,
Anda dapat menggunakan perintah "lpr -d plot.ps <name of m-file> .m"