Gibt es eine Möglichkeit, eine „doppelte Vorkonditionierung“ durchzuführen?

15

Frage:

Angenommen, Sie haben zwei verschiedene (faktorisierte) Vorbedingungen für eine symmetrische positive definite Matrix : und wobei die Umkehrungen der Faktoren sind einfach anzuwenden.A B T B A C T C , B , B T , C , C TA

ABTB
ACTC,
B,BT,C,CT

Wann ist es möglich , Informationen zur Verwendung sowohl und eine bessere Vorkonditionierers als entweder zu bauen oder allein?C B CBCBC

Nick Alger
quelle

Antworten:

13

Sie können Additiv verwenden

Pa1x=(BTB)1x+(CTC)1x,

multiplikativ

Pm1x=(BTB)1x+(CTC)1(xA(BTB)1x),

oder symmetrisches Multiplikativ. Methoden dieser Klasse sind in PETSc über PCCOMPOSITE in PETSc verfügbar. Beispielsweise,

petsc/src/ksp/ksp/examples/tutorials$ ./ex2 -m 100 -n 100 -ksp_monitor \ -pc_type composite -pc_composite_type multiplicative \ -pc_composite_pcs ilu,gamg 0 KSP Residual norm 7.088415699389e+01 1 KSP Residual norm 1.271768323411e+01 2 KSP Residual norm 1.529853612054e+00 3 KSP Residual norm 1.214841683459e-01 4 KSP Residual norm 8.341606406485e-03 5 KSP Residual norm 6.471990946051e-04 6 KSP Residual norm 8.082672366030e-05 7 KSP Residual norm 6.111138513482e-06 Norm of error 6.93786e-06 iterations 7

Das Benutzerhandbuch enthält einen Abschnitt zum Thema "Kombinieren von Vorkonditionierern".

Jed Brown
quelle
Ausgezeichnet, vielen Dank! Kennen Sie eine Theorie oder einen Artikel, in dem die Bedingungen erörtert werden, unter denen diese Kombinationen wirksam oder unwirksam sind, oder handelt es sich nur um Versuch und Irrtum?
Nick Alger
Wie bei jeder Vorkonditionierung erfolgt die Analyse anhand des Spektrums eines vorkonditionierten Operators, der häufig über ein verallgemeinertes Eigenwertproblem ausgedrückt wird. Intuitiv ist die Absicht der Kombination, beide Teile zu korrigieren, wenn jeder Vorkonditionierer verschiedene Prozesse oder verschiedene Teile des Spektrums anvisiert. Die erfolgreichsten Ansätze dieser Klasse basieren auf der Subraumkorrektur, die Multigrid, Domänenzerlegung und Feldaufteilung umfasst (jeweils Literatur). PETSc verfügt über spezialisiertere Vorkonditionierer, um in diesen Fällen Parallelität aufzudecken oder Zwischenergebnisse wiederzuverwenden.
Jed Brown
1

Zusätzlich zu Jeds hervorragender Antwort habe ich kürzlich eine Methode gefunden, die darin besteht, bei flexiblen GMRES (FGMRES) jeden zweiten Schritt zwischen den Vorkonditionierern zu wechseln, wie zum Beispiel in

Tezduyar, TE et al. "Eine neue gemischte Vorkonditionierungsmethode für Finite-Elemente-Berechnungen." Computermethoden in Applied Mechanics and Engineering 99.1 (1992): 27-42. http://repository.ias.ac.in/24680/1/320.pdf

Nick Alger
quelle