Anda di halaman 1dari 6

Modul 4 Solusi SPAL dengan MATRIK TRI-DIAGONAL

A. Pendahuluan Solusi SPAL yang berbentuk matriks tri-diagonal seringkali dijumpai pada problem-problem yang berbentuk PDP (persamaan diferensial parsial) yang dominan secara diagonal (definit positif). Sebagaimana solusi-solusi yang biasa dilakukan dengan metode komputasi numerik, diharapkan modul ini dapat membantu para peserta ajar yang menjumpai masalah-masalah yang berkaitan dengan bentuk matriks serupa, karena bentuknya yang sangat khusus, sedemikian rupa sehingga pemecahan masalahnya menjadi lebih tertib, efisien, dan terstruktur.

B. Bentuk umum Matrik Tri-Diagonal Secara spesifik, bentuk SPAL yang memiliki matriks tri-diagonal dapat disajikan sebagai berikut: d1 a 2 atau [A] [x] = [b] c1 d2 a3 c2 d3 O c3 O O an an 1 d n 1 x1 x 2 x3 M cn 1 xn 1 d n xn b1 b 2 b3 M bn 1 bn

C. Teorema Solusi matriks Tri-Diagonal Jika matriks bujur-sangkar [A] di atas merupakan matriks yang dominan secara diagonal (atau definit :positif) dan membentuk
Seri Kuliah Metode Numerik (Modul 4: Solusi SPAL dengan Matriks Tri-Diagonal) (1/1)

matriks tri-diagonal, maka [A] memiliki suatu mentuk faktorisasi LU yang unik, dalam hal ini baik L maupun U hanya memiliki duadiagonal: L adalah matriks bawah dengan struktur diagonal utama (dituliskan dalam lambang [dl]) dan diagonal bawah (dituliskan dalam lambang [al]); sedangkan matriks U adalah matriks atas yang berisi diagonal utama [du] dan diagonal atas [cu]. Langkah solusi yang digunakan adalah analogi dengan metode ELIMINASI GAUSS. Dalam hal ini jika penulisan SPAL di atas disusunulang menjadi: d1 x1 c1 x2 a x d x 2 2 2 1 a3 x1 cn 1 x3 d n x2 b1 b 2 b3 M bn 1 bn

c2 x3 d 3 x2 O c3 x3 O O an x1 an 1 x1 d n 1 x2

Dapat dilihat dengan jelas, selain ketiga diagonal di atas matriks [A] hanya diisi oleh elemen 0 (nol), yang berarti bahwa matriks [A] di atas, tidak perlu disimpan dalam suatu variabel berbentuk matriks, melainkan cukup hanya dalam 3 buah ventor dengan panjang masing-masing (maksimum) sebesar n elemen. Jumlah memori untuk penyimpanan menjadi semakin sangat berarti pada saat harga n menjadi sangat besar. Hal lain yang perlu dicatat adalah, bahwa pada setiap kolom, hanya diperlukan 1 buah elemen tak-nol (bukan 0) yang dieliminasi, yang berarti juga sebagai penghematan usaha dan daya komputasi numerik yang relatif sangat besar, bila dibandingkan dengan penghitungan melalui matriks penuh. Selanjutnya, langkah algoritma penyelesaiannya adalah sebagai berikut: (a). Jika d1 0, maka x1 dapat dieliminasi dari persamaan kedua
Seri Kuliah Metode Numerik (Modul 4: Solusi SPAL dengan Matriks Tri-Diagonal) (2/2)

dengan menghitung faktor pengali berikut: m1 = a2 d1

dan dihasilkan persamaan baru sebagai berikut:


' ' d 2 x2 + c2 x3 = b2

dengan,
' d 2 = d 2 m1 c1 ' ' b2 = b2 m1 b1

' (b). Dengan cara yang sama, jika d 2 0 , x2 dapat dieliminasi dari persamaan ketiga sehingga dihasilkan persamaan ketiga yang baru, sebagai berikut: ' ' d3 x3 + c3 x4 = b3

dengan, m2 = dan
' d3 = d3 m2 c2 ' ' b3 = b3 m2 b2

a3
' d2

(c). Teruskan cara perhitungan di atas, sehingga dapat disimpulkan pada tahap-i, xi dapat dieliminasi dari persamaan i+1 (dengan asumsi d i' 0 ) dan memberikan persamaan baru berikut:

di' +1 xi +1 + ci +1 xi + 2

= bi' +1

Seri Kuliah Metode Numerik (Modul 4: Solusi SPAL dengan Matriks Tri-Diagonal)

(3/3)

dengan, mi = dan ai +1 d i'

di' +1 = di +1 mi ci bi' +1 = bi +1 mi bi'


(d). Sekuens-sekuens dalam butir (c) di atas sebenarnya merupakan sesuatu yang beraturan, yaitu keberulangan dari i = 1, 2, , n-1, sehingga sistem awalnya tertransformasi menjadi matriks segitiga atas (e). Sebagai solusi akhirnya, yaitu substitusi balik yang juga mirip dengan metode eliminasi Gauss, yaitu dengan ' menganggap bahwa d n 0 , akan diperoleh: xn =
' bn ' dn

dan kemudian, untuk i = n-1, n-2,, 1, dapat digunakan: xi =


' bn ci xi +1

di'

Contoh Listing Program Matriks Tri-Diagonal:


C C C C PROGRAM Solusi Sistem Persamaan Aljabar Linier (SPAL) atau atau Persamaan Aljabar Linier Simultan dengan teknik TRIDIAGONAL Deklarasi Jenis dan Variabel: ----------------------------IMPLICIT NONE INTEGER iarg PARAMETER (iarg = 7) INTEGER i,neq REAL*8 a(iarg),b(iarg),c(iarg),d(iarg),x(iarg)

Seri Kuliah Metode Numerik (Modul 4: Solusi SPAL dengan Matriks Tri-Diagonal)

(4/4)

CALL system('clear') OPEN (10,FILE='s3diag.dta') C C Proses Pemasukan Harga Variabel: -------------------------------READ(10,*) neq WRITE(*,*) 'Jumlah Persamaan : ',neq READ(10,*) d(1),c(1),b(1) DO i = 2,neq-1 READ(10,*) a(i),d(i),c(i),b(i) ENDDO READ(10,*) a(neq),d(neq),b(neq) Proses Pemanggilan Subprogram Eliminasi Gauss-Jordan: ----------------------------------------------------CALL S3DIAG(neq,a,d,c,x,b) Pemaparan/penyajian Hasil Perhitungan: -------------------------------------WRITE(*,*) '--------HASIL---------' DO i = 1,neq WRITE(*,40) 'x(',i,') = ',x(i) ENDDO CLOSE(10) 20 FORMAT (3X,A,I1,A1,I1,A,G15.7) 30 FORMAT (5X,A,I1,A,G15.7) 40 FORMAT (5X,A,I1,A,G15.7) STOP END INCLUDE 's3diag.sub'

C C

C C

SUBROUTINE S3DIAG(n,a,d,c,x,b) C --------------------------------------------------------------------------C SUBPROGRAM SOLUSI MATRIKS TRI-DIAGONAL dengan ELIMINASI GAUSS : C Merupakan solusi Sistem Persamaan Aljabar Linier (SPAL) dengan | C format persamaan matriks: [A].[x] = [b], dengan rincian sbb | C n = jumlah persamaan aljabar linier (dimensi SPAL) | C a = vektor koefisien pada diagonal bawah dengan dimensi n-1, | C d = vektor koefisien pada diagonal utama dengan dimensi n, | C c = vektor koefisien pada diagonal atas dengan dimensi n-1, | C x = vektor variabel persamaan yang akan dicari harga-harganya | C b = vektor ruas kanan yang berisi harga-harga persamaan tunggal | C --------------------------------------------------------------------------C C Deklarasi Variabel: ------------------INTEGER n REAL*8 a(n),d(n),c(n),b(n),x(n) INTEGER i REAL*8 PIVOT,MULT Proses solusi: (a) Substitusi dan Eliminasi ------------------------------------------DO i = 1,n-1 PIVOT = d(i) MULT = a(i+1)/PIVOT a(i+1) = MULT d(i+1) = d(i+1) - MULT*c(i) b(i+1) = b(i+1) - MULT*b(i) ENDDO

C C

Seri Kuliah Metode Numerik (Modul 4: Solusi SPAL dengan Matriks Tri-Diagonal)

(5/5)

C C

Proses solusi: (b) Substitusi Balik ----------------------------------x(n) = b(n)/d(n) DO i = n-1,1,-1 x(i) = (b(i) - c(i)*x(i+1))/d(i) ENDDO RETURN END

D. Daftar Pustaka Atkinson, Kendal E., An Introduction to Numerical Analysis, John Wiley & Sons, Toronto, pp. 35-44, 1978. Atkinson, L.V., Harley, P.J., An Introduction to Numerical Methods with Pascal, Addison-Wesley Publishing Co., Tokyo, pp. 49-61, 1983. Bismo, Setijo, Kumpulan Bahan Kuliah Metode Numerik, Jurusan TGP-FTUI, 1999.

Seri Kuliah Metode Numerik (Modul 4: Solusi SPAL dengan Matriks Tri-Diagonal)

(6/6)

Anda mungkin juga menyukai