Tridiagonális mátrix
A matematika lineáris algebra nevű ágában tridiagonális mátrix (esetleg kontinuánsmátrix) a neve az olyan négyzetes mátrixnak, amelyben csak a főátlón és a mellette található két átló mentén vannak nullától különböző elemek.
Például, a következő mátrix tridiagonális:
- Tridiagonális mátrixok a numerikus analízis ágában. Matematikai nyelven úgy mondjuk, hogy aij = 0 minden olyan (ij) esetén, melyekre teljesül a |i − j| > 1 feltétel. Szemléletesen, adott az alábbi egyenlet. Ilyen mátrixok lépnek fel például a parciális differenciálegyenletek végeselem diszkretizációjánál:
- Az ilyen típusú egyenletrendszereket legkönnyebb a Thomas-algoritmussal megoldani, ami tulajdonképpen a Gauss kiküszöbölés tridiagonális mátrixra egyszerűsített változata. Először sorrendben eltüntetjük az átló alatti elemeket, és az átlón levő elemeket egységnyire normalizáljuk. Első lépésben: . Ezután, a többi elemre végrehajtjuk a transzformációkat. Ezek eredményeképpen a rendszert kapjuk, melyet hátulról előre haladva könnyen megoldhatunk: .
- Ha figyelembe vesszük, hogy a mátrixban elfoglalt helyek alapján és , akkor a fenti módszert a következő algoritmussal valósíthatjuk meg:
- Memóriakihasználás szempontjából természetesen célszerűbb, ha nem az egész mátrixot, hanem csak a nemnulla c, d és e elemeket tároljuk. Ebben az esetben az algoritmus a következőképpen alakul:
1: function Thomas( in: (aij ),(bi) out: (xi) i, j = 1, n ) 2: a12 ← a12/a11 3: b1 ← b1/a11 4: for i ← 2 to n − 1 do 5: aii+1 ← aii+1 / (aii − aii−1 ai-1i) 6: bi ← (bi − aii−1 bi−1)/(aii − aii−1 ai−1i) 7: aii−1 ← 0 8: end for 9: bn ← (bn − ann−1 bn−1)/(ann − ann−1 an−1n) 10: xn ← bn 11: for i ← n − 1 to 1 do 12: xi = bi − xi+1 aii+1 13: end for 14: return (xi) 15: end function
Megjegyezzük, hogy a Thomas-algoritmus könnyen általánosítható szélesebb sávos mátrixokra is.1: function THOMAS2( in: (ci),(di),(ei),(bi) out: (xi) i, j = 1, n ) 2: c1 ← c1/d1 3: b1 ← b1/d1 4: for i ← 2 to n do 5: ci ← ci/(di − ei ci−1) 6: bi ← (bi − ei bi−1)/(di − ei ci−1) 7: end for 8: xn ← bn 9: for i ← n − 1 to 1 do 10: xi = bi − xi+1 ci 11: end for 12: return (xi) 13: end function
Tulajdonságok
szerkesztésA tridiagonális mátrix voltaképpen egy felső és alsó Hessenberg-mátrix.[1]
Determináns
szerkesztésEgy n dimenziós tridiagonális T mátrix determinánsát
a következő rekurzív képlet segítségével lehet kiszámítani:
ahol f0 = 1 és f-1 = 0.
Inverz
szerkesztésEgy adott T, nem szinguláris tridiagonális mátrix
inverzét a következőképpen lehet kiszámolni:
ahol θi teljesíti az alábbi rekurzív feltételt:
θ0 = 1, θ1 = a1 kezdőállapottal. ϕi pedig teljesíti a
Példák
szerkesztésPéldaképpen tekintsük a tridiagonális rendszert. A Thomas-algoritmus alkalmazásával átalakíthatjuk ezt egy egyszerűen megoldható rendszerré. A visszahelyettesítések alapján megoldásnak az értékeket kapjuk.
Jegyzetek
szerkesztés- ↑ Matrix Analysis. Cambridge University Press, 28. o. (1985). ISBN 0521386322
- ↑ da Fonseca, C.M. (2007. március 1.). „On the eigenvalues of some tridiagonal matrices” (angol nyelven). Journal of Computational and Applied Mathematics 200 (1), 283–286. o. DOI:10.1016/j.cam.2005.08.047.
- ↑ Usmani, Riaz A. (1994. november 1.). „Inversion of a tridiagonal jacobi matrix” (angol nyelven). Linear Algebra and its Applications 212-213, 413–414. o. DOI:10.1016/0024-3795(94)90414-6.
Források
szerkesztés- Lázár Zsolt, Lázár József, Járai-Szabó Ferenc – Numerikus módszerek (Kolozsvári Egyetemi Kiadó, 2008)