Matriks
Perkalian Matrix merupakan permasalahan yang sering kali
diselesaikan dengan mudah menggunakan pemrograman komputer
Menggunakan array, definisi lebih mudah
Perhitungan menggunakan loop
Perhitungan dengan mudah dilakukan menggunakan pemrograman
komputer
Contoh
Operasi Matriks dapat dilakukan menggunakan loop dengan variable
index pada array
a0,0
a1,0
a
2, 0
a0,1 a0, 2
a1,1 a1, 2
a2,1 a2, 2
printf(%d,a[i][j]);
Penambahan / Pengurangan
a0,0
a1,0
a
2, 0
a0,1 a0, 2
a1,1 a1, 2 +
a2,1 a2, 2
b0,0
b1,0
b
2, 0
b0,1 b0, 2
b1,1 b1, 2
b2,1 b2, 2
c0,0
c1,0
c
2, 0
c0,1 c0, 2
c1,1 c1, 2
c2,1 c2, 2
(A + B = C)
for (i=0; i<3; i++)
for (j=0; j<3 ; j++ )
c[i][j] = a[i][j] + b[i][j]
Perkalian
d
g
b
e
h
c k
f n
j r
m ak bn cr
p q = dk en fr
s t gk hn jr
l
al bp cs
dl ep fs
gl hp js
am bq ct
dm eq ft
gm hq jt
Menggunakan Indeks
a0,0
a1,0
a
2, 0
b0,1 b0, 2
b1,1 b1, 2
b2,1 b2, 2
ci , j ai ,k bk , j
k
Contoh Persamaan
x 2y z 8
3x y z 2
x y 2z 3
Untuk memudahkan dalam pemrograman, gunakan indeks, sehingga
dapat ditulis ulang :
2 x2
x3
3x1
x2
x3
x1
x2
2 x3
x1
Menggunakan Matriks
3 1 1 x2
1 1 2 x
2
3
Eleminasi Gauss
Memerlukan dua Tahap :
Forward elimination, untuk mengurangi matriks sedemikian
hingga hanya segitiga bagian atas
0
0 0
Tahap 1
Eleminasi elemen baris matriks dengan mengalikan menggunakan
scaling factor dan menambahkan ke baris yang lain, dilakukan pada LHS
dan RHS
Tahap 1
Jika menyelesaikan persamaan sederhana menggunakan
perhitung dapat memilih baris sesuka kita.
Dengan menggunakan pemrograman, harus sistematik
Artinya, kita harus menginstruksikan komputer untuk
melakukan perhitungan dengan urutan yang jelas
Contoh
pivot element
R1
R2
R3
R2 (3/1) *R1
R1
R2
R3
1 2 1
3 1 1
1 1 2
pivot equation
2
3
1
1 2
0 5 4
1 1 2
22
3
Perthatikan bahwa biru untuk pivot element dan merah untuk pivot equation.
R1
R2
R3
R3 - (1/1)*R1
R1
R2
R3
1
1 2
0 5 4
1 1 2
22
3
1
1 2
0 5 4
0 1 3
22
11
R1
R2
R3
1
1 2
0 5 4
0 1 3
R3 - (-1/-5)*R2
new pivot
element
22
11
R1
R2
R3
1
1 2
0 5 4
0 0 2.2
22
6 .6
Hasil Akhir
1 x1
1 2
0 5 4 x2
0 0 2.2 x
22
6 .6
Problems
Permasalahan muncul ketika pivot adalah nol
DIVISION BY ZERO
Solusi : Mengubah urutan baris
Muncul error dari pembulatan
Catatan
Eleminasi Gauss Dapat menyelesaiakn Sistem Persamaan Linear,
Namun proses back substitution masih memerlukan ketelitian
Kita dapat menyelesaikan permasalahan dengan lebih mudah
menggunakan eleminasi lanjutan untuk mengurangi koefisien matriks
menggunakan identity matrix
Metode ini disebut :
Gauss-Jordan Elimination
Contoh Kasus
The upward velocity of a rocket is
given at three different times
Time, t
Velocity, v
m/s
106.8
177.2
12
279.2
vt a1t 2 a2 t a3 ,
5 t 12.
Assume
Results in a matrix template of the form:
t12
2
t 2
t32
t1
t2
t3
1
1
a1 v1
a v
2 2
a3
v3
Using date from the time / velocity table, the matrix becomes:
25 5 1 a1 106.8
64 8 1 a 177.2
144 12 1 a3 279.2
Metode Numerik & Komputasi. By : Muhtadin
Row1
Row2
(64)
25
Yields
5
1 a 1 106.81
25
0 4.8 1.56 a 96.21
144 12
1 a 3 279.2
Row1
Row3
(144)
25
Yields
5
1 a 1 106.8
25
0 4.8 1.56 a 96.21
Row2
Row3
(16.8)
4.8
Yields
5
1 a 1 106.8
25
0 4.8 1.56 a 96.21
0
0
0.7 a 3 0.735
This is now ready for Back Substitution
0.7a3 0.735
0.735
a3
0.7
a3 1.050
-96.21 1.561.050
a2
-4.8
a2 19.70
Metode Numerik & Komputasi. By : Muhtadin
a1 0.2900
Metode Numerik & Komputasi. By : Muhtadin
Solution:
The solution vector is
a1 0.2900
a 19.70
2
a3 1.050
The polynomial that passes through the three data points is then:
vt a1t 2 a2 t a3
0.2900t 2 19.70t 1.050, 5 t 12
Solution:
Substitute each value of t to find the corresponding velocity
129.69 m / s.
165.1 m / s.
v9 0.29009 19.709 1.050
2
201.8 m / s.
252.8 m / s.
Metode Numerik & Komputasi. By : Muhtadin
30
Background
Rangkuman Gaussian Elimination
Dapat menyelesaikan / memberikan solusi dari sistem persamaan
linear
Namun masih memerlukan back substitution
Dapat digantikan dengan menggunakan elminasi lanjutan untuk
menghasilkan menemukan koefisien matriks
Matriks Identitas
Metode tersebut dinamakan : Gauss-Jordan Elimination
31
1 0 0 x1
0 1 0 x2
0 0 1 x
a
b
c
a
b
c
32
Gauss-Jordan Elimination
Misalkan diketahui sebuah sistem persamaan linear :
2 x 4 y 5z 36
3x 5 y 7 z 7
5 x 3 y 8 z 31
36
2 4 5
3 5
7
7
3 8 31
5
33
Gauss-Jordan Elimination
Langkah 1: Eleminasi koef. x pada persamaan 2 dan 3.
36
2 4 5
3 5
7
7
3 8 31
5
5
36
2 4
0 1 14.5
61
0 13 20.5 121
2 x 4 y 5z 36
3x 5 y 7 z 7
5 x 3 y 8 z 31
2 x 4 y 5z 36
y 14.5z 61
13 y 20.5z 121
34
Gauss-Jordan
Elimination
13R2+R3
R3
5
36
2 4
0 1 14.5 61
0 0 168 672
2 x 4 y 5z 36
y 14.5z 61
168 z 672
Langkah 3:
0.5R1
R1
-R2
R2
(1/168)R3
R3
1 2 2.5 18
0 1 14.5 61
1
4
0 0
x 2 y 2.5z 18
y 14.5z 61
z4
35
Gauss-Jordan Elimination
Langkah 4: Eleminasi z pada persamaan kedua
1 2 2.5 18
0 1 14.5 61
1
4
0 0
x 2 y 2.5z 18
y 14.5z 61
z4
1 2 2.5 18
0 1
0 3
0 0
1
4
x 2 y 2.5 z 18
y 3
z4
36
Gauss-Jordan Elimination
Langkah 5-1: Eleminasi y pada persamaan kesatu
1 2 2.5 18
0 1 0 3
0 0 1 4
x 2 y 2.5 z 18
y 3
z4
1 0 2.5 12
0 1 0 3
0 0 1
4
x 2.5 z 12
y 3
z4
37
Gauss-Jordan Elimination
Langkah 5-2: Eleminasi z pada persamaan pertama
1 0 2.5 12
0 1 0 3
0 0 1 4
x 2.5 z 12
y 3
z4
1 0 0 2
0 1 0 3
0 0 1 4
x2
y 3
z4
38
39
Invers Matriks
A
a11
a
21
...
a n1
J
I G
a12
a 22
...
an 2
... a1n
... a2 n
... ...
... a nn
A 1
1
0
...
0
0
1
...
0
...
...
...
...
0 1
0 0
...
...
1 0
0
1
...
0
...
...
....
...
1 0 0 1 1
1 1 2 1 0 0 1 1 2
3 0 1 0 1 0 0 3 5 3 1 0 0 1
1 0 2 0 0 1 0 1
0 1 0 1 0 3
0 0 1 1 0 2 0
0
1 1
1 0 2
0 1 0 1 0 1 0 1 0 1
0
0
1
0 0 5 0 1 3 0 0 1 0 0.2 0.6 0
0 p11
0 p 21
... ...
1 p n1
p12
p 22
...
pn 2
... p1n
... p2 n
... ...
... p nn
2
1 0 0
0 1 0 1
5 3 1 0
0 0 0
0.4 0.2
1 0 1
0
1
0 1 0 0.2 0.6
40
41
10 x2 7 x3 3
6 x1 2 x2 3x3 11
5 x1 x2 5 x3 9
0 10 7 x1 3
6 2
3 x2 11
5 1 5 x3 9
42
12 x1 10 x2 7 x3 15
6 x1 5 x2 3x3 14
24 x1 x2 5 x3 28
12 10 7 x1 15
6 5
3 x2 14
24 1 5 x3 28
12 10 7 x1 15
0
0
6.5 x2 6.5
12 21 19 x3 2
43
15
10 x1 45
20
3 2.249 7 x 1.751
1
3 x3 9
5
Nilai Exactnya :
x1 1
x 1
2
x3 1
44
15
10 x1 45
20
3 2.249 7 x 1.751
1
3 x3 9
5
Hasil dari eleminasi gauss :
x1 0.9625
x 1.05
2
x3 0.999995
Dengan Pembulatan 6 Digit
x1 0.625
x 1.5
2
x3 0.99995
Dengan pembulatan 5 Digit
45
Solusi
Menambah digit significan
Mengurangi besarnya error
Tetap memiliki kemungkinan pembagian dengan Nol
Partial Pivoting
Menghindari Pembagian dengan Nol
Mengurangi galat akibat pembulatan
46
Partial Pivoting
a pk
47
6 14 5.1 3.7 6 x1 5
0 7 6
1
2 x2
6
4
12 1 11 x3 8
0
x
0
9
23
6
8
9
4
0 17 12 11 43 x5 3
Baris mana yang ditukar ?
48
6 14 5.1 3.7 6 x1 5
0 17 12 11 43 x 3
2
4
12 1 11 x3 8
0
x
0
9
23
6
8
9
4
0 7 6
1
2 x5 6
49
Iterative Methode
Gauss - Seidel
50
Iterative Method
Gauss (dan Gauss-Jordan) memunculkan banyak
error akibat pembulatan.
Iterasi diawali dengan memberikan nilai perkiraan
untuk semua variabel.
( k 1)
(k )
i
i
( k 1)
i
, i
x1( 0 )
x (0)
x0 2
...
x (0)
n
Gauss-Seidel Method
a11 x1 a12 x2 ... a1n xn b1
a21 x1 a22 x2 ... a2 n xn b2
...
an1 x1 an 2 x2 ... ann xn bn
x1( k 1)
a11
x2( k 1)
a22
xn( k 1)
ann
Contoh
4 x1 x2 x3 7
4 x1 8 x2 x3 21
2 x1 x2 5 x3 15
(0)
1
1; x
( 0)
2
2; x
(0)
3
2; x ( k 1)
1
( k 1)
2
( k 1)
3
7 x 2( k ) x3( k )
4
21 4 x1( k 1) x3( k )
8
( k 1)
( k 1)
15 2 x1
x2
SELESAI
54