Ich versuche einige Ergebnisse zu verstehen und würde mich über einige allgemeine Kommentare zum Umgang mit nichtlinearen Problemen freuen.
Fisher-Gleichung (eine nichtlineare Reaktions-Diffusions-PDE),
in diskretisierter Form,
Dabei ist der Differentialoperator und die Diskretisierungsschablone.u = ( u j - 1
Methode
Ich möchte ein implizites Schema anwenden, da ich Stabilität und einen uneingeschränkten Zeitschritt benötige. Zu diesem Zweck verwende ich die thgr; -Methode (beachte, dass ein vollständig implizites Schema ergibt und das trapezförmige oder "Crank-Nicolson" -Schema ergibt).θ = 1 θ = 0,5
Bei nichtlinearen Problemen ist dies jedoch nicht möglich, da die Gleichung nicht linear geschrieben werden kann.
Um dieses Problem zu umgehen, habe ich zwei numerische Ansätze untersucht:
IMEX-Methode
Der naheliegendste Weg ist, den nichtlinearen Teil des Reaktionsbegriffs zu ignorieren und den Reaktionsbegriff nur mit dem bestmöglichen Wert zu aktualisieren, dh dem aus dem vorherigen Zeitschritt. Dies führt zur IMEX-Methode.
Newton-Löser
Die vollständige Methodengleichung kann unter Verwendung einer Newton-Raphson-Iteration gelöst werden, um die zukünftige Lösungsvariable zu finden. Dabei ist der Iterationsindex ( ) und die Jacobi-Matrix von . Hier verwende die Symbole I für Iterationsvariablen , so dass sie aus der Lösung der Gleichung bei einer Echtzeit Punkt auszeichnen . Dies ist tatsächlich ein modifizierter Newton-Löser, da der Jacobian nicht bei jeder Iteration aktualisiert wird.k k ≥ 0 A n F ( w n ) ν k u n
Ergebnisse
Die obigen Ergebnisse wurden für einen relativ großen Zeitschritt berechnet und zeigen den Unterschied zwischen dem Zeitschritt-Ansatz und einem vollständigen Newton-Iterationslöser.
Dinge, die ich nicht verstehe:
Ich bin überrascht, dass die Zeitschrittmethode "OK" ist, aber mit der Zeit hinter der analytischen Lösung zurückbleibt. ( Hinweis: Wenn ich einen kleineren Zeitschritt gewählt hätte, würde der Zeitschritt-Ansatz zu Ergebnissen führen, die für das analytische Modell nicht relevant sind.) Warum liefert der Zeitschrittansatz vernünftige Ergebnisse für eine nichtlineare Gleichung?
Das Newton-Modell schneidet viel besser ab, beginnt jedoch mit der Zeit, das analytische Modell anzuführen. Warum nimmt die Genauigkeit des Newton-Ansatzes mit der Zeit ab? Kann die Genauigkeit verbessert werden?
Warum gibt es ein allgemeines Merkmal, dass nach vielen Iterationen das numerische Modell und das analytische Modell auseinander zu gehen beginnen? Liegt das nur daran, dass der Zeitschritt zu groß ist, oder geschieht dies immer?