Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen...

31
Modellierung von Hydrosystemen ”Numerische und daten-basierte Methoden” BHYWI-22-V2-09 @ 2020 Finite-Elemente-Methode aulen-Modell Olaf Kolditz *Helmholtz Centre for Environmental Research – UFZ 1 Technische Universit¨ at Dresden – TUDD 2 Centre for Advanced Water Research CAWR 10.07.2020 - Dresden Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 1 / 31

Transcript of Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen...

Page 1: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Modellierung von Hydrosystemen

”Numerische und daten-basierte Methoden”

BHYWI-22-V2-09 @ 2020

Finite-Elemente-Methode

Saulen-Modell

Olaf Kolditz

*Helmholtz Centre for Environmental Research – UFZ

1Technische Universitat Dresden – TUDD

2Centre for Advanced Water Research – CAWR

10.07.2020 - Dresden

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 1 / 31

Page 2: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Lecture Table of Contents

I Zusammenfassung FDM

I Einfuhrung in die Finite-Elemente-Methode (am Beispiel einerBodensaule)

I Implementierung

I Testbeispiel

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 2 / 31

Page 3: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Zusammenfassung

explizite FDM implizite FDM- Pro / Cons

- FDM:einfacheImplemen-tierung, starreGeometrien

- FEM:schwieriger zuimplemen-tieren (heute),flexibleGeometrien

FEM

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 3 / 31

Page 4: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Wir haben uns sehr intensiv mit der Methode der finitenDifferenzen beschaftigt. Bei der Einfuhrung der numerischenBerechnungsmethoden in der Hydroinformatik II Veranstaltunghaben wir gesehen, dass es ein ganzes Arsenal von Verfahren gibt(Abb. 2.1, Hydroinformatik II Skript), welche fur bestimmteProblemstellungen geeignet oder ungeeignet sind. In denVisualisierungsubungen im VISLab werden wir sehen, dass FDVerfahren Grenzen haben, wenn es um die exakte Beschreibungkomplexer Geometrien geht. Hier sind Verfahren im Vorteil, diesogenannte unstrukturierte Rechengitter benutzen konnen. Hierzuzahlt z.B. die Finite Elemente Methode, mit der wir uns nun etwasnaher beschaftigen mochten. Die Abb. 1 zeigt uns ein aktuellesBeispiel aus einem Forschungsvorhaben zusammen mit derBundesanstalt fur Geowissenschaften und Rohstoffe (BGR) inHannover

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 4 / 31

Page 5: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Figure: Modellierung eines Kluftsystems im Kristallin (Herbert Kunz,BGR)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 5 / 31

Page 6: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM) - Motivation

Figure: Bodensaulenmodell zur Erlauterung der FE Methode nach Istok(1989)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 6 / 31

Page 7: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM) - Konzept

Wir betrachten ein 1D stationares Grundwasserstromungsproblem.

∂x

(Kx

∂h

∂x

)= 0 (1)

Ein Naherungsverfahren wird uns eine Naherungslosung h liefern,welche die Bilanzgleichung (1) nicht mehr ganz korrekt erfullt.

∂x

(Kx

∂h

∂x

)= R(x) 6= 0 (2)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 7 / 31

Page 8: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Dabei ist R(x) der Fehler, das sogenannte Residuum. DasResiduum kann in den verschiedenen Gitterpunkten i , junterschiedliche Wert Ri 6= Rj annehmen. Am Knoten 3 hangendie Elemente (2) und (3) (Abb. 2). Daher ergibt sich dasResiduum im Knoten 3 aus den Elementwerten wie folgt.

R3 = R(2)3 + R

(3)3 (3)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 8 / 31

Page 9: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Ohne Beschrankung der Allgemeinheit konnen wir fur jedenKnoten i , das Residuum wie folgt schreiben.

Ri =

p∑e=1

R(e)i (4)

Dabei ist p die Anzahl der Elemente, die am Knoten i angebundensind.

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 9 / 31

Page 10: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Der Elementbeitrag zum Residuum lasst sich wie folgt berechnen.

R(e)i =

∫ xej

xei

N(e)i

(K

(e)x

∂2h(e)

∂x2

)dx (5)

Dabei ist N(e)i ≡Wi (x) eine Interpolationsfunktion auf dem

Element (e) (Abb. 3).

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 10 / 31

Page 11: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Figure: Interpolationsfunktion fur die Galerkin-Methode nach Istok (1989)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 11 / 31

Page 12: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Die gleiche Beziehung lasst sich den anderen Element-Knoten jschreiben.

R(e)j =

∫ x(e)j

x(e)i

N(e)j

(K

(e)x

∂2h(e)

∂x2

)dx (6)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 12 / 31

Page 13: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Die linearen Interpolationsfunktionen fur 1D Elemente sind

N(e)i (x) =

x(e)j − x

L(e), N

(e)j (x) =

x − x(e)i

L(e)(7)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 13 / 31

Page 14: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Die approximierte Feldgroße h kann nun wie folgt auf dem 1Dfiniten Element interpoliert werden (Abb. 3).

h(e)(x) = N(e)i hi + N

(e)j hj

=x(e)j − x

L(e)hi +

x − x(e)i

L(e)hj (8)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 14 / 31

Page 15: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Figure: Interpolierte Naherungslosung auf einem 1D Element nach Istok(1989)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 15 / 31

Page 16: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Jetzt stoßen wir auf ein ernsthaftes Problem. In den Gleichungen(5) und (6) mussten wir Ableitungen zweiter Ordnung berechnen,unsere Interpolationsfunktionen sind aber linear - also existierenkeine zweiten Ableitung - was tun? Wir machen einemathematischen Trick in diesen Gleichungen. Ein partielleIntegration von (5) ergibt. ∫ xej

xei

N(e)i

(K

(e)x

∂2h(e)

∂x2

)dx (9)

= −∫ xej

xei

K(e)x

∂N(e)i

∂x

∂h(e)

∂xdx + N

(e)i K

(e)x

∂h(e)

∂x

∣∣∣∣∣xej

xei

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 16 / 31

Page 17: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

I Wie konnen wir die Umformung in Gleichung (10) uberprufen?

Der zweite Term auf der rechten Seite von (10)

N(e)i K

(e)x

∂h(e)

∂x

∣∣∣∣∣xej

xei

(10)

entspricht der Vorgabe von Werten auf den Randknoten xej und xeides Elements (e). Handelt es sich um einen Randknoten, danngeht es um Randbedingungen.

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 17 / 31

Page 18: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

I Um welchen Randbedingungstypen handelt es bei (10)?

I Welche Randbedingung ist es, wenn der Wert von (10) gleichNull ist?

I Was passiert mit inneren Knoten?

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 18 / 31

Page 19: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Nun setzen wir die Beziehung (10) in die Gleichung (5) ein underhalten.

R(e)i =

∫ xej

xei

N(e)i

(K

(e)x

∂2h(e)

∂x2

)dx

= −∫ xej

xei

K(e)x

∂N(e)i

∂x

∂h(e)

∂xdx + N

(e)i K

(e)x

∂h(e)

∂x

∣∣∣∣∣xej

xei

(11)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 19 / 31

Page 20: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Jetzt mussen wir uns um ∂h(e)/∂x kummern.

∂h(e)

∂x=

∂x

(N

(e)i hi + N

(e)j hj

)=

∂N(e)i

∂xhi +

∂N(e)j

∂xhj (12)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 20 / 31

Page 21: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Nach Einsetzen der Interpolationsfunktionen erhalten wirschließlich.

∂h(e)

∂x=

1

L(e)(−hi + hj) (13)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 21 / 31

Page 22: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Fur die Ableitungen der linearen Interpolationsfunktionen folgt.

∂N(e)i

∂x=

∂x

x(e)j − x

L(e)

= − 1

L(e)(14)

∂N(e)j

∂x=

∂x

(x − x

(e)i

L(e)

)=

1

L(e)(15)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 22 / 31

Page 23: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Setzen wir jetzt die Beziehungen in die Gleichung (11) ein, ergibtsich.

R(e)i =

∫ xej

xei

K(e)x

(− 1

L(e)

)(1

L(e)

)(−hi + hj)

=K

(e)x

L(e)(hi − hj) (16)

In gleicher Weise bekommen wir.

R(e)j =

K(e)x

L(e)(−hi + hj) (17)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 23 / 31

Page 24: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Beide Gleichungen (16) und (17) lassen sich zusammen in einerMatrizen-Form schreiben.

{R(e)i

R(e)j

}=

K(e)x

L(e)

[+1 −1−1 +1

]︸ ︷︷ ︸

2×2

{hihj

}(18)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 24 / 31

Page 25: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Leitfahigkeitsmatrix

[K (e)] =K

(e)x

L(e)

[+1 −1−1 +1

]︸ ︷︷ ︸

2×2

(19)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 25 / 31

Page 26: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Aufgrund der Elementgeometrien L(e) (Abb. 2) ergeben sichfolgende Elementmatrizen.

[K (1)] =

[+1/2 −1/2−1/2 +1/2

], [K (2)] =

[+1 −1−1 +1

][K (3)

]=

[+1/3 −1/3−1/3 +1/3

], [K (4)] =

[+1/3 −1/3−1/3 +1/3

](20)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 26 / 31

Page 27: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

Zusammenbauen des Gleichungssystems.

{R} = [K]{h} = 0 (21)

{R} =

R1

R2

R3

R4

R5

, {h} =

h1h2h3h4h5

(22)

[K] = [K(1)] + [K(2)] + [K(3)] + [K(4)] (23)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 27 / 31

Page 28: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

[K] =

1/2 −1/2 0 0 0−1/2 1 + 1/2 −1 0 0

0 −1 1 + 1/3 −1/3 00 0 −1/3 1/3 + 1/3 −1/30 0 0 −1/3 1/3

=

1/2 −1/2 0 0 0−1/2 3/2 −1 0 0

0 −1 4/3 −1/3 00 0 −1/3 2/3 −1/30 0 0 −1/3 1/3

(24)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 28 / 31

Page 29: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

1/2 −1/2 0 0 0−1/2 3/2 −1 0 0

0 −1 4/3 −1/3 00 0 −1/3 2/3 −1/30 0 0 −1/3 1/3

h1h2h3h4h5

=

00000

(25)

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 29 / 31

Page 30: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM) - Implementierung

Vergleichen wir die Quelltexte der main Funktionen fur FD und FEVerfahren, sehen wir kaum Unterschiede. Das heisst die Ablaufe(Algorithmen) sind sehr ahnlich.

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 30 / 31

Page 31: Modellierung von Hydrosystemen Numerische und daten-basierte … · mathematischen Trick in diesen Gleichungen. Ein partielle Integration von (5) ergibt. Z xe j xe i N(e) i K(e) x

Finite-Elemente-Methode (FEM)

extern void Gauss(double*,double*,double*,int);

int main()

{

//----------------------------------------------

FEM* fem = new FEM();

fem->SetInitialConditions();

fem->SetBoundaryConditions();

//----------------------------------------------

int tn = 10;

for(int t=0;t<tn;t++)

{

fem->AssembleEquationSystem();

Gauss(fem->matrix,fem->vecb,fem->vecx,fem->IJ);

fem->SaveTimeStep();

fem->OutputResults(t);

}

//----------------------------------------------

return 0;

}

Olaf Kolditz - Modellierung von Hydrosystemen // BHYWI-22-V2-09 @ 2020 - Finite-Elemente-Methode - 10.07.2020 31 / 31