Supardi, M.Si
BAB 3 Vektor dan Matriks Vektor Salah satu fitur yang dimiliki oleh Matlab adalah penggunaan vektor sebagai objek. Vektor adalah sebuah larik satu-dimensi dari bilanganbilangan yang tersusun dalam baris atau kolom. Vektor kolom dapat dibuat dengan cara menyusun bilangan-bilangan dalam sebuah kurung kotak yang mana setiap elemen dibatasi titik koma. >> A=[1;2;3] A= 1 2 3 Sedangkan untuk membuat vektor yang berbentuk baris adalah dengan menyusun bilangan-bilangan yang dibatasi dalam kurung kotak dan setiap elemen dipisahkan oleh spasi atau tanda titik koma. >> A=[1,2,3,4] A= 1
2
3
4
Untuk menyatakan vektor baris dengan elemen-elemen dengan pola tertentu juga dapat dibuat >> x=1:5 Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si x= 1
2
3
4
5
Vektor tersebut juga dapat dituliskan dengan cara x=[1 2 3 4 5] Sekarang cobalah dengan pernyataan Matlab berikut ini >> y=0:2:10 y= 0
2
4
6
8
10
Dengan demikian vektor yang berurutan dengan pola tertentu dapat dinyatakan secara umum sebagai nama_vektor= bawah : panjang_langkah : atas Untuk mengakses elemen pada vektor x maka kita dapat melakukannya dengan cara nama_vektor(indeks_elemen) Contoh: >>y(2) ans = 2 >> 4*y(3) ans = 16 Cara lain yang dapat digunakan untuk menyatakan vektor berurutan dengan pola tertentu adalah dengan perintah linspace. >> z=linspace(0,10,5) z= 0
2.5000
5.0000
7.5000 10.0000
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si Secara umum dapat dituliskan sebagai nama_vektor=linspace(bawah,atas,jmlh_elemen)
Manipulasi Vektor Di pasal ini kita akan membahas perhitungan sederhana yang melibatkan vektor, dengan mengenalkan operasi dot (.). Lihat contoh berikut. >> v=[1,2,3,4,5]; >> 2*v ans = 2
4
6
8
10
Contoh di atas menjelaskan bahwa untuk mengalikan 2 pada setiap elemen vektor dapat dilakukan dengan cara seperti di atas. >> v=[1,2,3,4,5]; >> w=[2,3,4,5,6]; >> v.*w ans = 2
6
12
20
30
Hasil di atas dapat dinyatakan secara umum sebagai
[ v 1 w 1 ,v 2 w 2 , v 3 w 3 ,v 4 w 4 ,v 5 w 5 ] Selanjutnya jika v dan w dilakukan operasi pembagian pada setiap elemen seletak, maka digunakan operasi v./w. >> v=[1,2,3,4,5]; >> w=[2,3,4,5,6]; Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si >> y=v./w y= 0.5000
0.6667
0.7500
0.8000
0.8333
atau dapat dinyatakan sebagai
[
y=
v1 v2 v3 v4 v5 , , , , , w1 w 2 w 3 w 4 w5
]
Contoh 3.3 Dapatkan nilai fungsi dari
f x =
x3 untuk domain 1x 2
0x 2
dengan panjang langkah 0.2. Penyelesaian x=0:0.2:2; f=x.^3; g=x.^2+1; y=f./g; disp([y']) Hasilnya adalah 0 0.0077 0.0552 0.1588 0.3122 0.5000 0.7082 0.9270 1.1506 1.3755 1.6000 Vektor yang telah kita bahas di atas semuanya berbentuk baris.
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si Untuk membuat vektor yang berbentuk kolom, dapat dibuat dengan memberikan tanda titik koma (semicolon) pada elemen-elemennya. >> v=[1;2;3;4;5] v= 1 2 3 4 5
Subscript Kita dapat mengakses salah satu elemen vektor v untuk dilakukan operasi khusus. Letak setiap elemen vektor tersebut ditandai dengan dengan subscript. Sebagai contoh >> v=[2,4,6,8,10]; >> 2*v(2) ans = 8 Pada contoh di atas kita dapat mengakses elemen nomor dua dari vektor v dengan memberikan subscrip 2 pada vektor v.
Transpose Vektor Kalau kita sudah memiliki vektor w yang berbentuk baris, maka kita dapat membuatnya menjadi vektor kolom dengan cara mentranspose vektor tersebut. Transpose dapat dilakukan dengan cara memberikan tanda petik tunggal (') pada pada vektor w tersebut. Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si Contoh 3.4 Jika kita memiliki vektor berupa baris maka trsenposenya berupa vektor kolom >> w=[1,2,3,4,5]; >> w' ans = 1 2 3 4 5 Contoh Jika kita memiliki vektor kolom, maka transposenya berupa vektor baris >> B=[1;2;3;4;5]; >> B' ans = 1
2
3
4
5
Operasi Vektor Di bawah ini disajikan operasi array (vektor) beserta keterangannya, sebagaimana yang telah dijelaskan di atas. No
Simbol
Keterangan
1
[ ]
2
,
Tanda pemisah kolom elemen vektor
3
;
Tanda pemisah baris elemen vektor
Konstruktur untuk array (vektor)
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si 4
:
Untuk menentukan range elemen
5
+
Operasi penambahan vektor
6
-
Operasi pengurangan vektor
7
.*
Operasi perkalian elemen vektor
8
.^
Pangkat setiap elemen vektor
9
./
Operasi bagi kanan
10
.\
Operasi bagi kiri
Operasi Penambahan dan Pengurangan Untuk melakukan operasi penambahan atau pengurangan vektor, maka syaratnya kedua jenis vektor adalah sejenis. Misalnya untuk penambahan dua buah vektor baris A dan B >> A=[1,2,3]; >> B=[3,4,5]; >> C=A+B C= 4
6
8
Kemudian untuk pengurangan dua buah vektor kolom P dan Q >> P=[1;2;3]; >> Q=[3;4;5]; >> C=P+Q C= 4 6 8
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si
Pembagian antar elemen vektor Matlab memiliki kemampuan untuk melakukan operasi antar elemen vektor seletak. Contoh >> P=[8,6,4]; >> Q=[4,3,2]; >> P./Q ans = 2
2
2
>> P.\Q ans = 0.5000
0.5000
0.5000
Perkalian antar elemen vektor Matlab juga memiliki fitur untuk mengalikan antar elemen vektor yang seletak >> A=[1,2,3,4]; >> B=[2,3,4,5]; >> C=A.*B C= 2 6 12 20
Pangkat untuk elemen vektor Jika memiliki sebuah vektor, maka elemen-elemennya dapat dipangkatkan seperti contoh di bawah ini >> A=[1,2,3,4]; >> A.^2 ans = Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si 1
4
9
16
Membuat Vektor Lebih Besar dengan Variabel yang Sudah Ada Apabila kita memiliki dua buah vektor A dan B, maka dengan bermodal pada vektor tersebut kita dapat membuat vektor baru lagi berdasarkan pada vektor tersebut dengan ukuran yang lebih besar. d.1.
Vektor A dan B adalah vektor kolom >> A=[1;2;3]; >> B=[6;7]; >> C=[A;B] C= 1 2 3 6 7
d.2.
Vektor A dan B adalah vektor baris >> A=[1,2,3]; >> B=[6,7]; >> C=[A,B] C= 1
2
3
6
7
Sifat-Sifat Vektor
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si
Perintah length() Perintah length menyatakan jumlah elemen yang terkandung dalam sebuah vektor. Contoh >> P=[1,2,3,4,5,6,7,8,10]; >> length(P) ans = 9
Perintah max dan min Kita juga dapat memperoleh informasi mengenai mana elemen yang terbesar (dengan perintah max ) maupun yang terkecil (dengan min ). >> P=[1,2,3,4,5,6,7,8,10]; >> max(P) ans = 10 >> min(P) ans = 1
Mencari Magnitud vektor Sebelum kita memberikan contoh Matlab untuk memperoleh magnitud dari sebuah vektor, kita ingatkan kembali jika kita memiliki sebuah vektor kolom v.
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si
[]
v1 v2 v= v 3 ⋮ vn maka magnitud vektor v adalah
∣v∣= v12v 22 v 23⋯v 2n Jika kita memiliki sebuah vektor Q, kemudian vektor tersebut akan dicari magnitudnya >> Q=[4,3,2]; >> Q.*Q; >> y=sum(Q.*Q); >> magnitude=sqrt(y) magnitude = 5.3852 Bagaimana kalau elemen-elemen vektornya yang ada merupakan bilangan kompleks. Lihat contoh berikut >> Q=[4;3+2i;2]; >> P=conj(Q); >> W=Q.*P; >> y=sum(W); >> sqrt(y) ans = 5.7446 Kalau kita perhatikan langkah untuk memperoleh magnitud bilangan kompleks tersebut terlampau panjang, maka lebih singkat dengan cara Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si >> Q=[4;3+2i;2]; >> magnitud=sqrt(sum(conj(Q).*Q)) magnitud = 5.7446 Kita dapat menggunakan perintah abs() untuk menentukan harga mutlak dari elemen vektor. >> Q=[4;3+2i;2]; >> abs(Q) ans = 4.0000 3.6056 2.0000
Perkalian Dot dan Cross Perkalian
dot
pada
dua
vektor
A=[ a 1, a 2, a 3, ⋯, a n ] dan
B=[ b 1, b2, b3, ⋯, bn ] didefinisikan A⋅B=∑ ai bi i
Dalam Matlab operasi perkalian dot dapat dilakukan dengan cara dot(a,b). >> A=[1,2,3,4]; >> B=[2,3,4,5]; >> dot(A,B) ans = 40 Dengan
menggunakan
perkalian
dot
ini,
menentukan harga magnitud dengan lebih mudah Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
maka
kita
dapat
Supardi, M.Si >> A=[1,2,3,4]; >> dot(A,A); >> magnitud=sqrt(dot(A,A)) magnitud = 5.4772 Operasi dot juga dapat bekerja pada vektor kompleks, seperti di bawah ini >> A=[4;3+2i;2]; >> dot(A,A) ans = 33 Operasi lain pada vektor selain dot adalah perkalian cross. Syarat agar dapat dilakukan operasi perkalian cross adalah jumlah elemen vektor harus sama dengan tiga. >> A=[1,2,3]; >> B=[2,3,4]; >> C=cross(A,B) C= -1
2
-1
Dasar-dasar Vektor Dibawah ini akan dibahas tentang berbagai macam pembangkitan dan pembangunan vektor (array) yang disediakan oleh Matlab.
No
Perintah
1
:
Keterangan Membangkitkan vektor dengan panjang
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si langkah sama. Membangkitkan 2
linspace
vektor pada
jangkauan
tertentu dengan jumlah langkah dapat diambilsesuai kebutuhan. Panjang langkah yang dibangkitkan memiliki lebar sama. Membangkitkan secara logaritmik vektor
3
logspace
dalam jangkauan tertentu dengan jumlah langkah dapat diambil sesuai keiinginan.
4
blkdiag
5
eye
6
ones
7
zeros
8
rand
9
randn
10
ndgrid
11
meshgrid
Membangun
sebuah
matriks
diagonal
dengan argumen masukan. Membangun matriks identitas. Membangun matriks dengan elemen sama dengan 1. Membangun matriks dengan elemen sama dengan 0 Membangun
matriks
dengan
elemen
random yang terdistribusi secara uniform Membangun
matriks
dengan
elemen
random yang terdistribusi secara normal Membangkitkan array (vektor) untuk fungsi multidimensi dan interpolasi. Membangkitkan matriks X dan Y untuk tujuan plot 3 dimensi.
Pembangkitan vektor dengan menggunakan linspace dan titik dua (:)
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si sudah diberikan di awal pembahasan tentang vektor. Sekarang kita akan membahas beberapa yang belum dijelaskan di atas.
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si
TUGAS
1. Jika diketahui dua buah vektor masing-masing v=linspace(0,2,5) dan w=linspace(3,5,5), maka tunjukkan hasilnya jika dilakukan operasi berikut ini. a) v+w b) w-v c) v.*w d) v.^2 e) w./v f) 1./w g) w/2 2. Diketahui dua buah vektor yaitu A=(1 -3 2 5 6) dan B=(4 1 3 5 1) tentukan (a) magnitud dari masing-masing vektor (b) hasil perkalian antar elemen yang seletak (c) hasil bagi antar elemen yang seletak. 2. Diketahui vektor A=(2+i -3+5i 5 1-3i 2). (a) tentukan transpose matriks A. (b) tentukan transpose konjugat dari matriks A. (c) tentukan magnitud matriks A. 3. Anggaplah kita memiliki bilangan 3,2,3,1 dan 6. Buatlah vektor kolom A dan vektor baris dengan elemen-elemen tersebut. Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si 4. Jika diketahui A=[1,2,3,5,3] dan B=[ 4;3;2;5;2]. Tentukan (a) hasil kasil cross vektor A dengan vektor B (b) transpose dari ketor B (c) hasil kali dot vektor A dengan vektor B'. 5. Suppose vector a and b are defined as follows: a=[1,2,-3,4,-2]; b=[4,-1,6,7,-3]; Evaluate by hand the vector c in the following statements, then check your answer with Matlab
6. Set up a vector n with elements 1,2,3,4,5. Use Matlab array operation on vector n to set up the following four vectors, each with elemens:
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010
Supardi, M.Si
Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010