nationales Forschungszentrum in der Helmholtz-Gemeinschaft
Institut für Angewandte und Numerische Mathematik
KIT - Universität des Landes Baden-Württemberg und
nationales Forschungszentrum in der Helmholtz-Gemeinschaft
www.kit.edu
Einführung in das Wissenschaftliche Rechnen
Skript zur Vorlesung im Sommersemester 2019
Christian Wieners
Version vom 6. Februar 2020
Inhaltsverzeichnis
Einführung 2
1 Die Potentialströmung 5
2 Finite-Elemente-Approximation 9
3 Lösen von dünn besetzten LGS 15
4 Gemischte und hybride Finite Elemente 28
5 Finite Volumen für die lineare Transportgleichung 39 5.1 Die lineare Transportgleichung . . . 39 5.2 Das Finite-Volumen-Verfahren . . . 41 5.3 Discontinuous-Galerkin-Verfahren . . . 46
6 Konvektions-Reaktions-Diffusions-Systeme 51
6.1 Die Konvektions-Reaktions-Diffusions-Gleichung . . . 51 6.2 Linear-implizite Verfahren (Rosenbrock-Typ) . . . 60 7 Discontinuous Galerkin-Methode für die Diffusionsgleichung 64 8 UQ (Uncertainty-Quantification) für die Diffusionsgleichung 68
Einführung
• Wie wird Wasserverteilung im Boden beschrieben?
• Wie wird die Ausbreitung von Verschmutzung beschrieben?
• Wie wird ein biologischer Abbauprozess beschrieben?
• Wie werden Unsicherheiten (Materialparameter) quantifiziert?
• Wie können die Parameter gemessen werden?
• Wie kann der Prozess (etwa durch Abpumpen) gesteuert werden? Vereinfachung möglich?
Numerische Methodenentwicklung:
• Wie können die Modelle approximiert werden?
• Ist das approximierte Modell eindeutig lösbar?
• Konvergieren die Approximationen?
• Wie berechnet man die Approximation effizient?
• Wie werden die Algorithmen realisiert?
• Wie werden die Ergebnisse dargestellt?
• Wie kann man die Effizienz/Qualität der Approximation/Algorithmen quantifizie- ren?
Struktur der Lösung einer Praktikumsaufgabe:
1. Problemstellung
2. Mathematisches Modell
3. Konfiguration eines Beispiels (Daten) 4. Numerische Methoden
5. Visualisierung der Ergebnisse 6. Qualitative Auswertung
7. Diskussion der Ergebnisse (Insgesamt 1-2 Seiten) Ergänzung B.Sc.-Arbeit (Literaturrecherche)
• Eigenschaften des Modells
• Eigenschaften der numerischen Verfahren (Insgesamt 40-60 Seiten) Anforderung Promotion: neue Methode / neues Ergebnis.
1 Die Potentialströmung
Problem
Ω ⊂ R3 beschreibe eine poröse Bodenschicht. Von oben sickert Regenwasser langsam nach unten ins Grundwasser. Ziel ist die Bestimmung der transportierten Wassermenge sowie deren Verteilung.
Modell
Sei q: Ω × [0, T] −→ R3 der Fluss mit divq = 0 und %: Ω ×[0, T] −→ R≥0 die Massendichte, d. h. für jedes KontrollvolumenY ⊂Ωist durch
Z
Y
%(x, t) dx
die Wassermenge inY zum Zeitpunkttgegeben. Die zeitliche Änderung der Wassermenge inY ergibt sich durch den Zu- und Abfluss am Rand vonY. Dieser Zusammenhang lässt sich mithilfe der Bilanzgleichung
d dt
Z
Y
%(x, t) dx=− Z
∂Y
%(x, t)q(x, t)·nda .
mathematisch formulieren. Dabei bezeichne ∂Y den Rand von Y und n die nach außen orientierte Einheitsnormale auf∂Y. Der Gaußsche Integralsatz liefert
d dt
Z
Y
%(x, t) dx=− Z
∂Y
div(%q) da .
Damit erhält man die partielle Differentialgleichung
∂t%+ div(%q) = 0.
Im Fall ∂t% ≡ 0 spricht man von einer stationären Strömung. Ist außerdem die Dichte
%≡%0 konstant, vereinfacht sich die partielle Differentialgleichung zudivq= 0.
(1.1) Lemma
Seidivq = 0 inΩ. DefiniereΓin = {x ∈∂Ω : q(x)·n(x) <0}undΓout = {x ∈∂Ω : q(x)·n(x)>0}. Dann gilt
Z
Γin
q·nda=− Z
Γout
q·nda
Beweis.
0 = Z
Ω
divqdx= Z
∂Ω
q·nda= Z
Γin
q·nda+ Z
Γout
q·nda
Darcy-Gesetz Das Darcy-Gesetz
q =−κ(∇p−G)
beschreibt den Fluss eines Fluids in einem porösen Medium, dabei sind p: Ω−→R hydrostatischer Druck
κ: Ω −→R3×3sym Permeabilitätstensor G= (0,0, %0g0)T Gravitation.
Ist die Permeabilität richtungsunabhängig, d. h.κ =κ0I, spricht man von isotropem Ver- halten. Wenn zusätzlichκ ≡κ0 konstant ist, dann ist die Permeabilität ortsunabhängig (=
homogen).
Mit der Hilfsgrößeu(x) =−p(x)+%0g0x3vereinfacht sich das Darcy-Gesetz zuq =κ∇u.
Damit ergibt sich die partielle Differentialgleichung divκ∇u= 0.
Bemerkung
Im Fall ortsunabhängiger Permeabilität entspricht das der Laplace-Gleichung (div∇u=)∆u= 0.
Randwertaufgabe
Sei∂Ω =ΓN∪ΓD. Durch die Vorgabe von Funktionen uD: ΓD−→R (Dirichlet-Werte)
gN: ΓN−→R (Neumann-Werte) ergibt sich die Randwertaufgabe: Bestimmeu: Ω−→Rmit
divκ∇u = 0 inΩ u = uD aufΓD κ∇u·n = gN aufΓN. 2D-Reduktion
Sei Ω2D = {(x1, x3) ∈ R2 : (x1,0, x3) ∈ Ω3D} ein Querschnitt von Ω2D. Die Lösung sei lokal bei Ω0 symmetrisch um x2 = 0. Dann gilt ∂2u3D = 0. Mit u2D(x1, x3) = u3D(x1,0, x3)folgt
divκ2D∇u2D = 0,
wobei κ2D(x1, x3) ∈ R2×2sym. Man kann also allgemein von Ω ⊂ RD und κ ∈ RD×Dsym
ausgehen, wobeiDdie Werte2und3annehmen kann.
Beispiel
SeiΩ = (0,1)2, ΓD = [0,1]× {0}, ΓN=∂Ω\ΓD, uD ≡0, κ=Iund gN(x) =
(−1 fallsx3 = 1
0 sonst .
Die exakte Lösung der zugehörigen Randwertaufgabe lautetu(x1, x3) =−x3, denn dann gilt
∆u= 0, sowie
∇u·n =
−1 fallsx2 = 1 1 fallsx2 = 0 0 sonst
.
Schwache Formulierung (1.2) Lemma
a) Seidivq = 0inΩ, dann gilt für jede Testfunktionφ: Ω−→Rmitφ= 0aufΓD Z
Ω
q· ∇φdx= Z
∂Ω
q·nφda
b) Sei
Z
Ω
q· ∇φdx= Z
∂Ω
gφda
für alle Testfunktionen. Dann giltdivq = 0inΩundq·n=g auf∂Ω.
Beweis. a)
div(φq) =∇φ·q+φdivq
⇒ Z
∂Ω
φq·nda= Z
Ω
∇φ·qdx+ Z
Ω
φdivqdx
b)
Z
∂Ω
φ(q·n−g) da= Z
Ω
φdivqdx
⇒divq= 0inΩ
⇒q·n−g = 0auf∂Ω.
Anwendung auf Randwertaufgabe Starke Form:
divq= 0, q=−κ∇uinΩ
−q·n=gNaufΓN,u=uDaufΓD Schwache Form:
Z
Ω
κ∇u· ∇φdx= Z
ΓN
gNφda
∀φmitφ = 0aufΓD
2 Finite-Elemente-Approximation
Um numerisch eine näherungsweise Lösung der schwachen Formulierung der Potential- strömung zu bestimmen, werden ein endlich-dimensionaler Funktionenraum Vh konstru- iert und einuh ∈Vh mituh ≈uDaufΓDund
Z
Ω
κ∇uh· ∇φhdx= Z
ΓN
gNφhda ∀φh ∈Vhmitφh = 0aufΓD (1) bestimmt.
Wir betrachten im Folgenden den Spezialfall, dass Ω ⊂ R2 ein Polygongebiet ist. Die hier vorgestellte Vorgehensweise lässt sich auf dreidimensionale Problemstellungen über- tragen. Es sei eine ZerlegungΩ = S
K∈KK vonΩ in Dreiecke oder Vierecke gegeben.
Diese sogenannten Zellen werden über
K = conv(VK) mit
VK =
({zK,0, zK,1, zK,2} ⊂R2 Dreieck {zK,0, zK,1, zK,2, zK,3} ⊂R2 Viereck beschrieben. Die Menge aller Eckpunkte der Zerlegung wird mit
VK = [
K∈K
VK ={z1, . . . , zN} notiert. Im Folgenden sei die ZerlegungKzulässig.
(2.1) Definition
Eine ZerlegungKheißt zulässig, wenn für alleK, K0 ∈ K conv(VK∩ VK0) = convVK ∩convVK0
gilt, d. h. wenn der Durchschnitt von zwei (verschiedenen) Zellen leer, eine Ecke oder eine Kante ist.
Idee
Wähle Knotenwerteu(z)für z ∈ VK und interpoliere die Werte in jedemK ∈ K linear (bei Dreiecken) oder bilinear (bei Vierecken). Um effizienter rechnen zu können, wird zunächst eine Referenzzelle festgelegt.
Referenzdreieck
Bei einer Zerlegung in Dreiecke wird das Referenzdreieck Kˆ = conv
ˆ z0 =
0 0
,zˆ1 =
1 0
,zˆ2 =
0 1
betrachtet. Die affin-lineare KoordinatentransformationϕK: ˆK −→Ksei durch ϕK(ξ) = zK,0+BKξmitBk = DϕK
gegeben und liefert für jedesK ∈ K den Übergang vom ReferenzdreieckKˆ aufK. Auf dem ReferenzdreieckKˆ wird der Ansatzraum
Vˆ = span{λˆ0,λˆ1,λˆ2}=P1( ˆK) mit
λˆ0(ξ) = 1−ξ1−ξ2 λˆ1(ξ) = ξ1
λˆ2(ξ) = ξ2 definiert. Nach Konstruktion gilt dann
λˆi(ˆzj) =
(1 i=j 0 i6=j .
Für den Ansatzraum auf dem DreieckK ∈ Kergibt sich über die Koordinatentransforma- tionϕK
VK = span{λˆi◦ϕ−1K :i= 0,1,2}=P1(K).
Die Kroneckereigenschaft
λˆi◦ϕ−1K (zj) =
(1, i=j 0, i6=j bleibt so erhalten.
Referenzviereck
Bei einer Zerlegung in Vierecke werden auf die gleiche Weise ein Referenzviereck Kˆ = conv
ˆ z0 =
0 0
,zˆ1 =
1 0
,zˆ2 =
1 1
,zˆ3 =
0 1
sowie die zugehörige KoordinatentransformationϕK: ˆK −→K ϕK(ξ) =zK,0+BK(ξ)mitBK(ξ) = DϕK(ξ) definiert. Mit den Ansatzfunktionen
λˆ00(ξ) = (1−ξ1)(1−ξ2) λˆ01(ξ) = (1−ξ1)ξ2 λˆ10(ξ) = ξ1(1−ξ2) λˆ11(ξ) = ξ1ξ2
ergeben sich wie eben die lokalen Ansatzräume Vˆ = span{λˆ00,ˆλ01,λˆ10,ˆλ11} undVK = span{λˆij ◦ϕ−1K : i, j = 0,1}.
Legt man zu jedemK ∈ Kmithilfe einer Abbildung
µK: IKˆ −→Ih ={1, . . . , N}
und
IKˆ =
({0,1,2} Dreieck {0,1,2,3} Viereck
die Zuordnung zwischen den Ecken von K und denen der Referenzzelle Kˆ fest, ergibt sich inK der Zusammenhang
φk(x) = ˆλi◦ϕ−1K (x) mitµK(i) = k. Folglich gilt inK
Dφk(x) = ˆDˆλi(ˆx)Dϕ−1K (x)mitϕK(ˆx) =x bzw.
∇φk(x) =BK−T(ˆx) ˆ∇λˆi(ˆx).
Finite-Elemente-Approximation
Zu einer gegebenen ZerlegungKmit der maximalen Kantenlängeh= maxK∈Kdiam(K) werden die Finite-Elemente-Ansatzräume
Vh ={φh ∈C(Ω) :φh|K ∈VK ∀K ∈ K}
und
Vh(uD) = {φh ∈Vh: φh(z) = uD(z), z ∈ VK∩ΓD}
definiert. Aus der schwachen Formulierung (1) ergibt sich damit die Finite-Elemente- Formulierung: Bestimmeuh ∈Vh(uD)mit
X
K∈K
Z
K
κ∇uh· ∇φhdx= Z
ΓN
gNφhda ∀φh ∈Vh(0).
Unter Verwendung der Knotenbasis{λ1, . . . , λN}vonVhmit ˆλn(ˆzk) =
(1 n=k 0 n6=k
erhält man die äquivalente algebraische Formulierung: Sei I = {1, . . . , N} und ID = {h ∈ I: zh ∈ ΓD} die Indexmenge der Knoten, die auf dem Dirichletrand ΓD liegen.
Bestimmeu∈RN mituh =P
unλn ∈ Vh(uD)und
N
X
n=1
unX
K∈K
Z
K
κ∇λn· ∇λkdx= Z
ΓN
gNλkda, ∀k ∈ I \ ID.
Wir definieren nun die SteifigkeitsmatrixA ∈RN×N und den Lastvektorb∈ RN über
A[k, n] =
P
K∈K
R
K
κ∇λn· ∇λkdx, k /∈ ID
1, n =k ∈ ID
0, n 6=k ∈ ID
und
b[k] =
R
ΓN
gNλkda k /∈ ID
uD(zk) k ∈ ID . Damit ergibt sich das zu lösende lineare Gleichungssystem
A u=b.
Nach Konstruktion gilt uk = uD(zk) für k ∈ ID. Zur Bestimmung von A wird auf den Zellen der Zerlegung K und den Basisfunktionen λn mit Einschränkungen λK,n auf K gerechnet:
A[n, k] = Z
Ω
κ∇λK,k· ∇λK,ndx= X
K∈K
Z
K
κ∇λK,k· ∇λK,ndx.
Den Vorgang des Zusammenfügens vonAbezeichnet man alsAssemblieren. Die Integra- tion auf jeder Zelle wird über
X
K∈K
Z
K
κ∇λK,k· ∇λK,ndx= X
K∈K
Z
Kˆ
det DϕKκ∇λK,k◦ϕK· ∇λK,n◦ϕKdˆx
auf die Referenzzelle transformiert. Dort wird mit Hilfe eines Quadraturverfahrens nume- risch integriert. Fallsκ|K für alleK ∈ Kkonstant ist, ergibt sich
A[n, k] = X
K∈K
X
ξ∈Ξ
wξdetBK(ξ)κ◦ϕKBK−T(ξ) ˆ∇ˆλK,k(ξ)·BK−T(ξ) ˆ∇λˆK,n(ξ).
Für das Referenzdreieck werden Ξ =
1 3 1 3
und ωξ = 1 2 verwendet, für das Referenzviereck
Ξ = α
α
,
1−α α
,
α 1−α
,
1−α 1−α
mitα=
√2−1 2√
2 undωξ = 1 4. Algorithmus
A0) A= 0,b = 0 A1) ∀K ∈ K:
A = A+RTKAKRK, b = b+RTKbKd.h.A[rk,n, rk,k] = A[rk,n, rk,k] +AK[n, k], b[rk,n] =b[rk,n] +bK[n]
A2) ∀k ∈ ID :b[k] =uD(zK), A[k, k] = 1, A[k, n] = 0fürn 6=k A3) ∀k ∈ ID, n6=k :b[n] =b[n]−A[n, k]uD(zk)
(2.2) Lemma
Seiκuniform symmetrisch positiv definit, d. h. κy·y ≥ κ0|y|2 ∀y ∈ RD mitκ0 >0und seiΓD∩ Vh6=∅. Dann istAregulär.
Beweis. Per Konstruktion gilt:Aist symmetrisch positiv definit, also zeige A v·v = 0⇔v = 0
Sei alsoA v·v = 0. Außerdem gilt A v·v =X
K
X
ξ
wξ|detBK|κ∇v(ϕK(ξ))· ∇v(ϕK(ξ))
≥κ0X
K
X
ξ
wξdetBK|∇v(ϕK(ξ))|2
=κ0 Z
Ω
|∇v|2dx
⇒ ∇v = 0inΩ
⇒v ≡const inΩ
Mit zK ∈ΓD∩ Vh ⇒ v[k] = 0 ⇒ v(zk) = 0 ⇒ v ≡0.
Bemerkung
Im Folgenden seiA0 ∈RN×N gegeben durch
A0[n, k] =
A[n, k] n, k /∈ ID
1 n=k∈ ID
0 n6=k∈ ID
0 k6=n∈ ID
.
Nach Satz 2.2 istA0 positiv definit. Zerlegt manuin u=u0+uD ergibt sich das äquivalente Gleichungssystem
A0u0 =b−AuD.
Man kann also ohne Einschränkung annehmen, dassApositiv definit ist.
3 Lösen von dünn besetzten LGS
Ein Vorteil der finiten Elemente Methode ist, dass die auftretenden Matrizen in der Regel dünnbesetzt sind. Deswegen ist es von Vorteil spezielle Lösungsverfahren für dünnbesetz- te Gleichungssysteme zu verwenden.
Betrachte eine Familie von linearen GleichungssystemenAu=binRN. SeiI ={1, ..., N} die Index- Menge,|I|= N undG= GA ={(n, k) ∈ I × I : A[n, k]6= 0}der Matrix- graph.
(3.1) Definition
Eine Matrix heißt dünn besetzt , wenn|GA|=O(N). Sonst heißt sie voll besetzt.
(3.2) Lemma
SeiIK ={k ∈ I :K ⊂suppφk}={k ∈ I :zk ∈ VK}.
a) Dann gilt für den Graph der FE- Matrix
G⊂[
IK× IK und |G| ≤N(max
k∈I |{K :zk∈ VK}|+ 1).
Bemerkung (D=2): Seiγ0 der kleinste Innenwinkel aller ZellenK. Dann ist|G| ≤ (2πγ
0 + 1)N.
b) Das Assemblieren benötigtO(N)Operationen.
c) Die MultiplikationAubenötigtO(N)Operationen.
d) Das compressed row storage format benötigt O(N) Speicher: Sei M = |G| die Anzahl der Matrixeinträge ungleich Null. Sei außerdem
a[m], m= 1..., M, Vektor der Matrixeinträge 6= 0 c[m]in{1, ..., N}Spaltenindex vona[m]
d[n]∈ {1, ..., M + 1}, n= 1, N+ 1mitd[1] = 1, d[N + 1] =M + 1Diagonalpointer.
Dann werden die Einträge der MatrixAfolgendermaßen gespeichert:
A[n, c[m]] = a[m] fürm=d[n], ..., d[n+ 1]−1, n= 1, ..., N
⇒(Au)[n] =
d[n+1]−1
X
m=d[n]
a[m]u[c[m]].
Assemblieren
SeiAK[i, j] = Z
K
K∇(ˆλj ◦ϕ−1K ) dx
VK = {zµK(i) : 1≤i≤VK} ⊂ V, VK =|VK|
A = X
K
RTKAKRK mitRK ∈RVK×V
RK[i, n] =
(1 µK(i) =n
0 sonst .
Nested Dissection SeiΩ= S
p∈P
Ωp,P ={1, ..., P}, Ωp∩Ωq =∅mitp, q ∈ P, p6=qeine nichtüberlappende Gebietszerlegung(Ωp∩Ωq6=∅)mit SkeletonΓP =Ω∩(∪∂Ωp).
SeienIp ={n:zn ∈Ωp\ΓP}Indizes zu inneren Knotenpunkten inΩp undIΓ ={n ∈ I :zn ∈ΓP}Interface- Indizes. Dann gilt:A[n, k] = 0fürn ∈Ωp, k ∈Ωq(p6=q).
A=
A11 0 AΓ1
. .. ... 0 App AΓ p A1Γ · · · ApΓ AΓ Γ
Aufwand in 2D:O((NP)2) +O((P(NP)12)3), fallsp < √ N.
Das folgende Lemma zeigt, dass das Schurkomplement die Invertierbarkeit der ursprüng- lichen Matrix erbt.
(3.3) Lemma
WennAsymmetrisch positiv definit ist, dann ist das Schurkomplement S =AΓ Γ −
P
X
p=1
AΓ pA−1ppApΓ ebenfalls symmetrisch positiv definit, und es gilt füru=A−1b:
uΓ = S−1(bΓ −X
A−1ppApΓbp), up = A−1pp(bp−ApΓuΓ).
Beweis. AusAppup =bp−ApΓuΓ folgt AΓ ΓuΓ = bΓ −X
AΓ pup =bΓ −X
AΓ pA−1pp(bp−ApΓuΓ)
⇒SuΓ = bΓ −X
AΓ pA−1ppbp. SeivΓ 6= 0undvp =−A−1ppApΓvΓ
⇒SvΓ ·vΓ =AΓ ΓvΓ ·vΓ −X
(A−1ppApΓvΓ)(ApΓ ·vΓ)
=AΓ ΓvΓ ·vΓ −X
vp(Appvp)
=Av·v
⇒SvΓ ·vΓ =Av·v = 0
⇒v = 0 ⇒ vΓ = 0
⇒S ist positiv definit.
Nun wähle
P = 2S, Ω0,1 =Ω Ω1,1∪Ω1,2 =Ω rekursiv
Ωs,q = Ωs+1,2q−1∪Ωs+1,2q, q= 1, ...,2S Ωp = ΩS,p, p= 1, ...,2S =P.
Nested Dissection: Rekursive Anwendung von Lemma 3.3 fürs=S−1, S−2, ...,0.
Beispiele für Partitionierungsverfahren
Sobald die Finite Elemente Methode parallel ausgeführt wird, was in der Praxis der Regel entspricht, muss das zugrunde liegende Gebiet auf die einzelnen Prozesse verteilt werden.
Dies geschieht mit Hilfe eines Partitionierungsverfahrens.
A) Rekursive Koordination - Bisektion (RCB) SeizK = |K|1 P
z∈VK
z ∈R2Zellenmittelpunkt Definiere
z <1 y⇔z[1]< y[1]oderz[1] =y[1]undz[2]< y[2]) z <2 y⇔z[2]< y[2]oderz[2] =y[2]undz[1]< y[1]) s= 0: I0 = 1, ..., N ,VK =z1, ..., zN fürN =|K|, zn=zKn
I0 =I1,1∪ I2,2 mitz <1 y fürz ∈ I1,1, y ∈ I1,2
s= 2: I0 =I2,1∪ I2,2∪ I2,3∪ I2,4 mit Is−1,t =Is,2t−1∪ Is,2tundz <2 y
Fahre nun mit abwechselnder Sortierung rekursiv fort, bis das Gebiet weit ge- nug zerlegt ist. Das Verfahren ist sehr schnell, allerdings nicht invariant gegen- über Gebietstransformationen und in ungünstigen Fällen wird das InterfaceIΓ sehr groß.
B) Rekursiv Trägheits- Bisektion (RIB)
Definiere diskreten Laplace- Operator zum Graphen
ΓK = {(K, K0) :∂K∩∂K0 =f gemeinsame Seite} ⊂ K × K dK = |{K0 6=K : (K, K0)∈ΓK}|
L[K, K0] =
dK K =K0
−1 (K, K0)∈ΓK
0 sonst
L·e= 0 mite= (1, ...,1)> ∈RNK ⇒symmetrisch, positiv definit
Wir approximieren den Eigenvektor w ∈ W = v ∈RNK :v·e= 0 zum kleinsten Eigenwertµ >0vonLw =µw.
w·e= 0 ⇒Definiere
K1,1 ={K :w[K]>0},K1,2 =K \ K1,1. Inverse Iteration zur Eigenwert- Berechnung:
I0) Wählew0 ∈RNK \ {0, e}, k = 0, ε >0
I1) Approximierewk≈(L|w)−1wk−1durch einige cg-Schritte.
I2) berechnewk:= |w1k|wk, µk =Lwk·wk I3) falls|µk−µk−1|< εSTOP
I4) gehe zu I1)
Dieses Verfahren ist invariant gegenüber Gebietstransformationen.
C) Space-Filling Curve
Definiere eine Kurveγ : [a, b]→Ω, die jede Zelle genau einmal durchläuft. Damit wird eine Nummerierung inKdefiniert. Setze
Iq ={K[(q−1)M
p]+1, ..., K[qM
p]}.
Damit ensteht eine hierarchische Konstruktion, die auf unregelmäßige Gitter er- weiterbar ist. Allerdings ist das Verfahren aufwendig und nicht optimal.
Netzgenerierung
Wenn ein GebietΩgegeben ist, muss dieses erst in Zellen zerlegt werden, bevor die Finite Elemente Methode anwendbar ist. Da nicht jedes Gebiet eine regelmäßige Struktur hat, sind verschiedene Methoden zur Netzgenerierung nötig.
A) Strukturierte Gitter
1) Wähle BoxΩ ⊃[α1, β1]×[α2, β2].
Wähleh >0und GitterΓh =hZ2∩Ω.
Konstruiere regelmäßiges Vierecksgitter zuΓh.
2) Wähle weitere Punkte auf dem Rand ∂Ω und konstruiere (unregelmäßige) Vierecke am Rand.
3) Verschiebung einiger Knoten, um gleichmäßigere Vierecke zu erhalten (bzw.
Einfügen von Dreiecken).
Dieses Verfahren hat den Vorteil, dass es schnell durchführbar ist, allerdings ist es nicht geeignet den Rand gut zu approximieren.
B) Advancing Front
1) Wähle (gleichmäßige) Punkte auf dem Rand.
2) Konstruiere eine Elementschicht entlang dem Rand, so dass ein neuer innerer Rand entsteht. Wiederhole diesen Prozess so lange die inneren Ränder nicht zusammenstoßen.
3) Verbinde die inneren Ränder durch Elemente.
4) Glätten der entstandenen Zellen.
Bei diesem Verfahren entstehen bessere Elemente am Rand, allerdings ist die Kolli- sionskontrolle im Inneren aufwendig.
C) Voronoi- Konstruktion
1) Wähle gleichmäßig verteilte Punkteznauf dem Rand und im Inneren.
2) Bilde Voronoi-Zellen
Cn ={z∈Ω :|z−zn| ≤ |z−zk| ∀k 6=n}konvex!
3) Bilde Kanten:
E ={(zn, zk) :n 6=k, Cn∩Ckgemeinsame Seite}
4) Bilde zugehöriges Dreiecksnetz (Tetraedernetz).
Der Vorteil dieses Verfahrens sind die guten Netze die entstehen, allerdings ist man auf Dreiecke eingeschränkt.
Iterative Lösungsverfahren
SeiB ∈RN×N ein Vorkonditionierer zuA=L+D+RmitB ≈A−1, z.B.
A) Jacobi,BJac =D−1
B) Gauß-SeidelBGS = (L+D)−1 C) Sym. Gauß-Seidelc=BSGSrmit
c1 = BGSr r1 = r−Ac1
c = c1+BGS> r1
⇒BSGS = BGS+BGS> −BGS>ABGS D) Parallele Vorkonditionierer zuA= P
p∈P
Ap
WähleBp zuRpAR>p. Definierec=BPrmit cp = A−1p Rpr
c = X
R>pcp
E) Zweigitter- Verfahren mitA=A1, A0 =R0A1R>0 und
RestriktionenR0: RN →RN0 mitN0 < N und ProlongationR>0 : RN0 →RN Definierec=BZGrdurch:
Glätten:
c1 = BGSr r1 = r−Ac1 r0 = R0r1 Grobgitterkorrektur:
c0 = A−10 r0 c = c1+R>0c0 Symmetrische Variante: Nachglätten mitBGS>.
F) Mehrgitter:A=AL, AL−1 =RL−1ALR>L−1, ...rekursiv glätten.
G) Least Squares:
1) Wähleε > 0als Abbruchbedingung undΘ > 0 als Reduktionsfaktor. Seiu0 gegeben. Setze
k = 0, r0 =b−Au0, ϕ0 =|r0| 2) falls%k<max{Θ%0, ε}STOP
3) Wähle
ck−1 = Brk rk+1 = rk−Ack uk+1 = uk+ck 4) k:=k+ 1, gehe zu 2)
Es gilt
rk = (I−BA)kr0
⇒ %k≤ kIN −BAkk%0
⇒ FallskIN −BAk<1, so konvergiert LS FallsIN −BAnormal und| · |=| · |2, so gilt
%k
%0 →%(IN −BA) Krylov- Raum- Verfahren
Krylov- Raum- Verfahren sind eine Klasse von iterativen Verfahren zum Lösen von dünn- besetzten Gleichungssystemen.
Berechne eine ONB im Krylov- RaumKk(BA, Br) = {P(BA)Br : P ∈ Pk−1}, wobei A, B symmetrisch, positiv definit sind. Es gilt in der Energienorm|u|A=√
Au·u:
1) Wähleε,Θ>0, gegebenx0 Setze
k = 0, r0 =b−Ax0, ϕ0 = 1, p0 =u0 2) Falls|rk|<max{Θ|r0|, ε} STOP
3) Setze
ck = Brk
%1 = c·r pk := %1
%0
pk pk+1 := pk+ck
%0 = %1 qk+1 = Apk+1
α = %0
pk+1·qk+1 uk+1 = uk+αkpk+1
rk+1 = rk−αqk+1 4) k :=k+ 1, gehe zu 2)
Es gilt in der Energienorm|u|A =√
Au·u:
|uk−u0|A≤2 √
κ−1
√ κ+ 1
k
|u1−u0|Amitκ =κ(BA).
Das Folgende wurde im SS’15 in der Vorlesung notiert nach Space-Filling Curve:
Subspace Correction Methode
SeiA ∈RN×N, Np < N, p∈1, ..., P , Rp ∈RNp×N, Ap =RpAR>p. Beispiel:
A ist FE-Matrix, sei weiter N = |VK|, Vh = span{λ1, ..., λN},VK = {z1, ..., zN} =
∪ VK. Sei zudemK= S
p∈P
Kpnicht überlappend undVP = S
k∈KP
VK überlappend.
RP[n, k] ={zP,1, ..., zP,NP}
=
(1 zP,n=zK 0 sonst Nun wähleBP ≈A−1P .
Beispiel:
1) BP =A−1P LU-Zerlegung
2) BP = (diagAP)−1 Jacobi-Verfahren
3) BP = (diagAP + lower AP)−1 Gauß-Seidel Parallel Subspace Correction
P0) Wähleu0 ∈RN (u0[n] =uD(zn), zn∈ΓD)
Berechner0 =b−Au0, setze k= 0, und wähle ε >0, θ >0
P1) Falls|rk|< ε STOP
P2) ∀p: berechne
cp =BPRPrk und ck =X R>PcP P3)
uk+1 =uk+θck rk+1 =rk−θAck
P4) Setzek :=k+ 1, gehe zu P1).
Sucsessive Subspace Correction
P2)* Setzer˜=rk für p= 1, ..., P : cP =BPRPr˜ dann ˜r:= ˜r−AR>PcP. Symmetrisierung
Für ungeradekersetzeBP durchBP>.
⇒fallsA, BP positiv definit: CG-Verfahren.
Poisson Problem
Sei Ω ⊂ RN beschränkt. Suche u : Ω → R, sodassu ∈ C2(Ω)∩C(Ω)und∂Ω = ΓD∪ΓNmit
−∆u=f inΩ
u=gaufΓD (P)
∇un =haufΓN wobeif ∈C(Ω) und g, h∈C(∂Ω) gegeben.
Spezialfall: Fürf = 0 ⇒ Laplace-Gleichung
Schwache Formulierung
u∈L1(Ω) ist schwache Lösung von (P), falls Z
Ω
−∆uvdx= Z
Ω
∇u· ∇vdx+ Z
∂Ω
∇un·vda
= Z
Ω
∇u· ∇vdx+ Z
ΓN
∇un·vda
= Z
Ω
f·vdx
∀v ∈ V(0) wobeiV(0) =H0,Γ1
D :={v ∈V :v = 0 auf ΓD} mit v =H1(Ω) :={v ∈ L2(Ω) :v besitzt schwache Ableitung ∂iv ∈L2(Ω)}.
Sucheu∈V(g) := {u∈V :u=g auf ΓD}, sodass a(u, v) :=
Z
Ω
∇u· ∇vdx
= Z
Ω
f vdx+ Z
ΓN
∇un·vda (VP)
:=hl, vi ∀v ∈V(0).
Galerkin-Verfahren
Wähle endlich dimensionalen Ansatzraum bzw. TestraumVh ⊂ V mi Knotenbasis{λz : z ∈ V}, V ={z1, ..., zn}. Dann ist
vh =X
z∈V
vzλz,
a(uh, vh) = hl, vhi ∀vh ∈Vh(0) mit uh =g auf ΓD und uz =g(z)∀z∈ΓD∩ V.
Das heißt u>NAN =l> mit AN = (a(λz, λz))z,z und l = (hl, λzi)z.
Au=
AN 0 0 I
uN uD
=
l g(z1D)
... g(znD)
Ritz-Galerkin-Verfahren
Genau dann istuh ∈Vh Lösung von (VP), wenn sie das Energiefunktional E(uh) = 1
2a(uh, uh)− hl, uhi
= 1
2u>Au−l>u mituh =g aufΓD minimiert, das heißt suche Nullstelle von
∇E(uh) =A>u−l = 0!
∇2E(uh) =A>=A symmetrisch positiv definit.
Dann linearisieren:
∇E(uk)≈ ∇E(uk−1) +∇2E(uk−1)∆wk = 0! Im Newton-Schritt:
∆wk=−(∇2E(uk−1))−1∇E(uk−1) Setzeuk =uk−1 −∆wk
STOP:k∇E(uk)k< ε.
(3.4) Satz
SeienA, Bp symmetrisch positiv definit und seiB ∈RN×N mituk+1 =uk+θBrk, d.h.
additiv/parallel:B =P
R>pBpRp multiplikativ/successive:IN −BA=
P
Q
p=1
(IN −R>pBR0a).
Dann existiert
Θ0 >0 mit %=||IN −ΘBA||A<1 für Θ∈(0,Θ0) und es gilt
|u−uk|A≤%k|u−u0|A mit |y|A = p
y>Ay, ||C||A = sup
y6=0
|Cy|A
|y|A = ||L>CL−T||2 und A = LL> Cholesky- Zerlegung.
Beweis.
|u−uk|A=|(IN −ΘBA)k(u−u0)|A≤ ||IN −ΘBA||kA|u−u0|
||IN −ΘBA||A=||IN −ΘL>BL||2 = sup
λ∈σ(L>BL)
|1−Θλ|
wobei gilt σ(L>BL) = σ(BA)∈[λmin, λmax]⊂[0,∞]
⇒ Θopt = 2 λmin+λmax
⇒ ||IN −ΘBA||A<1 für Θ< 1 λmax. Krylovraum:
(BA)u=Bb soll berechnet werden
⇒ berechneuk∈u0 und span{P(BA)Br0 : P ∈Pk−1}
⇒ berechne optimalesP (3.5) Satz
a) SeienA, B symmetrisch positiv definit undαy>Ay ≤ y>ABAy ≤ Cy>Ay. Dann gilt für das cg-Verfahren:
|uk−u|A≤2 √
κ−1
√κ+ 1 k
|u−u0|A
mitκ= C α
b) SeienA, B regulär undαy>y ≤y>BAy,||BA||2 ≤C. Dann gilt für GMRES
|uk−u|2 ≤κ2(BA)(1−κ2)k2|u−u0|2. Multilevel-Vorkonditionierer
SeiVH ⊂ Vh ein Finite-Elemente-Raum in einer gröberen Triangulierung. Wir elimi- nieren alle Dirichlet-Freiheitsgrade
{λ1, ..., λN} KnotenbasisVh(0) N = dimVh(0) {λH1 , ..., λHN
0} KnotenbasisVH(0) N0 = dimVH(0) < N.
Es existiert einR0 ∈RN0×N mitλHk =
H
P
n=1
R0[k, n]λn. Wir habenA∈RN×N undA0 ∈RN0×N mit Einträgen
A[k, n] = Z
κ· ∇λn· ∇λkdx=:a(λn, λk) A0[k, n] =a(λHn, λHk)
(3.6) Lemma
a) Es gilt für die so definierten MatrizenA0 =R0AR>0 (Galerkin-Produkt) b) P0 =R>0A−10 R0A (Galerkin-Projektion) Orthogonal-Projektion bzgl.
hy, ziA=y>Az.
Beweis.zu a)
A0[k, n] =a(λHn, λHk) = a X
n0
R0[n, n0]λn0,X
k0
R0[k, k0]λk0
!
=X
n0,k0
R0[n, n0]R0[k, k0]a(λn0, λk0)
= (R0AR>0)[k, n]
zu b)
P02 = (R0>A−10 R0A)2 =R>0A−10 R0AR>0A−10 R0A
=R>0A−10 R0A=P0 DaP02 =P: Projektion aufP0(RN) =R>0(RN0)
(IN −P0)2 =IN −2P0−P02 =IN −P0
Ist es auch Orthogonalprojektion bzgl- Skalarprodukt?
hP0v,(IN −P0)wiA=v>P0>A(IN −P0)w
=v>(P0>A−P0>AP0)w Nebenrechnung:
P0>AP0 =AR>0A−10 R0AR>0A−10 RA=P0>A
Zweilevel-Verfahren
Z0) Wähleu0 ∈RN, berechner0 =b−Au0, setzek = 0, wähleε >0 undΘ>0 Z1) Falls|rk|< ε STOP
Z2) ck0 =A−10 R0rk (Grobgitterkorrektur) Z3) ck =R>0ck0 +B(rk−AR0>ck0) (Glätten)
Z4) uk+1 =uk+ck, rk+1 =rk−Ack und setzek =k+ 1, gehe zu Z1) (3.7) Satz
a) Es gilt
u−uk+1 = (IN−BA)(IN−P0)(u−uk)
b) SeiA, B symmetrisch positiv definit, ||BA||A ≤ 1 undv>Av ≤ Cv>ABAv für P0v = 0. Dann gilt
||(IN−BA)(IN−P0)||A ≤ r
1− 1 c. Bemerkung
C >0 ist unabhängig vonN, wennB ≈A−1 aufN(P0) ={v ∈RN :P0v = 0}.
Beweis. A=LL> Cholesky-Zerlegung, w1, ..., wNOrthonormalbasis zu Eigenwertµnvon(L>BL)wn = µnwn>0.
1≥ ||BA||2A= sup
v6=0
v>ABABAv
v>Av = sup
w6=0
w>L∗BLw w>w
= maxµn ∈(0,1]
⇒ |(IN−BA)v|2A =v>(A−2ABA+ABABA)v
=w>(IN−2L>BL+ (L>BL)2)w
=X
(wn>w)2(1−2µn+µ2n)
≤X
w>nw(1−µn)
=w>(IN−L>BL)w
=v>(A−ABA)v Betrachte weiter
||(IN−BA)(IN−P0)||A = sup
w6=0
|(IN−BA)(IN−P0)w|2
|w|2A
= sup
v=(1−P0)w
|(IN−BA)v|2A
|v|2A+|v −w|2A
≤ sup
P0v=0, v6=0
|v|2A−v>ABAv
|v|2A
≤1− 1 c
Anwendung:
B = Θ diag(A−1)mitΘ ∈ (0,1), M ∈ RN×N, M[n, k] = R
Ωλkλndx. Vh ist ein Finite-Elemente-Raum zu regelmäßigen Gitternh= diamK, H = 2h. Dann gilt:
a) inf
φH∈VH
||φh−φH||0 ≤ch||∇φh||0 ∀φh ∈Vh, ||φ0||= qR
Ωφ2dx b) ||λh||0 ≤c1h−1||∇λh||0
||h−1||0 ≤c2||λh||0
⇒v>M v ≤c1h−2v>B−1v und h2v>B−1v ≤c2v>M v mit B−1[n, n] =A[n, n] =
Z
κ∇λn· ∇λndx c) φh =P
v[n]λn ⇒cv>Av≤ ||∇φh||20 ≤Cv>Av, cv>M v ≤ ||φh||2 ≤Cv>M v
d) φh =P
v[n]λn, P0v = 0
⇒a(φh, φh) =v>Av= inf
w0∈RN0
v>A(v−R>0w0)
= inf
w0
v>AB12B−12(v−R>0w0)
≤√
v>ABAv r
inf
w0
(v −R>0w0)B−1(v−R>0w0)
| {z }
≤Ch−1 inf ||φh−φH||0
≤C||∇φH||0
≤Cv>Av Multilevel-Verfahren
V0(0) ⊂V1(0)⊂ · · · ⊂VL(0), hl=h02−l, l= 0, ..., L
Nl = dimVl(0), Al ∈RNl×Nl, Rl ∈RNl×Nl+1, Al=RlAl+1Rl>
M0) Wähleu0L, r0L=bL−ALuL M1) Falls|rkL|< ε STOP
M2) Setzel =L, cL = 0, rL =rLk
M3) Fürν = 1, ..., νl: wl =Blrl, cl :=cl+wl, rl :=rl−Alwl M4) rl−1 =Rl−1rl, setze l:=l−1
M5) Fallsl >0 gehe zu M3) M6) c0 =A−10 r0
M7) Setzel :=l+ 1, cl =R>l−1cl−1 M8) Glätten (wie (M3))
M9) Fallsl < L gehe zu (M7)
M10) uk+1L =ukL+cL, rk+1L =rkL−ALcL, k :=k+ 1
→ gehe zu (M1)
4 Gemischte und hybride Finite Elemente
Sei ein Differentialgleichungssystems gegeben, das von mehreren Variablen abhängt. Hier kann es sinnvoll sein, die einzelnen Unbekannten in verschiedenen Räumen zu diskretisie- ren. In diesem Fall spricht man von gemischten Finiten Elementen. Betrachte hierzu das Problem
divq = 0 inΩ q = −κ∇uinΩ
−q·n = gNaufΓN u = uDaufΓD wobeiκsymmetrisch positiv definit ist. Es gilt
Z
Ω
divqφdx= 0 für alle Testfunktionenφ :Ω→R. und
Z
Ω
κ−1(q+κ∇u)·ψdx= 0 für alle Testfunktionenψ :Ω→R2 Mit dem Satz von Gauß folgt zudem füruψ:
Z
∂Ω
(uψ)·nda= Z
Ω
div(uψ) dx= Z
Ω
∇u·ψdx+ Z
Ω
u·divψdx.
Dies führt auf das Sattelpunktproblem: Bestimme(q, u)mitq·n=−gNaufΓNund Z
Ω
κ−1q·ψdx− Z
Ω
udivψdx = − Z
ΓD
uDψ·nda Z
Ω
divqφdx = 0
für alle(ψ, φ)mitψ·n= 0aufΓN. Diskretisierung
SeiKeine Triangulierung undF die Menge aller Seiten∂K ∩∂K0 oder∂K ∩∂Ω.
Wähle FE-RäumeWh, Qhund Wh(g) ={ψh ∈Wh :
Z
F
ψh·nda= Z
F
gda ∀F ⊂ΓN}.
Bestimme(qh, uh)∈Wh(−gN)×Qh mit Z
Ω
κ−1qh·ψhdx− Z
Ω
uhdivψhdx=− Z
ΓD
uDψh ·nda
− Z
Ω
divqhφhdx= 0 ∀(ψh, φh)∈Wh(0)×Qh.
ZuKˆ = conv{ 00 , 10
, 01
}definiereWˆ = span{ψˆ0,ψˆ1,ψˆ2}und Fˆ0 = convn
0 0
,
1 0
o
Fˆ1 = convn 1 0
,
0 1
o
Fˆ2 = convn 0 1
,
0 0
o
mit
ψˆ0(ξ) =
ξ1 ξ2−1
ψˆ1(ξ) = ξ1
ξ2
ψˆ2(ξ) =
ξ1−1 ξ2
.
ZuKˆ = conv{ 00 , 10
, 11 , 01
}definiereWˆ = span{ψˆ0,ψˆ1,ψˆ2,ψˆ3}und Fˆ0 = convn
0 0
,
1 0
o
Fˆ1 = convn 1 0
,
1 1
o
Fˆ2 = convn 1 1
,
0 1
o
Fˆ3 = convn 0 1
,
0 0
o
mit
ψˆ0(ξ) =
0 ξ2−1
ψˆ1(ξ) = ξ1
0
ψˆ2(ξ) = 0
ξ2
ψˆ3(ξ) =
ξ1−1 0
. Es gilt
Z
Fˆk
ψˆ·nˆdˆa=
(1 j =k 0 sonst.
(4.1) Lemma
Seinˆ Normale an∂K. Seiˆ ϕK : ˆK →K¯ linear affin mit
ϕK(ξ) = z0,K +BKξ, JK = detBK >0.