ARRAY DAN MATRIK
1.1. Membuat Array dan Matrik
Untuk
memasukkan matrik pada MATLAB, ada beberapa cara yang dapat dilakukan :
a. Memasukkan
secara langsung dengan menuliskan semua elemennya.
b. Meng-load matrik dari file eksternal.
c. Meng-generate matrik menggunakan
fungsi-fungsi built-in.
d. 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 empat buah fungsi untuk membuat matrik :
a. Zeros : semua elemennya bernilai nol.
b. Ones : semua elemennya bernilai satu.
c. Rand : elemen-elemennya bernilai random dengan
distribusi uniform.
d. 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
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
1.2.Operasi-Operasi pada Array dan
Matrik
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’
ans =
1 4 7
2 5 8
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 |
= |
|
|
|
1 |
4 |
9 |
|
16 |
25 |
36 |
|
49 |
64 |
100 |
Berikut
ini daftar operator pada array :
Operator |
Deskripsi |
+ |
Penambahan |
- |
Pengurangan |
.* |
Perkalian per
elemen |
./ |
Pembagian per
elemen |
.\ |
Pembagian kiri
per elemen |
.^ |
Perpangkatan
per elemen |
Operasi
pada array sangat bermanfaat untuk pembentukan tabel. Misal diberikan n sebuah vector
kolom sebagai berikut :
n = (0:9)’;
Selain
operasi-operasi yang telah dijelaskan di atas, MATLAB memiliki beberapa fungsi
yang sering digunakan untuk operasi pada matrik, di antaranya :
Fungsi |
Deskripsi |
diag |
Untuk
mengambil elemen diagonal pada sebuah matrik |
inv |
Untuk
melakukan operasi inverse pada matrik |
size |
Untuk
mengetahui dimensi sebuah matrik |
sort |
Untuk
melakukan pengurutan pada matrik |
Untuk mengetahui
lebih detail cara
penggunaan dari masing-masing
fungsi tersebut, pada Command Window ketikkan :
help nama_fungsi
kemudian
tekan enter.
1.3.Konkatenasi
Konkatenasi merupakan proses penggabungan dua buah
array sehingga diperoleh sebuah array dengan ukuran yang lebih besar. Tanda []
merupakan operator untuk konkatenasi.
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 |
1.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 |
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
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 |
2.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) = []
16 |
3 |
13 |
5 |
10 |
8 |
9 |
6 |
12 |
4 |
15 |
1 |
Untuk
menghapus baris pertama dari matrik X, menggunakan :
X(1,:)
= []
5 |
10 |
8 |
9 |
6 |
12 |
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.
Contoh
a.
program
matlab dengan Mfile untuk memodelkan rumus Orde 2 dengan hasil tampilan
menggunakan fungsi STEP?
clc;
clear;
a=input('masukan konstanta a: ');
b=input('masukan konstanta b: ');
c=input('masukan konstanta c: ');
num=a*b^2;
den=[1
2*c*b b^2];
TF=tf(num,den);
step(TF);
memodelkan sinyal Modulasi FM dengan hasil
tampilan menggunakan fungsi PLOT?
Program
clc;
clear;
fm=input('frekuensi info:');
fc=input('frekueisi pembawa:');
mi=input('Modulasi Index:');
t=[0:0.0001:1];
y=sin(2*pi*fc*t+(mi.*sin(2*pi*fm*t)));
plot(t,y);
Sumber :
Panduan Praktikum Matlab Simulasi Mr Sugiarto
Tidak ada komentar:
Posting Komentar