modul praktikum pemrograman 4

18
 Supardi, M.Si Supardi, M.Si BAB 3 Vektor dan Matriks Vektor Salah satu fitur yang dimiliki oleh Matlab adalah penggunaan vektor seb aga i obj ek. V ekt or ada lah se bua h lar ik sat u-d ime nsi dar i bil ang an-  bilangan yang tersusun dalam baris atau kolom. V ektor 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 Sed ang kan unt uk membuat ve kto r ya ng ber bentuk bar is ada lah 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 Komp uter Pendidikan Fisika smt II tahun 2009/2010

Transcript of modul praktikum pemrograman 4

Page 1: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 1/18

 

Supardi, M.Si 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 bilangan-

 bilangan 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

Page 2: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 2/18

 

Supardi, M.Si 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

Page 3: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 3/18

 

Supardi, M.Si 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 1w 1 ,v 2w 2 , v 3w 3 ,v 4w 4 ,v 5w 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

Page 4: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 4/18

 

Supardi, M.Si Supardi, M.Si 

>> y=v./w

y =

0.5000 0.6667 0.7500 0.8000 0.8333

atau dapat dinyatakan sebagai

y =[ v 1w 1

,v 2

w 2

,v 3

w 3

,v 4

w 4

,v 5

w 5

,]Contoh 3.3

Dapatkan nilai fungsi dari f   x =x 3

1 x 2

untuk domain 0 x 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.31220.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

Page 5: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 5/18

 

Supardi, M.Si 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

Page 6: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 6/18

 

Supardi, M.Si 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 =

12

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 [ ] Konstruktur untuk array (vektor)

2 , Tanda pemisah kolom elemen vektor

3 ; Tanda pemisah baris elemen vektor

Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010

Page 7: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 7/18

 

Supardi, M.Si 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

Page 8: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 8/18

 

Supardi, M.Si 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

Page 9: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 9/18

 

Supardi, M.Si 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

36

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

Page 10: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 10/18

 

Supardi, M.Si 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

Page 11: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 11/18

 

Supardi, M.Si Supardi, M.Si 

v=[v1

v2

v3

vn

]maka magnitud vektor v adalah

∣v∣= v12v2

2v3

2⋯vn

2

  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

Page 12: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 12/18

 

Supardi, M.Si 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=[a1,a

2,a

3,⋯ , a

n ] dan

 B=[b1,b2,b3,⋯ , bn ] didefinisikan

 A⋅ B=∑i

aibi

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, maka kita dapat

menentukan harga magnitud dengan lebih mudah

Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010

Page 13: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 13/18

 

Supardi, M.Si 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 Keterangan

1 : Membangkitkan vektor dengan panjang

Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010

Page 14: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 14/18

 

Supardi, M.Si Supardi, M.Si 

langkah sama.

2 linspace

Membangkitkan vektor pada jangkauan

tertentu dengan jumlah langkah dapat

diambilsesuai kebutuhan. Panjang langkah

yang dibangkitkan memiliki lebar sama.

3 logspace

Membangkitkan secara logaritmik vektor

dalam jangkauan tertentu dengan jumlah

langkah dapat diambil sesuai keiinginan.

4 blkdiagMembangun sebuah matriks diagonal

dengan argumen masukan.

5 eye Membangun matriks identitas.

6 onesMembangun matriks dengan elemen sama

dengan 1.

7 zerosMembangun matriks dengan elemen sama

dengan 0

8 randMembangun matriks dengan elemen

random yang terdistribusi secara uniform

9 randnMembangun matriks dengan elemen

random yang terdistribusi secara normal

10 ndgridMembangkitkan array (vektor) untuk fungsi

multidimensi dan interpolasi.

11 meshgridMembangkitkan 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

Page 15: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 15/18

 

Supardi, M.Si 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

Page 16: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 16/18

 

Supardi, M.Si 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

Page 17: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 17/18

 

Supardi, M.Si 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

Page 18: modul praktikum pemrograman 4

5/10/2018 modul praktikum pemrograman 4 - slidepdf.com

http://slidepdf.com/reader/full/modul-praktikum-pemrograman-4 18/18

 

Supardi, M.Si Supardi, M.Si 

Pemrograman Komputer Pendidikan Fisika smt II tahun 2009/2010