Kapitel 4 Lineare Hyperbolische Gleichungen

Werbung
Kapitel 4
Lineare Hyperbolische Gleichungen
4.1
Lineare, skalare Advektion
Die skalare Advektions- oder auch Transportgleichung lautet in einer räumlichen Dimension
∂u
∂u
+a
=0
(4.1)
∂t
∂x
wobei die Gleichung quasilinear für a = a(u, x, t) ist und linear für
a = const.
Sei im Folgenden a = const.
Als Anfangsbedingung gelte
u(x, 0) = u0 (x)
Gleichung (4.1) hat als Lösung
u(x, t) = u0 (x − at)
wie durch Substitution verifiziert werden kann. Die Anfangsbedingungen werden also mit
der konstanten Geschwindigkeit |a| nach rechts für a > 0 und nach links für a < 0
transportiert. Einfachste Form einer Wellenlösung. Die Linien x − at = const. heißen
Wellenfronten, u(x, t) ist das Signal (oder Welleninformation, a ist die Ausbreitungsgeschwindigkeit, und u0 (x) ist die Wellenform.
Bem.: Damit eine eindeutige Lösung existiert, muss wiederum gelten
du = ut dt + ux dx
und mit Gl. (4.1) erhält man
1 a
dt dx
ut
ux
=
0
du
(4.2)
Nullsetzen der Determinante liefert die Charakteristische Gleichung
dx
=a
dt
und u ist damit konstant auf den Charakteristiken, den Wellenfronten.
27
(4.3)
28
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
4.2
Einfache Explizite Lösungsverfahren
Wir berechnen die numerische Lösung auf einem Gitter. Seien die Gitterzellen äquidistant
mit der Größe ∆x, die Zeitschritte konstant mit ∆t, und die konstante Geschwindigkeit
a > 0.
unj = u(j∆x, n∆t)
Beispiele für die Diskretisierung von (4.1), vgl. vorheriges Kapitel.
4.2.1
Einseitige Differenzen
Zunächst zwei einseitige Verfahren erster Ordung in Raum und Zeit, daraufhin höherer
Ordnung
1) Upwind
Man benutzt für die Zeitableitung eine forward und die räumliche Ableitung eine
backward Ableitung, auch Forward Time Backward Space (FTBS) genannt.
− unj
un+1
unj − unj−1
j
+ O(∆t) + a
+ O(∆x) = 0
∆t
∆x
Umformung
un+1
= unj − σ(unj − unj−1 )
j
(4.4)
wobei
∆t
> 0
∆x
die CFL-Zahl ist. (Courant-Friedrichs-Lewy)
(4.5)
σ=a
σ spielt bei der Stabilitätsanalyse eine große Rolle.
2) Downwind
Sei immer noch a > 0
un+1
− unj
unj+1 − unj
j
+a
=0
∆t
∆x
Umformung
= unj − σ(unj+1 − unj )
un+1
j
(4.6)
Hier handelt es sich um eine Forward Time Forward Space (FTFS) genannt.
4.2.2
Zentrierte räumliche Ableitung
3) Centered
Hierbei wird nur die räumliche Ableitung zentriert
= unj −
un+1
j
σ n
(uj+1 − unj−1 )
2
(4.7)
Diese Methode wird auch FTCS (Forward Time Centered Space) genannt. Wie sich
später zeigen wird, sind die Downwind- als auch die FCTS-Methode numerisch instabil für alle Zeitschritte.
c W. Kley; Skript: Numerische Hydrodynamik
4.2. EINFACHE EXPLIZITE LÖSUNGSVERFAHREN
29
4) Leapfrog
un+1
− ujn−1
unj+1 − unj−1
j
+a
=0
2∆t
2∆x
dies liefert
un+1
= ujn−1 − σ(unj+1 − unj−1 )
j
(4.8)
5) Lax-Wendroff Schema
Die Herleitung des Lax-Wendroff (LW) Schemas kann durch die sog. Lax-Wendroff,
bzw. Cauchy-Kowalewski Technik erfolgen. Betrachte zeitliche Taylor-Entwicklung
der Funktion u
u(x, t + ∆t) = u(x, t) + ∆t
∆t2 ∂ 2 u
∂u
(x, t) +
(x, t) + O(∆t3 )
∂t
2 ∂t2
(4.9)
Mit der ursprünglichen Dgl. gilt
∂u
∂u
= −a
∂t
∂x
woraus für die zweite Ableitung folgt
2
∂2u
2∂ u
=a
∂t2
∂x2
(4.10)
also eine typische Wellengleichung mit der Ausbreitungs-Geschwindigkeit a. Diese
Relationen für die zeitlichen Ableitungen setzt man nun in die obige Entwicklung
(4.9) ein und erhält
u(x, t + ∆t) = u(x, t) − ∆t a
∂u
∆t2 2 ∂ 2 u
(x, t) +
a
(x, t) + O(∆t3 )
∂x
2
∂x2
(4.11)
Die Ableitungen werden durch forward Differencing in der Zeit und zentrierte räumliche Differenzen angenähert, und man erhält das Lax-Wendroff Schema.
un+1
= unj −
j
σ n
σ2
(uj+1 − unj−1 ) + (unj+1 − 2unj + unj−1 )
2
2
+O(∆t2 ) + O(∆x2 )
(4.12)
Eine andere, anschaulichere Möglichkeit der Ableitung ergibt sich durch die Unterteilung des Zeitschritts ∆t in zwei Unterschritte (siehe Abb. 4.1). Zunächst Prädikn+1/2
torschritt für ũj+1/2 , d.h. den Werten bei den halben Zeitschritten und räumlichen
Zwischenwerten (Abb. 4.1)
n+1/2
ũj+1/2 =
Dann Korrektor-Schritt
σ n
1 n
uj + unj+1 −
uj+1 − unj
2
2
n+1/2
n+1/2
n
−
σ
ũ
−
ũ
=
u
un+1
j
j
j+1/2
j−1/2
Zusammengenommen lautet das Verfahren dann wie oben (4.12).
c W. Kley; Skript: Numerische Hydrodynamik
(4.13)
(4.14)
30
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
t
t
n+1
ui
n+1
u~ n+1/2
i−1/2
n+1/2
tn
uni−1
u~ n+1/2
i+1/2
uni
uni+1
Abbildung 4.1: Die Zeitschritt-Integration durch ein Prädiktor-Korrektor Verfahren beim
der Lax-Wendroff Methode
6) Beam-Warming Schema
Die Ableitung des Beam-Warming (BW) Schemas (1976) erfolgt wie oben ebenso
durch die Cauchy-Kowalewski Technik. Ersetzen der zeitlichen Abltg. (4.11) durch
die räumlichen ergab
u(x, t + ∆t) = u − a∆tux + a2
∆t2
uxx + O(∆t3 )
2
Hier sei wieder a > 0. Die erste räumliche Ableitung wird durch Zweite Ordnung
Backward (stromaufwärts) ersetzt
ux (xj , tn ) =
3unj − 4unj−1 + unj−2
+ O(∆x2 )
2∆x
Die zweite Ableitung uxx wird wieder räumlich zentriert, hier aber bei xj−1 (ebenso
stromaufwärts). Es ergibt sich das Beam-Warming Schema:
σ
σ2
(3unj − 4unj−1 + unj−2 ) + (unj − 2unj−1 + unj−2 ) + O(∆t2 ) + O(∆x2 )
2
2
(4.15)
Bei umgekehrter Strömungsrichtung, a < 0, müssen die Indizes entsprechend korrigiert werden.
un+1
= unj −
j
7) Lax-Friedrich Schema
Zur Ableitung des Lax-Friedrich (LF) Schemas (1954) beginnt man von dem Centered Schema (4.7)
σ
= unj + (unj−1 − unj+1 )
un+1
j
2
was jedoch unconditionally unstable ist. Hier wird jetzt unj durch eine zentrierte
Form (unj+1 + unj−1 )/2 ersetzt, und man erhält das Lax-Friedrich Schema:
1
σ
= (unj+1 + unj−1 ) − (unj+1 − unj−1 )
un+1
j
2
2
(4.16)
c W. Kley; Skript: Numerische Hydrodynamik
4.3. IMPLIZITE VERFAHREN
4.3
31
Implizite Verfahren
Allgemein lautet ein finites Differenzen Schema für
∂u
= Lu
∂t
un+1
= unj + L̃unj ∆t = unj +
j
X
ck unj+k ∆t
(4.17)
|k|≤K
wobei K eine ganze Zahl ist, abhängig von der Ordnung der räumlichen Ableitung.
Die Konstanten ck sind unabhängig von u und j
L ist ein linearer Operator (NOTE: i.A. in Hydrodyn. nicht linearer Operator)
Ein Differenzenverfahren kann jetzt allgemein geschrieben werden als.
un+1 = un + L̃un (1 − β)∆t + β L̃un+1 ∆t
(4.18)
β ist Parameter 0 ≤ β ≤ 1, der den Grad der Implizität angibt.
β = 0: Explizit: un+1 als Funktion von un gegeben
β = 1: voll Implizit: (rechte Seite auch von un+1 abhängig)
β = 1/2: Zweite Ordnung in Zeit (zentriert), halb-implizit
Implizite Verfahren, also sobald β > 0 ist, führen zur Kopplung der uj , .d.h. zu Matrixgleichungen. Sei u der Vektor der {uj }, dann gilt
un+1 = Aun
Im eindimensionalen Fall ist die Matrix A tridiagonal.
Bem:
• Explizite Verfahren nur eingeschränkt (für ∆t < ∆tmax ) stabil
• Implizite Verfahren können größere Zeitschritte benutzen, Beschränkung durch Physik (z.B. dynamische Zeitskalen)
• Aber: Rechenaufwand bei impliziten Verfahren (vor allem in Mehr-dim. Problemen)
sehr viel höher (Matrixgleichungen)
– Bei nicht-linearen Problemen −→ Linearisierung.
−→ Meistens werden explizite Methoden verwendet, vor allem in mehrdimensionalen Problemen.
Bsple.: Implizit
8) Rückwärts-zentriert
Dies Verfahren ist analog der Centered Methode (FTCS), wobei jetzt allerdings
die räumliche Ableitung am neuen Zeitschritt genommen wird, und dadurch das
Verfahren implizit wird.
σ
n+1
(4.19)
= unj − (un+1
un+1
j+1 − uj−1 )
j
2
Diese Methode wird auch BTCS (Backward Time Centered Space) genannt. Im
Gegensatz zu FTCS ist dies nun nicht mehr explizit, sondern voll-implizit mit β = 1.
Es muss also eine Matrixgleichung (tridiagonal) zu jedem Zeitschritt gelöst werden.
c W. Kley; Skript: Numerische Hydrodynamik
32
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
9) Crank-Nicolson
Man beginnt wiederum mit dem instabilen FTCS-Schema (4.7):
un+1
= unj −
j
σ n
(uj+1 − unj−1 )
2
und zentriert die räumliche Ableitung auf der rechten Seite in der Zeit
un+1
= unj −
j
σ n
n+1
(u − unj−1 + un+1
j+1 − uj−1 )
4 j+1
(4.20)
Also ist das Crank-Nicolson Verfahren ein implizites Verfahren mit β = 0.5.
Zusätzlich betrachten wir die eindimensionale Diffusionsgleichung (z.B. Wärmeleitung oder Vislosität), weil in der Literatur das Crank-Nicolson Verfahren meist in
diesem Zusammenhang präsentiert wird.
qt = qxx
(4.21)
Hier bezeichnet q z.B. die Temperatur im Fall der Wärmeleitung.
Explizit lautet eine mögliche Diskretisierung:
qin+1 = qin +
∆t n
n
(q − 2qin + qi+1
)
∆x2 i−1
(4.22)
implizit (β = 1/2):
qin+1 = qin +
1 ∆t n
n+1
n
n+1
)
− 2qin+1 + qi+1
(qi−1 − 2qin + qi+1
) + (qi−1
2
2 ∆x
(4.23)
Beim Crank-Nicolson Verfahren ergibt sich erneut eine Tridiagonalmatrix, sowohl
für die linaere Advektion als auch im Fall der Wärmeleitungsgleichung.
4.4
Konsistenz, Stabilität, Konvergenz
Bisher wurden einige Verfahren für die lineare Advektionsgleichung (4.1) beschrieben.
Es ist wichtig zu wissen, wie sich die numerisch berechneten Lösungen zu der wahren
verhalten. Gleichzeitig ist es wichtig zu wissen, inwieweit ein Verfahren gegen die wahre
Lösung für kleine ∆x und ∆t konvergiert.
4.4.1
Konsistenz
Gute numerische Verfahren werden ideal für ∆t, ∆x → 0, d.h. die diskreten Gleichungen
gehen in die Differentialgl. über.
Wir betrachten jetzt eine diskrete finite Differenzengleichung der Form
un+1 = Lun
(4.24)
wobei un = unj für die Menge der diskreten Werte von u steht.
c W. Kley; Skript: Numerische Hydrodynamik
4.4. KONSISTENZ, STABILITÄT, KONVERGENZ
33
Name
Differenzengleichungen
Stencil
Upwind
un+1
= unj − σ(unj − unj−1 )
j
Downwind
un+1
= unj − σ(unj+1 − unj )
j
Centered
un+1
= unj − 21 σ(unj+1 − unj−1 )
j
Lax-Friedrichs
un+1
= 12 (unj−1 + unj+1 ) − 21 σ(unj+1 − unj−1 )
j
Leapfrog
un+1
= ujn−1 + σ(unj−1 − unj+1 )
j
Lax-Wendroff
un+1
= unj − 12 σ(unj+1 − unj−1 )
j
+ 12 σ 2 (unj+1 − 2unj + unj−1 )
Beam-Warming un+1
= unj − 12 σ(3unj − 4unj−1 + unj−2 )
j
+ 12 σ 2 (unj − 2unj−1 + unj−2 )
Crank-Nicolson
n+1
un+1
= unj − 41 σ(unj+1 − unj−1 + un+1
j+1 − uj−1 )
j
Tabelle 4.1: Übersicht über die grundlegenden Differenzenmethoden für die einfache, lineare Advektionsgleichung mit a > 0. Das Downwind- und FCTS Verfahren sind numerisch
nicht stabil. Das Crank-Nicolson Verfahren als implizite Methode ist für alle Zeitschritte
stabil.
Sei jetzt der lokale Diskretisierungsfehler (Local-Truncation Error, oder kurz LTE)
definiert durch
1
Le =
un+1
− Lune
(4.25)
e
∆t
Hierbei bezeichnet ue = ue (x, t) die exakte Lösung der Dgl. am Ort x z.Zt. t, also
un+1
= ue (x, tn+1 ). Das heißt, Le ergibt die Abweichung der numerischen Lösungen von
e
der exakten Lösung in einen Zeitschritt tn zum nächsten tn+1 . Er ist also ein Maß für den
Fehler, der in einem Zeitschritt erzeugt wird.
Definition:
Einem Methode heißt konsistent, falls
||Le (x, t)|| → 0
Bemerkung zu Normen:
L1 Norm
||u||1 =
L2 Norm
||u||2 =
c W. Kley; Skript: Numerische Hydrodynamik
Z
für
Z
∆t, ∆x → 0
∞
−∞
|u(x)|dx
∞
2
−∞
|u(x)| dx
1/2
34
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
Supremums-Norm
||u||∞ = sup|u(x)|
Für nichtlineare Gleichungen ist z.B. ||u||1 besser als ||u||2 , welche sich gut bei Fourieranalysen (von linearen Gl.) eignet.
Beispiel: Upwind angewandt auf die Advektionsgleichung (siehe Gl. 4.4)
Der Diskretisierungsfehler lautet hier
1 n+1 n
LUe pw =
ue,j − ue,j − σ(une,j − une,j−1)
∆t
=
(4.26)
1
{u (xj , t + ∆t) − [ue (xj , tn ) + σ (ue (xj − ∆x, tn ) − ue (xj , tn ))]}
∆t e
∂ue
1 ∂ue
2
2
∆t + O(∆t ) + σ
∆x + O(∆x )
=
∆t ∂t
∂x
∂u
∂u
= e + a e + O(∆x) + O(∆t)
∂t
∂x
Das heißt:
LUe pw = O(∆t) + O(∆x)
Bemerkung:
−→ 0
für
(4.27)
∆t, ∆x → 0
• Konsistenz heißt nicht Konvergenz. Konsistenz bezieht sich auf die diskrete Approximation, Konvergenz auf die Lösung.
• Wenn diskrete und exakte Gleichungen identisch werden im Limes ∆t → 0 und
∆x → 0, heißt das noch nicht, dass die Lösungen auch gleich sein müssen. Infinitesimale Abweichungen können sich (z.B. bei Instabilität) zu sehr großen aufschaukeln.
• Konsistenz ist i.a. gewährleistet, wenn die Differenzengleichungen aus einer TaylorreihenApproximation gewonnen wurden.
4.4.2
Konvergenz
Definition:
Für
Le = O
X
p,q≥0,p+q=l
ist
∆tp ∆xq
!
(4.28)
• die Ordnung des LTE = O(l + 1)
• der Globale Fehler des numerischen Verfahrens: Ordnung l
Bspl: Upwind: l = 1, Le = O(∆t) + O(∆t)
(Übung: LTE beim Lax-Wendroff Verfahren)
Definition:
Ein numerisches Schema heißt konvergent, falls unj gegen ue (xj , tn ) konvergiert für ∆t, ∆x →
0, also
lim ||ue (xj , tn ) − unj || −→ 0
∆t,∆x→0
c W. Kley; Skript: Numerische Hydrodynamik
4.4. KONSISTENZ, STABILITÄT, KONVERGENZ
4.4.3
35
Stabilität
Betrachte zwei (benachbarte) diskrete Lösungen z.Zt. tn , die exakte Lösung ue (xj , tn ) und
die numerisch berechnete unj .
Wie laufen die beiden Lösungen auseinander in einem Zeitschritt?
||un+1
− un+1 || =
e
≤
≤
≤
||un+1
− Lune + Lune − un+1 ||
e
||un+1
− Lune || + ||Lune − Lun ||
e
||Le ∆t|| + ||L(une − un )||
||Le ∆t|| + ||Ln ||
(4.29)
Hierbei wurde der Index j unterdrückt. Der erste Term auf der rechten Seite ist der
(bekannte) lokale Diskretisierungsfehler, der die Konsistenz angibt. Der zweite Term misst,
inwieweit sich zwei diskrete Lösungen pro Zeitschritt voneinander entfernen. Eine Methode
ist stabil, wenn ||L(une − un )|| beschränkt werden kann durch ||(une − un )|| multipliziert
mit einer Konstanten, die unabhängig von un und une ist.
Für lineare Gleichungen impliziert Stabilität die Beschränktheit (und umgekehrt).
Wir kommen zur
Definition:
Eine numerische Differenzenmethode heißt stabil, falls
||L(une − un )|| ≤ K||une − un ||
(4.30)
wobei K eine Konstante unabhängig von u ist.
Für den Fehler
nj ≡ une,j − unj
muss also gelten
lim ||nj || < K 0
n→∞
für feste ∆t
Falls wir den Lösungsvektor zur Zeit tn schreiben als ũn = (un1 , ..., unk , ...)T , dann führt das
Differenzenverfahren im allgemeinen zu einer Matrix-Gleichung der Art
ũn+1 = Aũn
wobei A die Verstärkungsmatrix bedeutet. Bei einer linearen Gleichung gilt dann auch
˜n+1 = A˜
n .
Stabilität ist dann gewährleistet, wenn alle Eigenwerte von A kleiner als 1 sind.
4.4.4
Lax-Äquivalenztheorem
Wichtig für die praktische Berechnung der Lösung wird im Besonderen die Konvergenz
der Lösung an die exakte Lösung sein. Da Konvergenz i.A. nicht so einfach zu zeigen
ist, Konsistenz und Stabilität dagegen einfacher, ist das Äquivalenztheorem von Lax von
großer Bedeutung in der numerischen Hydrodynamik Unter geeigneten Annahmen gilt:
Lax Äquivalenztheorem (1956):
Stabilität + Konsistenz −→ Konvergenz
Hierbei ist die Stabilität und Konsistenz notwendig und hinreichend für die Konvergenz.
Dieses Theorem gilt in dieser Form nur für lineare Gleichungen, und bei geeigneter Definition von Stabilität (siehe auch Roache, 1998).
c W. Kley; Skript: Numerische Hydrodynamik
36
4.5
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
Stabilitätsanalyse
Aufgrund ihrer Wichtigkeit beschränken wir uns hier auf die Von Neumann’sche Stabilitätsanalyse, wie sie für lineare Gleichungen gilt. Sie ist auch gleichzeitig die populärste
und wurde von von Neumann während des zweiten Weltkrieges in Los Alamos (New Mexico) entwickelt. Erst nach Aufhebung der Geheimhaltung wurde die Methode nach dem
Krieg allgemein zugänglich. Von Neumann hat sie für die Gasdynamik entwickelt, sie ist
aber für alle linearen finiten Differenzen-Approximationen gleichermaßen anwendbar. Die
weiter unten diskutierte Methode der modifizierten Gleichung im Kapitel (4.7) hängt sehr
eng mit einer alternativen Stabilitätsanalyse nach Hirt zusammen (vgl. Roache).
Weil instabile Lösungen typischerweise oszillierendes Verhalten zeigen, macht es Sinn,
diese in eine Fourierreihe zu entwickeln und die zeitliche Entwicklung der Koeffizienten
zu untersuchen.
Dazu nehmen wir vereinfachend an, dass die Lösung periodisch in x sei, also un0 = unN ,
wobei N die Anzahl, der räumlichen Gitterpunkte ist, deren Abstand ∆x konstant sei.
4.5.1
Fourier-Analyse der FTCS Methode
Die Methode soll am Beispiel der linearen Advektionsgleichung (4.1) und der forward time
centered space Methode illustriert werden. Die FTCS-Methdoe Gl. (4.7) lautete
σ
un+1
− unj + (unj+1 − unj−1 ) = 0
j
2
n
Die Werte uj werden jetzt in eine Fourier-Reihe entwickelt
unj
=
N/2
X
Ckn e
2πkij
N
(4.31)
k=−N/2
√
wobei i die imaginäre Einheit i = −1 bezeichnet. Die Formeln für die Werte un+1
, und
j
unj±1 folgen ganz analog aus (4.31). k bezeichnet die Wellenzahl der entsprechenden Mode.
Eingesetzt in die obige FTCS Differenzengleichung, und durch Ausklammern von e2πki/N
erhält man
i 2πkij
Xh
σ n 2πi
n − 2πi
n
n+1
N
N
Ck e − C k e
e N =0
Ck − C k +
2
k
Mit Hilfe der Eulergleichung
eix = cos x + i sin x
erhält man für Ckn 6= 0 und der Definition
θk =
für FTCS
X
k
Ckn
(4.32)
2πk
N
(4.33)
Ckn+1
− 1 + iσ sin θk eiθk j = 0
Ckn
Diese letzte Gleichung ist eine Summe von trigonometrischen Funktionen, eiθk j , die voneinander linear unabhängig sind. D.h. die Koeffizienten in der Summe müssen einzeln
verschwinden. Also gilt
Ckn+1
= 1 − iσ sin θk
(4.34)
Ckn
c W. Kley; Skript: Numerische Hydrodynamik
4.5. STABILITÄTSANALYSE
37
für alle k. Für das Quadrat des Verhältnis der Amplituden zu den beiden Zeitschritten tn
und tn+1 folgt
n+1 2
Ck 2
2
(4.35)
C n = 1 + σ sin θk ≥ 1
k
Für das FTCS Verfahren ist demnach
|Ckn+1 | > |Ckn |
für alle k 6= 0, und somit ist das Verfahren generell instabil für beliebige Zeitschrittgrößen.
4.5.2
Vereinfachte Formulierung der Methode
Anstatt immer die ganze Fourierreihe einzusetzen, kann man (aufgrund des Superpositionsprinzips) nur einen Term der Serie verwenden
unj = Ckn eiθk j
(4.36)
Weiterhin kann die Lösung einer linearen Gleichung immer als Verhältnis Ckn+1 /Ckn geschrieben werden, wobei das Verhältnis nicht vom Zeitschritt n abhängt. Mit anderen
Worten, jeder Koeffizient der Fourierserie ändert sich pro Zeitschritt um einen konstanten
Faktor.
Als neue Notation bezeichnen wir nun den Verstärkungsfaktor Vk als
Vk =
Damit wird
unj =
Ckn+1
Ckn
(4.37)
Ck2 Ck1 0 iθk j
Ckn
...
C e
Ckn−1 Ck1 Ck0 k
oder
unj = Vkn Ck0 eiθk j
(4.38)
wobei hier Vkn die n-te Potenz von Vk bezeichnet, im Gegensatz zum n−ten Zeitschrittlevel.
Als Vereinfachung kann weiterhin Ck0 = 1 angenommen werden, obwohl jeder Wert außer
0 hier gut ist, und der Index k kann ebenso vernachlässigt werden, so dass man schließlich
das Ergebnis
unj = V n eiθj
(4.39)
erhält, wobei hier der Verstärkungsfaktor V auch von θ, das heißt der Wellenlänge der
Störung, abhängt. Der Winkel θ hängt mit der Wellenzahl wie folgt zusammen, siehe obige
Gl. (4.33)
2πk
2πk∆x
θ=
=
(4.40)
N
D
wobei D die Gesamt-Ausdehnung des räumlichen Bereichs bezeichnet. Stabilität ist nun
durch |V | < 1 für alle −π ≤ θ ≤ π gesichert.
c W. Kley; Skript: Numerische Hydrodynamik
38
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
4.5.3
Stabilität der Upwind-Methode
Wir betrachten die Upwind-Methode (4.4)
un+1
= unj − σ(unj − unj−1 )
j
Einsetzen der Entwicklung (4.39) liefert
V n+1 eiθj = V n eiθj + σV n eiθ(j−1) − eiθj
Teilen durch V n und eiθj liefert
V n+1
= 1 + σ e−iθ − 1
n
V
Für das Betragsquadrat erhält man
n+1 2
V
λ(θ) ≡ n = 1 + σ e−iθ − 1 1 + σ eiθ − 1
V
= 1 + σ e−iθ + eiθ − 2 − σ 2 e−iθ + eiθ − 2
= 1 + σ(1 − σ)(2 cos θ − 2)
θ
2
= 1 − 4σ(1 − σ) sin
2
Ein Verfahren ist stabil, falls der Betrag des Verstärkungsfaktors λ(θ) kleiner als eins ist.
Das Upwind-Verfahren ist also stabil für 0 < σ < 1, dann ist |λ(θ)| < 1
4.5.4
Bemerkungen zur Von Neumannschen Stabilitätanalyse
Durch die von Neumann’sche Analyse erhält man zunächst die Information über die
Verstärkung mit λ = Re(V )2 + Im(V )2 der einzelnen Moden, also direkt über das Stabilitätsverhalten des Verfahrens.
Gleichzeitig kann auch die Phase tan−1 (Im(V )/Re(V )) untersucht werden, welche die
Ausbreitungsgeschwindigkeit der einzelnen Moden beschreibt. Idealerweise breiten sich
alle Phasen mit der gleichen Geschwindigkeit a aus. Numerisch jedoch breiten sich verschiedene Frequenzen mit unterschiedlichen Geschwindigkeiten aus, wodurch die Methode
dispersiv wird.
• Obwohl für lineare Systeme gültig, wird die v. Neumann’sche Analyse auch oft für
nicht-lineare Systeme angewandt.
• Das gleiche gilt für nicht-periodische Randbedingungen (oft reicht die lokale Analyse
aus), bei Berücksichtigung der Randbed. → Matrix-Gleichung. (s.o.)
• Falls λ(θ) ≤ 1, dann gilt ||Lu|| ≤ ||u|| → Stabilität.
• Bereich von θ: [−π < θ ≤ π]
• Instab. für θ ≈ 0, d.h. k∆x ≈ 0, also für lange Wellenlängen → Big Trouble
• Instab. für θ ≈ π, also kleine Wellenlängen ≈ 2∆x instabil → Dämpfung (z.B. durch
künstliche Viskosität) möglich
Satz: Courant-Friedrich Levy
Es existiert kein explizites, konsistentes, stabiles finites Differenzenschema, das bedingungslos stabil ist (d.h. für alle ∆t).
c W. Kley; Skript: Numerische Hydrodynamik
4.6. GEOMETRISCHE INTERPRETATION
4.6
39
Upwind-Schemata und Geometrische Interpretation von Finiten Differenzen
Abbildung 4.2: Approximation der Funktion u(x, t) durch geeignete Mittelwertbildung,
hier stückweise konstant (aus Colella & Puckett).
Hatten Gl. (4.1)
∂u
∂u
+a
=0
∂t
∂x
mit a > 0. Das Upwind Verfahren (4.4) lautet
= unj − σ(unj − unj−1 )
un+1
j
für σ = a∆t/∆x > 0.
Wir können unj als Zellenmittelwert einer Größe u interpretieren, d.h. für konstantes ∆x
gilt
Z (j+1/2)∆x
1
n
u(x, n∆t)dx
(4.41)
uj ≈
∆x (j−1/2)∆x
dabei ist unj ∆x eine skalare Erhaltungsgröße in Zelle j. (z.B. die Masse, Energie, ....).
NOTE: Hierbei ist unj am Gitterpunkt xj (= j∆x bei konstantem ∆x) definiert, und
die Zellgrenzen der Zelle j befinden sich bei den entsprechenden halbzahligen Indizes
xj−1/2 = (j − 1/2)∆x und xj+1/2 . In Abb. (4.2) wird diese Mittelwertbildung nochmals
symbolisiert. Speziell ist dort die Näherung durch eine stückweise konstante Funktion
dargestellt.
Wir können also die Zelle als sog. Kontrollvolumen (Control Volume) auffassen, dessen
Inhalt sich nur durch entsprechende Flüsse durch die Oberfläche ändert
∆x = unj ∆x + Fin − Fout
un+1
j
(4.42)
Die Flüsse bei einer Interpolation durch stückweise konstante Funktionen ist in der Abb. (4.3)
dargestellt.
Die obige Gleichung (4.42) ist in Erhaltungsform geschrieben (vgl. Hydro-Gleichungen).
Allgemein wird man versuchen u(x, n∆t) im Integral durch eine geignete interpolierende
c W. Kley; Skript: Numerische Hydrodynamik
40
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
Abbildung 4.3: Geometrische Darstellung der Flüsse bei der stückweise konstanten Näherung (aus Colella & Puckett).
Funktion uI (x) zu approximieren, so dass gilt
Z (j+1/2)∆x
n
uj ∆x =
uI (x)dx
(4.43)
(j−1/2)∆x
Die (erhaltene) Größe uj ∆x ist somit eine Einschränkung an die Wahl von uI (x). Das
einfachste Beispiel war die in Abb. (4.2) beschriebene Annäherung durch eine stückweise
konstante Interpolation, d.h.
uI (x) = unj
4.6.1
für
xj−1/2 < x < xj+1/2
RSA-Algorithmus
Als grobe Charakterisierung eines finiten Differenzenschemas zur Lösung der Advektionsgleichung kann nun der folgende Algorithmus gelten:
i) Für ein gegebenes un : Konstruiere ein Interpolationspolynom uI (x)
ii) Berechne exakte Lösung der Dgl. unter Benutzung des Interpolationspolynoms. Die
lineare Advektion (Transport) liefert:
un+1
≡ uI (x, (n + 1)∆t) = uI (x − a∆t, tn )
I
über die Zelle.
iii) Berechne un+1
als Mittelwert der un+1
j
I
Z
1
un+1
(x, (n + 1)∆t)dx
=
un+1
j
I
∆x
Z (j+1/2)∆x
1
=
uI (x − a∆t)dx
∆x (j−1/2)∆x
oder einfach mit Hilfe der Substitution y = x − a∆t
Z (j+1/2)∆x−a∆t
1
n+1
uI (y)dy
uj =
∆x (j−1/2)∆x−a∆t
(4.44)
c W. Kley; Skript: Numerische Hydrodynamik
4.6. GEOMETRISCHE INTERPRETATION
41
Die oben beschriebe Prozedur wird auch manchmal als Reconstruct, Solve, Average oder
kurz RSA-Algorithmus beschrieben. Oder auch Reconstruct-Evolution-Methods, nach
Harten, Enquist, Osher& Chakravarthy (vgl. Laney, p 243). Der Vorteil der Methode
besteht vor allem darin, dass der zweite (Solve) und dritte (Average) Schritt exakt sind.
Der Fehler also durch die Interpolation definiert ist.
Eine logische Konsequenz ist: Die Verbesserung des ersten Schrittes, der Interpolation.
Eine direkte Verbesserung der stückweise konstanten Näherung ist die stückweise lineare
Approximation (second-order-upwinding), d.h. wir schreiben
uI (x) = unj +
x − xj
∆uj
∆x
(4.45)
Dabei ist die undividierte Differenz ∆uj eine finite Differenzen-Näherung an die Ableitung
der Funktion u am Punkt xj
∂u
∆x
∆uj ∼
=
∂x xj
Für diese Näherung gibt es jetzt verschiedene Möglichkeiten, die uns z.T. schon vorher
begegnet sind:
a) ∆uj = 0 Upwind, 1st Order, stückweise konstant
b) ∆uj = 21 unj+1 − unj−1 Fromm, zentrierte Ableitung
c) ∆uj = unj − unj−1 Beam-Warming, Upwind Steigung
d) ∆uj = unj+1 − unj Lax-Wendroff, Downwind Steigung
Diese Betrachtungsweise gibt eine anschauliche physikalische Interpretation einiger der
bisherigen numerischen Verfahren.
Abbildung 4.4: Flussdefinition bei einer stückweise linearen Approximation (aus Colella
& Puckett).
In Erhaltungsform lautet die finite Differenzen Repräsentation
un+1
∆x = unj ∆x + Fin − Fout
j
c W. Kley; Skript: Numerische Hydrodynamik
(4.46)
42
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
wobei der Fluss Fin durch die schraffierte Fläche in Abb. (4.4) für eine stückweise lineare
Funktion symbolisiert ist. Er ist gegeben durch
a∆t
Fin = a ∆t uI xj−1/2 −
(4.47)
2
wobei der Ausdruck in Klammern das Argument von uI bezeichnet, d.h. uI (x) wird jeweils
in der Mitte der schraffierten Bereiche berechnet.
Anders ausgedrückt:
n
1
Fin = a∆t uj−1 + (1 − σ)∆uj−1
(4.48)
|
{z
} 2
{z
}
| 1st Order
2nd Order
Den Fluss Fout erhält man direkt durch die Substitution j für j − 1 für a > 0. Für
die undividierte Differenz ∆u wird jeweils ein Wert aus der obigen Tabelle ausgewählt.
Die drei unteren Methoden: Fromm, Beam-Warming, Lax-Wendroff haben jeweils einen
lokalen Diskretisierungsfehler der Ordnung O(∆x2 ), und sind stabil für σ < 1.
4.7
Modifizierte Gleichung
Zur Untersuchung des Verhaltens von numerischen Lösungen ist es nützlich, die (finiten)
Differenzengleichungen durch eine part. Differentialgleichung zu approximieren.
• FDG kamen ursprünglich von der PDG: Zirkelschluss?
• Können ursprüngliche PDG als “Modell“ der FDG betrachten, aber FDG modellieren (möglicherweise) eine andere PDG besser!
• Dies ist günstig für qualitative Bewertung von Lösungen: leichter bei PDG, als bei
FDG
• Ist analog zur Berechnung des lokalen Diskretisierungsfehlers, Gl. (4.25)
• Es besteht ein enger Zusammenhang zwischen der modifizierten Gl. und der Stabilitätsanalyse nach Hirt (siehe Roache, 1998).
Wir betrachten die Beziehung für den Diskretisierungsfehler (4.25) in der Form
#
"
l+1
∂
u
e
n
l
+ O((∆x)l+1 )
un+1
e,j − (Lue )j = ∆t C(∆x)
∂xl+1 (j∆x,n∆t)
(4.49)
Der Ausdruck Lue ist dabei eine konsistente Diskretisierung der PDG. Der Koeffizient C
wird durch die führende Ordnung in der Taylorentwicklung gegeben. Das heißt, lokal in
der Zeit entspricht die Ersetzung des exakten Operators durch die Differenzengleichung
der Addition eines Terms ∆t mal dem Ausdruck in Klammern. Wir definieren also die
modfizierte Gleichung (zur linearen Advektionsgleichung) durch
∂uM
∂ l+1 uM
∂uM
+a
= C(∆x)l
∂t
∂x
∂xl+1
(4.50)
c W. Kley; Skript: Numerische Hydrodynamik
4.7. MODIFIZIERTE GLEICHUNG
43
uM wird also das Verhalten des Differenzenschemas besser beschreiben als ue . Für die
modifizierte Gleichung gilt
n
l+1
un+1
)
M − LuM = ∆t O(∆x
(4.51)
Für die diskrete Lösung gilt, Gl. (4.24)
un+1 − Lun = 0
(4.52)
un+1
− Lune = ∆t O(∆xl )
e
(4.53)
und für die exakte Lösung
Die diskrete Dynamik wird also durch die modifizierte Gleichung in einer höheren Ordnung
approximiert als durch die ursprüngliche Dgl.
Wieder mal als Bspl. das Upwind-Verfahren (4.4). Umgeformt:
un+1
− unj + σ(unj − unj−1 ) = 0
j
mit σ = a∆t/∆x. Ersetze Differenzen durch Ableitungen:
∂u
1 ∂2u 2
∂u
1 ∂2u 2
3
∆t +
∆t + O(∆t ) + σ
∆x −
∆x + O(∆t∆x2 ) = 0
∂t
2 ∂t2
∂x
2 ∂x2
Teile durch ∆t, ersetze σ
∂u 1
∂u
+a
+
∂t
∂x 2
∂2u
∂2u
∆t − a 2 ∆x + O(∆t2 ) + O(∆x2 ) = 0
∂t2
∂x
Die zweite Zeitableitung wird durch die Wellengleichung (4.10) ersetzt und es folgt als
modifizierte Gleichung (auch manchmal als Modellgleichung bezeichnet) zum UpwindVerfahren.
∂uM
∂uM
1
∂ 2 uM
+a
= a∆x (1 − σ)
(4.54)
∂t
∂x
2
∂x2
D.h. die FDG addiert einen diffusiven Term zur ursprünglichen PDG dazu mit dem
Diffusions-Koeffizienten
1
D = a∆x (1 − σ)
2
Bem: Nur für D > 0 ist dies eine Diffusionsgleichung, woraus σ < 1 für die Stabilität folgt
(Hirt-Methode).
Dieser zusätzliche Term entspricht der intrinsischen numerischen Viskosität eines Verfahrens. (Im Ggs. zur explizit hinzugefügten künstlichen)
Verfahren erster Ordnung (z.B. Upwind) sind also diffusiv, wohingegen Verfahren zweiter
Ordnung (Fromm, Lax-Wendroff, ..) dispersiv sind.
So liefert z.B. Lax-Wendroff (→ Übungsaufgabe):
∂ 3 uM
∂uM
∂uM
∆t2 a 2
+a
=
σ −1
∂t
∂x
σ
∂x3
(4.55)
Die Gleichung hat also die Form
ut + aux = µuxxx
c W. Kley; Skript: Numerische Hydrodynamik
(4.56)
44
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
φ (x)
Abbildung 4.5: Eine diskontinuierliche Rechtecksfunktion ϕ(x).
mit dem Koeffizienten
∆t2 a 2
σ −1
σ
Daraus folgt, dass die Fourierkomponenten zu verschiedenen Wellenzahlen mit unterschiedlichen Geschwindigkeiten propagieren, die Welle also dispergiert.
Sei die Fourierentwicklung einer Funktion u(x, t) gegeben durch
Z ∞
u(x, t) =
û(k, t)eikx dk
µ=
−∞
Bei linearen Gleichungen können die Komponenten einzeln betrachtet werden. Suche
Lösung der Form (ebene Wellen)
ei(kx−ωt)
Einsetzen in die modifizierte Gl. des Lax-Wendroff Verfahrens (Gl. 4.56) liefert die DispersionsRelation
ω(k) = ak + µk 3
(4.57)
Die Ausbreitungsgeschwindigkeit der Wellen (Gruppengeschwindigkeit) ist gegeben durch
∂ω
= a + 3µk 2
(4.58)
∂k
Die Wellenausbreitungsgeschwindigkeit ist also von der Wellenzahl k abhängig: −→ Dispersion.
(Bem.: Die Phasengeschwindigkeit ist: uph = ω/k).
Beim Lax-Wendroff-Verfahren ist µ < 0 (für σ < 1), d.h. die Wellen sind zu langsam. Damit bilden sich z.B. Oszillationen hinter einer Diskontinuität (vgl. Übung: Transportierte
Kastenfunktion und Abb. 4.8). Bei Beam-Warming ist µ > 0, also sind die Oszillationen
vor der Diskontinuität.
4.8
Diskontinuitäten
Ein finites Differenzenverfahren soll auch für diskontinuierliche Funktionen (z.B. Stoßwellen in der Hydrodynamik) brauchbar sein. Betrachte z.B. eine Rechtecksfunktion φ(x),
siehe Abb. (4.5). Diese werde durch eine Fourierreihe approximiert
ϕs =
M
X
ak e2πkxi
(4.59)
k=−M
wobei M die Anzahl der Interpolationspunkte bezeichnet. Man findet:
c W. Kley; Skript: Numerische Hydrodynamik
4.8. DISKONTINUITÄTEN
45
Abbildung 4.6: Das Gibbs-Phänomen bei der Fourier-Interpolation einer Rechteckfunktion mit 64 (gestrichelt) und 256 (durchgezogen) Interpolationspunkten. Links global und
rechts lokal (aus Colella & Puckett).
• An den Sprungstellen geht der Wert von
max |ϕ(x) − ϕs (x)|
nicht gegen Null für M → ∞. Es treten bei den Diskontinuitäten Oszillationen auf,
das sog. Gibbs-Phänomen (siehe Abb. 4.6). Der Fehler bleibt bei etwa 14%.
• Die Oszillationen beeinflussen aber zunehmend kleineren Bereich um die Sprungstelle für große M .
• Die Fourier-Reihe ϕs (x) konvergiert in der L1 bzw. L2 -Norm gegen ϕ(x), aber nicht
gleichmäßig.
FD-Methoden haben ähnliche Eigenschaften bei Vorliegen einer Diskontinuität
• Konvergenz in L1 bzw. L2 , aber nicht gleichmäßig.
• Upwind: Produziert keine neuen Extrema (Max. oder Min.), welche nicht schon in
Lsg. waren. Kurze Wellenlängen werden gedämpft.
• LW/Fromm: Produzieren Oszillationen in der Nähe von Disk. Ist Eigenschaft von
Verfahren höherer Ordnung.
Wir betrachten dazu die Ergebnisse von Lösungen der linearen Transportgleichung mit
einer Rechteckfunktion der Breite 0.6 auf einem Gitter [−1.0, 1.0] mit periodischen Randbedingungen. Gerechnet wurde mit 600 Gitterpunkten, einer Courant-Zahl σ = 0.8 bis
zur Zeit tmax = 40.0. Die Lösungen werden für das Upwind- (Abb. 4.7) und Lax-WendroffVerfahren (Abb. 4.8) dargestellt.
a) Upwind:
c W. Kley; Skript: Numerische Hydrodynamik
46
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
Abbildung 4.7: Lösung des Kastenproblems für das Upwind-Verfahren.
• keine Oszillationen
• glatter monotoner Übergang
• Breite: O((t∆x)1/2 )
• Fehler in modifizierter Gl.: Diffusion
Abbildung 4.8: Lösung des Kastenproblems für das Lax-Wendroff-Verfahren.
b) LW:
• Oszillationen
• Phasenfehler
c W. Kley; Skript: Numerische Hydrodynamik
4.8. DISKONTINUITÄTEN
47
• Modifizierte Gl.: kleine Wellenlängen breiten sich langsamer aus als exakte Lsg.
(Dispersion)
• → verstärkte Oszillationen hinter Disk.
4.8.1
Lokale Betrachtung
Betrachte Flüsse im Detail. Wir untersuchen dazu die Netto-Balance der Zelle j, indem
wir für die verschiedenen Verfahren die Flüsse an einer Diskontinuität direkt ausrechnen.
Es gilt wieder a > 0 und die Zelle j befinde sich direkt an der Diskontinuität. Beim
Abbildung 4.9: Over- und Undershoot beim Fromm-Verfahren (aus Colella & Puckett).
Fromm-Schema (Abb. 4.9) führen die Gradienten ∆uj dazu, dass an den Rändern der
Zelle j gilt:
j-1 : Masse heraus < Masse herein → Overshoot.
j+1 : Masse heraus > Masse herein → Undershoot.
Also ergeben sich hier Oszillationen vor und hinter den Diskontinuitäten.
Beim Lax-Wendroff-Schema (Abb. 4.10) gilt:
j-1 : Masse heraus < Masse herein →: Overshoot.
j+1 : Masse heraus = Masse herein →: OK
Also ergeben sich hier Oszillationen hinter den Diskontinuitäten.
Beim Upwind-Schema (Abb. 4.11) gilt:
j-1 : Masse heraus = Masse herein →: OK
j+1 : Masse heraus = Masse herein →: OK
Hier ergeben sich alse keinerlei Oszillationen.
Aus dieser Betrachtung können wir schließen: Der Wertebereich der numerischen Lösung
(Interpolationspolynom) darf denjenigen der Anfangsdaten nicht überschreiten. (physikalisch ist z.B. die Dichte ρ immer positiv oder eine Konzentration immer im Bereich
0 < fx < 1).
Dies lässt sich in drei Bedingungen formulieren:
c W. Kley; Skript: Numerische Hydrodynamik
48
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
u
a ∆t
x
(j−2)∆x
(j−1)∆x
j ∆x
(j+1) ∆x
Abbildung 4.10: Over- und Undershoot beim Lax-Wendroff-Verfahren (nach Colella &
Puckett).
Abbildung 4.11: Over- und Undershoot beim Upwind-Verfahren (aus Colella & Puckett).
a) Erhaltung der Positivität
≥0
unj ≥ 0 → un+1
j
b) Erhaltung der Monotonizität
unj ≥ unj+1 → ujn+1 ≥ un+1
j+1
b) Beschränktheit
||Lu||∞ ≤ ||u||∞
Für lineare Gleichungen sind alle Punkte a) bis c) äquivalent.
Von den bisherigen Methoden sind Lax-Wendroff und Fromm nicht beschränkt, aber von
2. Ordnung. Nur das Upwind Verfahren erfüllt die Bedingungen.
Es stellt sich also die Frage: Existiert ein Verfahren 2. Ordnung, welches beschränkt in
der Supremum-Norm ist?
c W. Kley; Skript: Numerische Hydrodynamik
4.9. LITERATUR
49
Theorem (Godunov):
Sei
(Lu)j =
X
ck uj+k
k
ein lineares Schema, welches konsistent und beschränkt (Sup-Norm) ist mit mindestens
zwei ck 6= 0. Dann ist das Verfahren von höchstens 1. Ordnung (in O(∆x)).
Daraus folgt: Brauche ein nicht-lineares Verfahren für höhere Ordnung
un+1 = Lun
wobei L(u) ein nicht-linearer Operator ist.
Anders formuliert (LeVeque): Ein lineares, die Monotonizität erhaltendes Verfahren ist
maximal von erster Ordnung.
In der Nähe von Diskontinuitäten soll Verfahren erster Ordnung werden, ansonsten zweiter
Ordnung. Dies ist möglich durch:
• Slope-Limiter Methoden (Van Leer)
• Flux-Limiter Methoden, z.B. Flux-Corrected Transport (FCT, Boris & Book)
Hier werden wir uns vor allem mit der Slope-Limiter Methode befassen.
4.9
Literatur
Colella & Puckett, 1994, Modern Numerical Methods for Fluid Flow (Online
Skript)
LeVeque, R., 1990, Numerical Methods for hyperbolic conservation laws (Birkhäuser
Verlag)
Laney., 1999: Computational Gasdynamics (Cambridge University Press)
Roache, P.K., 1998: Fundamentals of Computational Fluid Dynamics (Hermosa Publisher, Albuquerque)
c W. Kley; Skript: Numerische Hydrodynamik
50
KAPITEL 4. LINEARE HYPERBOLISCHE GLEICHUNGEN
c W. Kley; Skript: Numerische Hydrodynamik
Herunterladen