Iterative Methoden für unbestimmte Systeme ohne Blockstruktur


9

Unbestimmte Matrizensysteme treten beispielsweise bei der Diskretisierung von Sattelpunktproblemen durch gemischte finite Elemente auf. Die Systemmatrix kann dann in das Formular eingefügt werden

(ABtBC)

wobei negativ (semi) -definit ist, positiv (semi) definit ist und willkürlich ist. Natürlich können Sie je nach Konvention Bestimmtheitsbedingungen verwenden, aber dies ist so ziemlich die Struktur dieser Matrizen.C B.ACB

Für diese Methoden kann die Methode von Uzawa verwendet werden, was eigentlich nur ein "Trick" ist, um das System in ein äquivalentes semidefinitives System umzuwandeln, das durch konjugierten Gradienten, Gradientenabstieg und dergleichen gelöst werden kann.

Ich stehe vor einem unbestimmten System, das keine solche Blockstruktur hat. Uzawa-Methoden gelten in diesem Fall nicht. Mir ist die von Paige & Saunders eingeführte Minimal Residual-Methode (MINRES) bekannt, die nur eine dreistufige Rekursion darstellt und einfach zu implementieren scheint.

Frage: Ist MINRES im Allgemeinen eine gute Wahl für das Prototyping? Ist es von praktischer Relevanz? Die Vorkonditionierung ist derzeit kein zentrales Thema.


Können Sie etwas mehr darüber sagen, was Ihre Matrizen so besonders macht? ZB von was für einem Problem kommt es? Gibt es eine andere Struktur? Usw.
Bill Barth

Ich habe es absichtlich leer gelassen, um die allgemeinste Antwort zu erhalten (ehrlich gesagt setzt dies implizit voraus, dass es eine zufriedenstellende allgemeine Antwort gibt). Aber das folgende Beispiel mit der Helmholtz-Gleichung ist ziemlich genau das, was ich mir vorgestellt habe.
Shuhalo

Antworten:


7

Wenn Sie sich keine Gedanken über die Vorkonditionierung machen, ist MINRES die Standardauswahl. Beachten Sie jedoch, dass MINRES einen symmetrischen positiven Vorkonditionierer benötigt.

Wenn Sie sich mit Vorkonditionierung befassen, ist es wichtig, die strukturellen Unterschiede zwischen den meisten Sattelpunktproblemen und allgemeinen unbestimmten Problemen zu berücksichtigen. Die meisten Sattelpunktprobleme treten auf, wenn elliptische Probleme mit Einschränkungen gelöst werden, die durch Lagrange-Multiplikatoren erzwungen werden. Inkompressibilität und Kontaktbeschränkungen sind gängige Beispiele. Für solche Probleme zwingt der Operator den Unterraum, in dem die Bedingung erfüllt ist, mit Green-Funktionen, die schnell abfallen. Solche Probleme können effizient unter Verwendung von Blockvorkonditionierern (vorkonditioniertes Uzawa ist ein Mitglied dieser Familie), Multigrid mit kompatiblen Glättern (z. B. Vanka oder basierend auf Blockzerlegung) oder Mehrebenendomänenzerlegung mit geeigneten lokalen und groben Problemen gelöst werden.

Das prototypische Beispiel für ein unbestimmtes Problem, das kein Sattelpunktproblem ist, ist die Helmholtz-Gleichung

(au)k2u=f

wobei oben und unten gleichmäßig durch positive Konstanten begrenzt ist. Für groß sind die Funktionen des Grüns stark oszillierend, was die Vorkonditionierung (und Diskretisierung) schwierig macht. Zwei vernünftige Ansätze sind Sweeping-Vorkonditionierer, die auf perfekt aufeinander abgestimmten Schichten und "Wave-Ray-Multigrid" basieren, wie in den Antworten auf diese Frage beschrieben . Leider sind diese Methoden eher für eine bestimmte Gleichung geeignet und technisch zu implementieren.ka(x)k


1
Um fair zu sein, obwohl die umfassenden Vorkonditionierer sicherlich technisch sind, um sie parallel effizient umzusetzen, ist die Idee nicht spezifisch für Helmholtz. Die Hauptanforderung ist eine absorbierende Randbedingung (z. B. perfekt aufeinander abgestimmte Schichten).
Jack Poulson

3

Eine verwandte Frage, die von Interesse sein könnte, lautet: Welche Richtlinien sollte ich bei der Auswahl eines spärlichen linearen Systemlösers befolgen? In diesem Fall wären Sie jedoch nur an den iterativen Methoden interessiert. Mein Verständnis von iterativen Methoden ist, dass die Konvergenz für eine bestimmte Methode stark vom Spektrum Ihrer Matrix abhängt. Auch wenn Sie die Uzawa-Methode nicht verwenden können, können Sie GMRES, den bikonjugierten stabilisierten Gradienten, MINRES, die quasi-minimale Restmethode und andere iterative Methoden ausprobieren, die für unbestimmte Matrizen gelten.

Wenn das Codieren der verschiedenen Methoden ein Problem darstellt , können Sie Löser in Ihrem Algorithmus mithilfe einer Bibliothek wie PETSc aufrufen , die eine Vielzahl iterativer linearer Löser implementiert.


1

MINRES ist die beste Wahl für diese Art von Problem.


1
Bitte verlinken Sie Ihre persönliche Website nicht auf diese Weise. Sie können gerne bestimmte Ressourcen verknüpfen, die für Ihre Antwort relevant sind, aber Ihre persönliche Website nicht auf diese Weise verknüpfen. Ich habe es aus dieser Antwort entfernt. Solche Links gehören in Ihr Benutzerprofil.
Jed Brown

Könnten Sie bitte erläutern, warum MINRES die beste Wahl für diese Art von Problem ist? Wenn Sie weitere Details hinzufügen, wird Ihre Antwort für die Community nützlicher und Sie erhalten mehr Stimmen.
Geoff Oxberry
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.