Ofullständig LU-faktorisering
I numerisk linjär algebra är en ofullständig LU-faktorisering (förkortad som ILU ) av en matris en sparsam approximation av LU-faktoriseringen som ofta används som förkonditionering .
Introduktion
Betrakta ett glest linjärt system . Dessa löses ofta genom att beräkna faktoriseringen , med L nedre enhetstriangulär och U övre triangulär . Man löser då , , vilket kan göras effektivt eftersom matriserna är triangulära.
För en typisk gles matris kan LU-faktorerna vara mycket mindre glesa än den ursprungliga matrisen - ett fenomen som kallas fill-in . Minneskraven för att använda en direktlösare kan då bli en flaskhals vid lösning av linjära system. Man kan bekämpa detta problem genom att använda fyllningsreducerande omordningar av matrisens okända, till exempel algoritmen Minimum grad .
En ofullständig faktorisering söker istället triangulära matriser L , U så att snarare än . Att lösa för kan göras snabbt men ger inte den exakta lösningen till . Så vi använder istället matrisen som en förkonditionering i en annan iterativ lösningsalgoritm såsom konjugatgradientmetoden eller GMRES .
Definition
För en given matris definierar man grafen som
som används för att definiera de villkor som ett sparsitetsmönster behöver uppfylla
En sönderdelning av formen där följande
- är en lägre entriangulär matris
- är en övre triangulär matris
- är noll utanför sparsitetsmönstret:
- är noll inom sparsitetsmönstret:
kallas en ofullständig LU-sönderdelning (med avseende på sparsitetsmönstret .
Sparsitetsmönstret för L och U väljs ofta att vara detsamma som sparsitetsmönstret för den ursprungliga matrisen A . Om den underliggande matrisstrukturen kan refereras av pekare istället för att kopieras, är det enda extra minne som krävs för inmatningarna av L och U. Denna förkonditionering kallas ILU(0).
Stabilitet
När det gäller ILU:s stabilitet bevisades följande teorem av Meijerink och van der Vorst.
Låt vara en M-matris , den (fullständiga) LU-sönderdelningen ges av och ILU med } Sedan
håller. Således är ILU minst lika stabil som den (fullständiga) LU-sönderdelningen.
Generaliseringar
Man kan få en mer exakt förkonditionering genom att tillåta en viss nivå av extra fyllning i faktoriseringen. Ett vanligt val är att använda sparsitetsmönstret för A 2 istället för A ; denna matris är avsevärt tätare än A , men fortfarande gles överallt. Denna förkonditionering kallas ILU(1). Man kan sedan generalisera denna procedur; ILU(k)-förkonditioneraren för en matris A är den ofullständiga LU-faktoriseringen med sparsitetsmönstret för matrisen Ak +1 .
Noggrannare ILU-prekonditioneringsmedel kräver mer minne, i en sådan utsträckning att algoritmens körtid till slut ökar även om det totala antalet iterationer minskar. Följaktligen finns det en avvägning mellan kostnad och noggrannhet som användarna måste utvärdera, vanligtvis från fall till fall beroende på familjen av linjära system som ska lösas.
ILU-faktoriseringen kan utföras som en fixpunktsiteration på ett mycket parallellt sätt.
Se även
- Saad, Yousef (1996), Iterativa metoder för glesa linjära system (1:a upplagan), Boston: PWS, ISBN 978-0-534-94776-7 . Se avsnitt 10.3 och vidare.
- ^ Meijerink, JA; Vorst, Van Der; A, H. (1977). "En iterativ lösningsmetod för linjära system där koefficientmatrisen är en symmetrisk 𝑀-matris" . Beräkningsmatematik . 31 (137): 148–162. doi : 10.1090/S0025-5718-1977-0438681-4 . ISSN 0025-5718 .
- ^ Chow Edmond; Patel, Aftab (2015). "Finkornig parallell ofullständig LU-faktorisering". SIAM Journal on Scientific Computing . 37 (2): C169-C193. doi : 10.1137/140968896 .