DISUSUN OLEH:
NAMA : RONI OCTAVIANUS LIMBONG
NIM : 2201109
GRUP :F
TANGGAL PRAKTIKUM : 14 NOVEMBER 2023
ASST. PENANGGUNG JAWAB : SORTA LUMBANTORUAN, M.Pd
MODUL PRAKTIKUM : MATRIKS DAN VEKTOR
51
Dalam SCILAB, ada beberapa tipe matriks yang dapat digunakan
tergantung pada kebutuhan analisis dan perhitungan Anda. Berikut adalah
beberapa tipe matriks umum dalam SCILAB:
A. Matriks Baris (Row Matrix):
Matriks ini hanya memiliki satu baris dan beberapa kolom. Didefinisikan
dengan menggunakan tanda kurung siku [ ]. Contoh: A = [1 2 3]
B. Matriks Kolom (Column Matrix):
Matriks ini hanya memiliki satu kolom dan beberapa baris. Didefinisikan
dengan menggunakan tanda kurung siku [ ]. Contoh: B = [1; 2; 3].
C. Matriks Persegi (Square Matrix):
Matriks ini memiliki jumlah baris dan kolom yang sama. Didefinisikan
dengan menggunakan tanda kurung siku [ ]. Matriks identitas adalah
contoh matriks persegi. Contoh: C = eye(3); // Matriks identitas 3x3.
D. Matriks Nol (Zero Matrix):
Semua elemen dalam matriks ini adalah nol. Dapat dibuat menggunakan
perintah 'zeros'.
E. Matriks Satuan (Identity Matrix):
Matriks persegi di mana semua elemen diagonal adalah 1, dan elemen
lainnya adalah 0. Dapat dibuat menggunakan perintah 'eye'.
F. Matriks Diagonal (Diagonal Matrix):
Matriks yang memiliki elemen nol di luar diagonal utama. Dapat dibuat
dengan menetapkan elemen diagonal utama dan elemen di luar diagonal
sesuai kebutuhan.
4.2.3 Penulisan Matriks
Di SCILAB, matriks dapat digunakan untuk merepresentasikan berbagai jenis
data, termasuk vektor, data eksperimen, koefisien dalam sistem persamaan, dan
banyak lagi. Dalam SCILAB, ada beberapa cara untuk membuat dan
mendefinisikan matriks. Mari kita lihat beberapa cara yang umum digunakan:
A. Mendefinisikan Matriks Secara Manual: Anda dapat mendefinisikan
matriks secara manual dengan menyusun elemennya dalam tanda kurung
siku ([]) dan memisahkan elemen-elemen dalam baris dengan spasi atau
koma, serta baris-baris dengan tanda titik-koma (;). Contoh: A = [1 2 3; 4 5
52
6; 7 8 9]. Ini akan membuat matriks 3x3 dengan elemen-elemen yang telah
ditentukan.
B. Menggunakan Fungsi Built-in: SCILAB menyediakan berbagai fungsi
built-in untuk membuat matriks dengan berbagai struktur. Misalnya, 'eye'
digunakan untuk membuat matriks identitas, 'zeros' digunakan untuk
membuat matriks dengan elemen-elemen nol, dan 'ones' digunakan untuk
membuat matriks dengan elemen-elemen satu. Contoh:
B = eye(4); //Matriks identitas 4x4
C = zeros(3, 2); //Matriks 3x2 dengan elemen-elemen nol
D = ones(2, 3); //Matriks 2x3 dengan elemen-elemen satu
C. Membaca Data dari Berkas Eksternal: Anda juga dapat membaca data
matriks dari berkas eksternal seperti teks atau CSV file. Ini berguna ketika
Anda memiliki data dari sumber eksternal dan ingin mengimpornya ke
dalam SCILAB untuk analisis lebih lanjut.
(Santosa, 2009)
4.2.4 Pengaksesan Elemen Matriks
Pengaksesan elemen matriks adalah operasi fundamental dalam pemrograman
ilmiah. Dalam SCILAB, Anda dapat dengan mudah mengakses elemen-elemen
matriks menggunakan indeks baris dan kolom (Ruminta, 2014). Ini adalah cara
Anda mengambil, memodifikasi, atau melakukan operasi pada elemen-elemen
matriks. Anda dapat menggunakan notasi matriks(baris, kolom) untuk mengakses
elemen matriks dalam SCILAB. Mari kita lihat beberapa contoh cara mengakses
elemen matriks:
a. Mengakses Elemen Tunggal: Anda dapat mengakses elemen matriks
dengan menggunakan indeks baris dan kolomnya.
Contoh: A=[1 2 3; 4 5 6; 7 8 9];
elemen = A(2,3); //Mengakses elemen di baris 2, kolom 3 (nilai 6)
b. Mengakses Baris atau Kolom Penuh: Anda juga dapat mengakses seluruh
baris atau kolom matriks dengan menghilangkan indeks kolom atau baris
yang sesuai.
Contoh:
baris_kedua=A(2,:); //Mengakses baris kedua
53
kolom_pertama=A(:,1); //Mengakses kolom pertama
c. Menggunakan Indeks Negatif: Anda dapat menggunakan indeks negatif
untuk mengakses elemen dari akhir matriks. Misalnya, -1 merujuk pada
elemen terakhir, -2 merujuk pada elemen sebelumnya, dan seterusnya.
Contoh:
elemen_terakhir=A(end, end); //Mengakses elemen terakhir (nilai 9)
elemen_sebelum_terakhir=A(end-1, end-1); //Mengakses elemen sebelum
terakhir (nilai 5)
d. Menggunakan Ekspresi Logika: Anda dapat menggunakan ekspresi logika
untuk memilih elemen-elemen yang memenuhi kondisi tertentu.
Contoh:
kondisi=A>5; //Membuat matriks logika yang menunjukkan elemen-
elemen yang lebih besar dari 5
elemen_lebih_besar_dari_5=A(kondisi); //Mengakses elemen-elemen yang
lebih besar dari 5
4.2.5 Ekstraksi Submatriks
Ekstraksi submatriks merujuk pada proses mengambil bagian dari matriks yang
lebih besar untuk membentuk matriks yang lebih kecil. Ini biasanya dilakukan
dengan mengidentifikasi baris dan kolom yang ingin diekstrak dari matriks asal.
Submatriks yang dihasilkan dapat digunakan untuk analisis lebih lanjut,
pemrosesan data, atau perhitungan yang lebih spesifik (Sianipar, 2013).
Dalam SCILAB, ada beberapa metode yang dapat digunakan untuk
mengekstrak submatriks dari matriks asal. Di bawah ini adalah beberapa metode
yang umum digunakan:
A. Pengindeksan dengan Tanda Kurung Siku: Ini adalah metode paling dasar
untuk mengekstrak submatriks. Anda dapat menentukan baris dan kolom
yang ingin diekstrak dengan menggunakan tanda kurung siku.
Contoh:
A=[1 2 3; 4 5 6; 7 8 9];
B=A(1:2, 2:3);
Di sini, A(1:2, 2:3) menghasilkan submatriks yang mencakup baris 1 dan
2, serta kolom 2 dan 3 dari matriks ‘A’.
54
B. Operasi Slicing: Anda dapat menggunakan operasi slicing untuk
mengambil sejumlah baris atau kolom dari matriks. Ini berguna jika Anda
ingin mengambil baris atau kolom secara berurutan.
Contoh:
C = A(:,1:2);
Di sini, A(:, 1:2) menghasilkan submatriks yang terdiri dari semua baris (:)
dan kolom 1 dan 2 dari matriks ‘A’.
C. Operasi Logika: Anda juga dapat menggunakan operasi logika untuk
mengekstrak elemen dari matriks yang memenuhi kondisi tertentu.
Contoh:
D=A(A>4);
D. Di sini, A>4 adalah operasi logika yang menghasilkan matriks logika
dengan nilai benar atau salah tergantung pada apakah elemen-elemen
matriks ‘A’ lebih besar dari 4. Kemudian, operasi ini digunakan untuk
mengekstrak elemen-elemen yang memenuhi kondisi tersebut dari matriks
‘A’.
4.2.6 Penggantian Submatriks
Penggantian Submatriks adalah operasi yang memungkinkan kita menggantikan
(mengisi ulang) bagian tertentu dari matriks dengan nilai atau submatriks baru.
Dalam SCILAB, Anda dapat dengan mudah melakukan penggantian submatriks
dengan beberapa metode. Berikut adalah cara sederhana untuk menjelaskan
penggantian submatriks:
A. Penggantian Elemen Tunggal: Anda dapat menggantikan elemen tunggal
dalam matriks dengan menggunakan indeks baris dan kolomnya.
Misalnya, untuk mengganti elemen pada baris ke-2 dan kolom ke-3
dengan nilai baru: A(2, 3)=nilai_baru
B. Penggantian Submatriks: Anda juga dapat menggantikan submatriks
tertentu dengan matriks atau submatriks baru. Misalnya, untuk mengganti
seluruh submatriks yang terdiri dari baris ke-2 hingga ke-4 dan kolom ke-2
hingga ke-4 dengan matriks baru B: A(2:4, 2:4)=B;
55
4.2.7 Penggabungan Matriks
Dalam SCILAB, Anda dapat melakukan penggabungan matriks dengan beberapa
cara yang memungkinkan fleksibilitas dalam pengaturan data. Berikut adalah
beberapa cara umum untuk menjelaskan penggabungan matriks:
A. Penggabungan Kolom (Horizontal Concatenation): Anda dapat
menggabungkan dua matriks menjadi satu matriks yang lebih lebar dengan
menggabungkan kolom-kolom dari matriks-matriks tersebut. Misalnya,
jika Anda memiliki dua matriks A dan B dengan jumlah baris yang sama,
Anda dapat menggabungkannya ke dalam satu matriks dengan cara
berikut:
C = [A, B];
Matriks C akan memiliki jumlah baris yang sama dengan A dan B, tetapi
jumlah kolomnya akan menjadi jumlah kolom A plus jumlah kolom B.
B. Penggabungan Baris (Vertical Concatenation): Anda juga dapat
menggabungkan dua matriks menjadi satu matriks yang lebih tinggi
dengan menggabungkan baris-baris dari matriks-matriks tersebut.
Misalnya, jika Anda memiliki dua matriks A dan B dengan jumlah kolom
yang sama, Anda dapat menggabungkannya ke dalam satu matriks dengan
cara berikut:
C = [A; B];
Matriks C akan memiliki jumlah kolom yang sama dengan A dan B, tetapi
jumlah barisnya akan menjadi jumlah baris A plus jumlah baris B.
C. Penggabungan Khusus (Concatenation with Specific Rules): Anda juga
dapat menggabungkan matriks dengan aturan tertentu, seperti
menggabungkan kolom-kolom atau baris-baris tertentu, mengisi nilai nol
antara matriks, atau menggabungkan matriks sesuai dengan kondisi
tertentu. Ini memungkinkan Anda untuk menggabungkan matriks dengan
lebih banyak fleksibilitas sesuai dengan kebutuhan Anda.
(Ruminta, 2014)
56
4.2.8 Operator Matriks
Dalam SCILAB, Anda dapat melakukan berbagai operasi matriks, seperti
penjumlahan, pengurangan, perkalian, pemangkatan, dan banyak lagi. Berikut
adalah beberapa operasi matriks yang umum:
a. Penjumlahan Matriks: Operasi penjumlahan matriks digunakan untuk
menambahkan dua matriks bersama-sama.
b. Pengurangan Matriks: Operasi pengurangan matriks digunakan untuk
mengurangkan satu matriks dari matriks lain.
c. Perkalian Skalar: Perkalian skalar adalah operasi di mana setiap elemen
dalam matriks dikalikan dengan sebuah bilangan skalar.
d. Perkalian Matriks: Operasi perkalian matriks adalah salah satu operasi
paling penting dalam aljabar linear. Ada beberapa jenis perkalian matriks,
termasuk perkalian dot, perkalian cross, dan perkalian matriks sesuai
aturan aljabar linear.
e. Transpos Matriks: Operasi transpos matriks menghasilkan matriks baru
dengan menukar baris dan kolom matriks asal.
f. Invers Matriks: Invers matriks adalah operasi di mana matriks invers
ditemukan jika mungkin.
g. Determinan Matriks: eterminan matriks adalah nilai skalar yang mengukur
sifat matriks, seperti apakah matriks itu singular atau tidak.
h. Operasi Logika pada Matriks: Anda juga dapat melakukan operasi logika
pada matriks untuk menghasilkan matriks logika yang berisi nilai benar
atau salah berdasarkan kondisi tertentu.
i. Operasi Pemangkatan: Anda dapat melakukan pemangkatan elemen
matriks, seperti mengkuadratkan setiap elemen dalam matriks.
Operasi matriks sangat penting dalam matematika, ilmu komputer, dan
ilmu pengetahuan lainnya. Dalam SCILAB, Anda dapat melakukan operasi-
operasi ini dengan mudah untuk menganalisis data, memecahkan masalah, dan
melakukan berbagai perhitungan numerik (Papasotiriou and Geroyannis,
2003).
57
4.3 Prosedur
4.3.1 Kode Program Penulisan Matriks
A. Scilab Console
58
B. Variable Browser
59
C. Command History
60
B. Variable Browser
C. Command History
61
4.3.3 Kode Program Ekstraksi Submatriks
A. Scilab Console
62
B. Variable Browser
C. Command History
63
4.3.4 Kode Program Penggantian Submatriks
A. Scilab Console
64
B. Variable Browser
C. Command History
65
4.3.5 Kode Program Menggabungkan Matriks
A. Scilab Console
B. Variable Browser
66
C. Command History
67
68
B. Variable Browser
C. Command History
69
4.3.7 Kode Program Contoh Kasus 1
A. Scilab Console
B. Variable Browser
C. Command History
70
4.3.8 Kode Program Contoh Kasus 2
A. Scilab Console
B. Variable Browser
71
C. Command History
D. Visualisasi Data
72
4.4 Pembahasan
4.4.1 Kode Program Penulisan Matriks
Pada kode program penulisan matriks dipelajari bagaimana cara penulisan matriks
di SCILAB Console. Perintah pertama yaitu ‘A=1:5’. Perintah ini memiliki format
yaitu ‘A=elemen awal:elemen akhir’, sehingga didapatkan output yaitu 1, 2, 3, 4,
5. Perintah selanjutnya yaitu ’B’, ‘C’, ‘D’, ‘E’. Perintah-perintah ini memiliki
format yaitu ‘elemen awal:increment atau decrement:elemen akhir’. Perbedaan
antara increment dan decrement adalah naik atau turunnya tingkat. Bila bernilai
negative, maka itu adalah decrement, begitu juga sebaliknya. Untuk perintah ‘b’
dan ‘c’ memiliki kemiripan dengan perintah sebelumnya.
Selanjutnya adalah perintah ‘d=[1 2 3 4]’. Perintah ini akan menghasilkan
output berupa matriks dengan ukuran 1 baris dan 4 kolom. Namun, output tidak
dimunculkan karena terdapat tanda (;) pada akhir perintah ‘d’. Selanjutnya matriks
‘d’ ingin diubah menjadi matriks diagonal lewat perintah ‘e=diag(d)’. Bentuk
output dari perintah ‘e’ dapat dilihat pada gambar 4.19.
73
4.4.2 Kode Program Mengakses Elemen Matriks
Pada kode program ini digunakan variabel ‘a’ dan ‘b’. Pada perintah pertama
yaitu ‘a=[1 2 3; 4 5 6]’ ingin dibuat suatu matriks 2 dimensi dengan 2 baris dan 3
kolom. Output dari perintah ini dapat dilihat pada gambar 4.5. Perintah
selanjutnya yaitu ‘a(1), a(2), a(3)’. Tanda (1) (2) (3) merupakan indeks dari
matriks ‘a’. Dengan perintah ‘a’, elemen 1, 2, 3 dipanggil dan akan muncul di
SCILAB Console setelah dieksekusi. Urutan indeks dari matriks ‘a’ dapat dilihat
pada gambar 4.20. Hal sama juga berlaku untuk perintah selanjutnya.
Indeks 3
Indeks 1 Indeks 5
Indeks 2 Indeks 6
Indeks 4
Gambar 4.20. Matriks a dan Indeksnya
Selanjutnya pada perintah ‘b=[a(1) a(2) a(3)]’, ingin dibuat suatu matriks
‘b’ yang berisi elemen dari matriks ‘a’. Matriks ‘b’ yang dihasilkan pada SCILAB
Console berukuran 1x3. Susunan elemen matriks ‘b’ dari kiri ke kanan adalah 1,
4, 2.
4.4.3 Kode Program Ekstraksi Submatriks
Pada kode program ekstraksi submatriks dipelajari cara mengambil bagian
tertentu dari suatu matriks yang lebih besar menjadi matriks lainnya. Perintah
pertama adalah ‘a=int(rand(5,8)*100)’. Perintah ini digunakan untuk membuat
matriks 5x8 dengan elemen-elemen acak antara 0 dan 100, dan kemudian
mengkonversi elemen-elemen tersebut menjadi bilangan bulat. Bagian ‘*100’
berarti bilangan yang diambil adalah dari 0 sampai dengan 100. Bagian ‘int’
merupakan fungsi integer yang membuat semua elemen random yang dipilih
menjadi bilangan bulat (Rosmiati et al., 2023).
Perintah selanjutnya adalah ‘c=a(2:4,3:5)’. Bagian ‘a(2:4,3:5)’ adalah
bagian utama dari perintah. Dalam perintah ini, kita mengambil sub-matriks dari
matriks a, yaitu elemen-elemen dari baris ke-2 hingga ke-4 dan dari kolom ke-3
74
hingga ke-5. Hasil pengekstrakan kemudian disimpan dalam matrik ‘c’. Bentuk
dari matriks ‘c’ dapat dilihat pada gambar 4.21a.
75
Gambar 4.22. Perintah ‘d=a(1:2:5,2:2:8)’
Selanjutnya yaitu perintah ‘e=a([1,4,5],[2,7])’ dan ‘f=a([5,1,2],[7,6])’.
Model kedua perintah ini mirip, di mana baris-baris pada bagian [] pertama di
matriks ‘a’ akan diekstrak menjadi baris-baris matriks ‘e’, dan kolom-kolom pada
bagian [] kedua di matriks ‘a’ diekstrak menjadi kolom-kolom di matriks ‘e’
(lihat gambar 4.23 untuk perintah ‘e’). Perintah ‘g=a(2:$,3:$)’ mirip dengan
perintah ‘b=a(2:4,3:5)’, hanya saja pada perintah ‘g’ digunakan tanda ‘$’ (lihat
output pada gambar 4.24).
76
nol berukuran 3x3. Namun, elemen-elemen lain dalam matriks ‘a akan tetap tidak
berubah. Bentuk matriks ‘a’ tersebut dapat dilihat pada gambar 4.25.
77
Gambar 4.27. Output Perintah ‘a(2:4,3:5)=zeros()’
Perintah terakhir pada kode program ini adalah ‘a(2:4,3:5)=eye()’ dan
‘a(2:4,3:5)=eye(1,1)’. Namun, ketika perintah ‘a(2:4,3:5)=eye()’ dieksekusi,
output yang dihasilkan adalah ‘sub-matrix uncorrectly defined’ yang berarti sub-
matriks tidak terdefinisi dengan benar (lihat gambar 4.28). Sementara itu, saat
perintah ‘a(2:4,3:5)=eye(1,1)’ dieksekusi, didapatkan bentuk matriks ‘a’ yang
baru (lihat gambar 4.29).
78
4.4.6 Kode Program Operator Matriks
Pada kode program ini digunakan beberapa variabel sebagai matriks, diantaranya
adalah A, B, C, D, E, dan lainnya. Pada matriks ‘A’ yang dibuat oleh perintah
‘A=[2 3 1 6; 1 4 5 2]’, seperti yang disampaikan pada bagian 4.4.5 bahwa spasi
berguna untuk membuat kolom baru, kemudian bila terdapat tanda (;) artinya akan
dibuat baris baru. Oleh sebab itu matriks ‘A’ akan memiliki 2 baris dan 4 kolom.
Ini juga berlaku untuk perintah ‘D’, ‘F’ ‘A=[1 2; 3 4]’ pada program ini.
Perintah ‘y=F\G’ memiliki arti bahwa matriks ‘G’ akan dibagi dengan
matriks ‘F’. Pembagian ini tidaklah valid, sehingga pada SCILAB Console
dihasilkan output ‘inconsistent row/colomn dimension’. Hal ini terjadi karena
jumlah baris matriks ‘G’ tidak sama dengan jumlah kolom matriks ‘F’. Pada
perintah terakhir yaitu ‘A.^A’ berarti matriks ‘A’ ingin dipangkatkan per elemen
dengan elemennya sendiri.
79
4.5 Kesimpulan
Setelah melakukan praktikum dan literasi pustaka, maka diperoleh kesimpulan,
sebagai berikut:
1. Dasar-dasar matriks dalam SCILAB melibatkan pembentukan matriks,
operasi matriks dasar seperti penjumlahan, pengurangan, dan perkalian,
serta pengaksesan elemen matriks dengan menggunakan indeks baris dan
kolom. Matriks dalam SCILAB didefinisikan dengan tanda kurung siku
dan dapat digunakan untuk mewakili data dalam bentuk tabel dua dimensi.
2. Cara ekstraksi submatriks dalam SCILAB adalah dengan menggunakan
pengindeksan matriks dan menentukan baris dan kolom yang ingin
diekstrak dengan tanda kurung siku.
3. Ada pun penggunaan tanda titik dua (:) biasanya untuk mengambil elemen
dari suatu matriks dengan suatu range (untuk model start:stop), tetapi ada
juga yang untuk model start:increment atau decrement:stop. Penggunaan
koma (,) dan spasi adalah sama yaitu diperuntukkan untuk memisahkan
antar elemen dengan perbedaaan kolom. Selanjutnya tanda titik koma (;)
diperuntukkan untuk memisahkan antar elemen dengan membuat baris
baru.
80
4.6 Daftar Pustaka
Campbell, S. L., Chancelier, J., & Nikoukhah, R. (2009). Introduction to
SCILAB. Springer eBooks, 9–71. https://doi.org/10.1007/978-1-4419-
5527-2_2
Papasotiriou, P. J., & Geroyannis, V. S. (2003). A SCILAB Program for
Rosmiati, Lumbantoruan, S., Tarigan, N., & Kurnia, D. (2023). Modul Pr.
Komputasi dan Logika Pemrograman (2023rd ed.). Politeknik Teknologi
Kimia Industri Medan.
Ruminta. (2014). Matriks : Persamaan Linier dan Pemrograman Linier.
Perpustakaan UBSI.
https://elibrary.sttpagaralam.ac.id/index.php?p=show_detail&id=1192