Wann sollten implizite Methoden bei der Integration hyperbolischer PDEs eingesetzt werden?

16

Numerische Methoden zum Lösen von PDEs (oder ODEs) lassen sich in zwei große Kategorien einteilen: explizite und implizite Methoden. Implizite Methoden ermöglichen größere stabile Zeitschritte, erfordern jedoch mehr Arbeit pro Schritt. Bei hyperbolischen PDEs ist allgemein bekannt, dass sich implizite Methoden in der Regel nicht auszahlen, da die Verwendung von Zeitschritten, die größer sind als die von der CFL-Bedingung zugelassenen, zu sehr ungenauen Ergebnissen führt. In einigen Fällen werden jedoch implizite Methoden verwendet. Wie sollte man für eine bestimmte Anwendung entscheiden, ob eine explizite oder eine implizite Methode verwendet wird?

David Ketcheson
quelle

Antworten:

17

Die zentrale Frage ist, welche physikalischen Prozesse (Wellen oder Quellterme) Zeitskalen haben, an deren Lösung Sie interessiert sind und die Sie lieber überschreiten möchten. Wenn Sie nicht an der schnellsten Zeitskala im System interessiert sind, heißen die Gleichungen "steif". Hyperbolische Erhaltungsgesetze werden typischerweise als Systeme erster Ordnung geschrieben

ut+F(u)=G(u,u,...)

wo u konservierte Variablen enthält, ist F der Fluss und G wird der "Quellterm" genannt. Beachten Sie, dass bei dieser Terminologie das Flussmittel F keine Derivate enthält. Daher müssen diffusive und dispersive Terme in G . Es ist durchaus üblich, implizite oder semi-implizite Integration zu verwenden, wenn die Ausgangsterme steif sind, wie bei vielen chemischen Reaktionsproblemen und wenn Diffusion oder Dispersion vorhanden sind. Die chemische Reaktion kann normalerweise implizit lokal in jedem Element gelöst werden, da sie nicht an benachbarte Zellen gekoppelt ist.

Um die Wellengeschwindigkeiten zu berechnen, untersuchen wir die Eigenwerte des Flusses Jacobian . Wenn wir feststellen, dass die Phase bestimmter Wellen nicht von physikalischem Interesse ist, möchten wir sie möglicherweise überschreiten.EIN=[F/u]

Wenn Sie beispielsweise die Langzeitentwicklung eines Ozeans simulieren, interessieren Sie sich möglicherweise nicht für Oberflächenschwerewellen (z. B. Tsunamis). Unglücklicherweise ändert die Änderung der Wellengeschwindigkeit (entweder durch Verlangsamung mit expliziten Methoden oder durch Beschleunigung auf ein "starres Deckel" -Modell, das eine Projektion verwenden kann) die Physik, indem die Ausbreitung der Wirbel geändert wird. Wirbel im Ozean sind ein Effekt, bei dem die Gravitationswelle mit der Konvektion fast ausgeglichen ist, aber nicht ganz.

Ein anderes Beispiel ist kompressibles Euler, zB Luftstrom durch ein Rechenzentrum. Die Schallwellengeschwindigkeit ist viel schneller als die Konvektion, und nur diese ist für die Wärmeübertragung wichtig. Wenn Sie sich nicht für Akustik interessieren, können Sie eine implizite Methode verwenden.

Die relative Effizienz einer impliziten Methode ist abhängig von den Kosten für die Lösung der algebraischen Systeme in jedem Schritt / Stadium im Vergleich zur Schrittgröße, die mit expliziten Methoden verwendet werden kann. Die effiziente Lösung solcher algebraischen Systeme ist ein aktives Forschungsthema. (Stellen Sie eine weitere Frage, und ich werde sie hier beantworten und darauf verweisen.)

Sie können auch implizite Methoden verwenden, wenn:

  • Ihre Gleichungen haben aussagekräftige Gleichgewichtszustände, die Sie direkt untersuchen möchten, um möglicherweise die Stabilität zu charakterisieren
  • Sie lösen inverse / Datenassimilierungsprobleme, die mit einer langen Vorgeschichte verbunden sind
  • Sie möchten Bestellbarrieren umgehen, um Integrationsmethoden mit sehr hoher Bestellzeit und bestimmten Stabilitätseigenschaften zu verwenden
  • Sie verwenden raum-zeit-adaptive Methoden
  • Sie verwenden eine räumliche Diskretisierung, für die bereits ein algebraisches System gelöst werden muss (z. B. kontinuierliche Finite-Elemente-Methoden mit konsistenter Massenmatrix).
Jed Brown
quelle