Steifes Anfangswertproblem




Ein steifes Anfangswertproblem ist in der Numerik gewöhnlicher Differentialgleichungen ein Anfangswertproblem


y′(t)=f(t,y(t)), t≥t0,y(t0)=y0{displaystyle y'(t)=f(t,y(t)), tgeq t_{0},quad y(t_{0})=y_{0}}y'(t)=f(t,y(t)), tgeq t_{0},quad y(t_{0})=y_{0}

bei dem explizite Einschrittverfahren oder Mehrschrittverfahren wegen ihres beschränkten Stabilitätsgebiets erhebliche Schwierigkeiten haben.
Dies ist dann der Fall, wenn die Konstante L{displaystyle L}L in der Lipschitzbedingung (vgl. Satz von Picard-Lindelöf)


f(t,y1)−f(t,y2)‖L‖y1−y2‖{displaystyle |f(t,y_{1})-f(t,y_{2})|leq L|y_{1}-y_{2}|}|f(t,y_{1})-f(t,y_{2})|leq L|y_{1}-y_{2}|

große Werte L≫1{displaystyle Lgg 1}Lgg 1 annimmt, die Lösung y(t){displaystyle y(t)}y(t) aber recht glatt verläuft.
In diesem Fall könnten numerische Verfahren diese Lösung mit relativ großen Schrittweiten genau approximieren, explizite Verfahren werden aber wegen des beschränkten Stabilitätsgebiets gezwungen, kleine Schrittweiten zu verwenden.
Typischerweise treten steife Anfangswertprobleme bei der numerischen Approximation von parabolischen partiellen Differentialgleichungen auf nach erfolgter Diskretisierung im Ortsbereich. Ein Beispiel ist das Crank-Nicolson-Verfahren, bei dem im Ort eine Finite-Differenzen-Methode und in Zeitrichtung die implizite Trapez-Methode eingesetzt wird.




Inhaltsverzeichnis






  • 1 Beispiel


  • 2 Erweiterte Stabilitätsbegriffe


  • 3 Numerische Verfahren für steife Anfangswertprobleme


  • 4 Literatur





Beispiel |


Die Problematik wird mit dem expliziten und impliziten Eulerverfahren und Schrittweite h>0{displaystyle h>0}h>0 anhand des linearen Anfangswertproblems


y′(t)=λ(y(t)−2),y(0)=1,{displaystyle y'(t)=lambda {big (}y(t)-2{big )},quad y(0)=1,}y'(t)=lambda {big (}y(t)-2{big )},quad y(0)=1,

mit λ=−4{displaystyle lambda =-4}lambda =-4 erläutert. Die exakte Lösung ist y(t)=2−e−4t{displaystyle y(t)=2-e^{-4t}}y(t)=2-e^{{-4t}} und für große t{displaystyle t}t ist die Lösung beinahe konstant, also sehr glatt.




Explizites Euler-Verfahren im Beispiel


  • Das explizite Eulerverfahren berechnet mit y0=1{displaystyle y_{0}=1}y_{0}=1 die Näherungen


yk+1=(1+hλ)yk−2hλ, k=1,2,3,….{displaystyle y_{k+1}=(1+hlambda )y_{k}-2hlambda , k=1,2,3,ldots .}{displaystyle y_{k+1}=(1+hlambda )y_{k}-2hlambda , k=1,2,3,ldots .} Diese liefern aber nur dann brauchbare Werte, wenn der Betrag des Vorfaktors von yk{displaystyle y_{k}}y_{k} kleiner eins ist, |1+hλ|<1{displaystyle |1+hlambda |<1}|1+hlambda |<1, hier also für h<1/2{displaystyle h<1/2}h<1/2. Für h>1/2{displaystyle h>1/2}h>1/2 liegt dagegen das Produkt =−4h{displaystyle hlambda =-4h}hlambda =-4h außerhalb des Stabilitätsgebiets, das bei 2{displaystyle -2}-2 endet, siehe Eulersches Polygonzugverfahren#Eigenschaften. Für solche, zu großen Schrittweiten wachsen die Lösungen unbegrenzt an, vgl. Grafik.



Implizites Euler-Verfahren im Beispiel


  • Das implizite Eulerverfahren berechnet dagegen von y0=1{displaystyle y_{0}=1}y_{0}=1 ausgehend die Näherungen


yk+1=yk−2hλ1−, k=1,2,3,….{displaystyle y_{k+1}={frac {y_{k}-2hlambda }{1-hlambda }}, k=1,2,3,ldots .}{displaystyle y_{k+1}={frac {y_{k}-2hlambda }{1-hlambda }}, k=1,2,3,ldots .} Für jede positive Schrittweite h{displaystyle h}h ist hier der Vorfaktor von yk{displaystyle y_{k}}y_{k}, der Bruch 1/(1−)<1{displaystyle 1/(1-hlambda )<1}1/(1-hlambda )<1, da λ=−4{displaystyle lambda =-4}lambda =-4 negativ ist. Denn das Stabilitätsgebiet des impliziten Eulerverfahrens umfasst die ganze linke komplexe Halbebene, das Verfahren ist A-stabil.

  • Die beiden Diagramme zeigen jeweils die exakte Lösung in blau, eine Näherungslösung mit kleiner Schrittweite h=0,2{displaystyle h=0{,}2}{displaystyle h=0{,}2} in grün und die Näherungslösungen mit h=0,52{displaystyle h=0{,}52}{displaystyle h=0{,}52} in rot.

Beim expliziten Eulerverfahren wachsen die roten Näherungen immer weiter an, während auch diese groben Näherungen beim impliziten Eulerverfahren in der Nähe der exakten Lösung bleiben.



Erweiterte Stabilitätsbegriffe |


Für eine genauere Klassifikation numerischer Verfahren bei steifen Anfangswertproblemen wurden in der Literatur verschiedene Stabilitätsbegriffe eingeführt, die sich in der Regel an unterschiedlichen Testgleichungen orientieren.
Dazu gehören die



  1. Gleichung von Dahlquist y′(t)=λy(t){displaystyle y'(t)=lambda y(t)}y'(t)=lambda y(t) mit Re⁡)<0{displaystyle operatorname {Re} (lambda )<0}{displaystyle operatorname {Re} (lambda )<0}. Ihre Lösungen y(t)=eλ(t−t0)y0{displaystyle y(t)=e^{lambda (t-t_{0})}y_{0}}y(t)=e^{{lambda (t-t_{0})}}y_{0} gehen alle gegen null für t→{displaystyle tto infty }tto infty .

  2. Prothero-Robinson-Gleichung y′(t)=λ(y(t)−g(t))+g′(t){displaystyle y'(t)=lambda {big (}y(t)-g(t){big )}+g'(t)}y'(t)=lambda {big (}y(t)-g(t){big )}+g'(t) mit Re⁡)<0{displaystyle operatorname {Re} (lambda )<0}{displaystyle operatorname {Re} (lambda )<0} und einer glatten Funktion g(t){displaystyle g(t)}g(t). Die Lösung dieser Gleichung ist y(t)=g(t)+eλ(t−t0)(y0−g(t0)){displaystyle y(t)=g(t)+e^{lambda (t-t_{0})}(y_{0}-g(t_{0}))}y(t)=g(t)+e^{{lambda (t-t_{0})}}(y_{0}-g(t_{0})). Für sehr kleine Realteile Re⁡)≪1{displaystyle operatorname {Re} (lambda )ll -1}{displaystyle operatorname {Re} (lambda )ll -1} nähern sich alle Lösungen sehr schnell der Funktion g(t){displaystyle g(t)}g(t) an.

  3. Die nichtlineare dissipative Gleichung y′(t)=f(t,y(t)){displaystyle y'(t)=f{big (}t,y(t){big )}}y'(t)=f{big (}t,y(t){big )}, bei der die rechte Seite f{displaystyle f}f eine einseitige Lipschitzbedingung erfüllt, (y−v)T(f(t,y)−f(t,v))≤μy−v‖22,y,v∈Rn.{displaystyle (y-v)^{T}{big (}f(t,y)-f(t,v){big )}leq mu |y-v|_{2}^{2},quad y,vin mathbb {R} ^{n}.}(y-v)^{T}{big (}f(t,y)-f(t,v){big )}leq mu |y-v|_{2}^{2},quad y,vin mathbb{R} ^{n}. Im Unterschied zur obigen Lipschitzbedingung sind bei der Konstanten μ{displaystyle mu }mu auch negative Werte möglich. Eine Folge der einseitigen Lipschitzbedingung ist, dass für die Differenz von zwei Lösungen y(t),v(t){displaystyle y(t),v(t)}y(t),v(t) der Differentialgleichung die Schranke y(t)−v(t)‖2≤(t−t0)‖y(t0)−v(t0)‖2{displaystyle |y(t)-v(t)|_{2}leq e^{mu (t-t_{0})}|y(t_{0})-v(t_{0})|_{2}}|y(t)-v(t)|_{2}leq e^{{mu (t-t_{0})}}|y(t_{0})-v(t_{0})|_{2} gilt, und sich diese für μ<0{displaystyle mu <0}mu<0 und wachsendes t→{displaystyle tto infty }tto infty also immer weiter annähern.


Bei numerischen Verfahren ist es vorteilhaft, wenn sich die numerischen Approximationen bei Testgleichungen im Wesentlichen so wie die exakten Lösungen verhalten.
Dementsprechend fordert der Begriff




  • A-Stabilität, dass Näherungslösungen bei der ersten Testgleichungen gegen Null gehen für t→{displaystyle tto infty }tto infty ,


  • B-Stabilität, dass sich zwei Näherungslösungen der dritten Testgleichung mit μ=0{displaystyle mu =0}mu =0 nicht voneinander entfernen für t→{displaystyle tto infty }tto infty .


Für implizite Runge-Kutta-Verfahren gibt es mit dem Begriff Algebraische Stabilität ein hinreichendes Kriterium für B-Stabilität.



Numerische Verfahren für steife Anfangswertprobleme |


Für steife Anfangswertprobleme sind implizite Verfahren effizienter als explizite (das kann man quasi auch als Definition des Begriffs "steif" ansehen). Spezielle Klassen sind



  • implizite Runge-Kutta-Verfahren

  • Rosenbrock-Wanner-Verfahren

  • BDF-Verfahren


Da bei impliziten Verfahren die Auflösung der nichtlinearen Gleichungssysteme einen hohen Aufwand erfordert, wurden auch linear-implizite Einschrittverfahren entwickelt wie die genannten Rosenbrock-Wanner-Verfahren (ROW-Methoden).



Literatur |



  • E. Hairer, G. Wanner: Solving Ordinary Differential Equations II, Stiff problems, Springer Verlag

  • K. Strehmel, R. Weiner, H. Podhaisky: Numerik gewöhnlicher Differentialgleichungen - Nichtsteife, steife und differential-algebraische Gleichungen, Springer Spektrum, 2012.




Popular posts from this blog

Volksrepublik China

How to test boost logger output in unit testing?

Write to the output between two pipeline