0% menganggap dokumen ini bermanfaat (0 suara)
128 tayangan11 halaman

Operasi Matrik

Bab 4 membahas operasi-operasi yang dapat dilakukan pada matriks di MATLAB, termasuk operasi aljabar matriks seperti penjumlahan, pengurangan, perkalian, dan transpose; operasi elemen-per-elemen seperti perkalian, pembagian, dan pangkat; serta contoh penerapan operasi-operasi tersebut untuk menyelesaikan persamaan linier dan fungsi logaritma.

Diunggah oleh

Rahmad Hidayat
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
128 tayangan11 halaman

Operasi Matrik

Bab 4 membahas operasi-operasi yang dapat dilakukan pada matriks di MATLAB, termasuk operasi aljabar matriks seperti penjumlahan, pengurangan, perkalian, dan transpose; operasi elemen-per-elemen seperti perkalian, pembagian, dan pangkat; serta contoh penerapan operasi-operasi tersebut untuk menyelesaikan persamaan linier dan fungsi logaritma.

Diunggah oleh

Rahmad Hidayat
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 11

BAB 4

OPERASI MATRIKS

Ketika kita bekerja dengan matriks di dalam MATLAB, operasi


ataupun manipulasi yang kita lakukan terhadap matriks tersebut
bisa berupa: operasi (aljabar) matriks, dan operasi elemen-per-
elemen. Operasi matriks di MATLAB sama seperti yang kita temui
di aljabar matriks, misalkan penjumlahan/pengurangan, perkalian
matriks, invers, transpose, dot product, cross product, dan
sebagainya. Sementara operasi elemen-per-elemen, yang
merupakan ciri khas MATLAB, mengoperasikan satu per satu
elemen matriks seperti operasi skalar, meliputi
penjumlahan/pengurangan, perkalian/pembagian, dan pangkat.
Dalam bab ini, operasi matriks dibahas terlebih dahulu, dan
kemudian operasi elemen-per-elemen.

4.1 Penjumlahan dan Pengurangan

Penjumlahan dua matriks, A+B, dan selisih dua matriks, A–B,


terdefinisi jika A dan B berukuran sama. Namun demikian,
penjumlahan/pengurangan juga bisa dilakukan antara matriks
dengan skalar. Untuk jelasnya mari kita praktekkan contoh berikut
ini.

>> A=[0 1;2 3];


>> B=[4 5;6 7];

>> Jumlah=A+B, Selisih=A-B, Tambah50=A+50


Jumlah =
4 6
8 10
Selisih =
-4 -4
-4 -4
Tambah50 =
50 51
52 53
38 Operasi Matriks

4.2 Perkalian Matriks

Perkalian matriks, misalkan C = AB, terdefinisi jika jumlah kolom


di A sama dengan jumlah baris di B. Selain itu, perkalian juga
bisa dilakukan antara matriks dengan skalar.
Kita akan lanjutkan contoh sebelumnya.

>> A,B
A =
0 1
2 3
B =
4 5
6 7

>> MultAB=A*B, MultBA=B*A


MultAB =
6 7
26 31
MultBA =
10 19
14 27

Ketika mengalikan dua matriks, maka matriks hasil


perkalian dihitung berdasarkan formula baku. Misalkan
Tips C=AB; A dan B matriks 2×2,
sehingga hasilnya C juga 2×2.
 c11 c12   a11 a12  b11 b12 
 =  
 c 21 c 22   a 21 a 22  b21 b22 

di mana: c11 = a11b11 + a12b21


c12 = a11b12 + a12b22
c21 = a21b11 + a22b21
c22 = a21b12 + a22b22

Contoh berikutnya ialah perkalian dua vektor, yang juga mengikuti


aturan perkalian matriks, karena vektor sesungguhnya sama
dengan matriks 1-dimensi.

>> x=[3 2 1], y=[100;10;1]


x =
3 2 1
Operasi Matriks 39

y =
100
10
1

>> z1=x*y, z2=y*x


z1 =
321
z2 =
300 200 100
30 20 10
3 2 1

Selain perkalian di atas, dikenal pula perkalian vektor, yaitu: “dot-


product” (atau disebut juga inner-product), dan “cross-product”.

Tabel 4. 1
dot(x,y) menghitung dot-product dari vektor x dan y
cross(x,y) menghitung cross-product dari vektor x dan y

Dot-product dan cross-product dihitung berdasarkan


formula baku.
Tips Misalkan terdapat dua vektor x = (x1 x2 x3) dan
y = (y1 y2 y3), maka:

dot-product: x • y = x1y1 + x2y2 + x3y3


cross-product: x × y = (x2y3− x3y2 x3y1− x1y3 x1y2− x2y1)

Perlu diingat bahwa hasil dot-product berupa skalar,


sementara hasil cross-product berupa vektor.

4.3 Persamaan Linier dalam Matriks

Kita sering menemui persamaan linier dengan beberapa variabel.


Di dalam aljabar, solusi persamaan tersebut bisa ditemukan, salah
satunya dengan menggunakan matriks. Misalkan kita tinjau sistem
persamaan linier dengan variabel x1 dan x2.

x1 – 2 x2 = 32
12 x1 + 5 x2 = 7
40 Operasi Matriks

Dalam bentuk matriks bisa kita tuliskan:

 1 − 2  x1   32 
   =   ⇔ AX = B
 12 5  x2   7 

X = A-1B ; di mana A-1 ialah invers matriks A

Dalam MATLAB kita tuliskan:

>> A=[1 –2;12 5]; B=[32;7];

>> X=inv(A)*B
X =
6.0000
-13.0000

Sehingga kita dapatkan solusi x1 = 6 dan x2 = -13.


Atau kita juga bisa mendapatkan solusi tersebut dengan operator
pembagian terbalik:

>> X=A\B
X =
6.0000
-13.0000

Sebagai bahan latihan, cobalah Anda pecahkan persamaan linier


dengan tiga variabel berikut ini.

x + 2y + 3z = 2
4x + 5y + 6z = -5,5
7x + 8y – 9z = -49

4.4 Transposisi

Salah satu operasi yang penting dalam matriks ialah transposisi,


dituliskan dalam MATLAB dengan operator petik tunggal ( ‘ ) dan
titik-petik ( .’ ). Operasi ini mempertukarkan baris dan kolom dari
suatu matriks atau vektor.
Operasi Matriks 41

Tabel 3. 1
petik tunggal ( ‘ ) operasi transposisi untuk matriks berisi bilangan
riil, atau transposisi dan konjugasi untuk matriks
kompleks.
titik-petik ( .’ ) operasi transposisi tanpa konjugasi. Untuk
matriks riil, operator ini memberi hasil yang
sama dengan petik tunggal

Mari kita praktekkan contoh berikut ini untuk memahami kedua


operator di atas.

>> Mat_riil=[1 0; 3 5], Mat_kompleks=[1+2i 3i; 1 2+3i]


Mat_riil =
1 0
3 5
Mat_kompleks =
1.0000 + 2.0000i 0 + 3.0000i
1.0000 2.0000 + 3.0000i

>> Transp_riil=Mat_riil',Transp_kompleks=Mat_kompleks'
Transp_riil =
1 3
0 5
Transp_kompleks =
1.0000 - 2.0000i 1.0000
0 - 3.0000i 2.0000 - 3.0000i

>> Transp_riil2=Mat_riil.'
Transp_riil2 =
1 3
0 5

>> Transp_kompleks2=Mat_kompleks.'
Transp_kompleks2 =
1.0000 + 2.0000i 1.0000
0 + 3.0000i 2.0000 + 3.0000i

4.5 Operasi Elemen-per-Elemen

Di dalam MATLAB, operasi matematik juga bisa dilakukan elemen-


per-elemen. Dalam hal ini matriks atau vektor yang terlibat harus
berukuran sama. Operasi yang bisa dilakukan ialah
perkalian/pembagian, penjumlahan/pengurangan, serta pangkat.
Operator yang digunakan diawali dengan tanda “titik” (kecuali
penjumlahan/pengurangan), yaitu:
42 Operasi Matriks

Tabel 3. 2
+ – Tambah dan kurang (elemen-per-elemen)
.* ./ .\ Kali, bagi, bagi terbalik (elemen-per-elemen)
.^ Pangkat (elemen-per-elemen)

Operasi penjumlahan/pengurangan matriks secara definit sudah


dilakukan elemen-per-elemen, sehingga + dan – tidak diawali
“titik”.

Sekarang kita coba praktekkan contoh di bawah ini.

>> A=[1 -2;1 5]; B=[7 5; 2 0];

>> A+B
ans =
8 3
3 5

>> A.*B
ans =
7 -10
2 0

>> B./A
ans =
7.0000 -2.5000
2.0000 0

>> B.^2
ans =
49 25
4 0

>> A.^B
ans =
1 -32
1 1

>> 2.^B
ans =
128 32
4 1

Perhatikan bahwa hasil operasi juga berupa matriks berukuran


sama dengan A dan B.
Operasi Matriks 43

Pada contoh berikutnya kita coba operasi antar vektor.

>> a = [3 2 1]; b = [4 5 6];


>> c = [10 20 30]’; d = [5 10 15]’;

>> a.*b
ans =
12 10 6

>> c.*d
ans =
50
200
450

>> a.*c
??? Error using ==> .*
Matrix dimensions must agree.

Perhatikan bahwa ukuran a dan c tidak cocok sehingga muncul


pesan error (a berukuran 1×3 sementara c 3×1).

>> b.^a, c./d+2


ans =
64 25 6
ans =
4
4
4

>> c./2.*d.^2
ans =
125
1000
3375

Ingat, operasi pangkat selalu dilakukan lebih dulu, diikuti


perkalian/pembagian, kemudian penjumlahan/pengurangan.

4.6 Fungsi Elemen-per-Elemen

Semua fungsi matematik yang berlaku pada skalar (lihat kembali


subbab 2.4), berlaku pula untuk matriks/vektor secara elemen-per-
elemen. Pada contoh kali ini, kita akan mencoba beberapa contoh
sederhana, kemudian kita coba pula dua kasus perhitungan dengan
memanfaatkan berbagai fungsi yang telah kita pelajari.
44 Operasi Matriks

>> n=-3:3
n =
-3 -2 -1 0 1 2 3

>> abs(n), sign(n)


ans =
3 2 1 0 1 2 3
ans =
-1 -1 -1 0 1 1 1

>> round(n./2), floor(n./2), ceil(n./2)


ans =
-2 -1 -1 0 1 1 2
ans =
-2 -1 -1 0 0 1 1
ans =
-1 -1 0 0 1 1 2

>> rem(n,3)
ans =
0 -2 -1 0 1 2 0

Contoh Kasus

Berikutnya, kita pelajari contoh kasus pertama:

Misalkan Anda ditugasi untuk mencari solusi persamaan


logaritmik:

y = ln(x2)

di mana x bernilai antara –100 hingga +100. Setelah itu, Anda


harus menampilkan nilai pada rentang x = –2 hingga x = 2 saja.

>> clear
>> inkremen = 0.5;
>> x = -100:inkremen:100; %Di sini kita definisikan x,
>> y = log(x.^2); %kemudian kita hitung y
Warning: Log of zero.

Warning muncul karena terdapat perhitungan y = log(0) ketika


x=0. Untuk menghindari warning, kita bisa buat angka di dalam
logaritma tidak pernah bernilai nol dengan cara menambahkan
bilangan “amat kecil” eps.

>> y = log(x.^2+eps);

Nilai x telah didefinisikan, dan y telah dihitung. Sekarang, kita


Operasi Matriks 45

harus melokalisasi data pada rentang –2 hingga +2. Untuk


melakukannya, kita harus tahu panjang vektor x, dan pada nomor
indeks berapa saja x bernilai –2 hingga +2.

>> panjang = length(x)


panjang =
401

>> titik_tengah = round(panjang/2)


titik_tengah =
201

Pada titik_tengah ini, x bernilai 0. Sekarang kita ambil nilai x di


kiri dan kanan titik_tengah sebanyak 4 titik untuk mendapatkan x
= –2 hingga x = 2.

>> x_baru = x(titik_tengah-4:titik_tengah+4)


x_baru =
Columns 1 through 7
-2.0000 -1.5000 -1.0000 -0.5000 0 0.5000 1.0000

Columns 8 through 9
1.5000 2.0000

Lalu kita tampilkan nilai y pada rentang tersebut.

>> y_baru = y(titik_tengah-4:titik_tengah+4)


y_baru =
Columns 1 through 7
1.3863 0.8109 0.0000 -1.3863 -36.0437 -1.3863 0.0000

Columns 8 through 9
0.8109 1.3863

Berikutnya pada contoh kasus kedua:

Anda ditugasi membuat tabel trigonometri: sinus dan cosinus


untuk sudut-sudut istimewa: 0o, 30o, 45o, 60o, 90o, ... , 360o. Dalam
tugas ini akan digunakan pula command sort untuk mengurutkan
data dan disp untuk menampilkan isi variabel di layar.

Mula-mula, kita definisikan x sebagai sudut-sudut istimewa,


berupa sudut kelipatan 30o mulai 0o hingga 360o. Kemudian kita
tambahkan empat sudut istimewa: 45o, 135o, 225o, dan 315o, lalu
kita urutkan isi vektor x.

>> clear
46 Operasi Matriks

>> x=0:30:360;
>> x=[x 45 135 225 315];

>> x=sort(x)
x =
Columns 1 through 13
0 30 45 60 90 120 135 150 180 210 225 240 270

Columns 14 through 17
300 315 330 360

x dalam satuan derajat kita ubah menjadi t (radian), karena


perhitungan trigonometri dilakukan dalam satuan radian.

>> t=x.*pi/180;
>> y1=sin(t); y2=cos(t);

Selanjutnya kita buat matriks tiga kolom bernama tabel berisi:


sudut, sin, dan cos.

>> tabel=[x;y1;y2]';
>> judul=' sudut sin cos';

Ingat, vektor x, y1, dan y2 berupa satu baris; padahal kita ingin
menampilkannya memanjang ke bawah berupa kolom, jadi perlu
dilakukan transposisi.

>> disp(judul), disp(tabel)


sudut sin cos
0 0 1.0000
30.0000 0.5000 0.8660
45.0000 0.7071 0.7071
60.0000 0.8660 0.5000
90.0000 1.0000 0.0000
120.0000 0.8660 -0.5000
135.0000 0.7071 -0.7071
150.0000 0.5000 -0.8660
180.0000 0.0000 -1.0000
210.0000 -0.5000 -0.8660
225.0000 -0.7071 -0.7071
240.0000 -0.8660 -0.5000
270.0000 -1.0000 -0.0000
300.0000 -0.8660 0.5000
315.0000 -0.7071 0.7071
330.0000 -0.5000 0.8660
360.0000 -0.0000 1.0000
Operasi Matriks 47

Soal Latihan

1. Operasikan matriks M dan N berikut ini:


10 20   −1 1 
M =   N =  
 5 8   1 − 1 
M + N, M − N, N + 9
MN, NM

2. Hitunglah dot-product dan cross-product dari dua vektor


berikut ini:
r r
a = (0 5 5) b = (1 1 1)
r r r r r r
a •b a×b b ×a

3. Pecahkanlah persamaan linier tiga variabel berikut ini:


x + 2y – 3z = -7
4x + 5y + 6z = 11
7x + 8y + 9z = 17

4. Carilah solusi dari persamaan lingkaran berikut ini:


y = 25 − x 2 untuk − 5 ≤ x ≤ 5 , dengan inkremen x sebesar
0,05. Setelah itu, tampilkanlah nilai y pada rentang x = 0
hingga x = 1 saja.

5. Buatlah tabel hiperbolik-trigonometri: sinh, cosh, dan tanh


untuk rentang − 5 ≤ x ≤ 5 , dengan inkremen x sebesar 0,1.

Anda mungkin juga menyukai