ARRAY (LARIK)
1. Pembuatan Array
Array atau larik adalah tipe data terstruktur yang berguna untuk menyimpan
sejumlah data yang bertipe sama. Setiap data dalam sebuah larik disebut elemen.
Elemen-elemen dalam larik dinyatakan dengan indeks. Banyaknya indeks menunjukkan
dimensi larik yang bersangkutan. Cara penulisan larik dalam bahasa Matematika dan
MATLAB serta istilah pemakaian dalam Fisika ditapilkan pada Tabel 7.
Tabel 7. Cara Penulisan Larik dalam bahasa Matematika dan MATLAB
Matematika MATLAB Fisika Keterangan
Ai A(i) Elemen tensor rank satu Larik berdimensi satu
Aij A(i,j) Elemen tensor rank dua Larik berdimensi dua
Aijk A(i,j,k) Elemen tensor rank tiga Larik berdimensi tiga
Ilustrasi larik dengan 3 elemen (indeks i dan j masing-masing mulai dari 1 sampai 3 )
ditunjukkan pada Gambar 8.
Ai Aij
i i
j
(a) (b)
Gambar 8. Larik dengan 3 elemen tiap indeks. (a). dimensi satu (b). dimensi dua
Bagaimana cara menuliskan larik dalam MATLAB ? Salah satu cara menuliskan array
adalah dengan menuliskan elemen array dalam tanda kurung kotak []. Elemen-
elemen dalam satu baris dipisahkan dengan spasi dan elemen-elemen dalam kolom
dipisahkan dengan tanda titik koma ;.
Contoh : Tuliskan data x dalam bentuk vektor baris dan y dalam bentuk vektor kolom .
x=[1 2 3 4 5 6 7 8 9 10];
y=[1;4;9;16;25;36;49;64;81;100];
disp(['data x adalah :',num2str(x)])
disp('data y adalah :')
disp(y)
keluaran program :
data x adalah :1 2 3 4 5 6 7 8 9 10
data y adalah :
1
4
9
16
25
36
49
64
81
100
Bagaimana cara mengakses elemen larik ? Cara mengakses larik adalah dengan
menuliskan nama variabel diikuti tanda kurung () yang diisi dengan lokasi indeks
elemen, misalnya x(1,2) yang menunjukkan isi elemen x pada baris 1 kolom 2.
Contoh : Masukkan elemen array x(2) kedalam variabel a dan elemen array y(4)
kedalam variabel b, tampilkan isinya.
Penyelesaian :
listing program
x=[1 2 3 4 5 6 7 8 9 10];
y=[1;4;9;16;25;36;49;64;81;100];
disp(['data x adalah :',num2str(x)])
disp('data y adalah :')
disp(y)
a=x(2);
b=y(4);
disp(['nilai a = x(2)= ',num2str(a)])
disp(['nilai b = y(4)= ',num2str(b)])
keluaran program
data x adalah :1 2 3 4 5 6 7 8 9 10
data y adalah :
1
4
9
16
25
36
49
64
81
100
nilai a = x(2)= 2
nilai b = y(4)= 16
Penyelesaian:
Rumus yang digunakan :
1 2
s=v o t + 2 at ; v=v o + at
dengan vo = 10, a = 2 dan t = 0 : 0,1: 10
Listing program
t=0:0.1:10; % Array untuk vektor baris t
vo=10; % Nilai kecepatan awal
a=2; % Nilai percepatan
s=vo*t+0.5*a*t.^2; % Hitung nilai jarak s
v=vo+a*t; % Hitung nilai kecepatan v
disp([t' s' v']) % Tampilkan pada layar nilai t,s dan v dalam bentuk vektor
kolom
subplot(1,2,1),plot(t,s,'b') % menggambar grafik s vs t pada bagian pertama
xlabel('t (detik)') % memberi label sumbu horisontal dg tulisan t (detik)
ylabel('s (meter)') % memberi label sumbu vertikal dg tulisan s (meter)
title(' Grafik Hubungan s vs t') % Menulis judul grafik
grid on % menampilkan grid (kisi) pada gambar
subplot(1,2,2),plot(t,v,'b') % menggambar grafik v vs t pada bagian kedua
xlabel('t (detik)') % memberi label sumbu horisontal dg tulisan t (detik)
ylabel('v (meter/detik)') % memberi label sumbu vertikal dg tulisan v
(meter/detik)
title(' Grafik Hubungan v vs t') % Menulis judul grafik
grid on % menampilkan grid (kisi) pada gambar
0 0 10 180 28
0.1 1.01 10.2
160 26
0.2 2.04 10.4
0.3 3.09 10.6 140 24
0.4 4.16 10.8
v (meter/detik)
120 22
s (meter)
.. .. 100 20
80 18
9.9 197.01 29.8
10 200 30 60 16
40 14
20 12
0 10
0 2 4 6 8 10 0 2 4 6 8 10
t (detik) t (detik)
MATRIKS
Matriks memegang peranan penting dalam penyelesaian persamaan linear yang
terdapat dalam berbagai terapan (matematika, fisika, maupun teknik). Pentingnya
matriks mengilhami penciptaan bahasa pemrograman MATLAB sehingga nama MATLAB
berasal dari singkatan Matrix Laboratory. Sesungguhnya elemen dasar dari MATLAB
adalah matriks. Pada bagian ini akan dibicarakan bagaimana cara menuliskan matriks
1 2 0 2 2 1
A 2 3 1 ; B 3 1 0
1 4 1 2 3 4
Penyelesaian : Penulisan program dalam Command Window seperti berikut:
A=[1 2 0;2 3 1;1 4 1];
B=[2 2 1;3 1 0;2 3 4]
B =
2 2 1
3 1 0
2 3 4
disp(A)
1 2 0
2 3 1
1 4 1
b. Matriks Khusus
Matriks khusus yang disediakan oleh MATLAB cukup banyak, beberapa diantaranya
dicantumkan pada Tabel 9.
Tabel 9. Beberapa Contoh Matriks Khusus
Matriks Khusus Perintah Keterangan
Diagonal X = diag(A) X adalah vektor dari elemen diagonal matriks A
Identitas X = eye(n) X adalah mariks identitas dengan ordo n
Random X = rand(m,n) X adalah matriks dengan elemen random
dengan distribusi uniform dan berordo n x m
X=randn(m,n) matriks random dengan distribusi normal
Nol X=zeros(m,n) X matriks berorde m x n dengan elemen nol (0)
Satuan X = ones(m,n) X matriks berordo mxn dengan elemen satu (1)
Modul Pemrograman Komputer Oleh Warsono 5
Modul 3
Pascal X = Pascal(n) X matriks segitiga pascal dengan ordo n x n
Contoh : Buatlah program untuk menuliskan matriks khusus seperti pada Tabel 9
Penyelesaian :
Listing program M-File
A=[1 2 3; 4 5 6;7 8 9] % Matriks A
X=diag(A) % Diagonal matriks A
Y=eye(3) % Matriks identitas berordo 3 x 3
Z=rand(3,3) % Matriks random uniform berordo 3 x 3
W=zeros(3,3) % Matriks nol berordo 3 x 3
V=ones(3,3) % Matrik dengan elemen 1 berordo 3 x 3
U=pascal(3) % Matriks pascal berordo 3 x 3
Keluaran Program
A =
1 2 3
4 5 6
7 8 9
X =
1
5
9
Y =
1 0 0
0 1 0
0 0 1
Z =
0.95013 0.48598 0.45647
0.23114 0.8913 0.018504
0.60684 0.7621 0.82141
W =
0 0 0
0 0 0
0 0 0
V =
1 1 1
1 1 1
1 1 1
U =
1 1 1
1 2 3
1 3 6
2. Manipulasi Matriks
a. Transpose Matriks
Transpose matriks mengubah elemen baris menjadi elemen kolom. Perintah
transpose dilakukan dengan memberi tanda dibelakang matriks.
1 2 0 2 2 1
A 2 3 1 ; B 3 1 0
1 4 1 2 3 4
Modul Pemrograman Komputer Oleh Warsono 6
Modul 3
Penyelesaian :
listing program
A=[1 2 0;2 3 1;1 4 1];
B=[2 2 1;3 1 0;2 3 4];
X=A';
Y=B';
disp('matriks A adalah : '),disp(A)
disp('Transpose matriks A adalah matriks X : '),disp(X)
disp('matriks B adalah : '),disp(B)
disp('Transpose matriks B adalah matriks Y : '),disp(Y)
keluaran program
matriks A adalah :
1 2 0
2 3 1
1 4 1
Transpose matriks A adalah matriks X :
1 2 1
2 3 4
0 1 1
matriks B adalah :
2 2 1
3 1 0
2 3 4
Transpose matriks B adalah matriks Y :
2 3 2
2 1 3
1 0 4
b. Invers Matriks
Matriks invers adalah matriks yang apabila dikalikan denga matriks aslinya akan
menghasilkan matriks identitas. Jika matriks aslinya adalah A, maka invers matriks
nya adalah A-1 sehingga perkalian matriks A dengan A-1 adalah matriks identitas
I(A.A-1 = A-1.A = I).Perintah invers matriks dalam MATLAB adalah
inv(matriks).
Contoh : Carilah invers matriks A=[1 2 0;2 3 1;1 4 1]dan buktikan bahwa hasil
perkaliannya merupakan matriks identitas.
Penyelesaian :
listing program
A=[1 2 0;2 3 1;1 4 1];
B=inv(A);
C=(A*B);
disp('matriks A adalah : '),disp(A)
disp('Invers matriks A adalah matriks B : '),disp(B)
disp('Perkalian A dengan invers A(B) adalah C : '),disp(fix(C))
keluaran program
matriks A adalah :
1 2 0
2 3 1
1 4 1
Invers matriks A adalah matriks B :
0.3333 0.6667 -0.6667
0.3333 -0.3333 0.3333
-1.6667 0.6667 0.3333
Perkalian A dengan invers A(B) adalah C :
1 0 0
Penyelesaian :
listing program
A=[1 2 0;2 3 1;1 4 1];
B=[2 2 1;3 1 0;2 3 4];
C=A+B;
D=A*B;
disp('matriks A adalah : '),disp(A)
disp('matriks B adalah : '),disp(B)
disp('matriks C = A+B : '),disp(C)
disp('matriks D = A-B : '),disp(D)
keluaran program
matriks A adalah :
1 2 0
2 3 1
1 4 1
matriks B adalah :
2 2 1
3 1 0
2 3 4
matriks C = A+B :
3 4 1
5 4 1
3 7 5
matriks D = A-B :
8 4 1
15 10 6
16 9 5
Perkalian Matriks
Perkalian matriks dapat dilakukan apabila jumlah kolom matriks pertama sama
dengan jumlah baris matriks kedua. Perintah perkalian matriks dilakukan
dengan tanda bintang (*).
Contoh : Matriks A=[1 2 0;2 3 1;1 4 1] dan matriks B=[2 2 1;3 1 0;2 3 4].
Buatlah program untuk menghitung matriks E = A . B.
Penyelesaian :
listing program
A=[1 2 0;2 3 1;1 4 1];
B=[2 2 1;3 1 0;2 3 4];
E=A*B;
disp('matriks A adalah : '),disp(A)
disp('matriks B adalah : '),disp(B)
keluaran program
matriks A adalah :
1 2 0
2 3 1
1 4 1
matriks B adalah :
2 2 1
3 1 0
2 3 4
matriks E = A*B :
8 4 1
15 10 6
16 9 5
A 1 y ( A 1 A )x
A 1 y Ix
x A 1 y
Persamaan terakhir menunjukkan bahwa nilai x diperoleh dengan mengalikan invers
matrik A dengan vektor kolom y.
Contoh : Carilah nilai x1, x2 dan x3 dari persamaan linear seperti berikut
3x1 0,1x2 0,2x3 = 7,85
0,1x1 + 7x2 0,3x3 = -19,3
0,3x1 0,2x2 + 10x3 = 71,4
Penyelesaian :
Ubah bentuk persamaan linear di atas ke dalam bentuk persamaan matriks
3 0,1- - 0,2 x1 7,85
seperti berikut:
0,1 7 - 0,3 x - 19,3
2
0,3 - 0,2 10 x3 71,4
A x y
listing program Keluaran Program
TUGAS
ARRAY
Kasus : Gerak Parabola
Gerak Parabola adalah gerak lengkung dengan percepatan konstan. Gerak ini dapat
terjadi apabila benda dilemparkan miring ke udara, atau partikel bermuatan yang
ditembakkan miring di dalam medan listrik homogen. Persamaan gerak parabola dari
sebuah benda yang dilemparkan miring ke udara tanpa gesekan dinyatakan sebagai
berikut:
a. Persamaan dalam arah mendatar
vx = v0 cos 0
x = v0 cos 0 t
b. Persamaan dalam arah vertikal
vy = v0 sin 0- gt
y = v0 sin 0 t - gt2
c. Hubungan antara komponen mendatar dan vertikal
y = (tan 0)x gx2/2(v0 cos 0)2
v = (vx)2 + (vy)2
d. Persamaan titik ekstrim
Waktu untuk mencapai titik terjauh : tj = (2v0 sin 0)/g
Titik Tertinggi : ym = (v0sin0)2/2g
Titik terjauh : xm = (v0)2sin20/g
Buatlah program dengan menggunakan array untuk menghitung nilai vx,vy,v,x dan y
saat t = 0: 0.01:tj dan buatlah tampilan grafik hubungan antara :
vx vs t
vy vs t
v vs t
x vs t
y vs t dan
x vs y
jika diketahui : v0 = 100, 0 = pi/4 dan g = 9.8.
MATRIKS
Kasus : Rangkaian Listrik
Suatu rangkaian listrik searah disusun seperti gambar berikut :
3X 10 X
I1 I2 I3
+
+ 10 V +
20 V 30 V
- 1X
- 1X - 1X
4X
6X 9X
Modul Pemrograman Komputer Oleh Warsono 10
Modul 3