Anda di halaman 1dari 14

1 Pengenalan Matlab

1.1 Tujuan
Pada praktikum ini diharapkan mahasiswa dapat mengenal dan
mengoperaikan MATLAB.
1.2 Landasan Teori
MATLAB adalah suatu program interaktif untuk komputasi matriks. Versi
awal dari MATLAB, yaitu singkatan dari matrix laboratoty, telah
dikembangkan oleh Cleve Moer dari kepustakaan perangkat lunak Unpack dan
Eispack. Selama bertahun-tahun sampai saat ini MATLAB telah mengalami
serangkaian perluasan dan revisi. Dewasa ini MATLAB telah menajdi
perangkat lunak terkemuka untuk perhitungan-perhitungan ilmiah. Versi
professional dari MATLAB diditribusikan oleh Math Work, Inc di Natick,
Massachusetts. Selain digunakan secara luas dalam lingkungan industry dan
ketkenikan, MATLAB juga sudah menjadi alat instruksional standar untuk
kuliah aljabar linear.
1.3 Bahan dan Alat
Dalam praktikum ini, diperlukan PC yang dilengkapi dengan software
MATLAB.
1.4 Metode Kerja dan Hasil
1. Elemen Dasar
Elemen-elemen dasar yang digunakan dalam MATLAB adalah matriks.
Sekali suatu matriks telah dimasukan atau disusun, pengguna dengan cepat
dapat melakukan perhitungan-perhitungan canggih dengan jumlah pemograman
minimal.
Untuk memasukkan matrik pada MATLAB, ada beberapa cara yang dapat
dilakukan :
• Memasukkan secara langsung dengan menuliskan semua elemennya.

1
• Meng-load matrik dari file eksternal.
• Meng-generate matrik menggunakan fungsi-fungsi built-in
• Membuat matrik dengan fungsi yang Anda buat sendiri dan disimpan
dalam file.
Untuk membuat array dengan empat elemen pada satu baris, setiap elemen
harus dipisahkan dengan koma (,) atau spasi. Contohnya sebagai berikut :
A = [1 2 3 4]
Untuk membuat matrik yang memiliki beberapa baris, maka setiap barisnya
harus dipisahkan dengan tanda titik koma (;). Contohnya sebagai berikut :
A = [1 2 3; 4 5 6; 7 8 10]
Selain itu MATLAB juga menyediakan fungsi untuk membuat matrik :

• zeros: semua elemennya bernilai nol.


• ones: semua elemennya bernilai satu.
• Eye: membuat matriks identitas
• rand: elemen-elemennya bernilai random dengan distribusi uniform.
• randn: elemen-elemennya bernilai random dengan distribusi normal.
Sebagai contoh dibuat matrik berukuran 5x1 dengan elemennya semua
bernilai nol :
Z = zeros(5,1)
Z=
0
0
0
0
0

2
Sedangkan contoh berikut ini adalah matrik berukuran 3x3 dengan elemen-
elemennya dibangkitkan secara random :
R = rand(3,3)
R=
0.8147 0.9134 0.2785
0.9058 0.6324 0.5469
0.1270 0.0975 0.9575
Selain itu, untuk membuat matriks segitiga atau matriks diagonal kita dapat
menggunakan fungsi-fungsi MATLAB triu, tril, dan diag. Perintah-perintah
untuk menyusun matriks dapat digunakan untuk membuat blok-blok sebagai
bagian dari partisi matriks. Sebagai contoh, perintah MATLAB

E = [eye(2),ones(2,3);zeros(2),[1:3;3:-1:1]]
Ans:
E =
1 0 1 1 1
0 1 1 1 1
0 0 1 2 3
0 0 3 2 1

2. Operasi-Operasi Pada Matriks


MATLAB memungkinkan pemrosesan semua nilai pada sebuah matrik
menggunakan sebuah operator matematika atau fungsi tunggal.
A + 10
ans =
11 12 13
14 15 16
17 18 20
Untuk melakukan transpose pada sebuah matrik, gunakan tanda petik atas (‘) :
A’

3
ans =
147
258
3 6 10
Untuk melakukan perkalian pada matrik, gunakan operator (*). Sebagai contoh,
sebuah matrik apabila dikalikan dengan hasil inversnya maka akan
menghasilkan matrik identitas :
P = A * inv(A)
P=
1.0000 0 -0.0000
0 1.0000 0
0 0 1.0000
Untuk melakukan perkalian elemen by elemen pada matrik (bukan perkalian
matrik), gunakan operator (.*) :
P = A .* A
P=
149
16 25 36
49 64 100
Berikut ini daftar operator pada array :

4
Operasi pada array sangat bermanfaat untuk pembentukan tabel. Misal
diberikan n sebuah vector kolom sebagai berikut :
n = (0:9)’;
kemudian fungsi berikut ini akan membuat sebuah tabel yang berisi bilangan
kuadrat dan perpangkatan dari 2 :
pows = [n n.^2 2.^n]
pows =
0 0 1
1 1 2
2 4 4
3 9 8
4 16 16
5 25 32
6 36 64
7 49 128
8 64 256
9 81 512
Selain operasi-operasi yang telah dijelaskan di atas, MATLAB memiliki
beberapa fungsi yang sering digunakan untuk operasi pada matrik, di antaranya:

Untuk mengetahui lebih detail cara penggunaan dari masing-masing fungsi


tersebut, pada Command Window ketikkan :
help nama_fungsi
kemudian tekan enter.
3. Konkatenasi
Konkatenasi merupakan proses penggabungan dua buah array sehingga
diperoleh sebuah array dengan ukuran yang lebih besar. Tanda [] merupakan
operator untuk konkatenasi.

5
B = [A,A]
B =
1 2 3 1 2 3
4 5 6 4 5 6
7 8 10 7 8 10
Operasi di atas disebut dengan konkatenasi horizontal dan dapat dilakukan
apabila banyaknya baris kedua array sama. Selain itu, apabila banyaknya kolom
pada dua buah array sama maka dapat dilakukan operasi konkatenasi vertikal
sebagai berikut :
B = [A;A]
B =
1 2 3
4 5 6
7 8 10
1 2 3
4 5 6
7 8 10
4. Indeks Pada Array
Setiap variabel pada MATLAB merupakan sebuah array yang dapat terdiri
atas beberapa bilangan. Jika Anda ingin mengakses sebuah elemen pada array,
maka harus menggunakan indeks.Sebagai contoh, diberikan matrik magic
square 4x4 sebagai berikut :
A = magic(4)
A =
16 2 3 13
5 11 10 8
9 7 6 12

6
4 14 15 1
Terdapat dua buah cara untuk mengakses suatu elemen tertentu pada sebuah
array. Cara paling umum adalah dengan menyebutkan baris dan juga kolomnya
seperti contoh berikut:
A(3,4)
ans =
12
Cara kedua adalah dengan melakukan iterasi ke bawah pada setiap kolom
secara berurutan :

A(15)
ans =
12
Anda juga dapat menambahkan satu elemen baru pada matrik di luar ukuran
dimensi saat ini. Secara otomatis ukuran matrik akan bertambah sehingga dapat
menampung elemen tersebut.
A(4,5) = 17
A =
16 2 3 13 0
5 11 10 8 0
9 7 6 12 0
4 14 15 1 17
Untuk mengakses beberapa elemen pada array, gunakan operator (:) yang
memungkinkan Anda untuk menspesifikasikan rentang dalam format start:end.
Sebagai contoh, berikut ini akan ditampilkan tiga elemen pertama pada kolom
ke-2 matrik A:
A(1:3,2)
ans =
2

7
11
7
Jika tidak dituliskan nilai awal maupun nilai akhir, maka penggunaan tanda (:)
akan menspesifikasikan semua elemen pada baris atau kolom yang dimaksud.
Sebagai contoh, berikut ini akan ditampilkan semua elemen pada baris ke-3
matrik A :
A(3,:)
ans =
9 7 6 12 0
5. Menghapus Baris dan Kolom
Anda dapat menghapus baris atau kolom dari sebuah matrik dengan
menggunakan sepasang tanda kurung siku ([]). Misalkan terdapat matrik X
sebagai berikut :

X = magic(4);
Kemudian akan dihapus kolom kedua dari matrik X, menggunakan :
X(:,2) = []
X =
16 3 13
5 10 8
9 6 12
4 15 1
Untuk menghapus baris pertama dari matrik X, menggunakan :
X(1,:) = []
X =
5 10 8
9 6 12

8
4 15 1
Jika yang ingin dihapus hanya satu buah elemen saja, maka hasilnya bukan lagi
sebuah matrik, sehingga ekspresi seperti berikut ini :
X(1,2)=[]
akan menghasilkan error
6. Aritmetika Matriks
Aritmetika matriks dalam MATLAB dapat dilakukan secara langsung. Kita dapat
mengalikan matriks awal A dikalikan dengan B hanya dengan mengetikkan A * B.
Jumlah dan selisih dari A dan B masing-masing diberikan oleh A + B dan A - B.
Transpos dari A diberikan oleh A'. Jika c menyatakan suatu vektor di dalam R4,
maka pemecahan dari sistem linear Ax = c dapat dihitung dengan menuliskan

𝑥 = 𝐴\𝑐

Pangkat-pangkat dari matriks dapat dibuat dengan mudah. Matriks A5 dihitung


dalam MATLAB dengan mengetikkan 𝐴^5. Sebagai contoh, jika

W = [1 2; 3 4 ], maka W^2 akan menghasilkan


ans =
7 10
15 22
sedangkan W.^2 akan menghasilkan
ans =
1 4
9 16
7. Operator-Operator Relasional dan Logika
MATLAB memiliki enam operator relasional yang digunakan untuk
pembandingan skalar-skalar atau pembandingan elemen demi elemen dari
matriks. Operator-operator ini adalah

9
Operator Relasional
< lebih kecil
<= lebih kecil atau sama dengan
> lebih besar
>= lebih besar atau sama dengan
== sama dengan
~= tidak sama dengan

Jika diberikan dua matriks A dan B yang berorde m x n, maka perintah

𝐶 = 𝐴 < 𝐵
akan menghasilkan suatu matriks berorde m x n yang elemen-elemennya terdiri
dari nol dan satu. Entri (i, j) akan sama dengan 1 jika dan hanya jika aij < bij.
Sebagai contoh, misalkan bahwa

 −2 0 3 
 
A =  4 2 −5 
 −1 −3 2 
 
Perintah A > = 0 akan menghasilkan

ans =

0 1 1
1 1 0
0 0 1
Terdapat tiga operator logika seperti diperlihatkan di bawah ini.

Operator Logika
& AND
| OR
~ NOT
Operator-operator logika ini memandang setiap skalar taknol berkorespondensi dengan
TRUE dan 0 berkorespondensi dengan FALSE. Untuk matriks, operator-operator ini

10
diterapkan elemen demi elemen. Jadi jika A dan B adalah matriks-matriks berorde m x
n, maka A & B adalah matriks yang entri-entrinya adalah nol dan satu di mana entri
ke-ij adalah a(i, j) & b(i, j). Sebagai contoh, jika

 1 0 1  −1 2 0 
   
A =  0 1 1 dan B =  1 0 3
 0 0 1  0 1 2
   
maka

1 0 0  1 1 1 0 1 0
     
A & B =  0 0 1  , A | B =  1 1 1 , ~ A =  1 0 0 
0 0 1  0 1 1 1 1 0
     
Operator-operator relasional dan logika seringkali digunakan dengan
pernyataan if.
8. Operator-Operator Array Secara Kolom
MATLAB memiliki sejumlah fungsi yang jika diterapkan pada vektor
baris atau vektor kolom x akan menghasilkan suatu bilangan. Sebagai contoh,
perintah max(x) akan menghitung entri maksimum dari x, dan perintah sum(x)
akan menghasilkan nilai jumlah entri-entri x. Fungsi-fungsi lain yang
berbentuk ini adalah min, prod, mean, all, dan any. Jika menggunakan argumen
matriks maka fungsi-fungsi ini diterapkan pada setiap vektor kolom dan hasil-
hasilnya dituliskan sebagai vektor baris. Sebagai contoh, jika

 −3 2 5 4 
 
A =  1 3 8 0
 −6 3 1 3 
 
maka
min(A) = (-6, 2, 1, 0)
max(A) = (1, 3, 8, 4)
sum(A) = (-8, 8, 14, 7)

11
prod(A) = (18, 18, 40, 0)
9. Grafik
Jika x dan y adalah vektor-vektor dengan panjang yang sama, maka
perintah plot(x, y) akan menghasilkan grafik dari semua pasangan-pasangan (xi,
yi) dan setiap titik akan dihubungkan ke titik berikutnya dengan suatu segmen
garis. Jika koordinat-koordinat x diambil secara cukup berdekatan, maka gambar
grafik harus mirip sebuah kurva halus. Perintah plot(x, y, 'x') akan
menggambarkan pasangan-pasangan terurut dengan x tetapi tidak
menghubungkan titik-titik tersebut.

sin x
Sebagai contoh, untuk menggambar fungsi f ( x) = pada interval [0 , 10]
x +1
tetapkan

x = 0 : 0.2 : 10 dan y = sin(x)./(x + 1)


Perintah plot(x, y) akan menghasilkan grafik dari fungsi. Untuk membandingkan
grafik ini dengan grafik dari sin x kita tetapkan z = sin(x) dan gunakan perintah
plot(x, y, x, z) untuk menggambar kedua kurva pada saat yang sama seperti dalam
gambar di bawah ini.
1

0.8

0.6

0.4

0.2

-0.2

-0.4

-0.6

-0.8

-1
0 1 2 3 4 5 6 7 8 9 10

12
Adalah juga mungkin menggambarkan jenis-jenis fungsi yang lebih canggih
dalam MATLAB, termasuk koordinat-koordinat polar, permukaan tiga dimensi, dan
plot kontur.
10. Fungsi Dalam M-File
Pada dasarnya, semua tools yang disediakan oleh MATLAB dibuat dalam
format fungsi dan dikelompokkan ke dalam folder-folder toolbox. Selain
menggunakan fungsi-fungsi yang telah ada tersebut, kita juga dapat membuat
fungsi-fungsi sendiri sesuai kebutuhan. Keuntungan membuat program dalam
format fungsi adalah kemudahannya untuk digunakan lagi pada program
lainnya. Berikut ini pola untuk menuliskan fungsi pada MATLAB :
Function [out1,out2,…] = Nama (in1,in2,…) → bagian
deklarasi fungsi
% penjelasan → bagian penjelasan fungsi (opsional)
- perintah - → bagian program utama
- perintah –

Agar lebih memahami cara penulisan fungsi, perhatikan contoh program


berikut :
function y = pangkat(a,b)
%----------------------------------------
%fungsi untuk menghitung perpangkatan a^b
%cara menggunakan :
%y = pangkat(2,10)
%----------------------------------------
hasil = 1;
for i=1:b
hasil = hasil * a;
end
y = hasil;

Simpan program di atas dengan nama sama dengan nama fungsinya yaitu
pangkat.m. Untuk menggunakan fungsi tersebut, pada Command Window
ketikkan perintah sebagai berikut :
>> y = pangkat(2,6)

sehingga akan muncul hasil perhitungan pangkatnya. Kemudian apabila ingin


melihat penjelasan fungsi, ketikkan perintah sebagai berikut :
>> help pangkat

13
11. Fasilitas Help
MATLAB memiliki fasilitas HELP yang mendaftarkan dan menguraikan fungsi-
fungsi, operasi-operasi, dan perintah-perintah dalam MATLAB. Untuk memperoleh informasi
mengenai perintah MATLAB, kita hanya perlu mengetikkan help yang diikuti dengan
nama dari perintahnya.
1.5 Pertanyaan

 −3 2 5 4 
 
Misalkan diberikan matriks A =  1 3 8 0  . Tentukan nilai maksimum,
 −6 3 1 3 
 
minimum dan jumlah dari setiap elemennya.
1.6 Tugas
Buat program untuk matriks berukuran 4 x 4 untuk menghasilkan total nilai dan
nilai rata-rata dari suatu matriks (dengan menggunakan M-file).

14

Anda mungkin juga menyukai