0% menganggap dokumen ini bermanfaat (0 suara)
41 tayangan

Modul Matlab Julia

Dokumen tersebut memberikan pengantar singkat tentang MATLAB, termasuk pengenalan menu dan simbol utama MATLAB, keunggulan MATLAB, dan beberapa fungsi dasar MATLAB untuk vektor, matriks, dan operasi matematika."

Diunggah oleh

Rizkiawan
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 DOCX, PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
41 tayangan

Modul Matlab Julia

Dokumen tersebut memberikan pengantar singkat tentang MATLAB, termasuk pengenalan menu dan simbol utama MATLAB, keunggulan MATLAB, dan beberapa fungsi dasar MATLAB untuk vektor, matriks, dan operasi matematika."

Diunggah oleh

Rizkiawan
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 DOCX, PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 35

TUGAS MATLAB

HARI/TANGGAL : RABU 20/01/2021

DISUSUN OLEH :
JULIA DWITA
45 18 044 005

UNIVERSITAS BOSOWA
2020/2021

i
DAFTAR ISI

Kata Pengantar …………………………………………………………….. i


Daftar Isi …………………………………………………………………… ii
Daftar Gambar ……………………………………………………………... iii
Daftar Tabel ………………………………………………………………... iii
MODUL 1 [Praktikum 1 – 4]
PENGENALAN MATLAB, VEKTOR DAN MATRIKS ……………….. 1
Pendahuluan ……………………………………………………………….. 1
Operasi Lembar Kerja ……………………………………………………... 4
1. Memulai Matlab ……………………………………………………... 4
2. Beberapa Fungsi Dalam Matlab …………………………………….. 5
3. Matriks ……………………………………………………………….. 7
3.1. Penjumlahan dan Pengurangan ………………………………. 19
3.2. Perkalian Matriks ……………………………………………… 20
3.3. Persamaan Linier dalam Matriks ……………………………… 22
3.4. Transposisi …………………………………………………….. 23
3.5. Operasi Elemen-per-Elemen ………………………………….. 25
3.6. Fungsi Elemen-per-Elemen …………………………………… 27

ii
DAFTAR GAMBAR

Gambar 1 Menu dan simbol utama Matlab ………………………………. 2


Gambar 2 Matlab Help ……………………………………………………. 3
Gambar 3 Lembar kerja untuk menjalankan fungsi-fungsi Matlab ………. 4
Gambar 4 Jendela figure …………………………………………………… 31

DAFTAR TABEL

Tabel 1 ……………………………………………………………………... 10
Tabel 2 ……………………………………………………………………... 17
Tabel 3 ……………………………………………………………………... 17
Tabel 4 ……………………………………………………………………... 23
Tabel 5 ……………………………………………………………………... 24

iii
MODUL 1 [Praktikum 1 – 4]
PENGENALAN MATLAB, VEKTOR DAN MATRIKS

Pendahuluan
MATLAB (MATrix LABoratory) adalah bahasa tingkat tinggi dan interaktif
yang memungkinkan untuk melakukan komputasi secara intensif. MATLAB
telah berkembang menjadi sebuah environment pemrograman yang canggih yang
berisi fungsi-fungsi build in untuk melakukan pengelolahan sinyal, aljabar linear
dan kalkulasi matematis lainnya. MATLAB juga berisi toolbox yang berisi fungs
– fungsi tambahan untuk aplikasi khusus. Penggunaan MATLAB meliputi bidang
:
 Matematika dan Komputasi
 Pembentukan Algorithm
 Akuisisi Data
 Pemodelan, simulasi dan Pembuatan Prototype
 Analisis Data, Explorasi, dan Visualisasi Grafik
 Keilmuan dan Bidang
Rekayasa Beberapa keunggulan Matlab
terletak pada:
2. Aspek Komputasional
 Analisa matrik dan manipulasinya
 Reduksi data dan pengolahan data statistik
 FFT, statistic korelasi dan kovarian
 Pendukung matrik “sparse”
 Fungsi trigonometri dan beberapa fungsi komplek lainnya
 Fungsi Bessel, beta, dan fungsi kepadatan lainnya
 Persamaan diferensial linier dan nonlinier
3. Aspek Grafik dan Visualisasi
 2-D scatter, grafik garis, poligon dan mesh, counter, grafik polar, dan
plot histogram
 3-D scatter, grafik garis, poligon, mesh dan plot “wireframe”

1
2

 Grafik dengan variasi permukaan disertasi dengan animasi gambar


dan suara

4. Aspek Pemrograman
 Struktur control (FOR, WHILE dan IF)
 Manipulasi string
 Input file berupa ASCII dan biner
 Debugging
 Dapat berinteraksi dengan bahasa pemrograman C

Gambar 1
Menu dan simbol utama Matlab

Disamping sebagai compiler, Matlab juga dilengkapi dengan Toolbox


software yang merupakan satu-satu kecanggihan Matlab. Software ini mencakup
berbagai masalah – masalah besar dalam teknologi tingkat tinggi, di antaranya
adalah:

 Control system Toolbox, merupakan kumpulan fungsi-fungsi Matlab untuk


pemodelan, analisis dan desain system kontrol otomatis.
 Financial Toolbox, merupakan software untuk menyelesaikan beberapa
masalah keuangan dari masalah yang sederhana sampai masalah yang cukup
kompleks.
 Fuzzy Logic Toolbox, merupakan software untuk mengembangkan desain
“fuzzy” dari tahap “setup” sampai diagnose.
 Signal Processing Toolbox, merupakan tools untuk menyelesaikan masalah
besar dalam analisa bispektral, model signal linier dan nonlinier,
transformasi FFT dan DCT serta visualisasi spectrum.
 Spectral Analysis Toolbox, merupakan tools untuk menganalisa signal
dengan menggunakan “cumulant” atau spectral dengan order tinggi.
 Image Processing Toolbox, merupakan software khusus dalam matlab
untuk desain filter, analisa citra, manipulasi warna dan lain-lain yang
berkenaan dengan visualisasi citra.
 Statistics Toolbox, merupakan software yang menangani masalah-masalah
stokastik.
 System Identification Toolbox, merupakan software untuk melakukan
aktifitas desain system dinamis yang berdasarkan pada input dan output
data.
Selanjutnya silahkan pelajari sendiri tentang Matlab dengan menekan
tombol F1 pada keyboard !

Gambar 2
Matlab Help

Operasi Lembar Kerja

3
Tujuan Khusus Praktikum :
Mahasiswa dapat memahami kegunaan software Matlab dan aplikasinya untuk vektor
dan matriks

1. Memulai Matlab
Setelah melakukan instalasi MATLAB pada PC, perhatikan icon MATLAB
pada tampilan desktop kemudian “doubleclick” pada icon tersebut. Selanjutnya
akan muncul tampilan seperti pada gambar berikut ini.

Gambar 3
Lembar kerja untuk menjalankan fungsi-fungsi Matlab
Pada tampilan awal MATLAB, terlihat beberapa jendela yang
merupakan

bagian penting di dalam MATLAB, antara lain :


a. Jendela perintah (Command Window)
Pada command window, semua perintah matlab dituliskan dan diekskusi.
Kita dapat menuliskan perintah perhitungan sederhana, memanggil fungsi,
mencari informasi tentang sebuah fungsi dengan aturan penulisannya (help),
demo program, dan sebagainya. Setiap penulisan perintah selalu diawali
dengan prompt ‘>>’.
b. Jendela ruang kerja (Workspace)
Jendela ini berisi informasi penggunaan variabel di dalam memori
MATLAB.
c. Jendela history (Command History)
Jendela ini berisi informasi tentang perintah yang pernah dituliskan
sebelumnya. Kita dapat mengambil kembali perintah dengan menekan
tombol panah ke atas atau mengklik perintah pada jendela histori, kemudian
melakukan copypaste ke command window.

2. Beberapa Fungsi Dalam Matlab


Beberapa fungsi yang dapat dipakai dalam Matlab untuk menyelesaikan
beberapa masalah dapat diringkas dalam penjelasan berikut:
a. Fungsi pengatur umum
>> help fungsi : untuk mengetahui petunjuk pemakaian suatu fungsi
>> type file.m : untuk menampilkan isi dari M-File
>> pwd : untuk mengetahui subdirektori aktif
>> cd a\ data : memindahkan suatu direktori aktif ke direktori lain yaitu A
dalam subdirectori data
>> dir : untuk menampilkan isi direktori
>> !ren file 1.txt file 1.m : merubah nama file1.txt menjadi file 1.m
b. Fungsi pengatur variabel dan areal kerja
>> save filename : untuk menyimpan variabel dalam file.mat
>> load filename : untuk memanggil data yang disimpan dalam file.mat
>> clear : untuk menghapus variabel terdefinisi
>> pack : untuk memampatkan pemakaian memory lembar kerja
>> size(A) : untuk mengetahui ordo matrik A
>> max(A) atau min(A) : untuk mengetahui nilai terbesar dan terkecil dari
elemen matrik A
>> length(A) : menginformasikan bilangan terbesar dari ordo matrik A
>> clc: membersihkan layar lembar kerja
c. Operator numerik dan matrik
>>  : penjumlahan dan penguragan
>> *, ^ : perkalian dan perpangkatan
>> /, \ : pembagian kanan untuk bilangan dan pembagian kiri untuk matrik
dan vektor
>> ‘ : transpose vektor atau matrik
d. OPERATOR array
>>  : penjumlahan dan penguragan
>> .*,. ^ : perkalian dan perpangkatan
>> ./, .\ : pembagian kanan untuk bilangan dan pembagian kiri untuk matrik
dan vektor
>> ‘ : transpose vektor atau matrik
Penambahan titik dalam operator array disebabkan adanya operasi sederetan
bilangan dalam waktu yang bersamaan. Contoh array x = 0:0.1:10
e. Operator logika dan relasional
>> <, <= : lebih kecil dan lebih kecil sama dengan
>> >, >= : lebih besar dan lebih besar sama dengan
>> = : sama atau ekuivalen
>> ~= : tidak sama atau tidak ekuivalen
>> &, |, ~ : dan, atau, tidak
f. Penulisan fungsi matematika
>> abs(x) : fungsi untuk menghasilkan nilai absolut dari x
>> sign(x) : fungsi untuk menghasilkan nilai -1 jika x < 0, 0 jika x = 0 dan 1
jika x > 1
>> exp(x) : untuk menghasilkan nilai eksponensian natural, ex
>> log(x) : untuk menghasilkan nilai logaritma natural x, ln x
>> log10(x) : untuk menghasilkan nilai logaritma dengan basis 10, x 10 log
>> sqrt(x) : untuk menghasilkan akar dari nilai x, x
>> rem(x,y) : untuk menghasilkan nilai modulus (sisa pembagian) x
terhadap y
g. Fungsi M-file
>> disp (‘karakter’) : menampilkan karakter (string)
>> num2str : mengkonversi numerik menjadi string
>> input : meminta user memberikan input
>> pause : menghentikan program sampai user menekan <ENTER>
>> pause(n) : berhenti selama n detik

3. Matriks
Terdapat 3 jenis format data di MATLAB yaitu skalar, vektor dan matriks.
 Skalar, ialah suatu bilangan tunggal
 Vektor, ialah sekelompok bilangan yang tersusun 1-dimensi. Dalam
MATLAB biasanya disajikan sebagai vektor-baris atau vektor-kolom
 Matriks, ialah sekelompok bilangan yang tersusun dalam segi-empat 2-
dimensi. Di dalam MATLAB, matriks didefinisikan dengan jumlah
baris dan kolomnya. Di MATLAB terdapat pula matriks berdimensi
3, 4, atau lebih, namun dalam buku ini kita batasi hingga 2-dimensi
saja.
Sebenarnya, semua data bisa dinyatakan sebagai matriks. Skalar bisa
dianggap sebagai matriks satu baris – satu kolom (matriks 1×1), dan vektor bisa
dianggap sebagai matriks 1-dimensi: satu baris – n kolom, atau n baris – 1 kolom
(matriks 1×n atau n×1). Semua perhitungan di MATLAB dilakukan dengan
matriks, sehingga disebut MATrix LABoratory.
Matriks didefinisikan dengan kurung siku ([ ]) dan biasanya dituliskan baris-
per-baris. Tanda koma (,) digunakan untuk memisahkan kolom, dan titik- koma (;)
untuk memisahkan baris. Kita juga bisa menggunakan spasi untuk memisahkan
kolom dan menekan Enter ke baris baru untuk memisahkan baris.

Contoh vektor-baris dan vektor-kolom:


>> vektor1=[3,5,7]
vektor1 =
3 5 7
>> vektor2=[2;4;6]
vektor2 =
2
4
6

Berikutnya kita coba contoh berikut untuk mendefinisikan matriks 3×3.


>> matriks1=[10 20 30
40 50 60
70 80 90]
>> matriks2=[10 20 30; 40 50 60; 70 80 90]

Terlihat bahwa matrix1 dan matrix2 isinya sama, karenanya kita bisa menekan
Enter untuk membuat baris baru, ataupun menggunakan titik-koma.

Kita juga bisa mendefinisikan matriks elemen per elemen.


>> mat(1,1)=100; mat(1,2)=200; mat(2,1)=300;
>> mat(2,2)=400
mat =
100 200
300 400

Kita sekarang akan mencoba menggabungkan variabel yang ada untuk


membentuk matriks baru.
>> gabung1=[vektor2 matriks1]
gabung1 =
2 10 20 30
4 40 50 60
6 70 80 90
>> gabung2=[vektor1; matriks2]
gabung2 =
3 5 7
10 20 30
40 50 60
70 80 90

Kita harus ingat bahwa matriks gabungan harus memiliki jumlah baris dan
kolom yang valid sehingga membentuk persegi panjang.
Untuk mengetahui ukuran atau dimensi dari matriks yang ada, kita bisa
gunakan command size dan length. size umumnya digunakan untuk matriks 2-
dimensi, sementara length untuk vektor.
>> length(vektor1)
ans =
3
>> size(matrix1)
ans =
3 3

Menunjukkan panjang vektor1 ialah 3 elemen, dan ukuran matrix1 ialah 3-baris
3-kolom (3×3). Kita juga bisa menyimpan keluaran command dalam variabel
baru.

>> panjang=length(vektor2)
panjang =
3
>> [jml_baris,jml_kolom]=size(gabung5)
jml_baris =
3
jml_kolom =
6
Sementara itu, untuk menghitung jumlah elemen dari suatu matriks, kita
pergunakan command prod. Misalkan untuk matriks gabung5, jumlah elemennya
ialah;
>> jml_elemen=prod(size(gabung5))
jml_elemen =
18

Berbagai matriks khusus yang kerap kita pergunakan dalam perhitungan bisa
dibuat secara efisien dengan command yang telah ada di MATLAB.

Tabel 1
ones(n) membuat matriks satuan (semua elemennya berisi angka 1)
berukuran n×n.
ones(m,n) membuat matriks satuan berukuran m×n.

zeros(n) membuat matriks nol (semua elemennya berisi angka 0)


berukuran n×n.
zeros(m,n) membuat matriks nol berukuran m×n.

eye(n) membuat matriks identitas berukuran n×n (semua elemen


diagonal bernilai 1, sementara lainnya bernilai 0).

rand(n), membuat matriks n×n, atau m×n, berisi bilangan random


rand(m,n) terdistribusi uniform pada selang 0 s.d. 1.

randn(n), membuat matriks n×n, atau m×n, berisi bilangan random


randn(m,n) terdistribusi normal dengan mean = 0 dan varians = 1.
Command ini kerap kita gunakan untuk membangkitkan derau
putih gaussian.
[] matriks kosong, atau dengan kata lain matriks 0×0; biasa
digunakan untuk mendefinisikan variabel yang belum diketahui
ukurannya.

Untuk memperdalam pemahaman, mari kita lihat contoh di bawah ini.


>> clear
>> mat_1=5*ones(2,4)
mat_1 =
5 5 5 5
5 5 5 5

>> mat_2=zeros(2,4)
mat_2 =
0 0 0 0
0 0 0 0

>> mat_3=[eye(4) -ones(4)]


mat_3 =
1 0 0 0 -1 -1 -1 -1
0 1 0 0 -1 -1 -1 -1
0 0 1 0 -1 -1 -1 -1
0 0 0 1 -1 -1 -1 -1

>> bil_acak_uniform=rand(1,10)
bil_acak_uniform =
Columns 1 through 7
0.9501 0.2311 0.6068 0.4860 0.8913 0.7621 0.4565

Columns 8 through 10
0.0185 0.8214 0.4447
>> gaussian_noise=randn(5,1)
gaussian_noise =
-0.4326
-1.6656
0.1253
0.2877
-1.1465

Misalkan kita ingin membangkitkan 20 buah bilangan acak gaussian dengan


mean = 5 dan varians = 3.
>> mu=5; %Nilai mean
>> varians=3; %Nilai variansi

>> bil_acak_gaussian= sqrt(varians)*randn(1,20) + mu


bil_acak_gaussian =

Setiap kali kita menggunakan command rand dan randn, kita akan selalu
mendapatkan nilai keluaran yang berbeda. Hal ini merupakan salah satu sifat
bilangan acak.

Dalam vektor ataupun matriks, indeks digunakan untuk menunjuk


satu/beberapa elemen dari vektor/matriks. Indeks dituliskan di dalam tanda
kurung ( ) dengan pola umum sebagai berikut.

Untuk vektor:
nama_vektor( indeks )
Untuk matriks:
nama_matriks( indeks_baris , indeks_kolom )
Dalam suatu vektor, elemen pertama diberi indeks = 1, sementara dalam
matriks, indeks menunjukkan nomor baris dan nomor kolom dari elemen yang
ingin ditunjuk. Untuk lebih jelasnya perhatikan contoh berikut ini.
>> clear
>> vektor_ini = [1 3 5 7 9];
>> vektor_itu = [9; 8; 7; 6; 5];
>> matrix = [10 20 30; 40 50 60; 70 80 90];
>> vektor_ini(1)
ans =
1
>> vektor_itu(2)
ans =
8
>> matrix(1,2)
ans =
20
>> [matrix(1,1) matrix(1,2) matrix(1,3)]
ans =
10 20 30

Kita juga bisa mengambil beberapa baris dan kolom sekaligus dari suatu
matriks dengan operator titik-dua (:). Dalam hal ini tanda titik-dua berarti
“sampai dengan”.

Misalkan untuk mengambil elemen ke-1 sampai ke-3 dari vektor_ini


>> vektor_ini(1:3)
ans =
1 3 5

Mengambil elemen ke-3 sampai ke-5 dari vektor_itu


>> vektor_itu(3:5)
ans =
7
6
5

Mengambil elemen baris ke-1 sampai ke-2, kolom ke-2 sampai ke-3 dari matrix
>> matrix(1:2,2:3)
ans =
20 30
50 60

Dalam hal lain tanda titik-dua bisa berarti “seluruhnya”.


Misalkan untuk mengambil seluruh elemen dari vektor_ini
>> vektor_ini(:)
ans =
1 3 5 7 9

Mengambil seluruh baris dan kolom dari matrix


>> matrix(:,:)
ans =
10 20 30
40 50 60
70 80 90

Mengambil seluruh elemen di baris ke-1 dari matrix


>> matrix(1,:)
ans =
10 20 30

Mengambil seluruh elemen di kolom ke-2 dari matrix


>> matrix(:,2)
ans =
20
50
80

Mengambil seluruh elemen di kolom ke-2 dan ke-3 dari matrix


>> matrix(:,2:3)
ans =
20 30
50 60
80 90

Dengan menggunakan indeks, kita bisa mengubah nilai elemen matriks yang telah
ada.
>> vektor_ini(1)=1000
vektor_ini =
1000 3 5 7 9
>> vektor_itu(2:4)=[-1; –1; –1]
vektor_itu =
9
-1
-1
-1
5
>> matrix(3,:)=100*ones(1,3)
matrix =
10 20 30
40 50 60
100 100 100

Deret bilangan merupakan hal yang kerap kita temui dalam pengolahan
data, terutama berkaitan dengan plot data dan proses iterasi (perhitungan
berulang-ulang). Misalkan kita memiliki data tegangan suatu baterai pada setiap
menit selama 1 jam. Dalam menyajikan data “waktu”, kita harus membuat vektor
berisi deret. Kita tentunya bisa melakukannya secara manual seperti ini:
>> time=[1, 2, 3, 4, …, 60]

Tetapi akan lebih efisien jika deret diciptakan menggunakan operator titik-dua.
Formulanya ialah:

deret = nilai_awal : inkremen : nilai_akhir

Inkremen harus bilangan bulat positif atau negatif Khusus untuk inkremen
= 1:
deret = nilai_awal : nilai_akhir

Sehingga kita bisa tuliskan


>> time=1:60

Sekarang kita akan berlatih menggunakan operator titik-dua untuk membuat deret
berikut:
x = 0, 100, 200, 300, 400, … , 2200, 2300
y = -10, -9.5, -9, -8.5, … -0.5, 0, 0.5, … , 9, 9.5, 10
z = 10, 9.95, 9.9, 9.85, 9.8, 9.75, … , 1, 0.95, 0.9, … , 0.05, 0

>> x=0:100:2300;
>> y=-10:0.5:10;
>> z=10:-0.05:0;

Bedakan operator titik-dua untuk manipulasi indeks matriks dengan operator titik-
dua untuk membuat deret. Untuk membedakannya ingatlah selalu bahwa indeks
selalu berada di dalam tanda kurung ( )
Di dalam MATLAB, pembuatan deret juga bisa dilakukan dengan command
berikut ini.

Tabel 2
linspace(a,b,n) membuat vektor baris berisi n titik yang terpisah merata
secara linier antara a dan b.

logspace(a,b,n) membuat vektor baris berisi n titik yang terpisah merata


secara logaritmik antara 10^a dan 10^b. Command ini
biasa digunakan untuk menghitung respon frekuensi suatu
sistem.

Contoh:
>> linspace(0,10,11)
ans =
0 1 2 3 4 5 6 7 8 9 10

>> logspace(0,2,10)
ans =
Columns 1 through 7
1.0000 1.6681 2.7826 4.6416 7.7426 12.9155 21.5443
Columns 8 through 10
35.9381 59.9484 100.0000
Terdapat beberapa command yang bisa digunakan untuk menukar, merotasi, dan
menyusun kembali elemen matriks.

Tabel 3
fliplr(A) menukar posisi elemen matriks A secara melintang, yaitu
sebelah kiri ditukar dengan sebelah kanan.
flipud(A) menukar posisi elemen matriks A secara membujur, yaitu
sebelah atas ditukar dengan sebelah bawah.
rot90(A) merotasi posisi elemen matriks A berlawanan arah jarum jam
sejauh 90°.
reshape(A,m,n) menyusun ulang elemen matriks A menjadi berukuran m×n.
Harus diingat bahwa jumlah elemen A harus sama dengan
m×n

Contoh
>> A=[0:3; 4:7]
A =
0 1 2 3
4 5 6 7

>> fliplr(A)
ans =
3 2 1 0
7 6 5 4

>> flipud(A)
ans =
4 5 6 7
0 1 2 3

>> rot90(A)
ans =
3 7
2 6
1 5
0 4
>> reshape(A,1,8)
ans =
0 4 1 5 2 6 3 7
>> reshape(A,4,2)
ans =
0 2
4 6
1 3
5 7

3.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
3.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
C=AB; A dan B matriks 2×2,
sehingga hasilnya C juga 2×2.
di mana:

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

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:


“dotproduct” (atau disebut juga inner-product), dan “cross-product”.
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.


Misalkan terdapat dua vektor x = ( ) dan
y = ( ), maka:

dot-product:x • y =
cross-product:x × y = ( )

Perlu diingat bahwa hasil dot-product berupa skalar, sementara hasil


cross-product berupa vektor.

3.7. 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 dan .

Dalam bentuk matriks bisa kita tuliskan:

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 = 6 dan = -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

3.8. 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.

Tabel 4
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
3.9. 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:
Tabel 5
+ – 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.
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.

3.10. 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.

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

>> abs(n), sign(n)


ans =
2 3 2 1 0 1 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:
Anda ditugasi membuat tabel trigonometri: sinus dan cosinus untuk sudut-
sudut istimewa: 0°, 30°, 45°, 60°, 90°, ... , 360°. 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 30° mulai 0° hingga 360°. Kemudian kita tambahkan empat sudut
istimewa: 45°, 135°, 225°, dan 315°, lalu kita urutkan isi vektor x.

>> clear
>> 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
31

Anda mungkin juga menyukai