Technische Universit¨ at Berlin ¨ HERMANN–FOTTINGER–INSTITUT ¨ STROMUNGSMECHANIK ¨ FUR
Numerische Methoden der Thermo- ...
128 downloads
1079 Views
2MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Technische Universit¨ at Berlin ¨ HERMANN–FOTTINGER–INSTITUT ¨ STROMUNGSMECHANIK ¨ FUR
Numerische Methoden der Thermo- und Fluiddynamik von T. Rung, L. Xue, J. Yan, M. Schatz, F. Thiele
vorl¨ aufige Version 2002
Redaktion: Dr.rer.nat. L. Jehring, M. Schatz Illustrationen: E. Kulzer Layout und Satz: S. Nordt
INHALTSVERZEICHNIS
I
Inhaltsverzeichnis 1 Einleitung
1
2 Klassifizierung partieller Differentialgleichungen 2.1 Lineare und nichtlineare PDG . . . . . . . . . . . . 2.2 Physikalische Klassifizierung . . . . . . . . . . . . . 2.3 Mathematische Klassifizierung PDG . . . . . . . . 2.4 Anfangs- und Randbedingungen . . . . . . . . . . 2.5 Formulierungsmethoden . . . . . . . . . . . . . . . 3 Finite Differenzenmethoden 3.1 Herleitung finiter Differenzenformeln 3.1.1 Taylorreihenentwicklung . . . 3.1.2 Polynomgest¨ utzte Methoden 3.1.3 Nicht¨aquidistante Gitter . . . 3.2 Gemischte partielle Ableitungen . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . . . . . . .
. . . . .
2 . 2 . 2 . 9 . 18 . 19
. . . . .
. . . . .
20 21 22 24 29 30
4 Zeitapproximation – parabolische Differentialgleichungen 4.1 Explizite und implizite Differenzenformeln . . . . . . . . . . . . . . 4.2 Stabilit¨at . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 Behandlung von diskreten St¨ orungen . . . . . . . . . . . . . 4.2.2 Matrizenkriterium . . . . . . . . . . . . . . . . . . . . . . . 4.2.3 Fourier-Neumann Kriterium . . . . . . . . . . . . . . . . . . 4.3 Modifizierte Gleichungen . . . . . . . . . . . . . . . . . . . . . . . . 4.4 Differenzenformeln zur Diskretisierung der W¨ armeleitungsgleichung 4.4.1 Explizite Formulierungen . . . . . . . . . . . . . . . . . . . 4.4.2 Implizite Methoden . . . . . . . . . . . . . . . . . . . . . . 4.5 Anwendung auf Navier-Stokes Gleichung . . . . . . . . . . . . . . . 4.6 Konsistenz und Konvergenz . . . . . . . . . . . . . . . . . . . . . . 4.6.1 Konsistenz der finiten Differenzengleichungen . . . . . . . . 4.6.2 Konsistenz bei Konvektionsproblemen . . . . . . . . . . . . 4.7 Approximation zweidimensionaler parabolischer DGL . . . . . . . . 4.7.1 ADI–Methode . . . . . . . . . . . . . . . . . . . . . . . . . . 4.7.2 Fractional Step Method . . . . . . . . . . . . . . . . . . . . 4.8 Erweiterung auf dreidimensionale Probleme . . . . . . . . . . . . . 4.9 Einbau von Randbedingungen . . . . . . . . . . . . . . . . . . . . . 4.9.1 Dirichlet Randbedingung . . . . . . . . . . . . . . . . . . . 4.9.2 Neumann Randbedingung . . . . . . . . . . . . . . . . . . . 4.9.3 Robinbedingung . . . . . . . . . . . . . . . . . . . . . . . . 4.9.4 Zyklische oder periodische Randbedingung . . . . . . . . . 4.10 Linearisierung parabolischer PDG . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . . . . . . . .
33 34 36 36 37 40 44 45 45 47 48 51 51 54 56 58 59 59 60 60 62 63 63 64
5 Behandlung linearer Gleichungssysteme 5.1 LU–Zerlegung von tridiagonalen Matrizen 5.2 Iterative Methoden . . . . . . . . . . . . . 5.2.1 Die Jacobische Iterationsmethode . 5.2.2 Punkt-Gauß-Seidel-Verfahren . . . 5.2.3 Konvergenzbedingung . . . . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
66 68 70 73 74 75
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
II
INHALTSVERZEICHNIS
. . . . . . . .
. . . . . . . .
. . . . . . . .
. . . . . . . .
75 76 77 78 78 79 83 86
6 Numerische Gittergenerierung 6.1 Koordinatentransformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.1 Metrikkomponenten und Jakobideterminante . . . . . . . . . . . . . . . 6.2 Derivativa des Rechengebiets . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3 Grundklassen von Rechengittern . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4 Anforderungen des numerischen Verfahrens an das Rechengitter . . . . . . . . . 6.5 Mathematische Modellierung von Kurven und Fl¨ achen im Raum . . . . . . . . 6.6 Die Punkteverteilung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.6.1 Verteilung auf einer Kurve . . . . . . . . . . . . . . . . . . . . . . . . . . 6.6.2 Punkteverteilung auf der Fl¨ ache . . . . . . . . . . . . . . . . . . . . . . 6.7 Das strukturierte Gitter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.7.1 ”Computational domain” und ”physical domain” der Grundgittertypen 6.7.2 Algebraische Gittergenerierung mit der Transfiniten Interpolation . . . . 6.8 Numerische Gittergenerierung mit dem ”elliptischen Gittergenerator” . . . . . 6.8.1 Die Grundgleichung des elliptischen Gittergenerators . . . . . . . . . . . 6.8.2 Bestimmung der Kontrollfunktion . . . . . . . . . . . . . . . . . . . . . 6.8.3 L¨osungsverfahren der elliptischen DGL. . . . . . . . . . . . . . . . . . . 6.9 Das dynamisch adaptive Gitter . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
. . . . . . . . . . . . . . . . .
94 94 98 102 105 107 108 119 119 121 123 124 124 131 132 134 138 141
. . . . . . . . . . . . . . .
145 . 145 . 146 . 146 . 146 . 147 . 148 . 148 . 151 . 152 . 154 . 154 . 154 . 155 . 156 . 157
5.3 5.4 5.5
5.2.4 Linien-Gauß-Seidel Verfahren . . . . . . . . . . . . . . 5.2.5 Sukzessive Relaxationsverfahren . . . . . . . . . . . . 5.2.6 Die implizite Methode der alternierenden Richtungen 5.2.7 Konvergenzkriterium . . . . . . . . . . . . . . . . . . . 5.2.8 Bemerkungen zum Konditionsproblem . . . . . . . . . Die Methode der konjugierten Gradienten . . . . . . . . . . . Methode der Fourierreihen . . . . . . . . . . . . . . . . . . . . Mehrgitterverfahren . . . . . . . . . . . . . . . . . . . . . . .
7 Turbulente Str¨ omungen ¨ 7.1 Ubersicht . . . . . . . . . . . . . . . . . . 7.2 Direkte Numerische Simulation (DNS) . . 7.3 Large–Eddy–Simulation (LES) . . . . . . 7.4 Die Reynolds-Gleichung . . . . . . . . . . 7.4.1 Herleitung der Reynolds-Gleichung 7.4.2 Die Reynoldsspannungen . . . . . 7.5 Das Reynolds-Spannungsmodell . . . . . . 7.6 Das Wirbelviskosit¨atsprinzip . . . . . . . 7.7 Mischungsweghypothese . . . . . . . . . . 7.8 Nullgleichungsmodelle . . . . . . . . . . . 7.9 Eingleichungsmodelle . . . . . . . . . . . . 7.10 Zweigleichungsmodelle . . . . . . . . . . . 7.10.1 Das k-ε Modell . . . . . . . . . . . 7.10.2 Das k-ω Modell . . . . . . . . . . . 7.11 Wandturbulenz . . . . . . . . . . . . . . . 8 Literaturu ¨ bersicht
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
. . . . . . . . . . . . . . .
161
1
1
Einleitung
Dieses Skript stellt die Lerninhalte der zugeh¨ origen Lehrveranstaltung ”Grundlagen der Numerischen Thermofluiddynamik” an der Technischen Universit¨ at Berlin zusammen. Es lehnt sich in weiten Teilen an das Buch von K.A. Hoffmann [1] an. Dieses entspricht weitgehend den The¨ matiken der ersten 5 Kapitel. Zun¨achst wird ein Uberblick u ¨ber die mathematisch-physikalischen Eigenschaften relevanter Gleichungen der Thermofluiddynamik gegeben (Kapitel 2). Danach werden die Grundlagen numerischer Approximationstechniken am Beispiel der Finite-DifferenzenMethode erl¨autert. Es folgt ein Abschnitt u ¨ber die Anwendung dieser Methode auf parabolische Differentialgleichungen (Kapitel 4), in dem auch auf Randbedingungen und Linearisierung eingegangen wird. Verfahren zur L¨osung der hierbei auftretenden linearen Gleichungssysteme werden in Kapitel 5 vorgestellt. Die Ausf¨ uhrungen u ¨ber numerische Gittergenerierung in Kapitel 6 stammen aus L. Xues Skript zur Vorlesung ”Numerische Gittergenerierung in der Thermofluiddynamik”, die nicht mehr am HFI angeboten wird. Im letzten Kapitel wird ein Einblick in die Methoden zur Simulation turbulenter Str¨omungen mit Hilfe statistischer Turbulenzmodelle gegeben. Ziel ist es dabei vor allem, das theoretisch numerische Hintergrundwissen zur Verf¨ ugung zu stellen, das heute in der ingenieurtechnischen Praxis zwar kaum noch zur Erstellung komplett neuer Simulationsprogramme verwendet wird, bei der Anwendung kommerzieller Programmpakete f¨ ur den Benutzer aber nach wie vor von fundamentaler Bedeutung bei der Einsch¨ atzung der Machbarkeit sowie bei der Bewertung der Ergebnisse bleibt. Die Entwicklungen auf dem Gebiet der numerischen Str¨ omungsmechanik (engl. Computational Fluid Dynamics, CFD), deren Geburtsstunde in die 50er Jahre gelegt werden kann, sind eng verkn¨ upft mit den enormen Kapazit¨atssteigerungen elektronischer Rechenanlagen. Diese Entwicklungen f¨ uhrten zu einer Vergr¨oßerung der Bedeutung dieser Methoden im Vergleich zu analytischen und experimentellen Verfahren, so daß deren Vor- und Nachteile neu beurteilt werden m¨ ussen. Der gr¨oßte Vorteil der numerischen Str¨ omungsberechnung liegt darin, daß sich relativ schnell und kosteng¨ unstig Ergebnisse erzielen lassen. Im Gegensatz zu analytischen Untersuchungen sind keine Beschr¨ankungen auf lineare Probleme notwendig, und es k¨ onnen komplexe str¨ omungsmechanische Probleme behandelt werden. Numerische Methoden lassen sich auch auf solche Str¨ omungen anwenden, die beispielsweise wegen extremer Temperaturen oder Dr¨ ucke keiner experimentellen Untersuchung zug¨anglich sind. Als Ergebnis liegen die vollst¨ andigen Str¨ omungsfelder vor, d.h. Geschwindigkeiten, Druck, Temperatur und Turbulenzgr¨ oßen an allen Orten des untersuchten Gebiets. Es treten keine Skalierungsprobleme auf, und Parameterstudien lassen sich schnell durchf¨ uhren. Die Kosten einer numerischen L¨osung werden auf Grund der Entwicklungen bei den elektronischen Rechenanlagen immer niedriger. Daneben weisen Numerische Simulationsverfahren jedoch auch heute noch einige Nachteile auf: Die heute im allgemeinen noch notwendigen Modellannahmen (z.B. Turbulenzmodelle, Verbrennungsmodelle, u.¨ a.) stellen eines der Hauptprobleme bei der Verwendung numerischer Verfahren dar. Meistens sind die Modellannahmen durch eingeschr¨ ankte Rechnerkapazit¨at bedingt. Diese f¨ uhrt auch dazu, daß bei ingenieurtechnischen Anwendungen die L¨ osung auf einem relativ groben numerischen Gitter bestimmt werden muß und damit Diskretisierungsfehler auftreten. F¨ ur numerische Berechnungen m¨ ussen Anfangsbedingungen (bei zeitabh¨angigen Prozessen) sowie Randbedingungen am Ein- und Austritt vorgegeben werden, die im allgemeinen maßgeblichen Einfluß auf die L¨osung haben, deren Bestimmung aber oft mit erheblichen Unsicherheiten behaftet ist. Sie m¨ ussen entweder aus experimentellen Untersuchungen bekannt sein oder mit Hilfe analytischer Korrelationen approximiert werden.
2
Klassifizierung partieller Differentialgleichungen
2
Klassifizierung partieller Differentialgleichungen
Die mathematische Formulierung physikalischer Probleme f¨ uhrt oftmals auf das Gebiet der partiellen Differentialgleichungen (PDG). Spezielle F¨ alle der linearen zweidimensionalen Gleichung zweiter Ordnung ∂2Φ ∂2Φ ∂2Φ ∂Φ ∂Φ A 2 +B +C 2 +D +E + FΦ + G = 0 (2.1) ∂x ∂x∂y ∂y ∂x ∂y treten (vor allem in der Thermo- und Fluiddynamik) h¨ aufiger als irgendwelche anderen auf. Zum besseren Verst¨andnis der Probleme, die bei der Entwicklung von N¨ aherungsl¨ osungen f¨ ur diese Differentialgleichungen auftreten, wird es daher eine kurze mathematische Einf¨ uhrung geben.
2.1
Lineare und nichtlineare PDG
Differentialgleichungen k¨onnen in lineare und nichtlineare gegliedert werden. Bei einer linearen Differentialgleichung tritt die abh¨angige Variable und ihre Ableitung nur linear auf, Produkte zwischen ¨ ihr und/oder ihren Ableitungen sind also ausgeschlossen. F¨ ur diesen Typ gilt das Uberlagerungsprinzip, wonach sich zwei L¨osungen der homogenen Ausgangsgleichung zu einer dritten superponieren lassen. Die eindimensionale Wellengleichung ∂2u ∂2u = a2 2 2 ∂t ∂x ist beispielsweise eine lineare Differentialgleichung. Demgegen¨ uber enth¨alt eine nichtlineare Differentialgleichung Produkte der abh¨ angigen Variablen und/oder ihrer Ableitungen. Ein Beispiel ist die reibungsfreie Burgers Gleichung ∂u ∂u = −u . ∂t ∂x Zu den nichtlinearen Differentialgleichungen z¨ ahlt beispielsweise auch die Navier-Stokes-Gleichung, ∂v ∂w deren konvektiver Anteil ∇·(c c)1 die nichtlinearen Glieder u ∂u alt. Manche L¨ osungs∂x , v ∂y , w ∂z enth¨ strategien lassen innerhalb der nichtlinearen auch die sog. quasilinearen Dgl. zu. Hierunter versteht man i.a. Linearit¨at bez¨ uglich der h¨ochsten Ableitung (was f¨ ur die N-S Gleichung zutrifft).
2.2
Physikalische Klassifizierung
Hinsichtlich der physikalischen Klassifizierung unterscheidet man zwischen Gleichgewichts- und Ausbreitungsproblemen. Gleichgewichtsprobleme h¨angen im allgemeinen mit der Beschreibung station¨ arer Zust¨ ande zusammen. Anhand einer station¨ar str¨omenden inkompressiblen Fl¨ ussigkeit wollen wir die Zusammenh¨ange von physikalischer (Gleichgewichtsproblem) und mathematischer Gestalt (Integrationsbedingungstyp) kurz benennen. F¨ ur verschwindend geringe Z¨ ahigkeit l¨ aßt sich der Bewegungszustand einer solchen Fl¨ ussigkeit aus dem Gradienten eines Geschwindigkeitspotentials Φ ermitteln. c=∇Φ.
u 1 Man beachte: c = Geschwindigkeit = v w
(2.2)
2.2 Physikalische Klassifizierung
3
Eine solche Str¨omung muß selbstverst¨andlich auch den klassischen Erhaltungss¨ atzen, wie etwa dem Satz von der Erhaltung der Masse (m ˙ = 0) gen¨ ugen. Dieser lautet in seiner Feldgleichungsformulierung ∂% D% + ∇ · (%c) = + %∇ · c = 0 2 (2.3) ∂t Dt also im hier betrachteten Fall eines inkompressiblen Mediums ∇·c=0 .
(2.4)
Die Gleichungen (2.4) und (2.1) ergeben schließlich eine partielle Differentialgleichung 2. Ordnung f¨ ur die abh¨angige Variable Φ, die sog. Laplace-Gleichung ∆Φ =
∂2Φ ∂2Φ + =0. ∂x2 ∂y 2
(2.5)
Es handelt sich dabei immer noch um eine, wenn auch spezielle Form des Massenerhaltungssatzes. Hiernach ruft die in der Zeiteinheit durch ´die gerichtete geschlossene Oberfl¨ ache eines Kontrollvo³R R lumens abfließende Masse O(V ) n · c%dO eine entsprechende Massenverminderung (− V ∂% ∂t dV ) innerhalb der Bereichsgrenzen hervor.3 F¨ ur inkompressible Medien verschwinden die Glieder ver¨ anderlicher Dichte. Deshalb ist der Zustand einer solchen Fl¨ ussigkeit beim Eintritt in irgendein vorgegebenes Integrationsgebiet der gleiche wie beim Verlassen des Gebietes. Da man aber letztlich vor der Aufgabe steht, die physikalischen Verh¨altnisse innerhalb eines Gebietes vorherzusagen, muß man f¨ ur die L¨ osbarkeit dieser Aufgabe in umgekehrter Weise folgern: Die innerhalb eines Gebietes ablaufenden Prozesse werden eindeutiger Weise dadurch festgelegt, daß sie den Geschehnissen entlang der Berandung das Gleichgewicht halten. Gleichgewichtsprobleme sind im mathematischen Sinne also Randwertprobleme. L¨osungsversuche ohne die vollst¨andige Kenntnis der Berandung w¨ aren sinnlos, da diese ja der Formulierung des Problems bereits zu Grunde liegen. Die L¨ osung Φ ist eine Funktion der beiden unabh¨angigen Ver¨anderlichen x und y, bezieht sich aber nur auf Variablenkombinationen, welche innerhalb einer ebenen geschlossenen Kurve “C” liegen. Mit C bezeichnet man die Kurve der Randwerte, die zur eindeutigen Bestimmung der L¨osung Φ dienen. Handelt es sich um einen mehrfach zusammenh¨angenden Bereich S, wie dies z.B. bei einer Profilumstr¨ omung gegeben ist, erweitert sich die Kurve C um alle inneren R¨ander.4 Ausbreitungsprobleme behandeln oftmals Aufgaben, die die Zeit t als unabh¨ angige Ver¨ anderliche enthalten. Die eindimensionale Wellengleichung 2 ∂2u 2∂ u = a ∂t2 ∂x2 2 3 4
Man beachte: substantielle Ableitung: D% = ∂% + c · ∇% . Dt ∂t Man beachte: n = Normalenvektor zum Fl¨ achenelement dO; O(V ) = geschl. Oberfl¨ ache des Kontrollvolumens V
In einem einfach zusammenh¨ angenden Bereich S l¨ aßt sich jede beliebige geschlossene Kurve C aus S in irgendeinem Punkt des Integrationsgebietes (evt. durch gleichzeitiges Verschieben) zusammenziehen, ohne dabei die Bereichsgrenzen zu durchschneiden. Die Kurven C geh¨ oren dann der Klasse der sog. reduziblen Uml¨ aufe an. Bei ebenen Problemen fallen Zusammenhangszahl und Begrenzungszahl zusammen. Besitzt ein ebenes Integrationsgebiet einen ¨ außeren und (n − 1) innere R¨ ander (deren Fl¨ achenanteile nicht zum Definitionsbereich geh¨ oren), so spricht man von einem n-fach zusammenh¨ angenden Integrationsgebiet. Das Zusammenziehen geschlossener Kurven ist dann nicht generell m¨ oglich. Immer, wenn eine geschlossene Kurve einen inneren Fl¨ achenanteil umschreibt, w¨ urden beim Zusammenziehen innere R¨ ander durchwandert. Es existieren n − 1 Klassen solcher Kurven, je eine zu jeder inneren Fl¨ ache. Den Repr¨ asentanten einer solchen Klasse nennt man irreduziblen Umlauf.
4
Klassifizierung partieller Differentialgleichungen
C = C 1+ C2
C1
C2
Abbildung 1:
ist ein bekanntes Ausbreitungsproblem. Daneben existieren gerade in der Thermo- und Fluiddynamik Ausbreitungsprobleme, die sich zeitlich unabh¨ angig (station¨ ar) verhalten. Hierzu z¨ ahlen die Impulsgleichung der ebenen Grenzschicht u
∂u ∂u 1 dp ∂2u +v =− +ν 2 ∂x ∂y % dx ∂y
(2.6)
sowie die linearisierte ebene Potentialgleichung der Gasdynamik 2 ∂2Φ 2 ∂ Φ + (1 − M ) =0 ∂y 2 ∂x2
(M > 1) .
Letztere geht f¨ ur M → 0 (inkompressible Medien) in die Gleichung (2.5), also in ein Gleichgewichtsproblem u ¨ber. Herausragendes Merkmal der Ausbreitungsprobleme ist die Existenz von Anfangswerten. Hiermit sind diejenigen Werte der abh¨angigen Variablen Φ gemeint, welche den physikalischen Prozeß einleiten, beispielsweise die anf¨angliche Temperaturverteilung eines schlanken Stabes vor dem Wasserbad. Die L¨osung Φ(x, y) breitet sich ausgehend von den Anfangswerten (unter Beachtung der Randbedingungen) schrittweise aus. Welche Richtung dabei in der Ebene der unabh¨ angigen Ver¨ anderlichen eingeschlagen werden muß, l¨aßt sich errechnen.
T0
c
s
bekannte Randwerte von T
bekannte Randwerte von T
t
c
c 0
bekannte Anfangswerte T l
Abbildung 2:
(l,0)
(j+1)-te Zeitlinie (unbekannte Temp.)
j-te Zeitlinie (bekannte Temp.)
x
2.2 Physikalische Klassifizierung
5
Das Integrationsgebiet ist also offen. Im skizzierten Falle (Abb. 2) der Temperaturverteilung des schlanken Stabes ∂T ∂2T =κ 2 ∂t ∂x f¨allt die Ausbreitungsrichtung trivialer Weise mit der Zeitachse zusammen. Die Richtungen, in der sich die L¨osungen fortsetzen, heißen charakteristische Richtungen. Sie verm¨ ogen nicht die bereits errechneten L¨osungen zu r¨ uckw¨artigen Stellen (nachtr¨ aglich) zu beeinflussen. Wir wollen dies am Beispiel der linearisierten ebenen Potentialgleichung der Gasdynamik illustrieren. c. t 0 Ruhe c
α
y
P
x a. t 0
c>a
Abbildung 3:
Abb. 3 zeigt die Ausbreitung einer schwachen St¨ orung bei einer punktf¨ ormigen Schallquelle, die sich ¨ mit konstanter Uberschallgeschwindigkeit −c = ( −c ) bewegt. Der Vorgang ist (leider) instation¨ ar. 0 Zur Zeit t0 , an dem die Schallquelle den Punkt P erreicht hat, liegen alle fr¨ uher ausgesandten Signale innerhalb des sogenannten Machschen Kegels. Dieser ist das Einflußgebiet der St¨ orung. Außerhalb herrscht Ruhe. F¨ ur den Machwinkel α gilt: sin α =
1 a = , c M
tan α =
a 1 √ =√ . c2 − a2 M2 − 1
a = Schallgeschwindigkeit,
Um zu einer station¨aren Str¨omung zu gelangen, wird die Geschwindigkeit c u ¨berlagert. Das Medium str¨omt nun mit c > a station¨ar auf die St¨ orquelle zu. An der Skizzierung des Problems onnen sich nur im Innern des stromab ge¨ offneten Machke¨andert sich dadurch nichts. St¨orungen k¨ gels im sogenannten Abh¨ angigkeitsgebiet bemerkbar machen. Das ebene Geschwindigkeitsfeld setzt sich zusammen aus der Anstr¨omgeschwindigkeit c = ( 0c ) sowie den St¨ orgr¨ oßen ( uv ) innerhalb des Abh¨angigkeitsgebietes. Zur Beschreibung der St¨ orgeschwindigkeit in der x-y Ebene wird die volle (nichtlineare, ebene, reibungsfreie) gasdynamische Grundgleichung µ ¶ ∂u ∂v ∂v 2 2 ∂u (u − a ) + uv + + (v 2 − a2 ) =0 ∂x ∂x ∂x ∂y f¨ ur den Fall v ¿ u ¿ c notiert. Unter Vernachl¨ assigung der von h¨ oherer Ordnung kleinen Glieder in v erh¨alt man ¡ ¢ ∂v 2 ∂u + =0 1 − M∞ ∂x ∂y ¡ ¢ sowie f¨ ur rotationsfreie Str¨omungen ( uv = ∇Φ) die PDG 2. Ordnung ¡ ¢ 2 ∂2Φ 2 ∂ Φ + =0. 1 − M∞ ∂x2 ∂y 2
(2.7)
6
Klassifizierung partieller Differentialgleichungen ηP y ηQ
P
c(s) s
x
c
R Q ξP
ξQ
Abbildung 4:
Die Gleichung (2.7) beschreibt die Ausbreitung einer in P auftretenden St¨ orung ( uv ) des Geschwinc digkeitsfeldes ( 0 ). Der Wert Φ in P ist der Anfangswert des Problems. Die St¨ orung breitet sich entlang der Machlinien (= ˆ Charakteristiken) aus. Die Linien haben ihren Ursprung in P und enden im Unendlichen. Als Bahnlinien der St¨ orung sind sie physikalisch ausgezeichnet und somit die nat¨ urlichen Koordinaten des Problems. Wir wollen die nat¨ urlichen Koordinaten ξ und η nennen, wobei µ µ
dy dx dy dx
¶ η=konst
¶ ξ=konst
1 = tan α = √ M2 − 1 1 = tan(−α) = − tan(α) = − √ . M2 − 1
Mit Ausnahme des Sonderfalles c = a, in dem beide Charakteristiken ineinander u ¨bergehen, haben ξ- und η-Charakteristiken einen Schnittpunkt. Charakteristiken gleichen Ursprungs schneiden sich in ihrem St¨orungszentrum, Charakteristiken verschiedenen Ursprungs h¨ ochstens einmal in einem Fernpunkt stromab. Hierzu betrachten wir nochmals das oben beschriebene Beispiel, wobei die St¨orung jetzt linienhaft entlang P Q verteilt sei (Abb. 4). Wir werden nun zeigen, daß sich eine L¨osung in R von P und Q aus eindeutig bestimmen l¨ aßt, sofern: a) die Randwerte Φ(P ) und Φ(Q) bekannt sind, b) f¨ ur die partiellen Ableitungen
∂Φ ∂x
entlang x = 0 Anfangswerte gegeben sind.
Integriert man die Vorschrift (mathematisch = den “Differentialoperator”) L(Φ) =
2 ∂2Φ 2∂ Φ − σ =0; ∂y 2 ∂x2
σ=
p 2 −1 , M∞
M∞ > 1
2.2 Physikalische Klassifizierung
7
in seinem Bestimmungsgebiet unter Verwendung des Gaußschen Satzes auf, so erh¨ alt man: ¶ µ ¶¾ Z Z Z Z ½ µ ∂ ∂Φ ∂ 2 ∂Φ (L(Φ))dx dy = − σ dx dy ∂y ∂y ∂x ∂x s
s
I ½ =
∂Φ ∂Φ dx + σ 2 dy ∂y ∂x
¾ =0.
c(s)
Das Problem l¨aßt sich erheblich vereinfachen, in dem man den Rand C aufgrund der oben gestellten ¨ Uberlegungen −→
−→
−→
C =P Q(→dx=0) + QR(→dy= 1 dx) + RP (→dy=− 1 dx) σ
σ
w¨ahlt. Das Umlaufintegral zerf¨allt in drei Teilintegrale und es ergibt sich ZQ
I ... = σ 2
∂Φ dy + σ[Φ(R) − Φ(Q)] + σ[Φ(R) − Φ(P )] ∂x
P
schließlich σ Φ(R) = − 2
ZQ
1 ∂Φ dy + [Φ(R) − Φ(Q)] . ∂x 2
P
Zum Abschluß dieses Beispiels sollen zwei wichtige Begriffe nochmals erl¨ autert werden: Einflußgebiet:
Da die Charakteristiken die Bahnkurven der St¨ orungen sind, beeinflußt eine St¨orung in A nur das durch seine Charakteristiken eingeschlossene Gebiet. Punkt B bleibt z.B. unbeeinflußt (siehe Abb. 5).
Abh¨angigkeitsgebiet: Der Zustand A ist nur von den Zust¨ anden auf einer Datenkurve I → II abh¨angig, unabh¨ angig dagegen von Punkt C da dieser stromab liegt.
Abbildung 5:
8
Klassifizierung partieller Differentialgleichungen
y
C P1,3 P1,2
j
Pi,j
S
P1,1 P2,1
0
x i Abbildung 6:
Wie sich sp¨ater zeigen wird, ist die L¨osung von Gleichgewichtsproblemen im Unterschied zu Anfangswertproblemen aufwendiger. Die geringe Anzahl aller bis heute bekannt gewordenen analytischen L¨osungen ist Ausdruck der Tatsache, welche Schwierigkeiten es bereitet, die Randbedingungen bei beliebig geformten R¨andern zu erf¨ ullen. Oftmals sind numerische N¨ aherungsverfahren daher der einzige Weg zur L¨osung. An dieser Stelle sei unter Hinweis auf Abb. 6 bereits die Organisation der N¨aherungsl¨osung skizziert. Zur Integration der Dgl. u ¨berdeckt man das in Frage kommende Gebiet S z.B. mit einem rechtwinkligen Gitternetz aus ¨aquidistanten Linien, die parallel zur x- bzw. y-Achse verlaufen. Eine N¨aherungsl¨osung findet man an den Schnittpunkten dieser Linien, indem man die PDG u ¨ber den Bereich S durch n algebraische Gleichungen approximiert. Die Approximation wird so durchgef¨ uhrt, daß s¨amtliche partiellen Ableitungen der Dgl. in einem Punkt Pij durch gewichtete Differenzen von Φ in benachbarten Punkten angen¨ahert werden. Notiert man gem¨ aß dieser Vorgehensweise die approximierende, algebraische Gleichung f¨ ur alle n inneren Punkte, so ergibt sich ein geschlossenes Gleichungssystem mit n Gleichungen f¨ ur n Unbekannte.
Grenzschichtaußenrand
usw.
Abbildung 7:
Offensichtlich h¨angt die G¨ ute der N¨aherung von der F¨ ahigkeit des Gleichungssystems respektive des Kontrollpunktgitters ab, steile Gradienten physikalischer Gr¨ oßen aufzul¨ osen. Derlei Probleme
2.3 Mathematische Klassifizierung PDG
9
werden im Kapitel 6 erl¨autert. Die Anwendung von endlichen Differenzenmethoden zur Integration der Dgl. unterscheidet sich im Falle von Ausbreitungsproblemen prinzipiell nicht von der vorangestellten Methodik. Der L¨osungsalgorithmus ist jedoch nicht so komplex wie bei Randwertproblemen. Beispielsweise erfordert die Berechnung des Geschwindigkeitsfeldes einer sich ausbreitenden Plattengrenzschicht (Abb. 7) gleichzeitiges L¨ osen der Grenzschichtgleichung nur in Richtung der auftretenden zweiten Ableitung (Glg. 2.6). Die so gewonnenen Geschwindigkeitsprofile sind Anfangswerte f¨ ur die stromab anschließenden Nachbarpunkte.
2.3
Mathematische Klassifizierung PDG
Abbildung 8:
Wir beschr¨anken uns auf die Diskussion der linearen partiellen Dgl. 2. Ordnung A
∂2Φ ∂2Φ ∂2Φ ∂Φ ∂Φ + B + C +D +E + FΦ + G = 0 , 2 2 ∂x ∂x∂y ∂y ∂x ∂y
(2.8)
deren Koeffizienten A, B, C, D, E, F , G alleine Funktionen der unabh¨ angigen Variablen (x, y) sind. Es soll untersucht werden, unter welchen Umst¨ anden man mit Hilfe bekannter L¨ osungen Φi = Φ(xi , yi ) zu weiteren vielleicht sogar s¨ amtliche L¨ osungen eines Integrationsgebietes gelangt. Die Integration von gew¨ohnlichen Dgl. 2. Ordnung erzeugt bekanntermaßen zwei Integrationskonstanten Φ und Φ0 . Sind diese in Form von sogenannten Anfangsbedingungen an einer Stelle x = xo gegeben, so l¨aßt sich Φ in der Umgebung von xo aus der Dgl. berechnen. Es ist daher klar, daß zur Integration einer partiellen Dgl. 2. Ordnung in einer Umgebung von Po (xo , yo ) die drei Gr¨ oßen Φ(Po ), Φx (Po ), Φy (Po ) notwendig sind. (Mit der Anzahl der unabh¨ angigen Ver¨ anderlichen hat sich im Vgl. zu gew¨ohnlichen Differentialgleichungen auch die Anzahl der Integrationsrichtungen um eins vermehrt.) Angenommen Φ = Φ(x, y) sei die allgemeine L¨ osung der partiellen Differentialgleichung. Diese L¨osung beschreibt eine Fl¨ache im Variablenraum, auf der sich Raumkurven auftragen lassen (Abb. 8).
10
Klassifizierung partieller Differentialgleichungen
Γ(c)
Einen ersten “L¨ osungsstreifen” Γ auf dieser Fl¨ ache erh¨ alt man zu einer Kurve C = ((x, y)|y = y(x)), an deren Punkten die drei Gr¨oßen Φ, Φx , Φy gegeben sind. Der Streifen darf nat¨ urlich keine Knicke enthalten, weswegen die Werte der partiellen Ableitungen Φx und Φy u ¨ber C stetig ineinander u ¨bergehen sollen.
Das bedeutet, daß Φx und Φy auf C stetig differenzierbar sind, man verf¨ ugt also zus¨ atzlich u ¨ber bekannte Werte d Φx (x, y(x)) dx
sowie
d Φy (y, y(x)) . dx
Nach der Kettenregel sind hiermit die rechten Seiten der Gleichungen ∂2Φ ∂ 2 Φ ∂y + ∂x2 ∂x∂y ∂x
=
d Φx (x, y(x)) , dx
∂2Φ ∂ 2 Φ ∂y + ∂x∂y ∂y 2 ∂x
=
d Φy (x, y(x)) dx
(2.9) (2.10)
bekannt. Die Gleichungen (2.8) bis (2.10) stellen ein lineares Gleichungssystem (2.11) zur Bestimmung der Unbekannten partiellen Ableitung 2. Ordnung (Φxx , Φxy , Φyy ) dar.
A B C Φxx 1 y 0 0 · Φxy 0 1 y0 Φyy
H }| { z x + EΦy + F Φ + G] = −[DΦ . d Φx dx d dx Φy
(2.11)
Solch ein Gleichungssystem ist nat¨ urlich nur dann eindeutig l¨ osbar, wenn die Determinante der Koeffizientenmatrix von null verschieden ist. Andernfalls sind die Zeilen- bzw. Spaltenvektoren dieser Matrix linear abh¨angig und es treten ganze Scharen von L¨ osungen auf. Die Werte Φ(x0 , y0 ), Φx (x0 , y0 ) ... Φyy (x0 , y0 ), zu einem Punkt R0 (x0 , y0 ) bestimmen ein Fl¨ achenelement 2. Ordnung zum Konvergenzpunkt R(x0 , y0 , Φ0 )
Φ = Φ0 + (x − x0 )Φx (x0 , y0 ) + (y − y0 )Φy (x0 , y0 ) R
+ (x − x0 )2 Φxx (x0 , y0 ) + (y − y0 )2 Φyy (x0 , y0 ) + (x − x0 )(y − y0 )Φxy (x0 , y0 ) .
Durch sukzessives aneinanderreihen solcher “L¨ osungscluster” von Γ aus ergibt sich eine N¨ aherung der L¨osungsfl¨ache.
2.3 Mathematische Klassifizierung PDG
11
Eine noch genauere Fortsetzung der L¨ osung von einem Punkt R0 ∈ Γ zu einem Punkt außerhalb von Γ erh¨ alt man durch die Taylorreihenentwicklung von Φ. Sofern die Stetigkeit der Funktion Φ h¨ oherer Ordnung gegeben ist, notiert man
∂Φ ∂Φ Φ(x0 + dx, y0 + dy) = Φ(x0 , y0 ) + dx + dy ∂x ∂y ¸ · 1 ∂2Φ 2 ∂2Φ ∂2Φ 2 dx + 2 dy + dxdy + 2 ∂x2 ∂x∂y ∂y 2 · ¸ 1 ∂3Φ 3 ∂3Φ ∂3Φ ∂3Φ 3 2 2 + dx + 3 2 dx dy + 3 dxdy + dy 6 ∂x3 ∂x ∂y ∂x∂y 2 ∂y 3 + ...
Alle darin auftretenden h¨oheren Ableitungen von Φ lassen sich dann in Analogie zu (2.11) durch schrittweise Differentiation der partiellen Dgl. finden. Man ben¨ otigt lediglich die Werte Φxx , Φxy , Φyy aus dem vorhergehenden Schritt (2.11). Nochmaliges partielles Ableiten nach x f¨ uhrt beispielsweise auf das Gleichungssystem: A(Φx )xx + B(Φx )xy + C(Φx )yy = Hx − Ax Φxx − Bx Φxy − Cx Φyy Φxxx + Φxxy y 0 =
d Φxx dx
Φxxy + Φxyy y 0 =
d Φxy dx
˜ H Φxxx A B C 1 y 0 0 · Φxxy = d Φxx . dx d Φxyy 0 1 y0 dx Φxy
(2.12)
Die Koeffizientenmatrix ist stets dieselbe. Daher reduziert sich die Aufgabe auf die Formulierung der Bedingungen, unter denen bekannte Werte Φ, Φx , Φy zur Bestimmung der partiellen Ableitungen 2. Ordnung ausreichen. Verwendet man die Cramerregel, so stellen sich die L¨ osungen des Gleichungssystems wie folgt dar: Φxy Φyy Φxx 1 = = = , ∆1 ∆2 ∆3 ∆4
(2.13)
12
Klassifizierung partieller Differentialgleichungen
wobei ¯ ¯ ¯ ∆1 = ¯¯ ¯
H B C d 0 Φ 0 dx x y d 1 y0 dx Φy
¯ ¯ A ¯ ∆2 = ¯¯ 1 ¯ 0
¯ H C ¯¯ d 0 ¯¯ dx Φx d 0 ¯ dx Φy y
¯ ¯ A B ¯ ∆3 = ¯¯ 1 y 0 ¯ 0 1 ¯ ¯ A ¯ ∆4 = ¯¯ 1 ¯ 0
¯ ¯ ¯ ¯ ¯ ¯
B y0 1
H d dx Φx d dx Φy C 0 y0
¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯ ¯
Man unterscheidet zun¨achst zwischen den F¨ allen: a) ∆4 6= 0 Es existiert f¨ ur (2.11) in jede Richtung (dx, dy) von R0 aus genau eine L¨ osung. Der 0 Punkt R heißt dann elliptischer Punkt. Sollten zudem alle anderen Punkte des Integrationsgebietes elliptische Punkte sein (z.B. f¨ ur konstante Koeffizienten A, B, C), so nennt man die Differentialgleichung elliptisch. Es sei nochmals darauf hingewiesen, daß die Gestalt des dy ) abh¨ angt, in der man die L¨ osung fortL¨osungsvektors (Φxx , Φxy , Φyy ) von der Richtung ( dx setzen will, und f¨ ur gew¨ohnlich in alle Richtungen eine andere ist. Deutlich ist zu erkennen, daß sich die in einem Punkt P (etwa in Form einer Anfangsbedingung) gespeicherte Information in alle Richtungen zur Fortsetzung der L¨ osung eignet. Sie breitet sich u ¨ber das gesamte Integrationsgebiet S aus und erzeugt dadurch in jedem Punkt ihren Anteil der Gesamtl¨ osung Φ. Die Gesamtl¨osung zu einem festen Punkt (xi , yj ) aus S erh¨ alt man durch Auswerten der Superposition aller (durch Rand- und Anfangsbedingung) induzierten L¨ osungsanteile an diesem Punkt. Hieraus folgt, daß eine “unendlich lange” Randbedingungskurve C (= ˆ offenes Integrationsgebiet) unendlich viele L¨osungsanteile erzeugen w¨ urde. Eine eindeutige L¨ osung w¨are in keinem Punkt außerhalb der Randkurve zu ermitteln.
S c
S
c
Die Existenz eindeutiger L¨osungen setzt also voraus, daß sich die Orte gegebener Randbedingungen zu einer endlich langen somit geschlossenen Kurve C aufreihen. Die in Kapitel 2.2 besprochenen Gleichgewichtsprobleme werden also durch elliptische Dgl. wiedergegeben. b) ∆4 = 0. Das Verschwinden der Koeffizientendeterminante ist verkn¨ upft mit der Existenz re-
2.3 Mathematische Klassifizierung PDG
13
eller Nullstellen der in dy/dx quadratischen Gleichung 0 2
0
A(y ) − B(y ) + C = 0
0 y1,2
bzw.
=
B±
√ B 2 − 4AC . 2A
(2.14)
In Abh¨angigkeit des Wurzelarguments heißt eine partielle Differentialgleichung: 1. Elliptisch:
B 2 − 4AC < 0
→
(y10 = y¯20 ) ∈ C
2. Parabolisch:
B 2 − 4AC = 0
→
(y10 = y20 ) ∈ R
3. Hyperbolisch:
B 2 − 4AC > 0
→
(y10 6= y¯20 ) ∈ R
0 ∈ R, Im parabolischen und hyperbolischen Fall existieren also ausgezeichnete Richtungen y1,2 f¨ ur die die Koeffizientendeterminante aus (2.11) den Wert null annimmt.
Dringt man von irgendeinem Punkt R0 auf C aus in dieser Richtung in das Integrationsgebiet ein, so ist das Gleichungssystem (2.11) nicht mehr eindeutig l¨ osbar. Eventuelle mehrdeutige L¨osungen sind an Nullstellen aller Z¨ ahlerdeterminanten nach (2.13) gebunden. Hierbei gen¨ ugt es, die Nullstellen von nur einer weiteren Determinante aufzusuchen. ∆4 = 0 ist gleichbedeutend mit der linearen Abh¨ angigkeit der Spaltenvektoren. A C B λ 1 + µ 0 = y0 , 0 y0 1 kurz λa + µc = b . Aus ∆2 = 0 folgt analog
A C κ 1 + ξ 0 = 0 y0
H d ↔ κa + ξc = h . dx Φx d dx Φy
Hiermit schließt man f¨ ur ∆3 = |a b x| mit b = f (a; c) und x = g(a; c) ∆3 = |a b x| = |a f (a; c)g(a; c)| = 0 , und ebenso ∆1 = 0. Wir wollen das von uns gew¨ahlte Beispiel ∆1 = 0 ∧ ∆2 = 0 genauer ausf¨ uhren. Hierzu l¨ osen wir zun¨achst das Gleichungssystem (2.11) auf: I
:
AΦxx + BΦxy + CΦyy
II :
Φxx + y 0 Φxy
III :
Φxy + y 0 Φyy
II : −→
Φxx =
d dx Φx
− y 0 Φxy
III : −→
Φxy =
d dx Φy
− y 0 Φyy
=H d Φx = dx d = Φy dx · ¸ d d 0 0 = Φx − y Φy − y Φyy dx dx −↑
d d I : → Φyy [A(y 0 )2 − By 0 + C] + Φx A + dy[B − Ay 0 ] = H | {z } dx dx =∆4 =0
14
Klassifizierung partieller Differentialgleichungen
also A
d d Φx + (B − Ay 0 ) Φy = −DΦx − EΦy − F Φ − G , dx dx
(2.15)
d d Φx y 0 + C Φy = [−DΦx − EΦy − F Φ − G]y 0 . dx dx
(2.16)
sowie aus ∆2 = 0 A
Das Gls. (2.17) enth¨alt keine weiteren Unbekannten, da s¨ amtliche Glieder u ¨ber dem Bereichsrand C bekannt sind (s.o.). Um einen Widerspruch zu vermeiden, m¨ ussen (2.15) und (2.16) identisch erf¨ ullt sein. Der Beweis ist leicht. Man f¨ uhrt zun¨ achst formal die beiden Unbekannten d d dx Φx und dx Φy ein und notiert (2.17) vektoriell. µ (−)
A (B − Ay 0 ) Ay 0 C
−→
¶Ã
d dx d dx
Φx
!
Φy
µ =
H Hy 0
¶·y0 (2.17)
d 2 Φy [−Ay 0 + By 0 − C] = 0 {z } dx | =∆4 =0
Das Gls. (2.17) ist also unter der Voraussetzung ∆2 = 0 (→ 2.16) tats¨ achlich identisch erf¨ ullt. Die gesuchten Bestimmungsst¨ ucke Φxx , Φxy , Φyy des L¨ osungsclusters erh¨ alt man wie u ¨blich aus d Φx = Φxx + Φxy y 0 dx d Φy = Φxy + Φyy y 0 . dx Hierbei kann eine der partiellen Ableitungen 2. Ordnung stets frei gew¨ ahlt werden, da die Dgl. in dieser Richtung keine zus¨atzliche Bedingung an die Wahl der Φxx , Φxy , Φyy stellt. Weist man der frei w¨ahlbaren Gr¨oße vorab einen konstanten Wert (z.B. null) zu, so verbleibt im parabolischen Fall eine L¨osung. F¨ ur hyperbolische Differentialgleichungen besitzt (2.11) wegen y10 6= y20 zwei verschiedene L¨osungen.
Abbildung 9:
Man erh¨alt somit von einem Punkt R0 auf C aus zwei Clusterketten (Abb. 9), die in das Integrationsgebiet eindringen; eine in Richtung (dx; y10 dx), die zweite in Richtung (dx; y20 dx).
2.3 Mathematische Klassifizierung PDG
15
Abbildung 10:
In der Praxis benutzen wir die Gesetzm¨ aßigkeit, wonach sich Information entlang der Charakteristiken ausbreitet, zur Fortsetzung einer L¨ osung. Da sich typengleiche (ηi − ηj ) Charakteristiken nicht schneiden, typenverschiedene (η − ξ) jedoch einen Schnittpunkt besitzen, sind zur Bestimmung der L¨ osung im Punkte A lediglich die beiden dort zur Deckung kommenden Cluster zu u ¨berlagern (siehe auch Kapitel 2.2). Sollte die Kurve, auf der die Anfangswerte gegeben sind, selbst eine Charakteristik sein, ist die L¨osung nur u aßt sich zu den gegebenen Anfangswerten ¨ber C selbst eindeutig. In diesem Falle l¨ kein “Informationsschnittpunkt” finden.
η
ξ c= ξj
Abbildung 11:
Es ist sinnvoller, die mathematische Klassifizierung einer PDG direkt auf die unabh¨ angigen Variablen zu beziehen. Die Impulsgleichungen der ebenen Grenzschicht (2.6) beschreiben ein Ausbreidy tungsproblem von parabolischem Typ. Ihre Charakteristiken verlaufen entlang der Linien ( dx )=∞ senkrecht zur Hauptstr¨omungsrichtung. Der Grenzschichtaußenrand ist Anfangs- und Randbedingungskurve zugleich, die Plattenfl¨ache ist dagegen nur Randbedingungskurve. Das Geschwindigkeitsprofil an einer Stelle xs berechnet sich aus den Anfangswerten in den stromauf liegenden Punkten (·) auf dem Grenzschichtaußenrand und den Randbedingungen (2) quer
16
Klassifizierung partieller Differentialgleichungen
Abbildung 12:
zur Hauptstr¨omungsrichtung. Die hieran anschließenden Profile haben keinen Einfluß. Die L¨ osung pflanzt sich in Hauptstr¨omungsrichtung vom GS-Außenrand beginnend senkrecht zu den charakteristischen Linien zu stromab liegenden Profilen fort. Man bezeichnet x auch als die einseitig gerichtete Koordinate des Problems. Eine St¨orung in S erreicht das Geschwindigkeitsprofil zu x0 im Punkt Q und breitet sich von dort aus entlang der zweiseitig gerichteten Koordinate y u ¨ber das ganze Profil aus. Pr¨aziser formuliert ist die DGL parabolisch in Richtung der Hauptstr¨ omungskoordinate x und elliptisch in Richtung der Querkoordinate y. Die Zeit ist immer eine einseitig gerichtete Variable, zuk¨ unftige Ereignisse verm¨ ogen gegenw¨ artige nicht mehr zu beeinflussen. Eine einseitig gerichtete Raumkoordinate erscheint zun¨ achst unsinnig. Mit ihr ließen sich zwar die einseitig gerichteten konvektiven Prozesse beschreiben, nicht jedoch diffusive Prozesse, da diese a priori zweiseitig gerichtet sind. Wir erinnern daran, daß die Glg. (2.6) nicht die vollst¨andige Impulsbilanz wiedergibt, sondern nur eine N¨ aherung, deren G¨ ute mit wachsender Reynoldszahl steigt. In diesem Fall spielen nach dem Grenzschichtkonzept s¨ amt2 liche Z¨ahigkeitskr¨afte mit Ausnahmen von ν ∂∂yu2 dV eine untergeordnete Rolle, weshalb die Hauptstr¨ omungskoordinate x zur einseitig gerichteten Koordinate wird. Die Strategie einer sich von den Anfangswerten der Geschwindigkeit am GS-Außenrand entlang der einseitig gerichteten Koordinate x ausbreitenden L¨osung scheitert jedoch offensichtlich f¨ ur Grenzschichten mit Abl¨ osung.
Abbildung 13:
Es treten partielle R¨ uckstr¨omgebiete im wandnahen Bereich auf, womit ein derartiges Profil gewissermaßen zwei Hauptstr¨omungsrichtungen besitzt.
2.3 Mathematische Klassifizierung PDG
17
Beispiel: Charakteristikenverfahren Vorausgesetzt die Glg. (2.8) sei hyperbolisch, so sind die Wurzeln der Glg. (2.14) reell und verschieden. Wir wollen diese Wurzeln in Zukunft mit f und g abk¨ urzen. Die Kurve C sei eine nicht charakteristische Kurve, auf der Anfangswerte f¨ ur Φ, Φx und Φy bekannt sind. g1
f2 V Z
T
f U R S P Q
C
Abbildung 14:
Sind P und Q zwei verschiedene Punkte von C, so soll die f -Charakteristik durch P die gCharakteristik durch Q in R schneiden. Da sich nirgends zwei Charakteristiken von ein und dem selben Typ schneiden, wird die L¨osung in einem Punkt S, der innerhalb des Dreiecks P QR liegt, durch die Anfangsbedingungen in den Punkten P und Q festgelegt. Analog bestimmt sich die L¨osung an einem Zwischenpunkt U innerhalb des Streifens aus der Anfangsbedingung in einem Punkt auf dem Bogen T P (die sich entlang einer f -Charakteristik ausbreitet) und der Anfangsbedingung in einem Punkt auf dem Bogen P R (die sich auf einer g-Charakteristik ausbreitet). Wenn sich die Anfangsbedingungen auf T P von P Q unterscheiden, dann ist die L¨ osung in dem Streifen P RV T verschieden von der L¨ osung innerhalb des Kurvendreiecks P QR. Strebt T gegen P , so geht der Streifen in die Charakteristik P R u ¨ber. Die Unstetigkeit in den Anfangsbedingungen bei P pflanzt sich also l¨ angs einer Charakteristik fort. Die Charakteristik vermag verschiedene L¨osungen zu trennen. Eine ¨außerst wichtige Eigenart von P DG zweiter Ordnung besteht darin, daß beide L¨osungen zusammen mit ihren ersten Ableitungen stetig sein k¨ onnen, wohingegen die Ableitungen zweiter und h¨oherer Ordnung dieselbe Charakteristik unstetig u ¨berschreiten. Das ist leicht einzusehen, wenn man bedenkt, daß entlang der Charakteristiken eine der partiellen Ableitungen 2. Ordnung frei w¨ahlbar war. Wir wollen nun versuchen, einen ungef¨ ahren Wert f¨ ur Φ im unbekannten Charakteristikenschnittpunkt R zu ermitteln. In erster N¨aherung k¨ onnen wir die B¨ ogen P R und QR als Geraden mit den ¨ ¨ Steigungen fP und gQ ansehen. Dann l¨ aßt sich die Anderung der y-Koordinate beim Ubergang zum Punkt R n¨aherungsweise durch yR − yP = fP (xR − xP ) (2.18) bzw. yR − yQ = gQ (xR − xQ )
(2.19)
bestimmen. Aus den Gleichungen (2.18) und (2.19) erh¨ alt man zun¨ achst die unbekannten Koordinaten (xR , yR ) des neuen Punktes. Aus (2.16) A(Φx )0 y 0 + C(Φy )0 = Hy 0
18
Klassifizierung partieller Differentialgleichungen
erh¨alt man in erster N¨aherung die beiden Gleichungen A
Φy (R) − Φy (P ) Φx (R) − Φx (P ) 0 y +C (xR − xP ) (xR − xP )
= Hy 0 ,
(2.20)
A
Φy (R) − Φy (Q) Φx (R) − Φx (Q) 0 y +C (xR − xQ ) (xR − xQ )
= Hy 0 .
(2.21)
Dies sind zwei Gleichungen f¨ ur die beiden Unbekannten Φx (R) und Φy (R). Bricht man die Taylorreihenentwicklung nach dem ersten Glied ab, so erh¨ alt man: Φ(R) = ΦP
+
1 [Φx (P ) + Φx (R)] · (xR − xP ) 2
+
1 [Φy (P ) + Φy (R)] · (yR − yP ) , 2
(2.22)
wobei die Gradienten durch ihre Mittelwerte ersetzt wurden. Die Approximation l¨aßt sich verbessern, indem man in den Gleichungen (2.18) und (2.19) eine gemittelte Steigung verwendet. Die Gleichungen f¨ ur verbesserte Werte xR und yR lauten dann: (yR − yP ) =
1 (fR + fP )(xR − xP ) , 2
(yR − yQ ) =
1 (gR + gP )(xR − xP ) . 2
Hieraus erh¨alt man mit (2.20) und (2.21) verbesserte Werte f¨ ur Φx (R) und Φy (R) und schließlich verm¨oge (2.22) Φ(R). In gleicher Weise berechnet man einen L¨ osungswert in U . Anschließend verwendet man die so gewonnenen Ergebnisse zur Berechnung der L¨ osungen in Z, usw.
2.4
Anfangs- und Randbedingungen
Bei der Integration partieller Dgl. fallen (¨ahnlich den Integrationskonstanten f¨ ur gew¨ ohnliche Dgl.) Funktionen an. Eine geschlossene L¨osung erh¨ alt man nur sofern diese durch zus¨ atzliche Bedingungen bestimmbar werden. Hierbei unterscheidet man zwischen Anfangs- und Randbedingungen. Anfangsbedingungen sind Vorschriften an den Wert der abh¨ angigen Variablen im Ausgangszustand. Randbedingungen
sind Vorschriften an den Wert der abh¨ angigen Variablen oder ihrer Ableitung auf dem Bereichsrand.
Folgende Randbedingungen sind namentlich bekannt: 1. Dirichletbedingung:
Der Wert der anh¨ angigen Variablen Φ ist entlang des Bereichsrandes gegeben.
2. Neumannbedingung:
Die Normalenableitung der unabh¨ angigen Variablen Φ entlang des Randes ist vorgegeben.
3. Gemischte (Cauchy-) Randbedingungen
An einem Teil der Berandung sind Dirichletrandbedingungen gegeben, an einem anderen Neumannbedingungen.
2.5 Formulierungsmethoden
4. Robinbedingung:
19
Hiermit sind Linearkombinationen von Dirichlet- und Neumannbedingungen gemeint.
Achtung: Reine Gradientenbedingungen k¨ onnen das Problem nicht eindeutig l¨ osen, da das Niveau nicht festgelegt ist.
2.5
Formulierungsmethoden
Die Formulierung einer PDG heißt konservativ, wenn die Ableitungen einer Variablen nicht explizit aufgef¨ uhrt sind. Die Gleichungen ∇ · (%c) = 0
bzw.
∂ ∂ (%u) + (%v) = 0 ∂x ∂y
sind konservativen Formulierungen des Massenerhaltungssatzes f¨ ur station¨ are Str¨ omungen. Die nichtkonservative Form lautet %
∂u ∂v ∂% ∂% +% +u +v =0. ∂x ∂y ∂x ∂y
Notiert man eine Bilanzgleichung mit Hilfe der “urspr¨ unglichen” Variablen (u, v, p, T ), so spricht man auch von einer Formulierung auf der Basis primitiver Variablen. F¨ ur die zweidimensionale inkompressible Navier-Stokes-Gleichung lautet diese: µ 2 ¶ ∂u ∂u ∂u 1 ∂p ∂ u ∂2u +u +v = − +ν + 2 , ∂t ∂x ∂y % ∂x ∂x2 ∂y µ 2 ¶ ∂v ∂v 1 ∂p ∂ v ∂2v ∂v +u +v = − +ν + , ∂t ∂x ∂y % ∂y ∂x2 ∂y 2 oder
∂ui ∂ 1 ∂p ∂ 2 ui + (ui uk ) = − +ν 2 . ∂t ∂xk % ∂xi ∂xk
(2.23)
In der Regel bevorzugt man jedoch Formulierungen auf der Basis abgeleiteter Gr¨ oßen (ω, ψ, H), wie z.B. die Wirbelst¨arke - Stromfunktion - Formulierung der 2-dimensionalen N-S-Gleichung µ ¶ ∂ω ∂ψ ∂ω ∂ψ ∂ω 1 ∂2ω ∂2ω + − = + ∂t ∂y ∂x ∂x ∂y Re ∂x2 ∂y 2 −ω =
∂2ψ ∂2ψ ∂u ∂v + = − . 2 2 ∂x ∂y ∂y ∂x
20
3
Finite Differenzenmethoden
Finite Differenzenmethoden
Der Einsatz digitaler Rechenautomaten beschr¨ ankt sich auf algebraische Probleme. Um eine PDG mit numerischen Methoden zu l¨osen, m¨ ussen daher alle auftretenden partiellen Ableitungen durch algebraische Ausdr¨ ucke ersetzt werden. Solche Ausdr¨ ucke heißen endliche bzw. finite Differenzenformeln. Die Idee der finiten Differenzenformeln geht auf die Einf¨ uhrung der Ableitung f¨ ur stetige Funktionen f zur¨ uck: ∂f f (x + ∆x, y) − f (x, y) = lim . (3.1) ∂x ∆x→0 ∆x Erfahrungsgem¨aß stellt schon der Differenzenquotient f (x + ∆x, y) − f (x, y) ∆x
(3.2)
eine befriedigende N¨aherung f¨ ur ∂f ∂x dar, sofern die Schrittweite ∆x “hinreichend”, jedoch nicht unendlich klein gew¨ahlt wird. Ersetzt man s¨ amtliche partielle Ableitungen der PDG durch geeignete Formeln der Gestalt (3.2), so reduziert sich das urspr¨ unglich kontinuierlich gestellte Problem auf wenige Kontrollpunkte. Man spricht daher von Diskretisierung der DGL auf der Basis finiter Differenzen. Die St¨ utzstellen der Differenzenformeln werden nicht explizit, sondern durch die Knotenpunkte eines automatisch erzeugten Gitters bestimmt (Abb. 15).
Abbildung 15: Kontrollpunktgitter.
Die Generierung solcher Gitter wird nicht behandelt, trotzdem wollen wir hier einiges zur Beschaffenheit des Gitters und zur Wahl geeigneter Koordinaten erw¨ ahnen. Zufriedenstellende L¨ osungen erh¨alt man nur, wenn das zugrunde gelegte Gitter sowohl innerhalb des Integrationsgebietes als auch entlang seiner Berandung physikalische Bindung beh¨ alt. Wichtige Kriterien sind das Aufl¨ osungsverm¨ogen des Gitters bez¨ uglich der im Integrationsgebiet auftretenden Gradienten und der Integrationsbedingungen. In Kapitel 2 wurde gezeigt, wie sich die L¨osung der PDG entlang nat¨ urlicher Koordinaten vereinfachen kann. Die nat¨ urlichen Koordinaten verlaufen im kartesischen Bezugssystem meist krummlinig. In diesem System ist die Formulierung der finiten Differenzengleichung (FDG) f¨ ur ein an nat¨ urlichen Koordinaten orientiertes Gitter unzweckm¨ aßig. Die Ausdr¨ ucke werden unn¨ otig kompliziert und f¨ uhren wegen der unregelm¨aßigen Schrittweite zu Schwierigkeiten bei der L¨ osung der PDG. Die Probleme k¨onnen u ¨berwunden werden, wenn man anstelle des kartesischen Bezugssystems eine
3.1 Herleitung finiter Differenzenformeln
21
nat¨ urliche (ξ − η) Basis verwendet. Der Zusammenhang zwischen beiden Basissystemen ist durch Transformationsformeln wiedergegeben ξ = g(x, y) η = h(x, y) . Letztere sind so zu bestimmen, daß das urspr¨ unglich vorgegebene Integrationsgebiet in einer Rechteckstruktur der ξ − η Ebene abgebildet wird (Abbildung 16). Auf die erforderliche Koordinatentransformation wird in Kapitel 6 im Detail eingegangen.
Abbildung 16: Nomenklatur des Rechengitters in der ξ − η-Ebene
Die Lage der Gitterpunkte wollen wir fortan mit i in ξ-Richtung bzw. j in η-Richtung bezeichnen. Die Anzahl der betrachteten Punkte in ξ- bzw. η-Richtung seien IM und JM . Die finite Differenzenformulierung der partiellen DGL wird f¨ ur jeden Gitterpunkt notiert, das entstehende Gleichungssystem h¨angt vom Typ der DGL ab (siehe Kapitel 2). W¨ ahrend Gleichgewichtsprobleme auf ein System simultan zu l¨osender finiter Differenzengleichungen f¨ uhren, k¨ onnen die FDG eines Ausbreitungsproblems hintereinander gel¨ ost werden. Das Ergebnis beider F¨ alle sind die Werte der abh¨angigen Variablen an allen Gitterpunkten.
3.1
Herleitung finiter Differenzenformeln
F¨ ur die Entwicklung finiter Differenzenformeln stehen alternative Verfahren wie z.B.: • Taylorreihenentwicklung • Polynomgest¨ utzte Methoden • Integralmethoden • Kontrollraumverfahren zur Verf¨ ugung. Wir beschr¨anken uns in diesem Kapitel auf die ersten beiden Verfahren und kommen zu gegebener Zeit auf die anderen zur¨ uck. Die Bezeichnung der unabh¨ angigen Variablen in den Beispielen ist beliebig.
22
3.1.1
Finite Differenzenmethoden
Taylorreihenentwicklung
F¨ ur eine analytische Funktion f (x) l¨aßt sich der Funktionswert an einer zu x benachbarten Stelle (x + ∆x) in einer Taylorreihe entwickeln: f (x + ∆x) = f (x) + (∆x) = f (x) +
∞ X (∆x)n ∂ n f n=1
L¨ost man (3.3) nach
∂f ∂x
∂f (∆x)2 ∂ 2 f (∆x)3 ∂ 3 f + + + ... ∂x 2! ∂x2 3! ∂x3 n!
∂xn
(3.3) .
auf, so erh¨alt man
∂f (∆x)2 ∂ 3 f f (x + ∆x) − f (x) ∆x ∂ 2 f − + ... (3.4) = − ∂x ∆x 2! ∂x2 3! ∂x3 Bricht man die rechte Seite der Glg. (3.4) nach dem ersten Glied ab und dr¨ uckt den Abschneidefehler durch den f¨ ur ∆x < 1 f¨ uhrenden Fehlerterm aus, so erh¨ alt man ∂f f (x + ∆x) − f (x) = + O(∆x) . ∂x ∆x Eine erste finite Differenzenformulierung der ersten Ableitung ergibt sich somit aus dem bekannten vorw¨ artigen Differenzenquotienten fi0 =
fi+1 − fi + O(∆x) . xi+1 − xi
(3.5)
f f(x)
f(x+ ∆x)
B C
x
x+ ∆ x
x
Abbildung 17: Veranschaulichung der Gleichung 3.5.
Die r¨ uckw¨artige Entwicklung der Funktion f ergibt analog aus der Entwicklung ∂f (−∆x)2 ∂ 2 f (−∆x)3 ∂ 3 f (−∆x) + + + ... ∂x 2! ∂x2 3! ∂x3 ¸ ½ ∞ · X (∆x)n ∂ n f + gerade n = f (x) + ± , n n! ∂x − ungerade n
f (x + (−∆x)) = f (x) +
n=1
(3.6)
3.1 Herleitung finiter Differenzenformeln
23
den sogenannten r¨ uckw¨ artigen Differenzenquotient fi − fi−1 xi − xi−1
fi0 =
(+O(∆x)) .
(3.7)
Subtrahiert man Glg. (3.6) von Glg. (3.3), dann verschwinden f¨ ur gleiche Schrittweiten alle Terme mit geraden Exponenten, und man erh¨ alt eine genauere N¨ aherung der ersten Ableitung in Gestalt des zentralen Differenzenquotienten (3.8) f (x + ∆x) − f (x − ∆x) = 2∆x fi0
=
∂f (∆x)3 ∂ 3 f + ... +2 ∂x 3! ∂x3
(3.8)
fi+1 − fi−1 + O(∆x)2 . 2∆x
f B C
A
i-1
i
i+1
x
Abbildung 18: Veranschaulichung der Gleichung 3.8.
F¨ ur die zweiten partiellen Ableitungen lassen sich die algebraischen N¨ aherungen ebenfalls aus der Linearkombination verschiedenartiger Taylorreihenentwicklungen finden. Eine finite Differenzenformulierung der zweiten Ableitung findet man beispielsweise aus f (x + 2∆x) = f (x) + (−) f (x + ∆x) = f (x) +
∂f ∂ 2 f (2∆x)2 ∂ 3 f (2∆x)3 2∆x + + + ... ∂x ∂x2 2 ∂x3 6 ∂f ∂ 2 f (∆x)2 ∂ 3 f (∆x)3 ∆x + + + ... ∂x ∂x2 2 ∂x3 6
−2f (x + ∆x) + f (x + 2∆x) = −f (x) + (∆x)2 L¨ost man Glg. (3.9) nach Ableitungen (3.10)
∂2f ∂x2
¯ ¯ ¯ ¯ ¯ ¯ ·(2) ¯ ¯
3 ∂2f 3∂ f + (∆x) + ... ∂x2 ∂x3
(3.9)
auf, so erh¨ alt man den vorw¨ artigen Differenzenquotienten f¨ ur zweite ¯ fi+2 − 2fi+1 + fi ∂ 2 f ¯¯ = + O(∆x) . ¯ 2 ∂x i (∆x)2
(3.10)
24
Finite Differenzenmethoden
Analog erh¨alt man aus den r¨ uckw¨artigen Entwicklungen f (x − ∆x) bzw. f (x − 2∆x) den r¨ uckw¨ artigen Differenzenquotienten f¨ ur zweite Ableitungen (3.11) ¯ ∂ 2 f ¯¯ fi−2 − 2fi−1 + fi = + O(∆x) . (3.11) ∂x2 ¯i (∆x)2 und durch Zusammenziehen von (3.3) und (3.6) den entsprechenden zentralen Differenzenquotienten (3.12) ¯ fi+1 − 2fi + fi−1 ∂ 2 f ¯¯ = + O(∆x)2 . (3.12) ¯ 2 ∂x i (∆x)2 N¨aherungen f¨ ur h¨ohere Ableitungen werden in gleicher Weise formuliert. Die grundlegenden Operationen der finiten Differenzenformulierung lassen sich ein wenig schematisieren, wenn man folgende Abk¨ urzungen einf¨ uhrt: ∆fi := fi+1 − fi ∇fi := fi − fi−1 δfi := fi+ 1 − fi− 1 2
(3.13)
2
δ ∗ fi := fi+1 − fi−1 = ∆fi + ∇fi . Bekanntermaßen lassen sich lineare Differentialgleichungen, die h¨ ohere Ableitungen in einer Ver¨ anderlichen enthalten, auf ein Differentialgleichungssystem reduzieren, in dem nur noch erste Ableitungen auftreten. Die Anzahl der Gleichungen in diesem System entspricht der Ordnung der Ausgangsdifferentialgleichung. Diskretisiert man in solch einem System von n − 1 Differentialgleichungen 1. Ordnung alle Ableitungen einheitlich (vorw¨ arts, r¨ uckw¨ arts oder zentral), so ergibt sich f¨ ur die n − te Ableitung der Funktion ¯ ∂ n f ¯¯ ∆n fi + O(∆x) , (3.14) = ∂xn ¯i (∆x)n ¯ ∂ n f ¯¯ ∇n fi + O(∆x) , (3.15) = ∂xn ¯i (∆x)n ¯ ∆n fi− n2 + ∇n fi+ n2 ∂ n f ¯¯ 2 = + O(∆x) gerade n ∂xn ¯i 2(∆x)n (3.16) ¯ ∆n fi− n−1 + ∇n fi+ n−1 ungerade n ∂ n f ¯¯ 2 2 2 = + O(∆x) ∂xn ¯i 2(∆x)n Die hierin auftretenden n-ten Potenzen der Operatoren ∆, ∇ berechnet man zur¨ uckkehrend bis auf bekannte Werte (, “rekursiv”) durch ∆n fi = ∆n−1 (∆fi ) 3.1.2
bzw.
∇n fi = ∇n−1 (∇fi ) .
(3.17)
Polynomgestu ¨ tzte Methoden
Polynomgest¨ utzte Methoden bieten eine zweite M¨ oglichkeit zur Entwicklung finiter Differenzenformeln. Sie basieren auf der Annahme, daß der Verlauf der abh¨ angigen Variablen in dem betrachteten Bereich durch ein Polynom wiedergegeben wird. Hierzu betrachten wir das Polynom 2. Ordnung f (x) = A x2 + B x + C ,
(3.18)
3.1 Herleitung finiter Differenzenformeln
25
dessen zun¨achst unbekannte Koeffizienten durch die Funktionswerte an drei ¨ aquidistanten St¨ utzstellen xi = 0, xi+i = ∆x und xi+2 = 2∆x fi = Ax2i + Bxi + C = C , fi+1 = Ax2i+1 + Bxi+1 + C = A(∆x)2 + B(∆x) + C , fi+2 = Ax2i+2 + Bxi+2 + C = A(2∆x)2 + B(2∆x) + C .
bestimmt werden. Die Aufl¨osung des Gleichungssystems liefert die Werte C = fi , B =
−fi+2 + 4fi+1 − 3fi , 2(∆x)
A =
fi+2 − 2fi+1 + fi . 2(∆x)2
Hiermit lassen sich die partiellen Ableitungen ∂f ∂x ∂2f ∂x2
auswerten. Beispielsweise erh¨alt man f¨ ur
= 2Ax + B , = 2A .
¯
∂f ¯ ∂x ¯x =0 i
die finite Differenzenformulierung
¯ −fi+2 + 4fi+1 − 3fi ∂f ¯¯ = , ¯ ∂x i 2(∆x) also den vorw¨artigen Differenzenquotienten von der Ordnung (∆x)2 . Die N¨ aherung der zweiten Ableitung ¯ ∂ 2 f ¯¯ fi+2 − 2fi+1 + fi = 2A = , ¯ 2 ∂x i (∆x)2 entspricht ebenfalls einem schon bekannten vorw¨ artigen Differenzenquotienten (3.10). Am Beispiel der vorw¨artigen Differenzenformulierung 1. Ordnung f¨ ur schiedlichen Entwicklungsmethoden vergleichen.
∂3f ∂x3
lassen sich die unter-
26
Finite Differenzenmethoden
f
f i+2
f i+1
f i+3
fi
xi ∆x
x i+3
x i+2
x i+1 ∆x
x
∆x
Abbildung 19: Veranschaulichung der Gleichung (3.19).
a) Die Taylorreihenentwicklungen zu den Schrittweiten ∆x, 2∆x, 3∆x lauten: f (x + ∆x) = (∆x)2 ∂ 2 f (∆x)3 ∂ 3 f ∂f + + + O(∆x)4 , f (x) + ∆x ∂x 2! ∂x2 3! ∂x3 f (x + 2∆x) = (2∆x)2 ∂ 2 f (2∆x)3 ∂ 3 f ∂f + + + O(2∆x)4 , f (x) + 2∆x 2 ∂x 2! ∂x 3! ∂x3 f (x + 3∆x) = ∂f (3∆x)2 ∂ 2 f (3∆x)3 ∂ 3 f f (x) + 3∆x + + + O(3∆x)4 , ∂x 2! ∂x2 3! ∂x3
(3.19)
(3.20)
(3.21)
[→ 3 · (3.19) − (3.21)] 3fi+1 − fi+3 = 2fi − 3(∆x)2
3 ∂2f 3∂ f − 4(∆x) + O(∆x)4 , ∂x2 ∂x3
(3.22)
[→ (3.20) − 2 · (3.19)] fi+2 − 2fi+1 = −fi + (∆x)2
3 ∂2f 3∂ f − (∆x) + O(∆x)4 . ∂x2 ∂x3
Aus [(3.22) + 3 · (3.23)] erh¨alt man aufgel¨ ost nach der dritten partiellen Ableitung ¯ fi+3 − 3fi+2 + 3fi+1 − fi ∂ 3 f ¯¯ = + O(∆x) . ¯ 3 ∂x i (∆x)3 b) Schreibt man die Rekursionsformel ¯ ∆3 fi ∂ 3 f ¯¯ = + O(∆x) ∂x3 ¯i (∆x)3
(3.23)
(3.24)
3.1 Herleitung finiter Differenzenformeln
27
aus, so ergibt sich ∆3 fi = ∆2 (∆fi )
= ∆2 (fi+1 − fi )
= ∆(∆fi+1 − ∆fi )
= ∆[(fi+2 − fi+1 ) − (fi+1 − fi )] = ∆(fi+2 − 2fi+1 + fi ) = ∆fi+2 − 2∆fi+1 + ∆fi
= (fi+3 − fi+2 ) − 2(fi+2 − fi+1 ) + (fi+1 − fi )
= fi+3 − 3fi+2 + 3fi+1 − fi und somit
¯ fi+3 − 3fi+2 + 3fi+1 − fi ∂ 3 f ¯¯ = + O(∆x) . ¯ 3 ∂x i (∆x)3
c) Betrachtet wird das Polynom dritter Ordnung f (x) = Ax3 + Bx2 + Cx + D .
(3.25)
F¨ ur 4 ¨aquidistante St¨ utzstellen xi = 0, xi+n = xi + n∆x; n = 1...3 berechnen sich die Koeffizienten gem¨aß fi+3 = A(3∆x)3 + B(3∆x)2 + C(3∆x) + D , fi+2 = A(2∆x)3 + B(2∆x)2 + C(2∆x) + D , fi+1 = A(∆x)3 + B(∆x)2 + C(∆x) + D , fi = D , zu D = fi , C =
2fi+3 − 9fi+2 + 18fi+1 − 11fi , 6∆x
B =
−3fi+3 + 12fi+2 − 15fi+1 + 6fi , 6(∆x)2
A =
fi+3 − 3fi+2 + 3fi+1 − fi . 6(∆x)3
Die partiellen Ableitungen des Polynoms sind bestimmt durch ∂f ∂x
= 3Ax2 + 2Bx + C ,
∂2f ∂x2
= 6Ax + 2B ,
∂3f ∂x3
= 6A ,
womit die gesuchte finite Differenzenformulierung wiederum ∂3f fi+3 − 3fi+2 + 3fi+1 − fi = + O(∆x) 3 ∂x (∆x)3
28
Finite Differenzenmethoden
lautet. Zus¨atzlich wollen wir hier noch bemerken, daß die N¨ aherung der ersten partiellen Ableitung in xi mit dem Koeffizienten C zusammenf¨ allt ¯ ∂f ¯¯ 2fi+3 − 9fi+2 + 18fi+1 − 11fi C= + O(∆x)3 . (3.26) = ¯ ∂x x=xi 6(∆x) F¨ ur die am Ende des Kapitels tabellarisch wiedergegebenen finite Differenzenformulierungen h¨ oherer partieller Ableitungen sei hier exemplarisch eine r¨ uckw¨ artige Formulierung der ersten partiellen Ableitung hergeleitet. Hierzu formulieren wir zun¨ achst eine erste r¨ uckw¨ artige Entwicklung der analytischen Funktion f (x) zur Schrittweite ∆x f (x − ∆x) = f (x) − ∆x
(∆x)3 ∂ 3 f (∆x)4 ∂ 4 f ∂f (∆x)2 ∂ 2 f − + + ... + ∂x 2 ∂x2 6 ∂x3 24 ∂x4
(3.27)
Im gew¨ahlten Beispiel soll die gesuchte Differenzenformel die erste partielle Ableitung einschließlich der in der Schrittweite von 2. Ordnung kleinen Gliedern genau ann¨ ahern. Die obige Entwicklung (3.13) wird daher nach dem vierten Summanden abgebrochen und man notiert f¨ ur die Aufl¨ osung nach ∂f /∂x ¯ ½ 2 ¾ ½ 3 ¾ ∂f ¯¯ 1 ∂ f 1 1 2 ∂ f {fi − fi−1 } + (∆x) = − (∆x) + O(∆x)3 . (3.28) ∂x ¯i ∆x 2 ∂x2 6 ∂x3 Um ussen die beiden verbleibenden partiellen Ableitungen n 2 die o geforderte n 3 oGenauigkeit zu erreichen, m¨ ∂ f ∂ f und ∂x3 durch finite Differenzen von der Ordnung O(∆x)2 bzw. O(∆x) ersetzt werden. ∂x2 Diese Differenzenformeln erh¨alt man aus zwei weiteren r¨ uckw¨ artigen Entwicklungen f (x − 2∆x) = f (x) − 2∆x
∂f ∂2f ∂3f 8 + 2(∆x)2 2 − (∆x)3 3 + O(∆x)4 , ∂x ∂x 6 ∂x
(3.29)
f (x − 3∆x) = f (x) − 3∆x
9 ∂2f ∂3f 27 ∂f + (∆x)2 2 − (∆x)3 3 + O(∆x)4 . ∂x 2 ∂x 6 ∂x
(3.30)
Eliminiert man die Glieder der gesuchten ersten Ableitung durch geeignete Linearkombinationen (3· (3.27) - (3.30) bzw. 2· (3.27) - (3.29)), so ergeben sich zwei Bestimmungsgleichungen f¨ ur die zu ersetzenden partiellen Ableitungen 3fi−1 − fi−3 = 2fi − 3(∆x)2 2fi−1 − fi−2 = fi − (∆x)2
3 ∂2f 3∂ f + 4(∆x) + O(∆x)4 , ∂x2 ∂x3
3 ∂2f 3∂ f + (∆x) + O(∆x)4 . ∂x2 ∂x3
Diese f¨ uhren auf die Differenzenformeln ¯ 1 ∂ 3 f ¯¯ = [fi − 3fi−1 + 3fi−2 − fi−3 ] + O(∆x) , ¯ 3 ∂x i ∆x3 ¯ 1 ∂ 2 f ¯¯ = [2fi − 5fi−1 + 4fi−2 − fi−3 ] + O(∆x)2 , ¯ 2 ∂x i ∆x2 womit man anstelle (3.28) ¯ −2fi−3 + 9fi−2 − 18fi−1 + 11fi ∂f ¯¯ = + O(∆x)3 ¯ ∂x i 6∆x notiert.
(3.31)
3.1 Herleitung finiter Differenzenformeln
3.1.3
29
Nicht¨ aquidistante Gitter
Abschließend erweitern wir die o.a. Methoden auf Rechengitter deren Schrittweitenfolgen dem Bildungsgesetz hi ∆xi = =α (→ ¨aquidistant : α ≡ 1) hi−1 ∆xi−1 ¨ gen¨ ugen. Wir werden uns der besseren Ubersicht halber auf das Beispiel des zentralen Differenzenquotienten 2. Ordnung f¨ ur ∂f /∂x beschr¨ anken.
f fi
f i-1
f i+1
xi
xi-1 ∆x
xi+1
x
α∆ x
Abbildung 20: Nicht¨aquidistantes Gitter.
Die Entwicklungen der Funktion f um x lauten f (x − ∆x) = f (x) − ∆x
(∆x)2 ∂ 2 f ∂f (∆x)3 ∂ 3 f + − + O(∆x)4 ∂x 2! ∂x2 3! ∂x3 ∂f α2 (∆x)2 ∂ 2 f + ∂x 2! ∂x2 3 3 3 α (∆x) ∂ f + O(∆x)4 3! ∂x3
(3.32)
f (x + α∆x) = f (x) + α∆x + [→ (3.33) +α· (3.32) ] :
fi+1 − (1 + α)fi + αfi−1 = (1 + α)α (∆x) 2
(3.33) 2
∂2f ∂x2
+ O(∆x)3
bzw. fi+1 − (1 + α)fi + αfi−1 ∂2f = + O(∆x) . 1 2 ∂x2 2 α(1 + α)(∆x)
(3.34)
Setzt man diese N¨aherung der zweiten Ableitung in (3.32) ein und l¨ ost nach ∂f /∂x auf, so ergibt sich schließlich an der Stelle xi ∂f fi+1 − (1 − α2 )fi − α2 fi−1 = + O(∆x)2 ∂x α(1 + α)∆x
(3.35)
30
Finite Differenzenmethoden
ein Ergebnis, das man auch aus der Betrachtung des quadratischen Polynoms (Abb. 20) f (x) = Ax2 + Bx + C an den St¨ utzstellen xi = 0, xi−1 = −∆x, xi+1 = α∆x erh¨ alt. Aus fi−1 = A(−∆x)2 + B(−∆x) + C fi = C fi+1 = A(α∆x)2 + B(α∆x) + C bestimmt man die Koeffizienten zu fi+1 − (α + 1)fi + αfi−1 , α(α + 1)(∆x)2 fi+1 + (α2 − 1)fi − α2 fi−1 B = , α(α + 1)(∆x) C = fi , A =
¯
womit sich f¨ ur
∂f ¯ ∂x ¯i
(= 2Axi + B) wiederum die N¨ aherung fi+1 + (α2 − 1)fi − α2 fi−1 ∂f = + O(∆x)2 ∂x α(1 + α)∆x
(3.36)
ergibt.
3.2
Gemischte partielle Ableitungen
Algebraische N¨aherungen f¨ ur gemischte partielle Ableitungen leitet man unmittelbar von den vor¨ angestellten Uberlegungen zu gew¨ohnlichen Differentiationsprozessen ab. Eine finite Differenzenformulierung von quadratischer Fehlerordnung f¨ ur · ¸ ∂2f ∂ ∂f = ∂x∂y ∂x ∂y findet man etwa, indem man den Ausdruck ∂f (x, y)/∂y zun¨ achst zentral in y diskretisiert · ¸ · ¸ ∂2f ∂ ∂f ∂ fi,j+1 − fi,j−1 = = + O(∆y)2 . ∂x∂y ∂x ∂y ∂x 2∆y Wegen der Unabh¨angigkeit der Variablen x, y formuliert man weiter # " ¯ ¯ ∂f ¯¯ ∂2f 1 ∂f ¯¯ − + O(∆y)2 , = ∂x∂y 2∆y ∂x ¯i,j+1 ∂x ¯i,j−1 und erh¨alt nach erneuter Verwendung zentraler Differenzenquotienten fi+1,j+1 − fi−1,j+1 − fi+1,j−1 + fi−1,j−1 ∂2f = + O[(∆x)2 (∆y)2 ] . ∂x∂y 4(∆x)(∆y)
(3.37)
Der Vollst¨andigkeit halber sei erw¨ahnt, daß man dasselbe Ergebnis auch aus Taylorreihenentwicklungen der Funktion f (x, y) um das Entwicklungszentrum (xi , yi ) errechnen kann.
3.2 Gemischte partielle Ableitungen
31
fi−2
fi−1
fi
fi+1
-1
0
1
1
-2
1
-1
2
0
-2
1
1
-4
6
-4
1
2(∆x) ∂f ∂x 2
(∆x)2 ∂∂xf2 3 2(∆x)3 ∂∂xf3 4 (∆x)4 ∂∂xf4
fi+2
Tabelle 1: Zentrale Differenzenquotienten O(∆x)2
fi
fi+1
fi+2
2(∆x) ∂f ∂x
-3
4
-1
∂2f
2
-5
4
-1
-5
18
-24
-14
-3
3
-14
26
-24
11
(∆x)2 ∂x2 3
2(∆x)3 ∂∂xf3 ∂4f
(∆x)4 ∂x4
fi+3
fi+4
fi+5
-2
Tabelle 2: Vorw¨artige Differenzenquotienten O(∆x)2
fi−5
fi−4
fi−3
fi−2
fi−1
fi
1
-4
3
-1
4
-5
2
3
-14
24
-18
5
11
-24
-26
-14
3
2(∆x) ∂f ∂x ∂2f
(∆x)2 ∂x2 ∂3f
2(∆x)3 ∂x3 4
(∆x)4 ∂∂xf4
-2
Tabelle 3: R¨ uckw¨artige Differenzenquotienten O(∆x)2
32
Finite Differenzenmethoden
fi−3
fi−2
fi−1
fi
fi+1
fi+2
1
-8
0
8
-1
-1
16
-30
16
-1
12(∆x) ∂f ∂x 2
12(∆x)2 ∂∂xf2
fi+3
∂3f
8(∆x)3 ∂x3
1
-8
13
0
-13
8
-1
∂4f
-1
12
-39
56
-39
12
-1
6(∆x)4 ∂x4
Tabelle 4: Zentrale Differenzenquotienten O(∆x)4
(∆x) ∂f ∂x
fi
fi+1
fi+2
fi+3
-1
1
∂2f
(∆x)2 ∂x2
1
-2
1
∂3f
(∆x)3 ∂x3
-1
3
-3
1
∂4f
1
-4
6
-4
(∆x)4 ∂x4
fi+4
1
Tabelle 5: Vorw¨artige Differenzenquotienten O(∆x)
fi−4
fi−3
fi−2
fi−1
fi
-1
1
1
-2
1
-1
3
-3
1
-4
6
-4
1
(∆x) ∂f ∂x 2
(∆x)2 ∂∂xf2 ∂3f
(∆x)3 ∂x3 ∂4f
(∆x)4 ∂x4
1
Tabelle 6: R¨ uckw¨artige Differenzenquotienten O(∆x)
33
4
Zeitapproximation – parabolische Differentialgleichungen
Die Diskussion unterschiedlicher zeitlicher Approximationsverfahren soll am Beispiel der W¨armeleitung erfolgen. Die Bilanzgleichung der (ebenen) W¨ armeleitung leitet sich aus dem (auf thermischmechanische Umsetzungen beschr¨ankten) Energiesatz ( ˙ )= ˆ
A˙ a + Q˙ a = E˙ + U˙
d dt
ab. Hiernach wird der an einem K¨orper (in Form von mechanischer Arbeit Aa und zugef¨ uhrter W¨armemenge Qa ) geleistete (¨außere) Energieaufwand sofern er nicht zur Ver¨ anderung seiner kinetischen Energie E dient in Form von innerer Energie U gespeichert. Wir vereinfachen diese Bilanz, indem wir versuchen ‘mechanisches’ und ‘thermisches’ Gleichgewicht zu entkoppeln. Beschr¨ ankt man sich auf die Betrachtung eines idealen (S = −pE), inkompressiblen (%˙ = 0) Fluids, verschwinden ¨ahnlich wie bei einem starren K¨orper alle Spannungsleistungen A˙ s , weswegen der Arbeitsansatz der Mechanik die Identit¨at ˙ A˙ s ) A˙ a = E(+ liefert. In diesem Falle ist die gesonderte Betrachtung des thermischen Gleichgewichts Q˙ a = U˙
(4.1)
m¨oglich. Die in der Zeiteinheit zugef¨ uhrte W¨ armemenge sei ausschließlich leistungsbedingt Z I ˙ Qa = − q · dA = − ∇ · qdV , V
so daß wir anstelle (4.1) die massenspezifische Bilanz 1 u˙ = − ∇ · q %
(4.2)
erhalten. Ber¨ ucksichtigt man den Zusammenhang ∂u ˙ ∂u %˙ + T ; u = (%, T ) −→ u˙ = ∂% ∂T
µ ¶ ∂u %˙ = 0, =c , ∂T
dann tritt in (4.2) unter Verwendung der kapazitiven Konstante c und des Fourierschen Materialgesetzes (q = λ · ∇T ) nur noch eine abh¨ angige Variable (T ) auf, und man erh¨ alt µ 2 ¶ λ ∂ T ∂2T λ ∂T = ∆T = κ + ; κ= . (4.3) 2 2 ∂t %c ∂x ∂y %c Die partielle Differentialgleichung (4.3) ist elliptisch in Raum und parabolisch in der Zeit. Wir wenden uns nun einem einfachen Beispiel, der Temperaturverteilung in einem d¨ unnen gleichf¨ormigen Stab, dessen Schwerachse mit der Raumkoordinate x zusammenfallen m¨ oge, zu. Zus¨ atzlich setzen wir voraus, daß der Stab an seinem Mantel w¨ armeisoliert ist, also die Temperaturver¨ anderungen durch W¨armeleitung in L¨angenrichtung und durch W¨ arme¨ ubertragung an den Enden eintreten. Das Problem wird durch die partielle Differentialgleichung ∂T ∂2T =κ 2 ∂t ∂x beschrieben.
(4.4)
34
4.1
Zeitapproximation – parabolische Differentialgleichungen
Explizite und implizite Differenzenformeln
Eine erste finite Differenzenformulierung der Gleichung (4.4) repr¨ asentiert die sogenannte FTCS (forward time-central space) Approximation. m T m − 2Tim + Ti−1 Tim+1 − Tim = κ i+1 . ∆t (∆x)2
(4.5)
Dabei wird folgende Nomenklatur f¨ ur die diskretisierten Temperaturen verwendet: Tim
m : t − Index, Zeitstufe i : x − Index, Ort
Der partiellen Ableitung nach der Zeit n¨ahert man sich wegen ¯ Tim+1 − Tim ∂T ¯¯t=tm = + O(∆t) ∂t ¯x=xi ∆t von erster Ordnung genau, w¨ahrend dessen die r¨ aumliche Ableitung gem¨ aß ¯m m − 2T m + T m Ti+1 ∂ 2 T ¯¯ i i−1 + O(∆x)2 = ∂x2 ¯i (∆x)2 von zweiter Ordnung genau ist. In der Gestalt m m Tim+1 = Tim + d(Ti+1 − 2Tim + Ti−1 );
d=κ
∆t ∆x2
(4.6)
liefert die Gleichung (4.5) eine explizite Formel zur Berechnung der unbekannten Temperatur im Gitterpunkt (i, m + 1) aus bekannten Temperaturen der m-ten Zeitlinie. Ausgehend von den Anfangswerten zur Zeit to = 0 (→ m = 1) lassen sich mit (4.6) die unbekannten Werte der zweiten Zeitlinie (to + ∆t) berechnen, die wiederum die Werte der dritten Zeitlinie (to + 2∆t) bestimmen, usw. Eine finite Differenzenformel ist also genau dann explizit, wenn sie nur eine Unbekannte beinhaltet.
unbekannt "m+1"
bekannt "m" i-1
i
i+1
Abbildung 21: Differenzenmolek¨ ul der FTCS Diskretisierung.
Die L¨osung der W¨armeleitungsgleichung durch FTCS Diskretisierung des Problems erscheint wegen der einfachen programmiertechnischen Umsetzung g¨ unstig. Gleichzeitig weist sie jedoch das f¨ ur alle expliziten Formeln typische Merkmal der Entkopplung von physikalisch einander zugeordneten Gr¨oßen auf. Zwischen den Temperaturwerten einer Zeitlinie besteht nach (4.6) kein funktionaler Zusammenhang. Dieser Sachverhalt sollte zumindest Mißtrauen gegen¨ uber den Ergebnissen einer solchen Berechnung erwecken.
4.1 Explizite und implizite Differenzenformeln
i-1
35
i
i+1
unbekannt "m+1"
bekannt "m" Abbildung 22: Differenzenmolek¨ ul der BTCS Diskretisierung.
Die analoge implizite Formulierung erh¨ alt man aus der sog. BTCS (backward time - central space) Diskretisierung der Differentialgleichung (4.4) m+1 m+1 Ti+1 − 2Tim+1 + Ti−1 Tim+1 − Tim . =κ ∆t (∆x)2
(4.7)
Nach der einzig bekannten Gr¨oße aufgel¨ ost erh¨ alt man die Gestalt m+1 m+1 −Tim = dTi+1 − (1 + 2d)Tim+1 + dTi−1 ,
(4.8)
weshalb eine simultane L¨osung f¨ ur alle (IM − 2) inneren Gitterpunkte einer Zeitlinie notwendig ist. Trotz dieses vergleichsweise h¨oheren L¨ osungsaufwandes besitzen implizite Formulierungen entscheidende Vorteile hinsichtlich der Stabilit¨ at. F¨ ur die hier gegen¨ ubergestellten finiten Differenzenformulierungen (FTCS bzw. BTCS) der Gleichung (4.4) wollen wir dies anschaulich machen. Das bez¨ uglich der zweiseitig gerichteten Ortskoordinate x elliptische Problem verlangt die Existenz zweier Randbedingungen f¨ ur jede Zeitlinie m. Die Linien t = konst sind die charakteristischen Kurven des Problems. Sie sind die Einflußlinien f¨ ur jede Art von St¨ orungen, zu denen wir formal auch die Randbedingungen z¨ahlen k¨onnen. Anhand der Abb. 23 ist deutlich zu erkennen, daß im Falle der expliziten Formulierung von (4.4) bei der Berechnung der aktuellen Zeitlinie (m + 4) die dazugeh¨ origen Randbedingungen nicht ber¨ ucksichtigt werden. Dieser Umstand widerspricht somit der Physik des Problems.
m+4 m+3 m+2 m+1 x m i−4 i−3 i−2 i−1
i
i+1 i+2 i+3 i+4
Abbildung 23: Randbedingungseinfluß bei expliziter Formulierung.
Die implizite BTCS-Formulierung (4.8) vermag dagegen aufgrund der Bauart ihrer ‘Differenzenmolek¨ ule’ ein besseres Abbild der Physik zu geben. Durch die Verkn¨ upfung dreier benachbarter Punkte der aktuellen Zeitlinie wird der elliptische Charakter formelhaft wiedergegeben. Die aktuelle Temperatur eines Massenpunktes h¨angt sicherlich auch von den Momentanwerten in benachbarten Punkten ab. Punktuelle St¨orungen der finiten L¨ osungen, die sich aus nur endlicher Rechengenauigkeit ergeben, werden durch die Einbindung in das lokale Gleichgewicht zeitlich unmittelbar ged¨ ampft.
36
4.2
Zeitapproximation – parabolische Differentialgleichungen
Stabilit¨ at
Der absolute Fehler eines numerischen Verfahrens setzt sich aus dem Diskretisierungsfehler und dem meist rundungsbedingten Stabilit¨ atsfehler zusammen. Diskretisierungsfehler sind kontrollierbar, man bestimmt sie im Sinne von Gr¨ oßenordnungsabsch¨ atzungen aus dem Vergleich mit Reihenentwicklungen. Rundungsfehler k¨ onnen dagegen in ung¨ unstigen F¨allen außer Kontrolle geraten und instabile L¨ osungen erzeugen. Es gibt mehrere Wege zur Untersuchung des Wachstums der Fehler bei den Operationen, die zum L¨ osen der endlichen Differenzengleichung ben¨otigt werden. Einleitend werden wir die Entwicklung von diskreten St¨ orungen behandeln und daran anschließend ein Matrizenkriterium formulieren. Zus¨atzlich wird ein auf von Neumann zur¨ uckgehendes Stabilit¨atskriterium diskutiert. 4.2.1
Behandlung von diskreten Sto ¨rungen
Die FTCS Diskretisierung der PDG
lautet
∂2T ∂T =κ 2 ∂t ∂x
m T m − 2Tim + Ti−1 Tim+1 − Tim = κ i+1 . ∆t (∆x)2
(4.9)
Wir wollen nun die Auswirkung einer in (i, m) eingeleiteten St¨ orung εm i auf den Knotenpunkt (i, m + 1) untersuchen. Hierzu notieren wir m T m + 2(Tim + εm (Tim+1 + εm+1 ) − (Tim + εm i ) + Ti−1 i ) i = κ i+1 . ∆t (∆x)2
(4.10)
Die Subtraktion von (4.9) und (4.10) liefert εm+1 − εm −2εm i i i =κ ∆t (∆x)2 bzw. εm+1 = εm i −2 i
κ∆t m ε = εm i (1 − 2d) (∆x)2 i | {z }
mit
d=
κ∆t . (∆x)2
d
und damit
εm+1 i = (1 − 2d) εm i
Die mathematische Formulierung der Stabilit¨ at, wonach eine relative Vergr¨ oßerung der St¨ orung dem Betrage nach vermieden werden muß, lautet also |(1 − 2d)| ≤ 1
−→
d ≤ 1.
(4.11)
Als n¨achstes wenden wir uns der im Knoten (i + 1, m + 1) induzierten St¨ orung zu. Hierzu notieren wir m+1 m m + Tm Ti+1 − Ti+1 T m − 2Ti+1 i = κ i+2 , (4.12) ∆t (∆x)2 sowie m+1 m m + (T m + εm ) (Ti+1 + εm+1 T m − 2Ti+1 i i i+1 ) − Ti+1 = κ i+2 , (4.13) ∆t (∆x)2
4.2 Stabilit¨ at
37
Subtrahiert man Gleichung (4.12) von Gleichung (4.13), dann erh¨ alt man m εm+1 i+1 = dεi ,
und analog f¨ ur den Knoten (i − 1, m + 1) m εm+1 i−1 = dεi .
(Der Fall d = 1 zeigt somit deutlich, wie sich eine St¨ orung entlang der charakteristischen Kurven ausbreitet.) Die letzten beiden Ergebnisse benutzen wir, um die Induktion in dem Knoten (i, m+2), der zwei Zeitschritte oberhalb der St¨ orquelle liegt, zu erfassen. m+1 m+1 Ti+1 − 2Tim+1 + Ti−1 Tim+2 − Tim+1 , =κ ∆t (∆x)2
[Tim+2 + εm+2 ] − [Tim+1 + (1 − 2d)εm i ] i = ∆t m+1 m+1 m [T m+1 + dεm + (1 − 2d)εm i ] − 2[Ti i ] + [Ti−1 + εi d] = κ i+1 . (∆x)2
(4.14)
(4.15)
Die stabile L¨osung ermittelt man aus m m m εm+2 = εm i (1 − 2d) + d[εi d − 2εi (1 − 2d) + εi d] i
bzw. 2 εm+2 = εm i (6d − 4d + 1) i
zu |6d2 − 4d + 1| < 1
−→
d ≤
2 . 3
(4.16)
Schreitet man zu h¨oheren Zeitlinien fort, so ergeben sich zunehmend restriktivere Bedingungen f¨ ur d. Die Abbildungen 24 und 25 veranschaulichen das Stabilit¨ atsverhalten der FTCS Formulierung. F¨ ur d = 1.5 erkennt man eine oszillierende Instabilit¨ at, die man daher auch dynamische Instabilit¨ at nennt. W¨achst die Amplitude ohne einen Vorzeichenwechsel, so nennt man dies statische Instabilit¨ at. Wir wollen nun versuchen, den Grenzwert von d, der durch ¯ m+k ¯ ¯ε ¯ lim ¯¯ m ¯¯ ≤ 1 k→∞ ε festgelegt ist, zu ermitteln. Hierzu formulieren wir im n¨ achsten Abschnitt ein Matrizenkriterium. 4.2.2
Matrizenkriterium
Das in der Folge beschriebene Verfahren besteht im wesentlichen darin, die finiten Differenzengleichungen durch Matrizen auszudr¨ ucken und dann die Eigenwerte einer assoziierten Matrix zu untersuchen. Wir betrachten die Gleichung ∂T ∂2T =κ 2 , 0<x<1 ∂t ∂x
38
Zeitapproximation – parabolische Differentialgleichungen
Abbildung 24: FTCS Diskretisierung von (4.4). D¨ampfung einer im Knoten (i, m) aufgebrachten St¨orung ε durch hinreichend kleines d (d = 0.25).
Abbildung 25: Illustration zur Fehlervergr¨oßerung bei der FTCS Diskretisierung von (4.4) f¨ ur (d = 1.5) (→ dynamische Instabilit¨at).
mit T = 0 bei x = 0 und 1 sowie bekannten Anfangstemperaturen f¨ ur t0 = 0. Die explizite FTCS Formulierung (4.6) lautet in Matrix-Vektor Schreibweise T1m+1 (1 − 2d) d T1m m+1 d (1 − 2d) d T2 T2m m+1 T3 = · T3m , d (1 − 2d) d .. .. . . . . . m+1 m TIM −1 d (1 − 2d) TIM −1 kurz T m+1 = A · T m .
(4.17)
Hiermit lassen sich die Temperaturen zu einer beliebigen Zeitlinie m auf die bekannten Anfangstemperaturen T 0 zur¨ uckf¨ uhren T m = A · T m−1 = A · [A · T m−2 ] = A · [A(A · T m−3 )] = ... = A(m) · T 0 . Die endlichen Differenzenformeln unterscheiden nicht zwischen akkuraten und rundungsfehler-behafteten Werten. Fassen wir die anf¨angliche St¨ orungsverteilung in einen Vektor e zusammen, dann
4.2 Stabilit¨ at
39
summieren sich die tats¨achlichen Anfangswerte T 0∗
T 0∗ = T 0 + e
zu
und weiter T m∗ = A(m) · (T 0∗ ) = A(m) · (T 0 + e) = A(m) · T 0 + A(m) · e , bzw. T m∗ = T m + em . Die endliche Differenzenformel ist dann stabil, wenn der Fehler em auch f¨ ur m → ∞ beschr¨ ankt bleibt. Diese Stabilit¨at l¨aßt sich untersuchen, wenn man den Fehlervektor durch die Eigenvektouckt. Angenommen die symmetrische Matrix A verf¨ ugt u ren von A ausdr¨ ¨ber IM − 1 paarweise verschiedene Eigenwerte λs , dann sind die dazugeh¨ origen Eigenvektoren v s linear unabh¨ angig. Der Fehlervektor e ergibt sich durch Linearkombinationen der Eigenvektoren von A zu e=
IM −1 X
cs v s .
(4.18)
s=1
F¨ ur den Vektor der induzierten Fehler auf einer Zeitlinie notieren wir # "IM −1 IM −1 X X m (m) (m−1) (m−1) cs λ(m) cs λs v s = . . . = e =A ·e=A · [A · e] = A · s vs ,
(4.19)
s=1
s=1
was besagt, daß die Fehler mit m nicht exponentiell anwachsen, sobald kein Eigenwert dem Betrag nach gr¨oßer 1 ist. Zun¨achst noch eine Bemerkung u ohnlichen tridiagonalen n × n Matrix ¨ber die Eigenwerte einer gew¨
a c
b a c , . . . b a c b a wobei b und c reell und von gleichem Vorzeichen sein wollen. Die Eigenwerte lauten in diesem Fall r s·π b cos , s = 1 . . . IM . (4.20) λs = a + 2c c IM + 1 Zerlegen wir die Matrix A f¨ ur die FTCS Formulierung aus Gleichung (4.17) in zwei Teilmatrizen
(1 − 2d)
d
d
(1 − 2d)
1 0
d .. . d
0 1 0 = .. . 0 1 (1 − 2d)
+ d
−2 1 1 −2
,
1 .. . 1
−2
40
Zeitapproximation – parabolische Differentialgleichungen
kurz A = E + dB. Damit erleichtert sich die Suche nach den Eigenwerten · λs = 1 + d −4 sin2 Das explizite Verfahren ist stabil f¨ ur ¯ ¯ ¯1 − 4d sin2 ¯
sπ 2(IM + 1)
¸ .
(4.21)
¯ ¯ sπ ¯ <1 , 2(IM + 1) ¯
bzw. µ
−1
sπ 1 − 4 d sin 2(IM + 1) sπ 1 sin−2 2 2(IM + 1) 1 . 2
¶
2
≤
d ≤ → d ≤
≤ 1,
(4.22)
F¨ ur die implizite BTCS Formulierung (4.8)
−(1 + 2d)
d
d
−(1 + 2d)
T1m+1
m+1 T2 · .. . m+1 −(1 + 2d) TIM −1
d .. . d
= −
T1m T2m .. .
,
m TIM −1
kurz A · T m+1 = −T m oder T m+1 = −A−1 · T m
bzw.
T m = −A−1 · T m−1
ergibt sich mit B = A−1 die zu (4.19) analoge Beziehung A · em+1 = −em = −A(−1) · A(−1) · em−2 = −B · B · em−2 . . . m
e
= B
(m)
· e = ... =
IM −1 X
cs λ(m) s vs .
(4.23)
s=1
Die Eigenwerte von B lauten λs =
1 −1 − 4d sin2
sπ 2(IM +1)
.
(4.24)
Sie sind in jedem Falle betragsm¨aßig kleiner eins und das implizite Verfahren damit generell stabil. 4.2.3
Fourier-Neumann Kriterium
Die Methode nach Fourier-Neumann dr¨ uckt eine zu Beginn vorhandene Fehlerzeile durch eine endliche Fourierreihe aus und verfolgt mittels der bekannten Methode der Trennung der Variablen das Anwachsen einer Funktion, die sich f¨ ur t = 0 auf diese Reihe reduziert.
4.2 Stabilit¨ at
41
Die Fourierreihe kann mit Sinus- und Cosinus-Gliedern aufgebaut werden, wird aus reP jedochnπx chentechnischen Gr¨ unden in exponentieller Schreibweise notiert. Man ersetzt an cos l und P P Jnπx bn sin nπx durch das ¨aquivalente An e l , wobei J 2 = −1 und l der Definitionsbereich der l Funktion ist. Wir bezeichnen die Fehler in den Gitterpunkten auf t = 0 zwischen x = 0 und l = IM · h mit E(ih). Die IM + 1 Gleichungen Ei =
IM X
An eJβn ih ;
i = 0 . . . IM,
βn =
n=0
nπ l
(4.25)
gen¨ ugen zur eindeutigen Bestimmung der IM +1 unbekannten Koeffizienten A0 ... AIM und zeigen, daß sich eine beliebige Verteilung der Anfangsfehler in dieser komplexen Form darstellen l¨ aßt. Um die Ausbreitung dieses Fehlers mit wachsendem t zu untersuchen, m¨ ussen wir zun¨ achst eine L¨osung der endlichen Differenzengleichung finden, die sich f¨ ur t = m · k = 0 auf eJβn ih reduziert. Wir machen den Separationsansatz Ei,m =
IM X
x
t
z}|{ z}|{ X IM Jβn ih αn mk An e ·e = An eJβn ih · ξnm
n=0
(4.26)
n=0
mit den im allgemeinen komplexen Konstanten αn und ξn = eαn k . Der Fehler w¨ achst offensichtlich nicht mit t, wenn |ξ| ≤ 1 ist. Da die finiten Differenzenformulierungen der zu untersuchenden PDG stets linear sein werden, lassen sich s¨amtliche L¨osungen (auch die Fehlerbehafteten) u ¨berlagern. Wir betrachten daher in der Folge lediglich einen einzigen, jedoch beliebigen Term der Reihe (4.25), um an diesem zu untersuchen, unter welchen Voraussetzungen er zeitlich nicht w¨ achst. Wenn wir tats¨ achlich keinerlei ¨ Einschr¨ankungen bez¨ uglich n machen, so wird auch die Uberlagerung mehrerer beliebiger Terme aus (4.25) zeitlich beschr¨ankt bleiben. F¨ ur ein Element der Summe lautet der Separationsansatz: {ein Element von Ei,m } = eJβih · eαmk = eJβih ξ m .
(4.27)
Hierzu betrachten wir erneut die FTCS Diskretisierung (4.5) der eindimensionalen W¨ armeleitungsgleichung m T m − 2Tim + Ti−1 Tim+1 − Tim = κ i+1 ; ∆x = h , ∆t = k ; ∆t (∆x)2 Da die Fehlerfunktion E dieselben Beziehungen wie die abh¨ angige Variable erf¨ ullt, notieren wir eJβih ξ m+1 − eJβih ξ m = d [eJβ(i+1)h ξ m − 2eJβih ξ m + eJβ(i−1)h ξ m ] . Die Division durch eJβih f¨ uhrt auf ξ m+1 = ξ m + dξ m [eJβh − 2 + e−Jβh ] , woraus man unter Verwendung von cos(βh) =
eJβh +e−Jβh 2
folgert
ξ m+1 := G(=Vergr¨ ˆ oßerungsfaktor) = 1 − 2d[1 − cos(βh)] . ξm Die stabile L¨osung zeichnet sich durch die f¨ ur beliebige Phasenwinkel θ = βh g¨ ultige Beziehung |G | ≤ 1
bzw.
|1 − 2d(1 − cos θ)| ≤ 1
42
Zeitapproximation – parabolische Differentialgleichungen
aus. Hieraus ergibt sich erneut die Stabilit¨atsbedingung 1 − 4d ≥ −1 ,
genauer
1 . 2
d ≤
d = 0.25 d = 0.5 d = 0.625 R=1
0.5
(b) kartesisch
−1.0
G −0.5
0.0
(a) polar
1.0
Die Ergebnisse einer derartigen Stabilit¨atsuntersuchung werden h¨ aufig in Form einer Grafik f¨ ur die Kurvenschar G(θ) mit dem Scharparameter d wiedergegeben. Alternativ findet man Darstellungen auf der Basis von kartesischen- und Polarkoordinaten.
−2.0
−1.5
d = 0.25 d = 0.375 d = 0.5 d = 0.625 o
0
o
60
120
o
o
180 240 (THETA)
o
300
o
o
360
Abbildung 26: Vergr¨oßerungsfaktor der FTCS Diskretisierung (4.5) a) Polarkoordinaten, b) kartesische Koordinaten.
F¨ ur die implizite BTCS Formulierung (4.7) berechnet sich der Vergr¨ oßerungsfaktor gem¨ aß eJβih ξ m+1 − eJβih ξ m = d [eJβ(i+1)h ξ m+1 − 2eJβih ξ m+1 + eJβ(i−1)h ξ m+1 ] . Die Division durch eJβih ξ m f¨ uhrt auf die Gleichung ξ − 1 = dξ (e−Jβh + eJβh −2) | {z } ↓
→ ξ − 1 = dξ(2 cos βh − 2) µ ¶ 2 βh → ξ = 1 − 4dξ sin , 2 und somit zu ξ=
1 ξ m+1 ³ ´ . =G= m ξ 1 + 4d sin2 βh 2
Die Stabilit¨atsbedingung |G| ≤ 1 ist hierbei f¨ ur alle positiven Werte von d erf¨ ullt, weshalb man G in diesem Falle als D¨ ampfungs- oder Abklingfaktor deuten kann. Ein weiteres Kriterium zur Beurteilung der (stabilen) Diskretisierung einer partiellen Differentialgleichung ergibt sich aus dem Vergleich ihres D¨ ampfungsverhaltens mit dem D¨ ampfungsverhalten der Ausgangsgleichung. Der Abklingfaktor des kontinuierlich gestellten Problems soll im folgenden berechnet werden. Zun¨achst ist die im Separationsansatz (4.27) E = eJβx · eαt
4.2 Stabilit¨ at
43
1.0 d= 0.166 0.5 G
0.0 FTCS exakt
−0.5
−1.0 0.0
0.5
1.0
d = 0.5
1.5 (THETA)
2.0
2.5
3.0
Abbildung 27: Vergleich der D¨ampfungsfaktoren.
auftretende Konstante α zu bestimmen. Eine Befriedigung der Ausgangsgleichung (4.4) durch den Ansatz (4.27) verlangt ∂ Jβx αt ∂2 (e e ) = κ 2 (eJβx eαt ) , ∂t ∂x also α = −κβ 2 . Der exakte Abklingfaktor berechnet sich hiermit aus 2
Gexakt bzw. mit d =
κ∆t (∆x)2
eJβx e−κβ (t+∆t) E(t + ∆t) 2 = = e−κβ ∆t , = 2t Jβx −κβ E(t) e e
(4.28)
sowie β∆x = θ zu 2
Gexakt = e−dθ . Abbildung 27 veranschaulicht den Vergleich zweier stabiler FTCS Formulierungen mit den entsprechenden exakten Resultaten. Hierbei stellt man fest, daß sich f¨ ur explizite Formulierungen eine Verringerung von d g¨ unstig auf Stabilit¨ at und D¨ ampfungs¨ ahnlichkeit auswirkt. F¨ ur wachsende d zeigt die explizite Formulierung eine ausgepr¨ agte D¨ ampfungs- oder Dissipationseigenschaft. Abschließende Bemerkungen zur Stabilit¨ at • Sowohl das Matrizen als auch das Fourier-Neumann Kriterium setzen Linearit¨ at der Gleichung voraus. Die meisten technisch interessanten Probleme f¨ uhren jedoch auf nichtlineare Gleichungen, deren linearisierte Gestalt sich aufgrund ihrer Komplexit¨ at einer Stabilit¨ atsuntersuchungen verschließt. • Bei der Verwendung des Matrizenkriteriums kann die Bestimmung der Eigenwerte unter Umst¨anden problematisch werden. Daneben verlangt diese Methode die lineare Unabh¨ angigkeit s¨amtlicher Eigenvektoren. ¨ • Uber den Einfluß der Randbedingungen auf die Stabilit¨ at kann keine Aussage gemacht werden. • F¨ ur un¨ ubersichtliche Zusammenh¨ ange G = G(d, θ) empfiehlt sich eine graphische L¨ osung.
44
Zeitapproximation – parabolische Differentialgleichungen
• Das Neumann Kriterium ist leicht auf r¨ aumlich mehrdimensionale Probleme auszudehnen. • Die Diffusionszahl d =
4.3
1 2
·
1 n
ist ein Anhaltswert f¨ ur instation¨ are n-dimensionale Probleme.
Modifizierte Gleichungen
Bislang haben wir den Diskretisierungsfehler einer endlichen Differenzenformel nur der Gr¨ oßenordnung nach angegeben. Ziel dieses Abschnittes ist die Pr¨ azisierung von Diskretisierungsfehlern nach einer von Warming und Hyett 1974 vorgestellten Methode. Wir werden uns wieder auf die FTCS und BTCS Formulierung der eindimensionalen instation¨ aren W¨ armeleitungsgleichung st¨ utzen. Eine analoge Betrachtung anderer Probleme ist leicht. Der grundlegende Gedanke zur Entwicklung der modifizierten Gleichungen ist die R¨ uckf¨ uhrung der FDG in eine partielle Differentialgleichungsformulierung. Hierzu betrachten wir exemplarisch die bekannte BTCS Formulierung m+1 T m+1 − 2Tim+1 + Ti−1 Tim+1 − Tim . = κ i+1 ∆t (∆x)2 m+1 m+1 Entwickelt man ausgehend vom Punkt Tim+1 die Ausdr¨ ucke Ti+1 und Ti−1 in einer Taylorreihe nach der Raumkoordinate x ¶ µ µ µ ¶ ¶ ∆x2 ∂ 2 T ∂T ∆x3 ∂ 3 T m+1 + Ti+1 = Tim+1 + ∆x + + ... , ∂x 2 ∂x2 6 ∂x3 ¶ µ µ µ ¶ ¶ ∆x2 ∂ 2 T ∂T ∆x3 ∂ 3 T m+1 m+1 + Ti−1 = Ti − ∆x − + ... , ∂x 2 ∂x2 6 ∂x3
sowie Tim nach der Zeitkoordinate t µ Tim = Tim+1 − ∆t dann erh¨alt man anstelle der FDG Tt +
∂T ∂t
¡ ∂T ∂t
¶ +
∆t2 2
= Tt bzw.
µ
∂2T ∂t2
∂T ∂x
¶ −
= Tx
∆t3 6
µ
∂3T ∂t3
¶ + ... ,
¢
∆t ∆t2 ∆x2 Ttt + Tttt + ... = κ(Txx + Txxxx + ...) . 2 6 12
(4.29)
In der Gestalt
∆x2 ∆t ∆t2 − Ttt − Tttt + ... (4.30) 12 2 6 lassen sich die Glieder der rechten Seite als Abschneidefehler der FDG interpretieren. Wir versuchen nun den Abschneidefehler in Abh¨angigkeit von partiellen Ableitungen in einer Variablen auszudr¨ ucken. Nochmaliges Ableiten von (4.30) nach t bzw. x2 f¨ uhrt auf ¯ ¯ ∆x2 ∆t ∆t2 Ttt − κTxxt = κTxxxxt − Tttt − Ttttt ¯¯ 12 2 6 ¯ ¯ 2 2 ∆x ∆t ∆t (+) Txxt − κ2 Txxxx = κT(6)x − Tttxx − Txxttt ¯¯ (·κ) 12 2 6 Tt − κTxx = κTxxxx
Ttt = κ3 Txxxx + (κ2 T(6)x + κTxxxxt ) −
∆x2 12
∆t ∆t2 (Tttxx + Tttt ) − (Ttttxx + Ttttt ) 2 6
(4.31)
4.4 Differenzenformeln zur Diskretisierung der W¨ armeleitungsgleichung
45
kurz Ttt = κ2 Txxxx + O[(∆t), (∆x2 )] , analog durch Hinzuf¨ ugen einer weiteren Zeitableitung Tttt =
κ∆x2 Txxxx + O[(∆t2 ), (∆x2 )] usw. 12
Durch Einsetzen ergibt sich schließlich die ¨ aquivalente modifizierte Gleichung: ¸ 1 2 κ(∆x)2 = κ ∆t + Txxxx 2 12 · ¸ 1 3 1 2 1 2 2 4 + κ (∆t) + κ ∆t(∆x) + κ(∆x) T(6)x + ... 3 12 360 ·
Tt − κTxx
(4.32)
Die zugegebenermaßen m¨ uhselige Rechnung erscheint kaum lohnenswert. Gleichung (4.32) ist zwar pr¨aziser in Hinblick auf den Diskretisierungsfehler, jedoch sehr un¨ ubersichtlich. Konkrete Verbesserungen der Approximationseigenschaften ergeben sich jedoch aus der modifizierten Gleichung der FTCS Formulierung ¸ κ(∆x)2 1 2 Txxxx = − κ ∆t + 2 12 · ¸ 1 3 1 2 1 2 2 4 + κ (∆t) − κ ∆t(∆x) + κ(∆x) T(6)x + ... 3 12 360 ·
Tt − κTxx
(4.33)
κ∆t 1 F¨ ur die Diffusionszahl d := ∆x 2 = 6 verschwindet der Koeffizient der 4. Ableitung, woraus man einen Abbruchfehler O[(∆x2 ), (∆t2 )] ableitet.
4.4
Differenzenformeln zur Diskretisierung der W¨ armeleitungsgleichung
4.4.1 4.4.1.1
Explizite Formulierungen Forward-time-central-space Methode. Tim+1 = Tim +
κ∆t m (T m − 2Tim + Ti−1 ) + O[(∆t), (∆x2 )] . (∆x)2 i+1
(4.34)
Die Methode ist rechnerisch leicht zu handhaben, hat£ jedoch den¤ schwerwiegenden Nachteil, daß 1 die Zeitschrittweite aus Stabilit¨atsgr¨ unden sehr klein ≤ 2κ (∆x)2 gehalten werden muß. Die modifizierte Gleichung lautet ·
Tt − κTxx
¸ 1 2 κ(∆x)2 = − κ ∆t + Txxxx 2 12 · ¸ 1 1 1 + κ3 (∆t)2 − κ2 ∆t(∆x)2 + κ(∆x)4 Txxxxxx + ... 3 12 360
46
Zeitapproximation – parabolische Differentialgleichungen
4.4.1.2 Richardson Methode. Richardson schlug 1910 das folgende explizite Berechnungsschema vor m T m − 2Tim + Ti−1 Tim+1 − Tim−1 = κ i+1 . (4.35) 2∆t (∆x)2 Im Unterschied zur FTCS Formulierung wird auch die zeitliche Ableitung durch den zentralen Differenzenquotienten gen¨ahrt, weshalb der Diskretisierungsfehler von der Ordnung [(∆t)2 , (∆x)2 ] ist. Aufgrund ihrer uneingeschr¨ankt geltenden numerischen Instabilit¨ at hat sie praktisch keine Bedeutung. 4.4.1.3 DuFort-Frankel Methode. Ersetzt man den Ausdruck Tim des Diffusionsterms von (4.35) durch sein zeitliches Mittel, so gelangt man zu einem g¨ anzlich stabilen Algorithmus (DuFort und Frankel 1953). T m+1 +T m−1
Tm − 2 i 2 i Tim+1 − Tim−1 = κ i+1 2∆t (∆x)2
m + Ti−1
"
µ 2
2
+ O (∆t) , (∆x) ,
∆t ∆x
¶2 # .
(4.36)
m+1 ∆t
m ∆t
m-1
∆x
i-1
∆x
i
i+1
Abbildung 28: Differenzenmolek¨ ul nach DuFort-Frankel.
Nach der einzig Unbekannten Tim+1 aufgel¨ost erh¨ alt man ·
¸ · ¸ 2κ∆t κ∆t 2κ∆t m m+1 m 1+ Ti = 1−2 Tim−1 + [T + Ti−1 ]. 2 2 (∆x) (∆x) (∆x)2 i+1
(4.37)
Die modifizierte Gleichung ist bestimmt durch den Ausdruck · Tt − κTxx =
¸ (∆t)2 1 κ(∆x)2 − κ3 Txxxx 12 (∆x)2 · ¸ 4 1 1 3 4 2 5 (∆t) + κ(∆x) − κ (∆t) + 2κ Txxxxxx + ... , 360 3 (∆x)4
f¨ ur den Vergr¨oßerungsfaktor notiert man √ 2d cos θ ± 1 − 4d2 sin θ G= . 1 + 2d
(4.38)
Die Methode verlangt das Abspeichern von zwei kompletten zur¨ uckliegenden Zeitlinien, ein Umstand, der wegen der zunehmenden Entsch¨ arfung des Speicherplatzproblems weniger Probleme verursachen mag als die Notwendigkeit einer Startprozedur. Hierdurch verschlechtert sich oftmals die Genauigkeit des Verfahrens!
4.4 Differenzenformeln zur Diskretisierung der W¨ armeleitungsgleichung
4.4.2
47
Implizite Methoden
Als implizit bezeichnet man Diskretisierungen, in denen mehr als eine Unbekannte auftritt. Hieraus resultiert ein h¨oherer Aufwand zur L¨ osung des algebraischen Gleichungssystems. Implizite Methoden verhalten sich im Unterschied zu expliziten numerisch stabil, weswegen man in der Regel gr¨ oßere Schrittweiten verwenden kann. Die geringere Anzahl von Gitterpunkten f¨ uhrt zu Rechenzeit- und Speicherplatzeinsparungen. 4.4.2.1 Laasonen (BTCS) Methode. Die einfachste implizite Differenzenformulierung der W¨armeleitungsgleichung (4.4) geht auf Laasonen (1949) zur¨ uck. m+1 m+1 Ti+1 − 2Tim+1 + Ti−1 Tim+1 − Tim =κ + O[∆t, (∆x)2 ] . ∆t (∆x)2
(4.39)
G = [1 + 2d(1 − cos θ)]−1 . Die modifizierte Gleichung lautet ·
Tt − κTxx
¸ 1 2 κ(∆x)2 = κ ∆t + Txxxx 2 12 · ¸ 1 3 1 2 1 2 2 4 + κ (∆t) + κ ∆t(∆x) + κ(∆x) T(6)x + ... 3 12 360
(4.40)
4.4.2.2 Crank-Nicolson Methode. Crank und Nicolson (1947) ersetzen den Diffusionsterm der Gleichung (4.4) durch zentrale Differenzen zum Zeitpunkt m bzw. m + 1. # µ ¶ " m+1 m+1 m − 2T m + T m Ti+1 − 2Tim+1 − Ti−1 Ti+1 Tim+1 − Tim 1 i i−1 =κ + O[(∆t)2 , (∆x)2 ] . + ∆t 2 (∆x)2 (∆x)2
m+1 1/2 ∆ t A
m+1/2
1/2 ∆ t m
∆x
i-1
∆x
i
i+1
Abbildung 29: Differenzenmolek¨ ul nach Crank-Nicolson.
Der Algorithmus ist weit verbreitet. Das resultierende algebraische Gleichungssystem ist tridiagonal. Man beachte, daß die Diskretisierung der zeitlichen Ableitung zentral zu einem virtuellen Zwischenpunkt t = m + 21 erfolgt: T m+1 − T m ∂T = i ¡ ∆t ¢ i . (4.41) ∂t 2 2 Die rechte Seite kann als arithmetisches Mittel der Diffusionsterme im Punkt A(m+ 21 , i) angesehen werden. F¨ ur den Vergr¨oßerungsfaktor und die modifizierte Gleichung notiert man G=
1 − d(1 − cos θ) 1 + d(1 − cos θ)
(4.42)
48
Zeitapproximation – parabolische Differentialgleichungen
1.0 d = 0.5 0.5 G
0.0 Dufort−Frankel exakt Laasonen Crank−Nicolson
−0.5
−1.0 0.0
0.5
1.0
1.5 (THETA)
2.0
2.5
3.0
Abbildung 30: Vergleich der Vergr¨oßerungsfaktoren f¨ ur d = 12 .
Tt − κTxx
· ¸ κ(∆x)2 1 3 1 2 4 = Txxxx + κ (∆x) + κ(∆x) T(6)x + ... 12 12 360
4.4.2.3 Verallgemeinerte Formulierung. FTCS, BTCS und Crank-Nicolson Methode sind spezielle Formulierungen der allgemeinen Diskretisierung " # m+1 m+1 m − 2T m + T m Ti+1 − 2Tim+1 + Ti−1 Ti+1 Tim+1 − Tim i i−1 =κ β , (4.43) + (1 − β) ∆t (∆x)2 (∆x)2 welche f¨ ur 0< β < 12 nur bedingt stabil ist (G = d(2 − 4θ)). Außer den bereits untersuchten Spezialf¨allen: β = 0 −→ FTCS Methode β=
1 2
−→ Crank-Nicolson Methode
β = 1 −→ Laasonen Methode ist der Abschneidefehler von der Ordnung [∆t, (∆x)2 ].
4.5
Anwendung auf Navier-Stokes Gleichung
• Wir betrachten ein Fluid zwischen zwei Platten. Die Platten erstrecken sich unendlich weit, so daß keine Endeffekte wirksam werden. Bilanzgleichung und Randbedingungen: – eindimensionale Navier-Stokes Gleichung: ∂2u ∂u =ν 2 ∂t ∂y
(4.44)
– Anfangsbedingung: t = 0,
u = U0 u = 0
f¨ ur y = 0 f¨ ur 0 < y ≤ h
4.5 Anwendung auf Navier-Stokes Gleichung
49
Fluid mit ν=2.17.10−4m2/s
y h x
z
U0=40m/s
– Randbedingungen: t ≥ 0,
u = U0 u = 0
f¨ ur y = 0 f¨ ur y = h
• Geometrie und Gitter h = 0.07m
∆y = 0.001
IM = 41
• Es werden Simulationen mit unterschiedlichen Parametern durchgef¨ uhrt, die tabellarisch aufgelistet sind. Dabei ist N M die Anzahl der Zeitschritte und d die Diffusionszahl und damit das Maß, ob das Stabilit¨atskriterium d = ν∆t/∆y 2 ≤ 0.5 erf¨ ullt wird. – explizit FTCS (I)
∆t = 0.002
N M = 541
d = 0.434
(II)
∆t = 0.00232
N M = 541
d = 0.503
– explizit DF (I)
∆t = 0.002
N M = 541
d = 0.434
(II)
∆t = 0.003
N M = 361
d = 0.651
– implizit BTCS (I)
∆t = 0.002
N M = 541
(II)
∆t = 0.010
N M = 109
(I)
∆t = 0.002
N M = 541
(II)
∆t = 0.010
N M = 109
– implizit CN
• F¨ ur FTCS, Fall I ist das Stabilit¨ atskriterium erf¨ ullt: d = ν∆t/∆y 2 ≤ 1/2 (Abbildung 31 links).
50
Zeitapproximation – parabolische Differentialgleichungen
0.07
0.07
T=0.00s T=0.18s T=0.36s T=0.54s T=0.72s T=1.08s
0.06 0.05
0.06 0.05 0.04 Y [m]
Y [m]
0.04 0.03
0.03
0.02
0.02
0.01
0.01
0.00
0.00
−0.01 −10.0
T=0.00s T=0.18s T=0.36s T=0.54s T=0.72s T=1.08s
0.0
10.0
20.0 30.0 U [m/s]
40.0
50.0
−0.01 −10.0
0.0
10.0
20.0 30.0 U [m/s]
40.0
50.0
Abbildung 31: Rechnung mit FTCS Schema und erf¨ ulltem (links) bzw. nicht erf¨ ulltem (rechts) Stabilit¨atskriterium
• F¨ ur FTCS, Fall II u atskriterium. Es f¨ uhrt zu einer ¨berschreitet die Diffusionszahl das Stabilit¨ instabilen oszillierenden L¨osung (dynamische Instabilit¨ at, Abbildung 31 rechts). • DuFort–Frankel erm¨oglicht gr¨oßere Zeitschritte, da es unbedingt stabil ist. Es ist jedoch Vorsicht geboten, da gr¨oßere Zeitschrittweiten den Fehler erh¨ ohen. Ben¨ otigt werden jeweils zwei r¨ uckw¨artige Zeitschrittebenen. • Die impliziten Methoden BTCS und CN sind unbegrenzt stabil und erlauben gr¨ oßere Zeitschrittweiten. Es m¨ ussen jedoch Gleichungssysteme gel¨ ost werden. Dem Zeitgewinn durch gr¨oßere Zeitschrittweiten steht jedoch der h¨ ohere numerische Aufwand gegen¨ uber, der f¨ ur die L¨osung des Gleichungssystems erforderlich ist.
Fehleranalyse Das betrachtete Problem hat eine analytische L¨ osung u. Der Fehler ist definiert durch ER =
u − um i · 100 , u
und l¨aßt sich f¨ ur unterschiedliche Approximationsverfahren bestimmen (vergleiche Abbildung 32 und Abbildung 33 links und rechts). Schlußfolgerungen aus der Fehlerbetrachtung: • CN hat den geringsten Fehler. • Der Fehler reduziert sich mit fortschreitender Zeit.
4.6 Konsistenz und Konvergenz
51
0.07 0.06 0.05
Y [m]
0.04 0.03 0.02 DT=0.2 DT=0.1 DT=0.01 DT=0.005
0.01 0.00 −0.01 −0.5
0.0
0.5 1.0 ERROR
1.5
2.0
Abbildung 32: Rechnung mit BTCS Schema
• Beim BTCS hat die Zeitschrittweite Einfluß auf den Fehler.
4.6
Konsistenz und Konvergenz
Die Approximation einer Differentialgleichung mit finiten Differenzen ist konsistent, wenn die Differenzengleichungen sich mit kleiner werdender Schrittweite auf die urspr¨ ungliche Differentialgleichung reduzieren. Der Unterschied zwischen beiden Ausdr¨ ucken, der sog. Abschneidefehler, muß f¨ ur ein konsistentes Differenzenschema in diesem Fall gegen Null streben. Die finite Differenzenapproximation wird als konvergent bezeichnet, wenn der Diskretisierungsfehler, d.h. die Differenz zwischen der L¨osung der Differenzengleichung und der L¨ osung der Differentialgleichung mit kleiner werdender Schrittweite verschwindet. ¨ ¨ Diese Uberlegungen f¨ uhren auf das sogenannte Lax-Aquivalenz-Theorem: Das Differenzenschema einer linearen Differentialgleichung bzw. eines Anfangswertproblems ist genau dann konvergent, wenn es sowohl stabil als auch konsistent zur Differentialgleichung ist.
4.6.1
Konsistenz der finiten Differenzengleichungen
Die FTCS Approximation der W¨armeleitungsgleichung ∂T /∂t = κ∂ 2 T /∂x2 n T n − 2Tin + Ti−1 Tin+1 − Tin = κ i+1 ∆t (∆x)2
f¨ uhrt mit der Taylorreihenentwicklung um Tin gerade auf:
52
Zeitapproximation – parabolische Differentialgleichungen
0.05
0.05 FTCS Dufort−Frankel Laasonen Crank−Nicolson
0.04
0.04
0.03 Y [m]
0.03 Y [m]
FTCS Dufort−Frankel Laasonen Crank−Nicolson
0.02
0.02
0.01
0.01
0.00
0.00
−0.01 −0.06
−0.03
0.00 0.03 ERROR
0.06
−0.01 −0.06
0.09
−0.03
0.00 0.03 ERROR
0.06
0.09
Abbildung 33: links: Ergebnis nach t = 0.18; rechts: Ergebnis nach t = 1.08
Tin+1 = Tin +
∂T ∂ 2 T (∆t)2 (∆t) + 2 + O(∆t)3 ∂t ∂t 2!
n Ti+1 = Tin +
∂ 2 T (∆x)2 ∂ 3 T (∆x)3 ∂T (∆x) + + + O(∆x)4 ∂x ∂x2 2! ∂x3 3!
n Ti−1 = Tin −
∂T ∂ 2 T (∆x)2 ∂ 3 T (∆x)3 (∆x) + − + O(∆x)4 . ∂x ∂x2 2! ∂x3 3!
Durch Einsetzen und Umordnen erh¨alt man · ¸ 1 ∂T ∂ 2 T (∆t)2 n 3 n T + (∆t) + 2 + O(∆t) − Ti ∆t i ∂t ∂t 2! =
· κ ∂T ∂ 2 T (∆x)2 ∂ 3 T (∆x)3 Tin + (∆x) + + + O(∆x)4 − 2Tin 2 (∆x) ∂x ∂x2 2! ∂x3 3! +
Tin
∂T ∂ 2 T (∆x)2 ∂ 3 T (∆x)3 − (∆x) + − + O(∆x)4 ∂x ∂x2 2! ∂x3 3!
¸ ,
(4.45)
oder ·
∂T ∂ 2 T ∆t + 2 + O(∆t)2 ∂t ∂t 2
¸
∂T ∂t
·
∂2T = κ + O(∆x)2 ∂x2 = κ
¸
£ ¤ ∂2T ∂ 2 T ∆t 2 2 − + O (∆t) , (∆x) . ∂x2 ∂t2 2
(4.46)
4.6 Konsistenz und Konvergenz
53
Bei der FTCS–Methode ist offensichtlich Konsistenz gew¨ ahrleistet, weil f¨ ur den Grenzfall, daß Zeitund Ortschrittweite gegen null gehen, die finite Differenzengleichung gleich der Differentialgleichung ist. ∆x → 0 ∆t → 0
F DG → P DG .
Betrachten wir nun die DuFort–Frankel–Methode mit d = κ∆t/∆x2 n n (1 + 2d)Tin+1 = (1 − 2d)Tin−1 + 2d(Ti+1 + Ti−1 ). n , T n um T n und Einsetzen f¨ uhrt auf: Die Taylorreihenentwicklung f¨ ur Tin+1 , Tin−1 , Ti+1 i−1 i
h Tin +
(1 + 2d)
∂T ∂t (∆t)
+
∂ 2 T (∆t)2 ∂t2 2!
+
(1 − 2d)
h Tin −
∂T ∂t (∆t)
+
∂ 2 T (∆t)2 ∂t2 2!
+2d
nh Tin +
∂T ∂x (∆x)
+
∂ 2 T (∆x)2 ∂x2 2!
+
h Tin −
∂T ∂x (∆x)
+
∂ 2 T (∆x)2 ∂x2 2!
∂ 3 T (∆t)3 ∂t3 3!
−
−
i + O(∆t)4 =
∂ 3 T (∆t)3 ∂t3 3!
+
+ O(∆t)4
∂ 3 T (∆x)3 ∂x3 3!
∂ 3 T (∆x)3 ∂x3 3!
i
+ O(∆x)4
+ O(∆x)4
i
io .
Durch Reduktion kommt man zu £ ¤ ∂2T ∂2T ∂T (∆t) + (d) 2 (∆t)2 + O(∆t)3 = (d) 2 (∆x)2 + (d) O(∆x)4 ∂t ∂t ∂x µ 2 ¶ κ∆t ∂ 2 T ∂T κ∆t ∂ T κ∆t 2 3 (∆t) + (∆t) + O(∆t) = (∆x)2 + [O(∆x)4 ] 2 2 2 2 ∂t (∆x) ∂t (∆x) ∂x (∆x)2 ∂2T ∂T +κ 2 ∂t ∂t
µ
∆t ∆x
¶2 =κ
£ ¤ ∂2T 2 2 + O (∆t) , (∆x) ∂x2
" µ ¶2 # ∂2T ∆t ∂T = κ 2 + O (∆t)2 , (∆x)2 , . ∂t ∂x ∆x Wir pr¨ ufen die Konsistenz: bei
aber
∆t → 0; ∆x → 0;
∆t → 0,
∆x → 0
⇒
∆t →k ∆x
m¨ ußte ∆t/∆x → 0
⇒
Die DuFort–Frankel–Methode ist demnach nicht konsistent.
∂T ∂2T ∂2T + κk 2 = κ . ∂t ∂t2 ∂x2
(4.47)
54
Zeitapproximation – parabolische Differentialgleichungen
4.6.2
Konsistenz bei Konvektionsproblemen
Konsistenz hat jedoch nicht immer auch Konvergenz zur Folge, denn es kann durchaus sein, daß das Differenzenschema zwar aus der Differentialgleichung hervorgegangen ist, die L¨ osung der finiten Approximation aber dennoch nicht gegen die L¨ osung der Differentialgleichung konvergiert. Welche Kriterien erf¨ ullt sein m¨ ussen, damit Konvergenz vorliegt, soll an einem Beispiel verdeutlicht werden. Betrachten wir die W¨armetransportgleichung mit Konvektion: ∂T ∂2T u −κ 2 = 0 . ∂x} | ∂x | {z {z } Konv.
(4.48)
Dif f.
mit den Randbedingungen T (x = 0) = T0 ;
T (x = 1) = T1 ;
x ∈ [0; 1] .
Die analytische L¨osung f¨ ur diese Differentialgleichung lautet: ux
e κ −1 T (x) = T0 + (T1 − T0 ) u . (4.49) eκ − 1 Approximiert man die in (4.48) auftretenden Differentialquotienten auf einem ¨ aquidistanten Rechengitter durch µ
∂T ∂x
¶ = i
£ ¤ 1 [−(1 + γ) Ti−1 + 2γ Ti + (1 − γ) Ti+1 ] + O [γ∆x] + O (1 − γ) ∆x2 , 2∆x
(4.50)
mit dem sog. Flux-blending Faktor γ ∈ [−1; 1] f¨ ur die erste Ableitung (γ = 0 entspricht einer zentralen Approximation), bzw. µ 2 ¶ ∂ T 1 = {Ti−1 − 2Ti + Ti+1 } + O(∆x2 ) , 2 ∂x i ∆x2 f¨ ur die zweite Ableitung, so ergibt sich das folgende Differenzenschema der DGL: · 2−
¸ · ¸ · ¸ u∆x u∆x u∆x (1 − γ) Ti+1 − 2 2 + γ Ti + 2 + (1 + γ) Ti−1 = 0 κ κ κ [2 − (1 − γ)P ] Ti+1 − 2 [2 + γP ] Ti + [2 + (1 + γ)P ] Ti−1 = 0 .
i = 1...N (4.51)
Der auftretende Ausdruck P = u∆x altnis von konvektivem zu diffusivem κ bestimmt das lokale Verh¨ Transport. Man nennt ihn daher auch Peclet-Zahl oder Zellreynoldszahl. Anhand dieser Kennzahl l¨aßt sich beurteilen, inwieweit die Transporteigenschaften der Ausgangs-Differentialgleichung mit denen des Differenzenschemas u osung der Differenzengleichung ¨bereinstimmen. Die analytische L¨ (4.51), bestimmt mit Hilfe des Ansatzes Ti = C0 + C1 σ i , lautet T (x) = T0 + (T1 − T0 )
σi − 1 ; σ N +1 − 1
mit
σ=
2 + (1 + γ)P . 2 − (1 − γ)P
(4.52)
Sollte das Differenzenschema (4.51) konsistent zur DGL (4.48) sein, so muß der Abschneidefehler f¨ ur verschwindende Schrittweiten gegen Null streben. Die Bestimmung des Abschneidefehlers geschieht durch Taylorreihenentwicklung von Ti+1 bzw. Ti−1 :
4.6 Konsistenz und Konvergenz
55
¯ ¯ ¯ ¯ 2 ¯ 3 ¯ 4 ¯ ∂T ¯¯ 1 1 1 2 ∂ T¯ 3 ∂ T¯ 4 ∂ T¯ Ti+1 = Ti + ∆x + ∆x + ∆x + ∆x + ··· + ... ∂x ¯i 2 ∂x2 ¯i 6 ∂x3 ¯i 24 ∂x4 ¯i ¯ ¯ ¯ ¯ 2 ¯ 3 ¯ 4 ¯ ∂T ¯¯ 1 1 1 2 ∂ T¯ 3 ∂ T¯ 4 ∂ T¯ Ti−1 = Ti − ∆x + ∆x − ∆x + ∆x − ··· + ... ∂x ¯ 2 ∂x2 ¯ 6 ∂x3 ¯ 24 ∂x4 ¯ i
i
i
i
Ersetzt man in der Differenzenformel (4.51) die Funktionswerte Ti+1 und Ti−1 durch ihre Reihenentwicklungen ¯ ¯ ¯ ∆x2 ∂ 2 T ¯¯ ∆x3 ∂ 3 T ¯¯ ∂T ¯¯ + + + 0= [2 − P (1 − γ)] Ti + ∆x ∂x ¯i 2 ∂x2 ¯i 6 ∂x3 ¯i − 2 [2 + P γ] Ti ¯ ¯ ¯ · ∂T ¯¯ ∆x2 ∂ 2 T ¯¯ ∆x3 ∂ 3 T ¯¯ + [2 + P (1 + γ)] Ti − ∆x + − + ∂x ¯i 2 ∂x2 ¯i 6 ∂x3 ¯i ·
¯ ¸ ∆x4 ∂ 4 T ¯¯ + ... 24 ∂x4 ¯i (4.53) ¯ ¸ 4 4 ¯ ∆x ∂ T ¯ − ... 24 ∂x4 ¯i
und subtrahiert davon die zu l¨osende Differentialgleichung, so erh¨ alt man den Abschneidefehler Θ u∆x Θ = −γ 2
µ
∂2T ∂x2
¶
∆x2 + 6
µ 3 ¶ ∂ T κ ∂4T u 3 − + O(∆x3 ) . ∂x 2 ∂x4
(4.54)
Die Bestimmungsgleichung des Abschneidefehlers zeigt, daß das Differenzenschema konsistent zur DGL ist. Die Konsistenz ist von der Ordnung O (γ ∆x) und hat aufgrund des damit verbunde2 nen Gliedes γu∆x ∂∂xT2 ”dissipativen” Charakter. Verallgemeinert bezeichnet man den Charakter eines Abschneidefehlers als ”dissipativ”, falls der f¨ uhrende Summand von gerader Ordnung ist, bzw. als ”dispersiv”, falls er von ungerader Ordnung ist. Im Falle γu > 0 spricht man auch von numerischer Diffusion. Zur Konvergenzuntersuchung betrachten wir die analytische L¨ osung der Differenzengleichung. F¨ ur i Parameterwerte σ < 0 erh¨alt man positive Werte σ im Falle gerader Exponenten und negative Werte im Falle ungerader Exponenten. Diese Tatsache erkl¨ art, warum es zu Oszillationen in der numerischen L¨osung kommen kann, die ein divergentes L¨ osungsverhalten hervorrufen k¨ onnen. Die Differenzenformel ist dagegen konvergent, wenn der Parameter σ > 0 ist. Daraus folgt: γ >1−
2 |P |
f¨ ur P > 0
und
γ < −1 +
2 |P |
f¨ ur P < 0 ,
(4.55)
In diesem Fall ist der Koeffizient der zentralen Stellen ”i” des Schemas (4.51) dominant gegen¨ uber denen der a ußeren Stellen ”i−1” bzw. ”i+1”. Die konvergente Differenzenformel (4.51) f¨ u hrt daher ¨ auch auf eine g¨ unstige diagonaldominante Koeffizientenmatrix. F¨ ur den Parameter γ seien zwei Spezialf¨ alle unterschieden: ¡ ¢ zentrale Differenzenapproximation (CDS) von ∂u ∂x i ; Konsistenz und Konvergenz2 ordnung O(∆x ), diagonaldominante Koeffizientenmatrix f¨ ur |P | < 2. ¡ ∂u ¢ γ = sign(P ): Upwind-Differenzenapproximation (UDS) von ∂x i ; Konsistenz und Konvergenzordnung O(∆x), Diagonaldominanz und somit auch Konvergenz f¨ ur alle P . γ = 0:
Die Wahl des Parameters γ zu einer bekannten Peclet-Zahl gem¨ aß (4.55) sichert die Diagonaldominanz des Gleichungssystems und stellt ein gewichtetes Mittel der beiden oben erw¨ ahnten
56
Zeitapproximation – parabolische Differentialgleichungen
Extremf¨alle dar (→ ”upwinding”). Der Differenzenquotient des konvektiven Terms folgt der Str¨ omungsrichtung. F¨ ur positive Geschwindigkeiten verwendet man demnach r¨ uckw¨ artige Differenzenquotienten, f¨ ur negative Geschwindigkeiten vorw¨ artige Differenzenquotienten zur Approximation der partiellen Ableitungen. Durch den konvektiven Anteil der DGL (4.48) wird eine Impulsgr¨ oße oder St¨orung lediglich stromab, d.h. entlang der Bahnlinien transportiert. Diese nichtsymmetrische Eigenschaft sollte bei der finiten Approximation m¨ oglichst erhalten bleiben. Sie ist bei der Verwendung zentraler Differenzen nicht erf¨ ullt und f¨ uhrte einerseits zur Entwicklung sog. LagrangeVerfahren, bei denen der konvektive Term (physikalisch richtig) entlang der Bahnlinien integriert wird, sowie andererseits zu einer ganzen Reihe von richtungsabh¨ angigen Upwind-Strategien. Das Hauptproblem bei der Diskretisierung von (Eulerschen-) Transportgleichungen besteht in der Approximation der konvektiven Terme, da diese h¨ aufig nichtlinear sind und ihre Differentialoperatoren keine Symmetrieeigenschaften besitzen. Im Falle stark konvektionsbehafteter Probleme (P → ∞) ist ein ”Upwinding” h¨aufig unausweichlich. Bei Verwendung von Zentraldifferenzen w¨ urde das Integrationsgebiet dann in zwei voneinander nahezu unabh¨ angige Bereiche zerfallen. Diese sind aufgrund des Verlusts der Hauptdiagonalwerte in der Koeffizientenmatrix schachbrettartig zueinander angeordnet. Der exakten L¨osung des Differenzenschemas k¨ onnen dann beliebige alternierende Wertefolgen u ullen. ¨berlagert werden, die das Differenzenschema ebenfalls erf¨ Der Nachteil einer Upwind-Diskretisierung liegt in der verringerten Genauigkeit der Approximation. Sie erzeugt aufgrund der Zusammensetzung des f¨ uhrenden Fehlergliedes numerische Diffusion. F¨ ur stark konvektionsbehaftete Probleme dominiert dann nicht nur der konvektive Term sondern auch der f¨ uhrende Fehler der Approximation den Diffusionsterm des Problems. Die diffusiven Transporteigenschaften der Differentialgleichung werden durch die numerische Diffusion der Approximation u ¨berlagert.
4.7
Approximation zweidimensionaler parabolischer DGL
Wir betrachten die instation¨are W¨armeleitungsgleichung im zweidimensionalen Raum: · 2 ¸ ∂ T ∂T ∂2T =κ + ∂t ∂x2 ∂y 2 FTCS Approximation f¨ uhrt auf: · n ¸ n+1 n n + Tn n n + Tn Ti,j − Ti,j Ti+1,j − 2Ti,j Ti,j+1 − 2Ti,j i−1,j i,j−1 =κ + + O[∆t, ∆x2 , ∆y 2 ] ∆t (∆x)2 (∆y)2
(4.56)
(4.57)
mit den Diffusionszahlen: dx = Das Stabilit¨atskriterium ist:
κ∆t , (∆x)2 ·
bzw.
dy =
κ∆t . (∆y)2
¸ κ∆t κ∆t 1 + ≤ . 2 2 (∆x) (∆y) 2
(4.58)
F¨ ur konstante Schrittweiten ∆x = ∆y ist das Stabilit¨ atskriterium wesentlich restriktiver: d≤
1 . 4
Die implizite Formulierung BTCS f¨ uhrt auf: " # n+1 n+1 n+1 n+1 n+1 n+1 n+1 n Ti,j − Ti,j Ti+1,j − 2Ti,j + Ti−1,j Ti,j+1 − 2Ti,j + Ti,j−1 =κ + ∆t (∆x)2 (∆y)2
(4.59)
4.7 Approximation zweidimensionaler parabolischer DGL
57
oder mit den Diffusionszahlen n+1 n+1 n+1 n+1 n+1 n dx Ti+1,j + dx Ti−1,j − (2dx + 2dy + 1)Ti,j + dy Ti,j−1 + dy Ti,j+1 = −Ti,j .
Abbildung 34: Schematische Darstellung der BTCS–Methode
Wir betrachten die Approximation auf einem 5 × 5 Gitter, die auf neun algebraische Gleichungen f¨ uhrt. n+1 n+1 n+1 n+1 n+1 n ai,j Ti+1,j + bi,j Ti−1,j + ci,j Ti,j + di,j Ti,j−1 + ei,j Ti,j+1 = fi,j
i, j = 2, . . . , 4 .
Die impliziten finiten Differenzengleichungen lauten: a2,2 T3,2 + c2,2 T2,2 + e2,2 T2,3 = f2,2 − b2,2 T1,2 − d2,2 T2,1 a2,3 T3,3 + c2,3 T2,3 + d2,3 T2,2 + e2,3 T2,4 = f2,3 − b2,3 T1,3 a2,4 T3,4 + c2,4 T2,4 + d2,4 T2,3 = f2,4 − b2,4 T1,4 − e2,4 T2,5 a3,2 T4,2 + b3,2 T2,2 + c3,2 T3,2 + e3,2 T3,3 = f3,2 + d3,2 T3,1 a3,3 T4,3 + b3,3 T2,3 + c3,3 T3,3 + d3,3 T3,2 + e3,3 T3,4 = f3,3 a3,4 T4,4 + b3,4 T2,4 + c3,4 T3,4 + d3,4 T3,3 = f3,4 − e3,4 T3,5 b4,2 T3,2 + c4,2 T4,2 + e4,2 T4,3 = f4,2 − a4,2 T5,2 − d4,2 T4,1 b4,3 T3,3 + c4,3 T4,3 + d4,3 T4,2 + e4,3 T4,4 = f4,3 − a4,3 T5,3 b4,4 T3,4 + c4,4 T4,4 + d4,4 T4,3 = f4,4 − a4,4 T5,4 − e4,4 T4,5 ,
58
Zeitapproximation – parabolische Differentialgleichungen
oder in Matrixschreibweise: c e 0 a 0 0 0 0 0 2,2 2,2 2,2 T2,2 d2,3 c2,3 e2,3 0 a2,3 0 0 0 0 T2,3 0 d2,4 c2,4 0 0 a2,4 0 0 0 T2,4 b3,2 0 0 c3,2 e3,2 0 a3,2 0 0 T3,2 0 b 0 d3,3 c3,3 e3,3 0 a3,3 0 3,3 · T3,3 0 0 b3,4 0 d3,4 c3,4 0 0 a3,4 T3,4 0 0 0 b4,2 0 0 c4,2 e4,2 0 T4,2 0 0 0 b4,3 0 d4,3 c4,3 e4,3 T4,3 0 0 0 0 0 0 b4,4 0 d4,4 c4,4 T4,4
4.7.1
f − b T − d T 2,2 2,2 1,2 2,2 2,1 f2,3 − b2,3 T1,3 f2,4 − b2,4 T1,4 − e2,4 T2,5 f3,2 − d3,2 T3,1 = f3,3 f3,4 − e3,4 T3,5 f −a T −d T 4,2 4,2 5,2 4,2 4,1 f4,3 − a4,3 T5,3 f4,4 − a4,4 T5,4 − e4,4 T4,5
ADI–Methode
Die L¨osung des aus der BTCS–Approximation resultierenden pentadiagonalen Gleichungssystems ist sehr aufwendig. Stattdessen soll die ADI –Methode (alternating direction implicit) verwendet werden. Dieses Verfahren umgeht die mit direkten Verfahren verbundene Ineffizienz durch Aufsplitten der Zeitdiskretisierung in zwei Einzelschritte, die sich als tridiagonale Gleichungssysteme sehr effizient l¨osen lassen.
Abbildung 35: Schematische Darstellung der ADI–Methode
4.8 Erweiterung auf dreidimensionale Probleme
n+ 12
Ti,j
n − Ti,j
= κ
( ∆t 2 )
n+ 12
n+1 Ti,j − Ti,j
= κ
( ∆t 2 )
n+ 12
n+ 1
Ti+1,j2 − 2Ti,j
n+ 1
+ Ti−1,j2
(∆x)2 n+ 12
n+ 12
Ti+1,j − 2Ti,j
n n + Tn Ti,j+1 − 2Ti,j i,j−1 + (∆y)2
n+ 12
+ Ti−1,j
(∆x)2
59
+
n+1 n+1 n+1 Ti,j+1 − 2Ti,j + Ti,j−1
(∆y)2
x-sweep (4.60)
y-sweep
mit O[∆t2 , ∆x2 , ∆y 2 ] Diese Gleichungen k¨onnen in tridiagonaler Form mit d1 = dx /2 = κ∆t/∆x2 und d2 = dy /2 = κ∆t/∆y 2 geschrieben werden als: n+ 1
n+ 12
−d1 Ti−1,j2 + (1 + 2d1 )Ti,j
n+ 1
− d1 Ti+1,j2
n n n = d2 Ti,j+1 + (1 − 2d2 )Ti,j + d2 Ti,j−1
und n+ 1
n+ 12
n+1 n+1 n+1 −d2 Ti,j+1 + (1 + 2d2 )Ti,j − d2 Ti,j−1 = d1 Ti−1,j2 + (1 − 2d1 )Ti,j
n+ 1
+ d1 Ti+1,j2 .
Anstelle eines pentadiagonalen Gleichungssystems wird jeder Zeitschritt in zwei Teilzeitschritten (Sweeps) jeweils in Form eines wesentlich g¨ unstigeren tridiagonalen Gleichungssystems gel¨ost. Auf dieses Weise kann der numerische Aufwand erheblich vermindert werden. Die zweidimensionale ADI-Methode verh¨alt sich dabei immer stabil. 4.7.2
Fractional Step Method
Eine weitere M¨oglichkeit der effizienten Behandlung mehrdimensionaler Probleme liefert die sogearmeleitungsnannte Fractional Step Method. Wir betrachten wiederum die zweidimensionale W¨ gleichung (4.56) Die Vorgehensweise ist ¨ahnlich wie bei der ADI–Methode: Mehrdimensionale Gleichungen werden in eindimensionale Einzelschritte zerlegt, die dann nacheinander gel¨ ost werden. Die Aufteilung erfolgt durch zweimalige Anwendung der Crank–Nicolson–Methode. n+ 21
Ti,j
n − Ti,j
( ∆t 2 ) n+1 Ti,j −
n+ 1 Ti,j 2
( ∆t 2 )
n+ 1 n+ 1 n+ 1 n n + Tn Ti+1,j − 2Ti,j 1 Ti+1,j2 − 2Ti,j 2 + Ti−1,j2 i−1,j = κ + 2 (∆x)2 (∆x)2 = κ
1 2
n+ 12 Ti,j−1
−
n+ 1 2Ti,j 2 (∆y)2
+
n+ 12 Ti,j+1
+
n+1 n+1 n+1 Ti,j−1 − 2Ti,j + Ti,j+1
(∆y)2
(4.61)
£ ¤ Das Verfahren ist in jedem Fall stabil und von der Fehlerordnung (∆t)2 , (∆x)2 , (∆y)2 .
4.8
Erweiterung auf dreidimensionale Probleme
Die implizite Approximation der dreidimensionalen W¨ armeleitungsgleichung · 2 ¸ ∂ T ∂2T ∂2T ∂T =κ + + , ∂t ∂x2 ∂y 2 ∂z 2
(4.62)
60
Zeitapproximation – parabolische Differentialgleichungen
f¨ uhrt auf große, sehr ung¨ unstig besetzte Gleichungssysteme. Einen Ausweg bietet die dreidimensionale Variante der ADI–Methode: Die Approximation f¨ ur die Zeitschritte n, n + 31 , n + 23 , n + 1 nach ADI–Vorgehensweise f¨ uhrt auf
n+ 1
n Ti,j,k3 − Ti,j,k
( ∆t 3 ) n+ 2
= κ
n+ 1
Ti,j,k3 − Ti,j,k3 ( ∆t 3 )
= κ
n+ 2
n+1 Ti,j,k − Ti,j,k3
( ∆t 3 )
= κ
n+ 1
δx2 Ti,j,k3 (∆x)2
+
(∆x)2
+
(∆x)2
+
δy2 Ti,j,k3 (∆y)2
+
δy2 Ti,j,k3 (∆y)2
(∆z)2
n+ 1
+
n+ 2
n+ 2
δx2 Ti,j,k3
(∆y)2
n δz2 Ti,j,k
n+ 2
n+ 1
δx2 Ti,j,k3
n δy2 Ti,j,k
+
δz2 Ti,j,k3 (∆z)2 n+1 δz2 Ti,j,k
(∆z)2
O[∆t, ∆x2 , ∆y 2 , ∆z 2 ]
dabei sind die δx , δy und δz eine kompakte Formulierung f¨ ur die Differenzenformeln: δx2 Ti,j,k = Ti+1,j,k − 2Ti,j,k + Ti−1,j,k δy2 Ti,j,k = Ti,j+1,k − 2Ti,j,k + Ti,j−1,k δz2 Ti,j,k = Ti,j,k+1 − 2Ti,j,k + Ti,j,k−1 , Diese Variante der ADI-Methode ist stabil f¨ ur: (dx + dy + dz ) ≤
4.9
3 2
Einbau von Randbedingungen
In Abschnitt 2.4 wurden unterschiedliche Randbedingungen f¨ ur Differentialgleichungen definiert. Wir wollen nun die numerische Umsetzung dieser Randbedingungen am Beispiel der eindimensionalen W¨armeleitungsgleichung betrachten. fiktiver Randpunkt
fiktiver Randpunkt
i=0
i=IM+1 i=1
i=2
i=3
linker Rand
i=4
....
i=IM1
i=IM rechter Rand
Abbildung 36: Exemplarisches eindimensionales Rechengebiet
4.9.1
Dirichlet Randbedingung
Wird die abh¨angige Variable auf dem Rand direkt vorgegeben, liegt eine ”Dirichlet Randbedingung” vor. Sie tritt vor allem an Einstr¨omr¨andern und festen W¨ anden auf. Explizite oder implizite Diskretisierung der W¨armeleitungsgleichung f¨ uhrt auf die L¨ osung Tim . Die vorgegebenen Randwerte lauten: T1 = TL und TIM = TR . (4.63)
4.9 Einbau von Randbedingungen
61
Explizite Verfahren erlauben die diskrete Berechnung der unbekannten Temperaturverteilung Tim+1 an den Gitterpunkten. Im Fall einer Dirichlet Randbedingung wird diese Prozedur ausgesetzt und stattdessen direkt der Randwert vorgegeben: T1m+1 = TL
und
m+1 TIM = TR .
(4.64)
Implizite Verfahren f¨ uhren auf algebraische Gleichungssysteme f¨ ur die Temperaturverteilung. Die Randbedingung muß deshalb in das Gleichungssystem eingearbeitet werden. Die algebraischen Gleichungen an allen inneren Punkten lauten f¨ ur das BTCS (4.7):
ai Ti−1 + bi Ti + ci Ti+1 = Di
i = 2, IM 1
mit IM 1 = IM − 1 .
(4.65)
Die Randbedingung kann nun auf zwei verschiedene Arten implementiert werden: Methode I: An den Randpunkten werden sehr einfache Gleichungen generiert, die die Einhaltung der Randbedingung sicherstellen: i = 1 : T1 · CL = TL · CL i = IM
: TIM · CR = TR · CR ,
oder in Matrixschreibweise: CL a2 b2 c2 a3 b3 c3 .. . aIM 1 bIM 1 cIM 1 CR
T1 T2 T3 · . .. TIM 1 TIM
TL · CL D2 D3 = .. . DIM 1 TR · CR
CL und CR sind hier beliebige Konstanten, in der Regel wird CL = CR = 1 gesetzt. Methode II: Der Vektor der unbekannten Temperaturen wird um die beiden Randpunkte reduziert auf i = 2, . . . IM 1 und die Randbedingung auf der rechten Seite eingebracht:
b2
T2
c2
a3 b3 c3 .. . aIM 2
bIM 2
cIM 2
aIM 1 bIM 1
T3 .. · . TIM 2 TIM 1
=
D2 − a2 TL D3 .. . DIM 2 DIM 1 − cIM 1 TR
62
Zeitapproximation – parabolische Differentialgleichungen
4.9.2
Neumann Randbedingung
Wird nicht der Wert sondern eine ¨ortliche Ableitung normal zur Berandung vorgegeben, liegt eine Neumann Randbedingung vor. Dies ist z.B. bei der Vorgabe des Randw¨ armeflusses der Fall: −κ
∂T = qw . ∂x
(4.66)
An einer adiabatischen Wand gilt hier qw = 0. Neumann Randbedingungen werden außerdem an Symmetrie- und Ausflußr¨andern verwendet. Im folgenden sollen an beiden R¨ andern Neumann Randbedingungen herrschen mit links: qw = qL
rechts: qw = qR .
(4.67)
Der Ableitungsterm muß diskretisiert werden. Hier sollen Diskretisierungen erster und zweiter Ordnung f¨ ur ¨aquidistante Gitter am linken Rand betrachtet werden: Erster Ordnung:
Zweiter Ordnung:
¯ ∂T ¯¯ T1 − T0 + O(∆x) , = ∂x ¯1 ∆x
(4.68)
¯ ∂T ¯¯ T2 − T0 + O(∆x)2 . = ¯ ∂x 1 2∆x
(4.69)
Dabei stellt T0 die Temperatur an einem fiktiven Punkt außerhalb des Rechengebiets dar, der sich gleich weit von i = 1 befindet wie die Stelle i = 2. Bei der Realisierung der Randbedingung ist es sehr wichtig, mindestens die gleiche Approximationsordnung zu verwenden, wie im Rest des Rechengebietes. Bei expliziten Verfahren ergibt sich die Bestimmungsgleichung f¨ ur einen neuen unbekannten Wert Tim+1 . Am linken Randpunkt (i = 1) lautet sie bei FTCS-Methode (4.6): T1m+1 = T1m + d(T2m − 2T1m + T0m ) .
(4.70)
Der hier auftretende unbekannte Wert T0m wird nun mit Hilfe einer der Diskretisierungsgleichungen (4.68) oder (4.69) bestimmt: T0m = T1m − qL ∆x (erster Ordnung)
T0m = T2m − 2qL ∆x (zweiter Ordnung) .
(4.71)
Auch f¨ ur implizite Verfahren l¨aßt sich die Diskretisierungsgleichung direkt f¨ ur den Randpunkt formulieren. BTCS (4.65) liefert am linken Rand: a1 T0 + b1 T1 + c1 T2 = D1 .
(4.72)
Die Randbedingung kann nun wiederum auf zwei verschiedene Arten implementiert werden, wobei entweder die Approximation erster oder zweiter Ordnung (4.71) zur Bestimmung von T0 verwendet wird. Die Gleichungssysteme werden f¨ ur Neumann Bedingungen am linken und rechten Rand angegeben:
4.9 Einbau von Randbedingungen
63
Erster Ordnung
Zweiter Ordnung
4.9.3
a1 + b1 c1 a2 b2 c2 b3 c3 a3 .. . aIM 1 bIM 1 cIM 1 aIM bIM + cIM
T1
T2 T3 · . .. TIM 1 TIM
D1 + a1 qL ∆x
=
D2 D3 .. . DIM 1 DIM + cIM qR ∆x
b1 a1 + c1 a2 b2 c2 a3 b3 aIM 1
T1 T2 T3 · . .. TIM 1 TIM
=
c3 .. . bIM 1
cIM 1
aIM + cIM
bIM
D1 + 2a1 qL ∆x D2 D3 .. . DIM 1 DIM + 2cIM qR ∆x
Robinbedingung
Die Robinbedingung stellt eine Kombinationen der ersten beiden Typen von Randbedingungen dar. Am Rand gilt hier: ∂T =C , (4.73) AT + B ∂x ¨ wobei A, B und C beliebige Konstanten sein k¨ onnen. Ahnlich wie bei der Neumann Bedingung kann auch hier durch Approximation eine Bestimmungsgleichung f¨ ur den fiktiven Randwert T0 bzw. TIM +1 ermittelt werden: erster Ordnung:
T0
µ ¶ A∆x C∆x = T1 1 + − , B B
T0
2A∆x 2C∆x = T2 + T1 − . B B
(4.74) Zweiter Ordnung: 4.9.4
Zyklische oder periodische Randbedingung
Zyklische Randbedingungen k¨onnen dann eingesetzt werden, wenn im Str¨ omungsfeld Ebenen oder Linien gefunden werden k¨onnen, die paarweise die gleiche Verteilung der Str¨ omungsgr¨ oßen aufweisen. Mit dieser Randbedingung k¨onnen beispielsweise ”unendliche” Abfolgen von Turbinenschaufeln oder Kan¨ale von ”unendlicher” L¨ange simuliert werden. Abbildung 37 zeigt einen Ring, bei dem Anfangs- und Endpunkt zusammenfallen. Es gilt T1 = TIM . Das resultierende Gleichungssystem hat dann folgende Form:
64
Zeitapproximation – parabolische Differentialgleichungen
i=IM zyklischer Rand i=IM1 i=1 i=IM2
i=2 i=3
....
....
Abbildung 37: Zyklische Randbedingung am Beispiel eines Rings
b1
c1
a2
b2
c2
a3 b3
c3 .. . aIM 2
cIM 1
4.10
a1
bIM 2
cIM 2
aIM 1 bIM 1
T1
T2 T3 · . .. TIM 2 TIM 1
D1
D2 D3 = .. . DIM 2 DIM 1
Linearisierung parabolischer PDG
Bei der Diskretisierung von Differentialgleichungen mit Hilfe numerischer Approximationsverfahren muß beachtet werden, daß effiziente L¨oser nur f¨ ur lineare Gleichungssysteme zur Verf¨ ugung stehen. Da die Diskretisierung nichtlinearer Differentialgleichungen auch auf nichtlineare Gleichungssysteme f¨ uhrt, m¨ ussen derartige Systeme linearisiert werden. Viele Str¨omungsbilanzgleichungen sind nichtlinear (z.B. Konvektion). Wir betrachten exemplarisch den Term u ∂u ur 2d-Str¨ omungen. Die r¨ uckw¨ artige FD-Approximation in ∂x aus der Impulsbilanz f¨ positiver x-Richtung f¨ uhrt dabei auf: ¯ ui+1,j − ui,j ∂u ¯¯ = ui+1,j u ¯ + O(∆x) . ∂x i+1 ∆x
(4.75)
Diese Differenzengleichung ist nichtlinear f¨ ur den unbekannten Term ui+1,j . Zur Linearisierung stehen unterschiedliche Methoden zur Verf¨ ugung: • Beim Lagging wird der Koeffizient von der bekannten Station genommen: u
ui+1,j − ui,j ∂u ≈ ui,j ∂x ∆x
• Bei der iterativen Methode wird der zur¨ uckliegende Wert (zeitlich bzw. iterativ) solange durch
4.10 Linearisierung parabolischer PDG
65
neue L¨osungen verbessert, bis ein Konvergenzkriterium erf¨ ullt ist. (k+1)
∂u (k) ui+1,j − ui,j u ≈ ui+1,j ∂x ∆x ¨ • Newton–Linearisierung des Terms (A)(B) mit Anderung zweier aufeinanderfolgender Iterationen. δA = A(k+1) − A(k) δB = B (k+1) − B (k) F¨ ur den nichtlinearen Term erh¨alt man: A(k+1) B (k+1) = (A(k) + δA)(B (k) + δB) = A(k) B (k) + B (k) δA + A(k) δB + δAδB und ohne den von h¨oherer Ordnung kleinen Term δAδB A(k+1) B (k+1) ≈ A(k) B (k) + B (k) (A(k+1) − A(k) ) + A(k) (B (k+1) − B (k) ) ≈ A(k) B (k+1) + A(k+1) B (k) − A(k) B (k) Die Anwendung auf den konvektiven Term f¨ uhrt auf: µ ¶(k+1) µ ¶(k) µ ¶(k) ∂u (k) ∂u (k+1) ∂u (k) ∂u ≈u u +u −u ∂x ∂x ∂x ∂x Damit lautet die Approximation: (k+1)
u
∂u ∂x
≈ ui+1,j
u
∂u ∂x
≈ ui+1,j
(k)
(k)
ui+1,j − ui,j
(k+1)
(k)
(k+1) ui+1,j − ui,j (k) ui+1,j − ui,j + ui+1,j − ui+1,j ∆x ∆x ∆x ³ ´2 (k) (k) ui+1,j 2ui+1,j − ui,j − . ∆x ∆x
Bei der Newton Linearisierung muß der Startwert in der N¨ ahe der L¨ osung liegen. Bei parabolischen PDG ist dies durch Fortschreiten in der parabolischen Richtung m¨ oglich. • Bei der Linearisierung mit Hilfe einer Taylorreihe wird ausgehend von einem bekannten Wert der Iterationsstufe k eine Reihenentwicklung durchgef¨ uhrt: ¯ ¯ ∂F ¯¯ ∂F ¯¯ (k+1) (k+1) (k) (k) (δA) + (δB) + O(δA2 , δB 2 ) . F (A ,B ) = F (A , B ) + ∂A ¯A(k) ,B (k) ∂B ¯A(k) ,B (k) Angewandt auf Gleichung (4.75) ergibt das ∂u u ∂x u
∂u ∂x
∂u u ∂x
≈
¯ ∂F ¯¯ + (δui+1,j ) ∂(ui+1,j ) ¯u(k)
(k) F (ui+1,j )
i+1,j
(k)
(k)
≈ ui+1,j
ui+1,j − ui,j ∆x (k)
≈
(k+1) ui+1,j
+
2ui+1,j − ui,j ∆x
(k) ´ 2ui+1,j − ui,j ³ (k+1) (k) ui+1,j − ui+1,j ∆x ³ ´2 (k) ui+1,j − . ∆x
66
5
Behandlung linearer Gleichungssysteme
Behandlung linearer Gleichungssysteme
In diesem Kapitel befassen wir uns mit der Aufgabe, die linearen Gleichungssysteme, welche man aus der diskretisierten Differentialgleichung erh¨ alt, unter Ber¨ ucksichtigung ihrer speziellen Struktur m¨oglichst effizient zu l¨osen. Diese Gleichungssysteme haben besondere Eigenschaften: Die Koeffizientenmatrizen sind meist sehr groß, aber einfach strukturiert. Sie sind ‘schwach besetzt’, die von Null verschiedenen Elemente treten in regelm¨ aßiger ‘bandartiger’ Weise in bestimmten charakteristischen Gr¨oßenverh¨altnissen auf. Um einen ersten Eindruck zu vermitteln, wollen wir im folgenden zun¨achst den Prototyp einer elliptischen Differentialgleichung 2. Ordnung, die sogenannte Poissongleichung betrachten. ∂2u ∂2u + 2 = f (x, y) . ∂x2 ∂y
(5.1)
Der Einfachheit halber beschr¨anken wir uns auf ein quadratisches Integrationsgebiet S und Dirichletsche Randbedingungen. Gesucht ist die L¨ osung u(x, y), welche im Gebiet S die PDG (C − 1) erf¨ ullt und auf dem Gebietsrand C die vorgegebenen Werte u = g(x, y) annimmt. Zur Diskretisierung der Randwertaufgabe legen wir ein quadratisches Rechengitter der Schrittweite h zugrunde. Die Anzahl N der Unbekannten verh¨ alt sich dann wie h12 , was bei einer 1 Unterteilung von h = 256 ca. N = 65.000 Unbekannte ergibt. Die Gestalt der Koeffizienten-Matrix 2 2 h¨angt von dem gew¨ahlten Differenzenquotienten f¨ ur ∂∂xu2 bzw. ∂∂yu2 ab. W¨ ahlt man zur Approximation der zweiten partiellen Ableitung jeweils den zentralen Differenzenquotienten (3.12), so ergibt sich das folgende Gleichungssystem ui−1,j + ui+1,j + ui,j−1 + ui,j+1 − 4ui,j = h2 fi,j
(5.2)
oder mit h2 fi,j = ri,j auf der rechten Seite das System, das im folgenden abgedruckt ist. Auf dieses Gleichungssystem l¨aßt sich jedes Verfahren zur L¨ osung linearer Probleme anwenden. Die Effizienzunterschiede sind jedoch betr¨ achtlich. So f¨ uhrt z.B. die Cramersche Regel auf ein 10204.000 Jahre w¨ ahrendes Geduldspiel, wohingegen moderne Verfahren bereits nach ca. 8 Sekunden zu einer L¨osung gelangen. Entscheidend f¨ ur die Effizienz eines Verfahrens ist der zu bew¨ altigende Rechenaufwand, also die Anzahl der arithmetischen Operationen zur Bestimmung der L¨ osung. ¨ Einen ersten vergleichenden Uberblick kann man sich anhand der Tabelle 7 verschaffen, die sich auf das oben skizzierte Problem bezieht. Grunds¨atzlich wird zwischen direkten L¨osungsmethoden, welche auf der sukzessiven Elimination der Unbekannten basieren, und iterativen Prozessen, die die gesuchte L¨ osung als Folge von N¨aherungen bestimmen, unterschieden. Der bekannteste Vertreter, der hier nicht n¨ aher diskutierten direkten Methode, ist das herk¨ommliche Gaußsche Eliminationsverfahren. Daneben seien das Cholesky-Verfahren zur Dreieckszerlegung symmetrisch positiver Bandmatrizen, der ThomasAlgorithmus usw. in Erinnerung gerufen.
67
−4
1
1 −4 0
0 0 ... 1 0
1 −4 1 ..
1
0
0
0
1
0
0
0
1 0
0
0 1 ..
.
1
0
0 0
1
0
1 −4
0
0
0
1
−4
1
1 −4 1 ..
0
1
.
1 −4
0
0
..
.
0
1
0
0
1 0
0
1 ..
0
0
1 ..
.
1 −4
1
1
.
1
0
0
1
0
1 −4
0
0
0
1
−4
1
1 −4 1 .. .
. 0
Verfahren
1
1 −4
asymptotischer
1 0 0 1 .. . 0 1
u1,1
u1,2 u1,3 · · u1,n u2,1 u2,2 u2,3 · = · u2,n u3,1 · · u3,n u4,1 · ·
r1,1
r1,2 r1,3 · · r1,n r2,1 · · · · r2,n · · · r3,n r4,1 · ·
ungef¨ ahre Rechenzeit
Rechenaufwand Gauß-Verfahren f¨ ur Bandmatrizen
−N 2
ca. 20.000 sec (gesch¨ atzt)
Gauß-Seidel∗)
−N 2
ca. 10.000 sec (gesch¨ atzt)
SOR∗)
−N 1,5
ca. 1.200 sec
ADI∗)
−N log N
ca. 130 sec
Mehrgitterverfahren
−N
ca. 8 sec
Tabelle 7: Rechenzeiten f¨ ur die diskretisierte Poisson-Gleichung im Einheitsquadrat (h = 1/256), das heißt, N = 2552 = 65025 Unbekannte); f¨ ur die iterativen Verfahren∗) wurde eine feste relative Genauigkeit von 4 −10 zugrunde gelegt.
Die direkten L¨osungsmethoden erfordern die Speicherung der gesamten Koeffizientenmatrix, wodurch es leicht zur Ersch¨opfung des zur Verf¨ ugung stehenden Arbeitsspeichervolumens kommen kann. Die Rechenzeit wird in der Folge zu einem nicht unerheblichen Teil f¨ ur die Datenkommuni¨ kation mit Hilfsspeichermedien verbraucht, weshalb sich die L¨ osung vor allem bei niedriger Ubertragungsgeschwindigkeit erheblich verz¨ ogern kann. Mittlerweile existieren jedoch Algorithmen, die
68
Behandlung linearer Gleichungssysteme
solchen Nachteilen durch sukzessive Zusammensetzung der linearen Gleichungssysteme in Verbindung mit gleichzeitiger Elimination begegnen (sog. Frontl¨ osungsmethoden). Daneben zeichnen sich die direkten Verfahren durch die unangenehme Eigenschaft aus, die numerischen St¨ orungen der exakten L¨osung (z.B. Rundungsfehler) zu akkumulieren. Den entscheidenden Parameter zur Bestimmung der Empfindlichkeit gegen¨ uber St¨ orungen stellt die Konditionszahl einer Matrix (also −1 das Produkt ||A|| · ||A || nach beliebiger Norm) dar, f¨ ur die man folgende ‘Faustregel’ findet: ‘Wird ein lineares Gleichungssystem A u = r mit n-stelliger dezimaler Gleitkommarechnung gel¨ost, und betr¨agt die Konditionszahl der Koeffizientenmatrix κ ≈ 10m , so sind aufgrund der im allgemeinen unvermeidlichen Eingangsfehler nur (n − m − 1) Dezimalstellen der auf die betragsm¨aßig gr¨oßte Komponente bezogene L¨ osung sicher.’ Zur Senkung der Konditionszahl verf¨ ugt die Numerik u oglicherweise Abhilfe verschaffende ¨ber m¨ Methoden, wie Equilibrieren, Pivotisieren, Vorkonditionieren, usw. Im allgemeinen sind direkte Methoden wirkungsvoller als iterative Methoden, sobald a) die Koeffizentenmatrix f¨ ur eine schnelle Absch¨ atzung des optimalen Relaxationsfaktors zu umfangreich ist; b) die Matrix fast singul¨ar ist, so daß kleine Reste keine kleinen Fehler in die L¨ osung implizieren, wie sp¨ater in diesem Kapitel gezeigt wird; c) verschiedene Gleichungssysteme mit denselben Koeffizienten, aber mit verschiedenen rechten Seiten gel¨ost werden m¨ ussen.
5.1
LU–Zerlegung von tridiagonalen Matrizen
Zur L¨osung von tridiagonalen Matrizen, wie sie beispielsweise bei der Behandlung eindimensionaler W¨armeleitungsprobleme auftreten, bietet sich ein einfacher direkter L¨ oser an: die LU–Zerlegung. Wegen der Relevanz dieses Verfahrens f¨ ur iterative Methoden soll die LU–Zerlegung hier n¨ aher erl¨autert werden. • F¨ ur ein System von Differentialgleichungen l¨ aßt sich durch die Approximation ein blocktridiagonales Gleichungssystem f¨ ur den Unbekanntenvektor u in der allgemeinen Form aufstellen. r ist die rechte Seite. Au=r
Matrix A :
A=
a1
c1
...
b2
a2
c2
b3
a3 c3 ..
.. . 0
0 .. .
.
bIM 1 aIM 1 cIM 1 ...
bIM
aIM
5.1 LU–Zerlegung von tridiagonalen Matrizen
Die Matrix A wird as 1 b2 A=LU = . . . 0
69
in eine obere und eine untere Teilmatrix ... 0 .. as2 . b3 as3 .. . bIM 1 asIM 1 ... bIM asIM
zerlegt: 1 cs1 1
...
0 .. .
1
csIM 1
cs2 1
cs3 ..
.. . 0 ...
.
1
mit den Koeffizienten, as1 = a1 cs1 = c1 · (as1 )−1 asi = ai − bi · csi−1 −1
csi = ci · (asi )
f¨ ur i = 2, 3, . . . , IM f¨ ur i = 2, 3, . . . , IM 1 (5.3)
• Zu l¨osen ist jetzt das System Ly=r
mit
as1 b2 as2 . . . 0 ...
... ..
0 .. .
. bIM 1 asIM 1 bIM
asIM
U u=y y1 y2 . · .. y IM 1 yIM
r1
r2 .. = . rIM 1 rIM
mit y1 = (as1 )−1 r1 yi = (asi )−1 (ri − bi yi−1 ) Außerdem erh¨alt man U u = y ... 1 cs1 1 cs2 .. . . . 1 . 0 ...
0 .. .
csIM 1 1
f¨ ur i = 2, 3, . . . , IM. u1 u2 . · .. u IM 1 uIM
y1
y2 .. = . yIM 1 yIM
woraus sich die L¨osung ergibt: uIM
= yIM
ui = yi − csi ui+1
f¨ ur i = IM 1, IM 2, . . . , 2, 1
70
5.2
Behandlung linearer Gleichungssysteme
Iterative Methoden
Iterative Methoden zur L¨osung von algebraischen Gleichungssystemen werden im allgemeinen angewandt, wenn die Anzahl der Unbekannten groß ist, jede Gleichung aber nur einige wenige davon enth¨alt. Die Koeffizientenmatrix besteht dann haupts¨ achlich aus Nullen. Die Iterationsverfahren besitzen die Eigenschaft, daß sie die schwache Besetzung der Koeffizientenmatrix voll ausn¨ utzen k¨onnen und die Matrix unver¨andert lassen. Dies erlaubt eine bedeutend konzentriertere Speicherung der von Null verschiedenen Matrixelemente, so daß der dazu ben¨ otigte Speicherbedarf im Vergleich zu den Eliminationsmethoden bedeutend geringer ist. Bei jeder iterativen Methode beginnt man mit einem bekannten und oft beliebigen Anfangsvektor u(0) . Auf diesem aufbauend berechnet man eine Folge von Approximationen u(k) , die mit wachsender Iterationszahl gegen die exakte L¨osung des diskretisierten Gleichungssystems (5.1) A u = r(x, y) (k)
atzungen konvergieren. Wenn jede Komponente ui eines L¨ osungsvektors u(k) aus vorhandenen Sch¨ anderer Komponenten explizit berechnet wird, bezeichnet man die Prozedur als Punktmethode. (k) (k) Demgegen¨ uber nennt man Prozeduren, bei denen ganze Komponentengruppen ui , uj , ... in impliziter Manier gleichzeitig berechnet werden, Linien- oder Blockmethoden. Die Teilsysteme zur Bestimmung einer Komponentengruppe l¨ ost man gew¨ ohnlich direkt, sie k¨ onnen jedoch ihrerseits auch wieder iterativ gel¨ost werden. Den Terminus ‘Linienmethode’ verwendet man, wenn die Elemente einer Gruppe sich zu einer kompletten Gitterlinie im Integrationsgebiet aufreihen. Ein Iterationsverfahren wird als station¨ar bezeichnet, wenn die L¨ osungsvektoren u(k) aus bekannten Approximationen f¨ ur alle Iterationsstufen n mit dem gleichen Operationszyklus berechnet werden. Die iterativen Verfahren wollen wir an leicht unterschiedlichen Modellgleichungen erl¨ autern: (1) Die Laplacegleichung ∂2u ∂2u + 2 =0. ∂x2 ∂y
(5.4)
∂2u ∂2u + 2 = f (x, y) . ∂x2 ∂y
(5.5)
(2) Die Poissongleichung
Wir beschr¨anken uns wiederum auf Dirichletsche Randbedingungen in einem kartesischen Rechengebiet, wollen jedoch verschieden große Schrittweiten ∆x und ∆y zulassen. Die finite Differenzenformulierung der beiden Modellgleichungen ergibt sich mit zentralen Differenzenquotienten zu (1) (2) bzw. mit β =
ui+1,j − 2ui,j + ui−1,j ui,j+1 − 2ui,j + ui,j−1 + =0, 2 (∆x) (∆y)2 ui,j+1 − 2ui,j + ui,j−1 ui+1,j − 2ui,j + ui−1,j + = f (x, y) , 2 (∆x) (∆y)2
(5.6) (5.7)
∆x ∆y
(1) (2)
ui+1,j + ui−1,j + β 2 ui,j+1 + β 2 ui,j−1 − 2(1 + β 2 )ui,j = 0 , 2
2
2
ui+1,j + ui−1,j + β ui,j+1 + β ui,j−1 − 2(1 + β )ui,j = r(x, y) .
(5.8) (5.9)
Verwendet man dagegen zur N¨aherung der zweiten partiellen Ableitung eine 9-Punkte-Formel von
5.2 Iterative Methoden
71
i,j+1
i-1,j
i,j
i+1,j
∆y i,j-1 ∆x
Abbildung 38: Veranschaulichung der 5-Punkte-Formel (5.7).
4. Genauigkeitsordnung (Tabelle 4), so erh¨ alt man anstelle (5.7) die Beziehung −ui−2,j + 16ui−1,j − 30ui,j + 16ui+1,j − ui+1,j 12(∆x)2 −ui,j−2 + 16ui,j−1 − 30ui,j + 16ui,j+1 − ui,j+2 + = 0 (= r(x, y)) , 12(∆y)2
(5.10)
und somit − ui−2,j + 16ui−1,j + 16ui+1,j − ui+2,j + β 2 [ui,j−2 + 16ui,j−1 + 16ui,j+1 − ui,j+2 ] − 30ui,j [1 + β 2 ] = 0
(= r(x, y)) .
(5.11)
Hieraus ergibt sich eine Koeffizientenmatrix von viel gr¨ oßerer Bandbreite und somit auch ein gesteii,j+2 i,j+1 i-2,j
i-1,j
i, j
i+1,j
i+2,j
i,j-1 i,j-2
Abbildung 39: Veranschaulichung der 9-Punkte-Formel (5.10).
gerter Rechenzeitbedarf. Wendet man die einfachere 5-Punkteformel (5.9) auf das in Abbildung 40 skizzierte 6 × 6-Punkte-Rechengitter mit den Randbedingungen x=0
u = u2
y=0
u = u1
x=L
u = u4
y=H
u = u3
an, so ergibt sich f¨ ur die inneren Gitterpunkte das folgende Gleichungssystem
72
Behandlung linearer Gleichungssysteme
u3 6 5 4 3 u2 2
u4
j=1 i=1
3
2
4
5
6
u1
Abbildung 40: Skizze eines 6 × 6-Punkte-Rechengitters.
u3,2 + u1,2 + β 2 u2,3 + β 2 u2,1 − 2(1 + β 2 )u2,2 = 0 u4,2 + u2,2 + β 2 u3,3 + β 2 u3,1 − 2(1 + β 2 )u3,2 = 0 u5,2 + u3,2 + β 2 u4,3 + β 2 u4,1 − 2(1 + β 2 )u4,2 = 0 u6,2 + u4,2 + β 2 u5,3 + β 2 u5,1 − 2(1 + β 2 )u5,2 = 0 2
2
(5.12)
2
u3,3 + u1,3 + β u2,4 + β u2,2 − 2(1 + β )u2,3 = 0 u4,3 + u2,3 + β 2 u3,4 + β 2 u3,2 − 2(1 + β 2 )u3,3 = 0 u5,3 + u3,3 + β 2 u4,4 + β 2 u4,2 − 2(1 + β 2 )u4,3 = 0 u6,3 + u4,3 + β 2 u5,4 + β 2 u5,2 − 2(1 + β 2 )u5,3 = 0 u3,4 + u1,4 + β 2 u2,5 + β 2 u2,3 − 2(1 + β 2 )u2,4 = 0 u4,4 + u2,4 + β 2 u3,5 + β 2 u3,3 − 2(1 + β 2 )u3,4 = 0 u5,4 + u3,4 + β 2 u4,5 + β 2 u4,3 − 2(1 + β 2 )u4,4 = 0 u6,4 + u4,4 + β 2 u5,5 + β 2 u5,3 − 2(1 + β 2 )u5,4 = 0 u3,5 + u1,5 + β 2 u2,6 + β 2 u2,4 − 2(1 + β 2 )u2,5 = 0 u4,5 + u2,5 + β 2 u3,6 + β 2 u3,4 − 2(1 + β 2 )u3,5 = 0 u5,5 + u3,5 + β 2 u4,6 + β 2 u4,4 − 2(1 + β 2 )u4,5 = 0 u6,5 + u4,5 + β 2 u5,6 + β 2 u5,4 − 2(1 + β 2 )u5,5 = 0
bzw. mit α = −2(1 + β 2 )
α 1 0 0 β2 0 0 0 0 0 0 0 0 0 0 0
1
0
0 0
β2 0
0 β
2
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0 0
0
α
1
0
1
α
1
0
0
β2
0
0
0
0
0
0
0
0
0
1
α
0
0
0
β2
0
0
0
0
0
0
0
0
0
0
α
1
0
0
β2
0
0
0
0
0
0
β2
0
0
1
α
1
0
0
β2
0
0
0
0
0
0
β2
0
0
1
α
1
0
0
β2
0
0
0
0
0
0
β2
0
0
1
α
0
0
0
β2
0
0
0
0
0
0
β2
0
0
0
α
1
0
0
β2
0
0
0
0
0
0
β2
0
0
1
α
1
0
0
β2
0
0
0
0
0
0
β2
0
0
1
α
1
0
0
β2
0
0
0
0
0
0
β2
0
0
1
α
0
0
0
0
0
0
0
0
0
0
β2
0
0
0
α
1
0
0
0
0
0
0
0
0
0
β2
0
0
1
α
1
0
0
0
0
0
0
0
0
0
β2
0
0
1
α
0
0
0
0
0
0
0
0
0
0
β2
0
0
1
0
0 0 0 0 0 0 0 0 0 0 2 β 0 0 1 α
u2,2
u3,2 u4,2 u5,2 u2,3 u3,3 u4,3 u5,3 u2,4 u3,4 u4,4 u5,4 u2,5 u3,5 u4,5 u5,5
−u1,2 − β 2 u2,1
−β 2 u4,1 2 −u6,2 − β u5,1 −u1,3 0 0 −u6,3 −u1,4 0 0 −u6,4 −u1,5 − β 2 u3,6 2 −β u3,6 2 −β u4,6 −u6,5 − β 2 u5,6 2
−β u3,1
(5.13)
5.2 Iterative Methoden
5.2.1
73
Die Jacobische Iterationsmethode
Gel¨ost werden soll ein lineares Gleichungssystem mit N -dimensionalem L¨ osungsvektor vom Typ:
Au=r
bzw.
N X
alm um = rl
a11 a12 a21 a22 a 21 a22 . . . aN 1 aN 2
bzw.
m=1
a13 . . . a23
a1N .. .
a33 .. ...
.
...
.. . aN N
u1
u2 . .. u N −1 uN
r1
r2 .. = . rN −1 rN
Man beachte, daß die Indizes l, m hier nicht f¨ ur die beiden Gitterrichtungen einer zweidimensionalen Differenzengleichung stehen, sondern f¨ ur die Zeilen und Spalten des linearen Gleichungssystems. Die iterative Berechnung eines neuen Elements (k + 1) des Unbekanntenvektors geschieht bei der Jacobischen Iterationsmethode durch Auswertung der entsprechenden Zeile des Gleichungssystems unter Verwendung von Nachbarwerten, die stets vom vorherigen Iterationsschritt (k) genommen werden: N X (k+1) 1 . ul = rl − alm u(k) (5.14) m all m=1, m6=l
Angewendet auf die L¨osung der diskretisierten Laplacegleichung (5.9) f¨ ur alle inneren Punkte lautet die Jacobische Iterationsmethode: (k+1)
ui,j
=
h i 1 (k) (k) (k) 2 (k) u + u + β (u + u ) . i−1,j i,j+1 i,j−1 2(1 + β 2 ) i+1,j
(5.15)
Die hier verwendete Vorgehensweise wird auch als Gesamtschrittverfahren bezeichnet, weil das gesamte ”neue” Feld auf der Basis von ”alten” Unbekanntenwerten bestimmt wird. Sie wird in der Praxis wenig benutzt, weil die hierbei vektorweise iterierten Werte u(k) langsamer gegen die exakte L¨osung u konvergieren als bei dem noch zu erl¨ auternden Gauß-Seidel Verfahren. Die JacobiMethode ist vor allem von theoretischem Wert. Sie bietet eine gute Vergleichsm¨ oglichkeit zur Beurteilung und Regulierung des Konvergenzverhaltens anderer Methoden. Bevor wir zu einem weiteren iterativen Verfahren kommen, betrachten wir die FTCS-Diskretisierung der in der Zeit parabolischen PDG (analog zu (4.57) markiert n die Zeitstufe) ∂u ∂2u ∂2u = + 2 , ∂t ∂x2 ∂y (n+1)
−→
ui,j
∆t
f¨ ur die man mit β = 1 und d = (n+1)
ui,j
(n+1)
ui,j
(n)
(n)
− ui,j
=
(n)
(n)
ui−1,j − 2ui,j + ui+1,j
∆t (∆x)2
(∆x)2 =
1 4
(5.16) (n)
+
(n)
(n)
ui,j−1 − 2ui,j + ui,j+1 (∆y)2
,
(5.17)
die folgende Darstellung erh¨ alt:
i 1 h (n) (n) (n) (n) (n) (n) ui+1,j + ui−1,j − 4u1,j + ui,j+1 + ui,j−1 = ui,j + 4 i 1 h (n) (n) (n) (n) = ui+1,j + ui−1,j + ui,j+1 + ui,j−1 . 4
(5.18)
74
Behandlung linearer Gleichungssysteme
Die Analogie zwischen der iterativen L¨osung von station¨ aren und instation¨ aren elliptischen Problemen wird hier offenkundig. Obwohl die beiden Gleichungen (5.15) und (5.18) zwei v¨ ollig verschiedene physikalische Ph¨anomene beschreiben, f¨ uhren sie f¨ ur den Sonderfall β = 1, d = 1/4 auf die selbe L¨osungsvorschrift. Den Jacobischen Iterationsprozeß zur L¨ osung der Laplacegleichung startet osung der nicht auskonvergierten man mit einer beliebigen Anfangsverteilung u(0) . Die Zwischenl¨ (k) Verteilungen u (siehe Abbildung 43) haben keine physikalische Bedeutung. Bei der L¨ osung des instation¨aren Problems (5.16) ist die Anfangsverteilung u(0) dagegen durch die dazugeh¨ origen An(n) fangsbedingungen festgelegt. Im Falle station¨ arer Randbedingungen streben die Werte ui,j gegen einen station¨aren Wert, der mit der auskonvergierten L¨ osung des Jacobischen Iterationsprozesses u ¨bereinstimmt. 5.2.2
Punkt-Gauß-Seidel-Verfahren
Im Gegensatz zur Jacobischen Methode werden beim Punkt-Gauß-Seidel-Verfahren (PGS) w¨ ahrend der Abarbeitung einer Iterationsstufe alle neu ermittelten Elemente (k+1) des Unbekanntenvektors benutzt, um die weiteren Elemente zu bestimmen: Ã (k+1) ul
=
rl −
l−1 X
alm u(k+1) − m
m=1
n X
! alm u(k) m
m=l+1
1 . all
(5.19)
Diese Vorgehensweise wird auch als Einzelschrittverfahren bezeichnet. Aufgrund der Verwendung von neuen Werten konvergiert das PGS-Verfahren schneller als das Jacobische Verfahren. Da zudem nur ein Unbekanntenvektor gespeichert werden muß, der dann sukzessive aktualisiert wird, ist auch der Speicherplatzbedarf geringer. Betrachten wir wiederum die Aufl¨osung von (5.9): Angenommen, der (k + 1)-te Iterationszyklus habe bereits die ersten (j − 1) Reihen abgearbeitet und befinde sich nun in der j-ten Reihe, um den (k+1) Wert der Unbekannten ui,j zu bestimmen. Das L¨ osungsverfahren kann nun auf die im aktuellen (k+1)
(k+1)
Zyklus bereits errechneten r¨ uckw¨artigen Werte ui,j−1 sowie ui−1,j zur¨ uckgreifen, und lautet somit (k+1)
ui,j
=
h i 1 (k) (k+1) (k+1) 2 (k) u + u + β (u + u ) . i−1,j i,j+1 i,j−1 2(1 + β 2 ) i+1,j
k
i,j+1
k+1
k+1
i-1,j
i,j
k
i+1,j
k+1
i,j-1
Abbildung 41: Gitterpunkte der Gleichung (5.20)
(5.20)
5.2 Iterative Methoden
5.2.3
75
Konvergenzbedingung
Jacobische Methode und PGS tasten die Gitterpunkte systematisch in den aufeinanderfolgenden Reihen von links nach rechts ab. Damit solche Verfahren zu einer korrekten L¨ osung f¨ uhren also konvergieren, m¨ ussen jedoch die Hauptdiagonalenelemente der Koeffizentenmatrix dominieren, so daß das sog. Zeilensummenkriterium erf¨ ullt ist: N X
|alm | ≤ |all |
(5.21)
m=1, m6=l
Außerdem muß f¨ ur mindestens eine Zeile gelten: N X
|alm | < |all |
(5.22)
m=1, m6=l
5.2.4
Linien-Gauß-Seidel Verfahren
Hierbei wird die Beziehung (5.9) nach allen Punkten einer Gitterlinie aufgel¨ ost, so daß wir alternativ zu (5.9) (k+1) (k+1) (k+1) (k) (k+1) ui−1,j − 2(1 + β 2 )ui,j + ui+1,j = −β 2 (ui,j+1 + ui,j−1 ) (5.23) formulieren k¨onnen. Zur Schließung m¨ ussen s¨ amtliche Beziehungen (5.23) einer Linie zu einem tridiagonalen System zusammengefaßt und gel¨ ost werden . Die Abarbeitung der Linien erfolgt z.B. wie in Abbildung 42 dargestellt, von unten nach oben. Randbedingungen
x
bekannte Werte d. (k+1)-ten Iterationszyklus aktuelle zu berechnende Gitterlinie bekannte Werte d. k-ten Iterationszyklus
x x x x x
unbekannte Werte der zu berechnenden Gitterlinie, welche auf ein tridiagonales Gleichungssystem führen
Abbildung 42: Veranschaulichung des Gauß-Seidel-Linienverfahrens
Das Verfahren konvergiert ungef¨ahr um einen Faktor 0.5 schneller als das entsprechende Punktverfahren. Es ben¨otigt jedoch eine h¨ohere Rechenzeit f¨ ur jeden Iterationsschritt. Bemerkenswert ist die der impliziten Formulierung von parabolischen DGL ¨ ahnliche Eigenschaft, Randbedingungen unmittelbar mit den L¨osungen aller Punkte der dazugeh¨ origen Gitterlinien zu verkn¨ upfen (siehe auch Kapitel 4).
76
Behandlung linearer Gleichungssysteme
5.2.5
Sukzessive Relaxationsverfahren
Diese Verfahren werden durch Iterationsprozesse motiviert, bei denen sich eine stetige (monotone) Entwicklung der berechneten Werte einstellt. In solchen F¨ allen ist man versucht, der Korrektur der L¨osung zwischen zwei Iterationsschritten ∆u(k) = u(k+1) − u(k) einen gr¨oßeren Einfluß zuzumessen, um so den Iterationsprozeß zu beschleunigen (Abbildung 43 unten). Aber auch der umgekehrte Ansatz, den Einfluß der Korrektur ∆u(k) bei der Bestimmung der n¨achstfolgenden L¨osung zu d¨ampfen, ist denkbar, etwa wenn der Iterationsprozeß zu starken Schwingungen neigt (Abbildung 43 oben). Eine sehr simple verallgemeinerte Rechenvorschrift erh¨ alt man, in dem die Korrektur der k-ten L¨osung mit einem konstanten Relaxationsfaktor 2 < ω < 0 multipliziert und zur r¨ uckw¨artigen L¨osung u(k) addiert wird. Ui,j
Ui,j
stationaere Loesung
stationaere Loesung instationaerer Anlauf
Anzahl der Iterationen
Anzahl der Iterationen
Abbildung 43: Unterschiedlicher Verlauf der Iteration bzw. der zeitlichen L¨osung
u(k+1) = ωu(k+1) + (1 − ω)u(k) .
(5.24)
Konkret ergibt sich anstelle von (5.20) die sukzessive Relaxationsvorschrift f¨ ur das Punkt-GaußSeidel-Verfahren h i ω (k+1) (k) (k+1) (k+1) (k) 2 (k) ui,j = u + u + β (u + u ) + (1 − ω)ui,j . (5.25) i−1,j i,j+1 i,j−1 2(1 + β 2 ) i+1,j bzw. anstelle von (5.23) die entsprechende Formulierung der Linienmethode h i h i (k+1) (k+1) (k+1) (k) (k+1) (k) −2(1 + β 2 )ui,j + ω ui−1,j + ui+1,j = −ωβ 2 ui,j+1 + ui,j−1 − (1 − ω)[2(1 + β 2 )]ui,j . (5.26) In Abh¨angigkeit vom Relaxationsfaktor ω spricht man von ¨ falls • Uberrelaxation • Unterrelaxation falls
1 < ω < 2, 0 < ω < 1.
Der Fall ω = 1 f¨ uhrt wieder auf die Beziehungen (5.20) bzw. (5.23). Die Schwierigkeit bei der Anwendung sukzessiver Relaxationsverfahren besteht in der Vorhersage optimaler Relaxationsfaktoren. Gew¨ohnlich sind zur Bestimmung von ω numerische Experimente notwendig, lediglich in Ausnahmef¨allen findet man Empfehlungen zur Wahl des optimalen Faktors. Ein solcher Fall liegt bei der L¨osung einer Laplace-DGL in einem rechteckigen Gebiet mit
5.2 Iterative Methoden
77
Dirichletschen Randbedingungen vor. Diskretisiert man das Problem auf ein Gitter mit konstanten Schrittweiten, so gilt √ 2−2 1−α ωopt = , (5.27) α ³ ´ ³ ´ 2 cos IMπ−1 + β 2 cos JMπ−1 . α= (5.28) 1 + β2 5.2.6
Die implizite Methode der alternierenden Richtungen
Eine weitere Verbesserungsm¨oglichkeit liegt in der Methode der alternierenden Richtungen, nach seiner englischen Bezeichnung (alternating direction implicit method) auch hierzulande ADI-Methode genannt. Dieses Verfahren eignet sich sowohl zur L¨ osung instation¨ arer (vergleiche Kapitel 4.7.1) als auch zur iterativen L¨osung elliptischer Gleichungen. Im Falle der iterativen L¨ osung des elliptischen Problems (5.9) alterniert die Iteration zwischen Seidelschen Linienschritten in x-Richtung und daran anschließenden Schritten in y-Richtung (sog. sweeps). Beginnt man den Zyklus beispielsweise mit der L¨osung aller Linien y = konstant, so hat man zun¨ achst das tridiagonale System ³ ´ (k+1/2) (k+1/2) (k+1/2) (k) (k+1/2) ui−1,j − 2(1 + β 2 )ui,j + ui+1,j = −β 2 ui,j+1 + ui,j−1 , (5.29) und hierauf das analoge System f¨ ur alle Linien x = const. (k+1)
(k+1)
β 2 ui,j−1 − 2(1 + β 2 )ui,j
(k+1)
(k+1/2)
+ β 2 ui,j+1 = −ui,j+1
(k+1)
− ui−1,j
(5.30)
zu l¨osen. Wie wir bereits festgestellt haben, handelt es sich bei den beiden letztgenannten Gleichungen um implizite Formeln, da sie mehr als eine Unbekannte enthalten, jedoch f¨ ur alle Punkte einer Linie als System, in unserem Beispiel als tridiagonales System, geschlossen zu l¨ osen sind. Ein Iterationszyklus ist beendet, sobald jede Linie x = konst. und jede Linie y = konst. erfaßt wurde. Randbedingung x zuletzt berechnete Werte Werte der zurückliegenden Iteration aktuelle Werte k+1/2
k+1 x x
k j+1
x
j
x
j-1
x x x x
i-1 i i+1 y sweep
x sweep
Abbildung 44: Illustration der Beziehungen (5.29) und (5.30).
Im Vergleich zu dem einfachen Linien-Gauß-Seidel Verfahren kann die Konvergenz mit Hilfe der ADI Methode in vielen F¨allen verbessert werden, da die implizite Behandlung und damit ein schnel¨ ler Informationstransport in beiden Richtungen gew¨ ahrleistet ist. Andert sich bei Anwendung eines Linien-Gauß-Seidel Verfahren, das immer in Schleifen von unten nach oben durchlaufen wird, die
78
Behandlung linearer Gleichungssysteme
Randbedingung am oberen Rand, so kann sich die St¨ orung in jedem Iterationsschritt nur um eine Gitterlinie nach unten ausbreiten. Der Informationsfluß und damit die Konvergenz ist deshalb langsam. Beim ADI-Verfahren w¨are im gleichen Fall durch den y-sweep immer ein impliziter Halbschritt in vertikaler Richtung vorhanden, und das Verfahren konvergiert damit schneller. Der Iterationsprozeß l¨aßt sich m¨oglicherweise beschleunigen, wenn man gem¨ aß den oben stehenden Ausf¨ uhrungen einen Relaxationsfaktor ω einf¨ uhrt. Die Systeme (5.29) und (5.30) lauten dann ³ ´ £ ¤ (k) (k+1/2) (k+1/2) (k+1/2) (k) (k+1/2) ωui−1,j − 2(1 + β 2 )ui,j + ωui+1,j = −(1 − ω) 2(1 + β 2 ) ui,j − ωβ 2 ui,j+1 + ui,j−1 , (5.31) ´ ³ £ ¤ (k+1) (k+1) (k+1) (k+1/2) (k+1) (k+1) ωβ 2 ui,j−1 − 2(1 + β 2 )ui,j + ωβ 2 ui,j+1 = −(1 − ω) 2(1 + β 2 ) ui,j+1 − ω ui+1,j + ui−1,j . (5.32) 5.2.7
Konvergenzkriterium
In der Regel bricht man den Iterationsprozeß zur Bestimmung der L¨ osung des Systems A u = r ab, wenn jede Komponente der N¨aherungsl¨ osung u(k) von der entsprechenden Komponente der exakten L¨osung u um weniger als eine vorgegebene Toleranz δ abweicht. Da u jedoch nicht bekannt ist, verf¨ahrt man in der Praxis so, daß man die Iterationen beendet, wenn der Restvektor, das sog. Residuum R, kleiner als eine vorgegebene Toleranz ist. R = r − A u(k) .
(5.33)
Dabei kann man entweder den Betrag des Residuenvektors betrachten k R k=k r − A u(k) k < ²
(5.34)
max (|Ri |) < ².
(5.35)
oder die maximale Komponente Die vom Benutzer gew¨ahlte Schranke ² bestimmt dann die Genauigkeit der L¨ osung. 5.2.8
Bemerkungen zum Konditionsproblem
Die Konditionszahl der Systemmatrix A ist f¨ ur die direkten L¨ osungsverfahren bei gegebener Stellenzahl des verwendeten Rechners maßgebend f¨ ur die Genauigkeit der berechneten L¨ osungen, da hierdurch der Verlust an sicheren Stellen bestimmt ist (siehe Einleitung des Kapitels 5). F¨ ur die iterativen Verfahren ist die Konditionszahl entscheidend f¨ ur das Konvergenzverhalten, indem eine große Konditionszahl schlechtes Konvergenzverhalten nach sich zieht. Wie in Abschnitt 5.2.7 beschrieben, bricht man den Iterationsprozeß zur Bestimmung der L¨ osung des Systems A u = r ab, wenn das Residuum R bzw. eine seiner Komponenten eine vorgegebene Schranke unterschreitet: R = r − A u(k) A−1 R = A−1 r − u(k) = u − u(k) = e(k) .
(5.36)
¯ ¡¯ ¢ F¨ ur schlecht konditionierte Matrizen ¯k A k · k A−1 k¯ >> 1 kann e(k) noch recht große Komponenten haben. Dies trifft beispielsweise f¨ ur ‘nahezu’ singul¨ are Matrizen A zu, f¨ ur die det(A) gegen Null geht, weswegen die Elemente der inversen von A zu großen Werten tendieren.
5.3 Die Methode der konjugierten Gradienten
79
¨ Grunds¨atzlich empfiehlt sich eine Uberpr¨ ufung der Kondition der Systemmatrix A, gegebenenfalls sollte man dann den Aufwand zur ‘Vorkonditionierung’ nicht scheuen. Dabei kommt es vor allem auf die geschickte Wahl einer symmetrischen positiv definiten Matrix C an, welche sich als Produkt einer regul¨aren Matrix H mit ihrer Transponierten darstellt: C = H · HT . Mit Hilfe der Matrix H wird das zu l¨ osende Gleichungssystem Au = r in die ¨ aquivalente Form H −1 · A · H −T · H T · u = H −1 · r | {z } | {z } | {z } A∗
u∗
r∗
bzw. A∗ · u∗ = r∗ gebracht. Die Matrix H sollte so beschaffen sein, daß die Konditionszahl κ(A∗ ) kleiner als κ(A) ist. ¨ Die Ahnlichkeitstransformation von A∗ H −T · A∗ · H T = H −T · H −1 · A · H −T · H T = C −1 · A zeigt, daß f¨ ur ein optimales C = A die Matrix A∗ a ¨hnlich zur Einheitsmatrix ist und folglich die Konditionszahl Eins w¨are. Detaillierte Anleitungen zur Konditionsverbesserung gehen u oglichen Um¨ber den augenblicklich m¨ fang dieser Unterlagen hinaus. Wir verweisen hierzu auf die entsprechende Fachliteratur aus dem Bereich der numerischen Mathematik. F¨ ur symmetrische Matrizen A = L + E + R findet man beispielsweise den Vorschlag H = E + βL → H T = E + βR mit einem noch geeignet zu w¨ahlenden Parameter β. Vorkonditionierung (engl. pre-conditioning) ist wie bereits erw¨ ahnt vor allem bei schlecht konditionierten Matrizen erforderlich. Dies tritt in der praktischen Str¨ omungsmechanik beispielsweise dann auf, wenn die Navier-Stokes-Gleichungen mit einem Verfahren betrachtet werden, das die Kontinuit¨atsgleichung zur Berechnung der Dichte verwendet: % aus
∂%uj ∂% = . ∂t ∂xj
(5.37)
Bei kleinen Mach-Zahlen, werden die hieraus resultierenden Gleichungen wegen der nahezu konstanten Dichte singul¨ar. Durch Vorkonditionierung lassen sich jedoch auch f¨ ur sehr kleine Mach-Zahlen noch L¨osungen erzielen.
5.3
Die Methode der konjugierten Gradienten
Die Idee dieses Verfahrens ist, daß die L¨ osung des symmetrisch definierten Systems
zugleich das Funktional wegen
Au + r = 0
(5.38)
1 F (u) = uT A u + rT u 2
(5.39)
1 grad F (u) = (A + AT )u + r = A u + r 2
(5.40)
80
Behandlung linearer Gleichungssysteme
minimiert. Man versucht also anstelle der sonst u osung von (5.38) das Mini¨blichen ‘gezielten’ L¨ mum des quadratischen Funktionals F zu finden. Im Laufe des Verfahrens der konjugierten Gradienten wird dieses Minimum iterativ bestimmt, wobei man zur schrittweisen Verbesserung der aktuellen L¨osung u(k) den Gradienten von F verwendet. Bekanntlich weist der Gradient einer Funktion immer in Richtung der lokal st¨ arksten Zunahme des Funktionswertes. Weil das Funktional zu minimieren ist, zeigt die Auswertung der Beziehung (5.40) f¨ ur u(k) daher den denkbar ung¨ unstigsten Weg zur Verbesserung der aktuellen L¨ osung an. Es ist deshalb sehr naheliegend, die dem Gradienten entgegengesetzte Richtung zur Festlegung einer sogenannten Relaxationsrichtung zu verwenden. In dieser unternimmt man dann eine noch zu ermittelnde Anzahl ω von Einheitsschritten zur Verbesserung der aktuellen L¨ osung. (0) Zu Beginn der Iteration bestimmt man aus einer beliebigen Startl¨ osung u eine erste, bessere N¨aherung u(1) gem¨aß u(1) = u(0) − ω (1) grad F (u(0) ) (5.41) | {z } −v (1) =r(0)
mit v (i+k) = Verbesserungsvektor k → (k + 1) R(i) = Residuenvektor von (5.38) . Die Schrittweite ergibt sich ebenfalls aus der L¨ osung einer Extremalaufgabe. Sie paßt die Beziehung (5.41) an die Minimumbedingung f¨ ur F an: F (u(1) ) = F (u(0) + ωv (1) ) = Min T T 1 → ω 2 v (1) A v (1) − ωv (1) v (1) + F (u) = Min . 2
Differenziert man diesen Ausdruck nach ω, so erh¨ alt man aus der f¨ ur extreme F notwendigen Bedingung ∂F/∂ω = 0 die Relation T
T
ω
(1)
=
v (1) v (1) T
v (1) A v (1)
=
R(o) R(o) T
v (1) A v (1)
,
(5.42)
T
bzw. allg.: ω
(k)
=
R(k−1) R(k−1) T
v (k) A v (k)
.
(5.43)
Die nun folgenden Iterationsschritte unterscheiden sich ein wenig von dem ersten Schritt. Hierzu betrachte man die folgenden Beziehungen R(k−1) + ωA v (k) (= A u(k−1) + ωA v (k) + r) = R(k) analog R(k) + ωA v (k+1) (= A u(k) + ωA v (k+1) + r = A u(k+1) + r) = R(k+1) −→ R(k−1) + ωA v (k) + ωA v (k+1) = R(k+1) .
(5.44)
Aus der letzten Gleichung l¨aßt sich R(k+1) bereits ohne die Kenntnis von v (k+1) analysieren. Von entscheidender Bedeutung ist dabei der zweite Summand A v (k) , der den Anteil der zuletzt gew¨ ahlten Relaxationsrichtung an dem ”zuk¨ unftigen” Residuum (= Rest) beziffert. Nun ist es sinnlos, einen Anteil des Residuums nochmals zu erzeugen, indem man v (k+1) ¨ ahnlich v (k) w¨ ahlt. Falls der (k) Anteil der k-ten Verbesserung am Gradienten von F (u ) von Null verschieden ist, sollte man
5.3 Die Methode der konjugierten Gradienten
81
diese Information dahingehend nutzen, die L¨ osung in der zu diesem Anteil senkrechten Richtung zu verbessern. Wir fordern also v (k+1) ⊥ A v (k) −→ v (k+1) A v (k) = 0 ,
(5.45)
worunter die Mathematiker die Konjugiertheit von v (k) und v (k+1) verstehen. Nat¨ urlich verwendet man zur Bestimmung der Verbesserung (Relaxationsrichtung) v (k) auch das zuletzt berechnete Residuum R(k−1) , die Konjugiertheit von v (k) und v (k−1) stellt lediglich eine zu erf¨ ullende Nebenbedingung f¨ ur den Ansatz v (k) = R(k−1) + t(k−1) v (k−1)
(k ≥ 2) |
· A v (k−1)
(5.46)
mit v (k) A v (k−1) = 0 −→ R(k−1) A v (k−1) + t(k−1) v (k−1)T A v (k−1) = 0 , also
T
t
(k−1)
R(k−1) A v (k−1)
=
v (k−1)T A v (k−1)
(5.47)
dar. Die Schrittweite ω (k) ergibt sich wieder aus (5.42). Der Algorithmus vereinfacht sich, wenn man (5.44) ω (k−1) Av (k−1) = R(k−1) − R(k−2) sowie (k)
R
(k−1)
⊥ R
R(k) ⊥ v (k)
¯ ¯ ¯ ¯ Beweis durch vollst¨ andige Induktion ¯ ¯
beachtet. Hieraus erhalten wir T
R(k−1) A v (k−1) =
1 ω (k−1)
T
[R(k−1) R(k−1) ]
1 T [v (k−1) R(k−2) ] ω (k−1) 1 = (k−1) [(−R(k−2) + t(k−2) v (k−2) )T R(k−2) ] ω 1 T = (k−1) [R(k−2) R(k−2) ] ω und schließlich f¨ ur alle k ≥ 2 den allgemeinen Relaxationsschritt T
v (k−1) A v (k−1) =
T
-
t(k−1) =
R(k−1) R(k−1) T
R(k−2) R(k−2)
v (k) = −R(k−1) + t(k−1) v (k−1) T
ω (k) =
R(k−1) R(k−1) v (k)T A v (k)
u(k) = u(k−1) + ω (k) v (k) R(k) = R(k−1) + ω (k) A v (k) .
(→ 5.43)
82
Behandlung linearer Gleichungssysteme
Abschließend wollen wir noch die Beschr¨ankung auf symmetrische, definite Koeffizientenmatrizen aufgeben. Zumindest f¨ ur die L¨osung str¨omungsmechanischer Probleme ist die Erweiterung auf nichtsymmetrische Probleme geboten, weil die finite Approximation von Konvektionstermen stets unsymmetrische Beitr¨age zur Systemmatrix liefert. Die einfachste Idee, ein Problem mit unsymmetrischer, nicht positiv definiter Koeffizientenmatrix mit Hilfe des CG-Verfahrens zu l¨osen, ist, anstelle des urspr¨ unglichen Problems Au=r
| Aij 6= Aji
ein mit AT erweitertes Problem AT A u = AT r
→
B u = ˜r
zu l¨osen. Das Produkt AT A = B ist f¨ ur jede nicht singul¨ are reelle Matrix A 1. quadratisch, 2. positiv definit. Hieraus ergibt sich eine zweite Anwendungsm¨ oglichkeit dieses Gedankenspiels, n¨ amlich seine Verwendung auf u arke-Geschwindigkeitsformu¨berbestimmte Probleme wie sie z.B. bei der Wirbelst¨ lierung der Navier-Stokes Gleichung auftreten: A(n×m) u(m) = r(n) ;
m
Die Erweiterung mit AT f¨ uhrt dann auf ein quadratisches Gleichungssystem zur Bestimmung der m unbekannten Komponenten von u. Das Ergebnis ist ein Unbekanntenvektor, der das urspr¨ ungliche Problem nicht exakt l¨ost. Die Verteilung des Fehlers auf die einzelnen Komponenten verl¨ auft jedoch so ausgeglichen, daß der quadratische Fehler |RT R| minimal wird. Die faktische Quadrierung der Koeffizientenmatrix ist jedoch extrem rechenintensiv, weswegen man die Koeffizienten von B in der Praxis nicht vorab explizit berechnet, sondern die Erweiterung des urspr¨ unglichen Problems direkt in die CG-Prozedur einarbeitet (CG-Ausgleichsverfahren): |AT
Aij uj + ri = 0 Ail Aij uj + Ail ri = 0 Blj uj + r˜l = 0 . (0)
Main w¨ahlt eine Startl¨osung uj , bestimmt den Residuenvektor des unsymmetrischen Systems (0)
(0)
si
= ri + Aij uj
,
sowie eine Verbesserung (0)
Rl
(1)
= −vl
(0)
= Ail si
(0)
= ri Ail + Ail Aij uj und steigt damit in die zweite Position der Prozedur ein.
5.4 Methode der Fourierreihen
-
t(k−1) =
83
R(k−1)T R(k−1) R(k−2)T R(k−2)
v (k) = −R(k−1) + t(k−1) v (k−1) ω (k) =
R(k−1)T R(k−1) (k) (k) (k) (k) (k) (= Ail vl Aij vj = vlk Aij Aij vj = vl Blj vj ) q (k)T q (k)
u(k) = u(k−1) + ω (k) v (k) s(k) = s(k−1) + ω (k) v (k) (k)
R(k) = As(k) (= Ail s(k−1) + Aij ω (k) v i (k−1)
= Aij ri + Aij Ail ul | {z
}
(k)
+Aij ω (k) v i
(k−1)
=
(k)
+ Aij ω (k) v i
Rj
k =k+1
5.4
Methode der Fourierreihen
Zur effizienten L¨osung der bei der Approximation zweidimensionaler elliptischer Probleme typischerweise auftretenden pentadiagonalen Gleichungssysteme (vgl. Gleichung (5.13)) kann alternativ die direkte Methode der Fourierreihen verwendet werden. Sie ist mathematisch mit einer EigenwertEigenvektor-Transformation vergleichbar. Eine verst¨ andliche Herleitung des Verfahrens ist von Le Bail [21] angegeben. Das Prinzip der Methode der Fourierreihen wird im folgenden am Beispiel des numerischen L¨osungswegs der Poisson-Gleichung ∂2u ∂2u + 2 = r(x, y) ∂x2 ∂y
(5.48)
mit Dirichlet-Randbedingungen f¨ ur ein rechteckiges Gebiet verdeutlicht. JM JM1 . ∆y
Pi,j
.
∆x
. . 1 j=0 i=0
1
.
.
.
IM1 IM
Die zentrale Differenzenapproximation der Poisson-Gleichung f¨ uhrt f¨ ur jeden Punkt Pi,j auf die
84
Behandlung linearer Gleichungssysteme
bekannte 5-Punkte-Differenzenformel: ui−1,j + ui+1,j +
∆x2 ∆x2 (u + u ) − (2 + 2 )ui,j = ∆x2 ri,j . i,j−1 i,j+1 ∆y 2 ∆y 2
(5.49)
Die Randbedingungen seien durch die entsprechenden Werte u0,j , uIM,j , ui,0 sowie ui,JM gegeben. Da die Methode der Fourier-Reihen (Sinus-Reihen) als Randwerte immer den Wert Null ben¨ otigt, ∗ ∗ ∗ bestimmen wir nun eine neue Unbekannte ui,j mit ui,j = ui,j f¨ ur i = 1, · · · , IM 1 und ui,j = 0 f¨ ur i = 0 und i = IM . Es gilt f¨ ur alle Zeilen j = 1, · · · , JM 1: u∗i−1,j + u∗i+1,j +
∆x2 ∗ ∆x2 ∗ ∗ (u + u ) − (2 + 2 )u i,j+1 ∆y 2 i,j−1 ∆y 2 i,j
∆x2 ∗ ∆x2 (u1,j−1 + u∗1,j+1 ) − (2 + 2 2 )u∗1,j 2 ∆y ∆y 2 ∆x ∆x2 ∗ ∗ ∗ + (u + u ) − (2 + 2 )u IM 1,j+1 ∆y 2 IM 1,j−1 ∆y 2 IM 1,j
u∗0,j + u∗2,j + u∗IM 2,j + u∗IM,j
= ∆x2 ri,j ,
i = 2, · · · , IM 2
= ∆x2 r1,j − u0,j = ∆x2 rIM 1,j − uIM,j .
Im folgenden wird u anstatt u∗ geschrieben. Die allgemeine Form von Differenzengleichungen, die sich mit Hilfe der Fourierreihenmethode behandeln lassen lautet: A(ui−1,j + ui+1,j ) + Bj ui,j−1 + Cj ui,j+1 + Dj ui,j = Γi,j , f¨ ur i = 1, · · · , IM 1,
(5.50)
j = 1, · · · , JM 1
mit A = const., Bj = B(yj ), Cj = C(yj ), Dj = D(yj ); u0,j = uIM 1,j = 0 , und ist f¨ ur konstantes j eindeutig darstellbar durch die Fourier-Sinus-Reihe (Fourier-Synthese):
ui,j
=
IM X1
φk,j sin
k=1
πik IM
i = 1, · · · , IM 1,
j = 1, · · · , JM 1 (5.51)
Γi,j
=
IM X1
Ωk,j sin
k=1
πik IM
i = 1, · · · , IM 1,
j = 1, · · · , JM 1 .
Die erste Reihe beschreibt eine periodische Funktion mit den Randwerten u0,i = uIM,j = 0. Die Fourier-Koeffizienten einer Sinus-Reihe sind nachfolgend angegeben (Fourier-Analyse): Z 2 l πkx φk = u(x) sin dx f¨ ur k = 1, 2, · · · , ∞ . (5.52) l 0 l Bei endlicher Anzahl von Funktionswerten u(x) = ui,j f¨ ur konstantes j f¨ uhrt die Trapezregel auf: φk,j
=
IM 1 πik 2 X ui,j sin IM IM
f¨ ur k = 1, · · · , IM 1,
j = 1, · · · , JM 1
i=1
(5.53) Ωk,j
=
2 IM
IM X1 i=1
Γi,j sin
πik IM
f¨ ur k = 1, · · · , IM 1,
j = 1, · · · , JM 1 .
5.4 Methode der Fourierreihen
85
F¨ ur j = 0 und JM ist φk,j mit bekannten Funktionswerten ui,j nun bekannt. Setzt man die Fourier-Sinus-Reihe f¨ ur ui,j und Γi,j in die Differenzengleichung ein A
"IM 1 X k=1
# IM 1 IM X1 π(i − 1)k X π(i + 1)k πik φk,j sin + φk,j sin + Bj φk,j−1 sin IM IM IM k=1
+Cj
IM X1 k=1
k=1 IM X1
πik φk,j+1 sin + Dj IM
k=1
πik φk,j sin IM
=
IM X1
Ωk,j sin
k=1
πik , IM
so kann die eckige Klammer mit der trigonometrischen Summenformel sin α + sin β = 2 cos
α−β α+β sin 2 2
umgeschrieben werden: "IM 1 # IM 1 IM 1 X X π(i − 1)k X π(i + 1)k πk πik + φk,j sin = Aφk,j 2 cos sin . A φk,j sin IM IM IM IM k=1
k=1
k=1
πik Klammern wir in der Gleichung den Term sin IM aus, folgt:
¸ πik πk + Bj φk,j−1 + Cj φk,j+1 + Dj φk,j − Ωk,j sin =0. Aφk,j 2 cos IM IM
IM X1 · k=1
(5.54)
Dieser Ausdruck ist identisch mit dem linearen System eindimensionaler Differenzengleichungen in y-Richtung zur Bestimmung der Fourier-Koeffizienten φk,j f¨ ur jeweils konstantes k: · ¸ πk Bj φk,j−1 + 2A cos + Dj φk,j + Cj φk,j+1 = Ωk,j ; IM {z } |
k = 1, · · · , IM 1; j = 1, · · · , JM 1
A∗j
A∗1
C1
B2 A∗2 C2 .. .. .. . . . Bj A∗j Cj .. .. .. . . . BJM 2 A∗JM 2 CJM 2 BJM 1 A∗JM 1
φk,1
φk,2 ··· φ k,j ··· φ k,JM 2 φk,JM 1
=
Ωk,1 − B1 φk,0 Ωk,2 ··· Ωk,j ··· Ωk,JM 2
Ωk,JM 1 − CJM 1 φk,JM
Es sind hier nun IM 1 tridiagonale Gleichungssysteme mit jeweils JM 1 Unbekannten zu l¨ osen. Die Werte der gesuchten Funktion ui,j an den Gitterpunkten werden dann durch Fourier-Synthese geliefert. Die Methode der Fourier-Reihen setzt sich demnach f¨ ur zweidimensionale Probleme aus drei Schritten zusammen:
86
Behandlung linearer Gleichungssysteme
1. Fourier-Analyse in x-Richtung. Die Nicht-Nullrandbedingung in x-Richtung muß vorher im Γ1,j , ΓIM 1,j eingearbeitet werden.
Γi,j −→ Ωk,j
2. L¨osung IM 1 tridiagonaler Gleichungssysteme mit jeweils JM 1 Unbekannten in y-Richtung.
Ωk,j −→ φk,j
3. Fourier-Synthese in x-Richtung.
φk,j −→ ui,j
Der Vorteil der Methode besteht darin, daß das pentadiagonale Gleichungssystem (5.50) auf eindimensionale tridiagonale Systeme zur¨ uckgef¨ uhrt werden kann, die rekursiv mit geringem Rechenaufwand l¨osbar sind. Dieser Vorgang wird auch als Faltung bezeichnet. Eine wesentliche Einschr¨ankung des Verfahrens beruht auf dem Koeffizienten A = konst in Gleichung (5.50). Der Einfluß des rechten und linken Nachbarn muß hier jeweils gleich sein. Bei der elementaren Durchf¨ uhrung der Transformation (5.53) f¨ ur die rechte Seite der Differenzengleichung (Fourier-Analyse) und Gleichung (5.51) zur Bestimmung der L¨ osung (Fourier-Synthese) werden f¨ ur jede der j Zeilen M 2 Multiplikationen und ebensoviele Additionen ben¨ otigt. Die f¨ ur die Brauchbarkeit des Verfahrens wesentliche Verbesserung war, daß sich die Anzahl der Operationen durch einen Algorithmus, der unter dem Namen Fast Fourier Transforms (FFT) bekannt wurde, entscheidend verringern l¨aßt. FFT ben¨ otigt etwa 0.721 × IM × ln(IM ) Multiplikationen f¨ ur n konstantes j und ist durchf¨ uhrbar f¨ ur alle IM = 2 , n ∈ N .
5.5
Mehrgitterverfahren
Es ist seit langem bekannt, daß bestimmte iterative Verfahren (zum Beispiel das oben besprochene Gauß-Seidel-Verfahren) bei elliptischen Randwertaufgaben eine ”fehlergl¨ attende” Wirkung haben. Wir benutzen f¨ ur solche Verfahren im folgenden den im Mehrgitterkontext gebr¨ auchlichen Ausdruck Relaxationsverfahren. Das Gauß-Seidel-Verfahren vermag z.B. die hochfrequenten Schwingungen bei der L¨ osung der Laplacegleichung mit jedem Iterationsschritt um einen Faktor 0.5 zu reduzieren. Langwellige Schwingungen werden dagegen, was wir in diesem Abschnitt zeigen wollen, um einen Faktor 1−O(h2 ) reduziert – bei kleinem h also extrem langsam. Anhand von Abbildung 45 verdeutlicht sich die ”gl¨ attende” Wirkung dieser Verfahren. Bereits nach wenigen Iterationen besteht der Fehler haupts¨ achlich aus niederfrequenten Anteilen. Man hat also insgesamt keine gute Fehlerverkleinerung – und daher langsame Konvergenz – aber sehr gute Fehlergl¨ attung (Abbildung 46). Das Konvergenzverhalten iterativer Gleichungsl¨oser muß daher genaugenommen in Abh¨ angigkeit von der Fehlerfrequenz beurteilt werden. Auf einem groben numerischen Gitter ”GH ” der Maschenweite H kann eine finite Differenzenapproximation mit sehr viel weniger Rechenaufwand gel¨ ost werden, als auf einem feinen, knotenh punkt¨armeren Gitter ”G ” der Maschenweite h. Allerdings ergibt sich auf dem groben H-Gitter im allgemeinen auch eine geringere Genauigkeit. Die Approximation einer h-diskretisierten Aufgabe durch eine H-diskretisierte ist daher mit einem deutlichen Informationsverlust verbunden. Hochfrequente Komponenten der Fourierreihenentwicklung vermag das grobe Gitter nicht mehr aufzul¨osen. Die niederfrequenten Komponenten lassen sich dagegen auf dem H-Gitter gut erfassen. Hat man durch die vorangegangene Relaxation auf einem feinen Gitter Gh eine Fehlergl¨ attung erreicht, dann setzt sich der Fehler auf diesem Gitter im wesentlichen aus niederfrequenten Anteilen zusammen. Die Approximation des h-diskretisierten Problems durch ein H-diskretisiertes ist somit nun ohne wesentlichen Informationsverlust m¨ oglich. Im einfachsten Falle handelt sich um ein iteratives Verfahren, das auf einer Sequenz von mehreren Gittern abl¨ auft. Auf jedem Gitter wird
5.5 Mehrgitterverfahren
87
α=6π α=3π α=π
1.0
Fehler
0.8 0.6 0.4 0.2 0.0
0
20
40 60 Anzahl der Iterationen
80
100
Abbildung 45: Residuenverlauf in Abh¨angigkeit der Iterationsanzahl
relaxiert, um die dort hochfrequenten Fehlerkomponenten zu verkleinern. Die Verbindung zwischen den verschiedenen Gittern wird durch ”Interpolations-” und ”Restriktionsoperatoren” hergestellt. Die voranstehenden Aussagen u attende Wirkung eines Relaxationsverfahren wollen wir ¨ber die gl¨ in einem kurzen Beispiel herleiten. Betrachtet wird dazu die PDG a
∂2u ∂2u + b = f (x, y), ∂x2 ∂y 2
(a, b > 0)
welche wir auf einem quadratischen Gitter der Maschenabmessung (h × h) durch zentrale Differenzenquotienten (3.12) diskretisieren wollen.
a
ui+1,j − 2ui,j + ui−1,j ui,j+1 − 2ui,j + ui,j+1 +b = fi,j 2 h h2
(5.55)
Verwenden wir zur Gl¨attung das Punkt-Gauß-Seidel-Verfahren, so ergibt sich f¨ ur den k-ten Relaxationsschritt:
a
k k uk−1 i+1,j − 2ui,j + ui−1,j
h2
+b
k k uk−1 i,j+1 − 2ui,j + ui,j−1
h2
= fi,j
(5.56)
Subtrahiert man (5.56) von (5.55) dann erh¨ alt man h i h i k−1 k k k k a ek−1 − 2e + e + b e − 2e + e = 0, i,j i−1,j i,j i,j−1 i+1,j i,j+1
(5.57)
wobei mit eki,j der lokale Fehler zwischen der jeweiligen N¨ aherung uki,j und der diskreten L¨ osung ui,j gemeint ist. Wir definieren die Relation der Fehlerverst¨ arkung G :=
|u − uk | |ek | = , |ek−1 | |u − uk−1 |
88
Behandlung linearer Gleichungssysteme Ausgangsverteilung 5 Iterationen 10 Iterationen
Fehler
0
x
−1
Abbildung 46: R¨aumlicher Residuenverlauf beim Gauß–Seidel–Verfahren, Ausgangsverteilung sowie Verteilung nach 5 und 10 Iterationen
analog zu den in Kapitel 4 gemachten Aussagen, und erhalten aus der lokalen Entwicklung des Fehlers in einer diskreten Fourierreihe f¨ ur randferne Gitterpunkte (mit J 2 = −1) ekr,s =
X
+nπ sh ) J(nπ rh l l
Akn e
1
2
mit
(α) = (α1 , α2 );
l1 = hN ; α1 = nπ
h l1
l2 = hM α2 = nπ
h l2
|α| = max(|α1 |, |α2 |) ≤ π ekr,s =
X
Akn eJ(rα1n +sα2n )
(5.58)
F¨ uhrt man (5.58) in (5.57) ein, so erh¨alt man nur ein Summenglied
aAk−1 eJ[α1 (i+1)+α2 j] − 2aAk eJ[α1 i+α2 j] +aAk eJ[α1 (i−1)+α2 j] + bAk−1 eJ[α1 i+α2 (j+1)] −2bAk eJ[α1 i+α2 j] + bAk eJ[α1 i+α2 (j−1)] = 0 bzw.
(5.59)
5.5 Mehrgitterverfahren
89
h i 0 = Ak−1 aeJ[α1 (i+1)+α2 j] + beJ[α1 i+α2 (j+1)] h +Ak aeJ[α1 (i−1)+α2 j] − 2aeJ[α1 i+α2 j] i +beJ[α1 i+α2 (j−1)] − 2beJ[α1 i+α2 j] .
(5.60)
K¨ urzt man nun noch den Ausdruck eJ[α1 i+α2 j] , dann erh¨ alt man f¨ ur den Fehlervergr¨ oßerungsfaktor ¯ k ¯ ¯ ¯ ¯ A ¯ ¯ ¯ aeJα1 + beJα2 ¯ ¯ ¯ ¯. G = ¯ k−1 ¯ = ¯ ¯ −Jα −Jα 1 2 A 2a + 2b − ae − be
(5.61)
Unter Verwendung der Eulerbeziehung eJα = cosα + Jsinα l¨ aßt sich G besser absch¨ atzen: ¯ ¯ ¯ ¯ a[cosα1 + Jsinα1 ] + b[cosα2 + Jsinα2 ] ¯. ¯ (5.62) G=¯ a[2 − cosα1 + Jsinα1 ] + b[2 − cosα2 + Jsinα2 ] ¯ Man beachte, daß f¨ ur (α) = (α1 , α2 ) → (0, 0), G gegen 1 strebt, in diesem Falle also keine Konvergenz mehr vorliegt. Die erste nicht triviale Kombination α1 , α2 6= 0 liegt f¨ ur n = 1 vor. Beschr¨ anken wir uns der Einfachheit halber auf ein Integrationsgebiet vom Durchmesser O(1), dann sind α1 bzw. α2 im ersten nicht trivialen Fall von gleicher Gr¨ oßenordnung. α1 = α2 = O(h);
n = 1;
l1 = l2 = O(1) .
F¨ ur gew¨ohnlich ist die Schrittweite (des feinsten Gitters) h wesentlich kleiner als eins, so daß wir die Reihenentwicklung der trigonometrischen Glieder in (5.62) fr¨ uhzeitig abbrechen k¨ onnen. Zudem unterdr¨ ucken wir im Sinne einer Gr¨oßenordnungsabsch¨ atzung die Nennerfakult¨ aten: ¯ ¯ ¯ (a + b)[1 + ih + h4 − h2 − ih3 ] ¯ ¯ ¯ G ≈ ¯ (a + b)[1 + ih + h2 − h4 − ih3 ¯ ¯ ¯ 2 − h4 ) ¯ ¯ 2(h ¯. = ¯¯1 − 2 4 3 1 + ih + h − h − ih ¯
(5.63)
Sch¨atzt man den verbliebenen Nenner gegen eins ab, so ergibt sich tats¨ achlich f¨ ur den niederfrequenten Fehler die auf einem feinen Gitter a ußerst ung¨ u nstige Gl¨ a ttungsrate ¨ G ≈ 1 − O(h2 ). Im folgenden werden solche Schwingungskomponenten als ”hochfrequent” auf einem Gitter der Schrittweite h bezeichnet, wenn ihnen ein Wert π/2 ≤ (α) ≤ π zugeordnet ist. Dies sind gerade diejenigen Frequenzen, welche auf den n¨ achstgr¨ oberen Gitter der Schrittweite H = 2h nicht mehr approximiert werden k¨onnen und demzufolge auf Gh gegl¨ attet werden m¨ ussen. Mehrgitterprinzip Betrachten wir eine beliebige Gleichung, fortan bezeichnet mit ˜ = f˜ . ˜ φ) L(
(5.64)
90
Behandlung linearer Gleichungssysteme
hochfrequente Fehlerkomponente vor Relaxation
schwachfrequente Fehlerkomponente vor Relaxation
nach Relaxation
nach Relaxation
(starke Amplitudenverkleinerung)
(geringe Amplitudenverkleinerung)
Abbildung 47: Fehlergl¨attung durch Relaxation
˜ einen Operator dar, der alle funktionalen Zusammenh¨ Dabei stellt L ange der Unbekannten φ˜ re˜ ˜ pr¨asentiert und f die von φ unabh¨angige rechte Seite der Gleichung. Eine finite Approximation der Gleichung f¨ ur s¨amtliche diskretisierten Punkte f¨ uhrt zu einem Gleichungssystem L(φ) = f ,
(5.65)
das normalerweise iterativ gel¨ost wird. Bei einer linearen Gleichung ist L von φ unabh¨ angig. Man ur die die Gleichung bis auf ein erh¨alt nach einigen Iterationszyklen eine N¨ aherungsl¨ osung φ, f¨ Residuum R erf¨ ullt ist: L(φ) = f + R
(5.66)
anzt werden, mit der die Gleichung Zur Verbesserung der L¨osung muß φ um eine Korrektur δφ erg¨ exakt erf¨ ullt wird: L(φ + δφ) = f .
(5.67)
Die Bestimmungsgleichung f¨ ur die Korrektur δφ erh¨ alt man durch Subtraktion dieser beiden Gleichungen: L(φ + δφ) = L(φ) − R ,
(5.68)
wobei sich die Bestimmungsgleichung f¨ ur δφ vereinfacht, wenn L ein linearer Operator ist: L(δφ) = −R .
(5.69)
Das Grundelement eines Mehrgitterverfahrens ist das sogenannte Zweigitterbeschleunigungsverfahren. Dabei wird nach einigen Feingitteriterationen die Korrektur δφ auf einem Grobgitter, dessen Maschenweite gegen¨ uber dem Feingitter verdoppelt wird, bestimmt. Der niederfrequente Fehleranteil kann dadurch schneller reduziert werden. Danach erfolgen einige Nachiterationen auf dem Feingitter.
5.5 Mehrgitterverfahren
91
Zweigitterbeschleunigungsverfahren Der Berechnungsalgorithmus bei der Zweigitterbeschleunigung setzt sich wie folgt zusammen: 1) Vorrelaxation Auf dem Feingitter, gekennzeichnet mit dem hochgestellten Index h, wird eine N¨ aherungsl¨ osung φ berechnet, die die Gleichung bis auf ein Residuum R erf¨ ullt: h
Lh (φ ) = f h + Rh
(5.70)
2) Bestimmung der Grobgitterkorrektur (zwei verschiedene Verfahren) 2a) Full Approximation Scheme (FAS) f¨ ur nichtlineare Gleichungen Beim FAS werden die N¨aherungsl¨ osung und das Residuum des Feingitters auf das Grobgitter (H) restringiert. In der folgenden Gleichung bezeichnet [IhH ] den Restriktionsoperator f¨ ur die Gittervariablen, [IˆhH ] bezeichnet den Restriktionsoperator f¨ ur das Residuum. H
φ
h
= [IhH ]φ ,
R
H
= [IˆhH ]Rh
H
Auf dem Grobgitter wird die Grobgitterl¨ osung φ H
(5.71)
der Gleichung mit:
H
LH (φ ) = LH (φ ) − R
H
(5.72)
H
berechnet, wobei φ die Startwerte auf dem Grobgitter sind. Aus der Grobgitterl¨osung wird die Grobgitterkorrektur berechnet: H
H
δφH = φ − φ
(5.73)
2b) Correction Scheme (CS) f¨ ur lineare Gleichungen Wenn L ein linearer Operator ist, wird nur das Residuum vom feinen Gitter auf das Grobgitter restringiert. Die Grobgitterkorrektur kann dann direkt berechnet werden: LH (δφH ) = −R
H
(5.74)
3) Prolongation Die Grobgitterkorrektur wird auf das Feingitter prolongiert und dort zu der N¨ ahungsl¨ osung h ] den Prolongationsoperator vom Grob– auf das Feingitter. Die φ addiert. Hier bezeichnet [IH Korrektur der Feingitterl¨osung wird wie folgt bestimmt: h δφh = [IH ]δφH ,
h
h
φ = φ + δφh ,
(5.75)
4) Nachrelaxation Die so korrigierte L¨osung f¨ ur das Feingitter erf¨ ullt in der Regel die Gleichung noch nicht, da durch die Prolongation neue Fehler eingef¨ uhrt werden. Das Residuum ist allerdings hochfrequent und kann daher leicht durch einige zus¨ atzliche Iterationszyklen auf dem Feingitter reduziert werden.
92
Behandlung linearer Gleichungssysteme
Mehrgitterverfahren mit V– und W–Zyklus Da die Grobgitterkorrektur normalerweise ebenfalls iterativ bestimmt werden muß, wird das oben beschriebene Zweigitterbeschleunigungsverfahren rekursiv angewendet, d.h. die L¨ osung auf dem Grobgitter kann berechnet werden, indem zun¨ achst eine N¨ aherungsl¨ osung bestimmt und diese nach dem gleichen Verfahren mit der Korrektur eines noch gr¨ oberen Gitters verbessert wird. Wenn auf jeder Gitterstufe das Zweigitterverfahren nur einmal angewendet wird, erzeugt es einen sogenannten V–Zyklus. Bei zweimaliger rekursiver Anwendung des Zweigitterverfahrens wird das entstandene Mehrgitterverfahren W–Zyklus genannt. In Abbildung 48 wird das Zweigitterbeschleunigungsverfahren und das Mehrgitterverfahren mit V– und W– Zyklus f¨ ur 3-stufige Gitter schematisch dargestellt. Gitterebene ν2
ν1 Grobgitterkorrektur
h
ν1
ν1 -malige Vorrelaxationen
H
ν2
ν2 -malige Nachrelaxationen
Zweigitterbeschleunigungsverfahren Gitterebene ν2
ν1 ν2
ν1 ν0
V-Zyklus
ν2
ν1 ν2
ν1 ν0
ν2 ν0
1
fein
2 3
grob
W-Zyklus
Abbildung 48: Mehrgitterverfahren mit V– und W– Zyklus
¨ Der Pfeil & symbolisiert den Ubergang vom Fein– zum Grobgitter und beinhaltet die Berechnung der Residuen auf dem Feingitter Rh , die Restriktionen und die Berechnung der rechten Seite der ¨ Grobgittergleichung f H . Das Symbol % verk¨ orpert den Ubergang vom Grob– zum Feingitter inklusive der Berechnung der Korrektur auf dem Grobgitter, ihre Prolongation und die L¨ osungskorrektur auf dem Feingitter. Solche Zyklen werden hintereinander durchgef¨ uhrt, bis das Residuum auf dem feinsten Gitter eine vorgegebene Grenze unterschreitet. Full multigrid (FMG) Algorithmus Bei den bislang besprochenen Mehrgitter (MG) -Zyklen war die Wahl der Startl¨ osung φ0 beliebig (schlecht). Die FMG-Methode benutzt eine die Verfahrenseffizienz steigernde Strategie beschleunigter Anfangsgenauigkeiten. Das Verfahren startet auf dem gr¨ obsten Gitter einen umgekehrten VZyklus mit einer immer noch beliebigen Startl¨ osung. Nachdem die L¨ osung auf dem gr¨ obsten Gitter vorliegt, extrapoliert man sie zu einer Startl¨ osung des n¨ achst feineren Gitters. Mit Beendigung der Gl¨attungsoperationen auf diesem Gitter wechselt man nochmals auf das gr¨ obste Gitter. Der erste
5.5 Mehrgitterverfahren
93
Zyklus umfaßt somit nur zwei verschieden große Gitter und daher nur jeweils einen Restriktionsund einen Interpolationsschritt. Der n¨ achste, hieran anschließende umgekehrte V-Zyklus startet mit der so ermittelten ”verbesserten Startl¨ osung”, beinhaltet jedoch ein weiteres verfeinertes Gitter. Will man Frequenzanteile eines Fehlers mit einer Sequenz von m verschiedenen feinen Gittern aufl¨osen, so hat man (m − 1) V-Zyklen ineinander zu legen, weshalb man auch von ”geschachtelter Iteration” spricht (siehe Abb. 49). Diese Strategie wird h¨ aufig nicht bis zum Iterationsabbruch fortgef¨ uhrt, sondern nur zu Beginn einer Iteration angewandt.
Abbildung 49: Geschachtelte Iteration zum Prozedurstart
Abbildung 50: Full Multigrid -Algorithmus
Abschließend sei bemerkt, daß sich die richtige Wahl der auf den einzelnen Gitterebenen durchzuf¨ uhrende Gl¨attungsoperationen bei der Berechnung von instation¨ aren Problemen ¨ außerst schwierig gestaltet. Eine f¨ ur einen bestimmten Zeitschritt gefundene optimale Abstimmung kann f¨ ur ¨ andere Zeitschritte v¨ollig ineffizient sein. Ahnliche Probleme treten auch bei der potentialtheoretischen Berechnung von transsonischen Profilumstr¨ omungen auf, wo die einer bestimmten Anstr¨omgeschwindigkeit angepaßte Konfiguration im Falle geringf¨ ugiger Machzahlvarianten oftmals nicht mehr zu konvergieren vermag. Die ver¨ anderte Stoßlage bewirkt in diesem Falle anstelle der Korrektur des Geschwindigkeitsfeldes eine gr¨ oßere Ver¨ anderung der Variablenwerte auf dem groben Gitter, wodurch sich das Konvergenzverhalten erheblich verschlechtert.
94
6
Numerische Gittergenerierung
Numerische Gittergenerierung
Die numerische Behandlung partieller Differentialgleichungen verlangt eine Diskretisierung des urspr¨ unglich kontinuierlich gestellten Problems. Dies geschieht beispielsweise durch finite Differen¨ zenformeln. Ublicherweise st¨ utzen sich finite Approximationsverfahren auf die Knotenpunkte eines durch Parameterlinienscharen gebildeten Rechengitters. Die Gestalt des Rechengitters ist von entscheidender Bedeutung f¨ ur die Effizienz eines L¨ osungsverfahrens und die erreichbare Genauigkeit der L¨osung. Wichtige Kriterien sind das Aufl¨ osungsverm¨ ogen der im Integrationsgebiet auftretenden Gradienten physikalischer Gr¨oßen durch das Rechengitter. Als Folge der stetig wachsenden Verf¨ ugbarkeit von Computerkapazit¨ aten, die es erm¨ oglichten, komplexe physikalische Vorg¨ange, wie z.B. Str¨omungen mit chemischen Reaktionen, auf der Grundlage kontinuumstheoretischer Bilanzgleichungen (Euler–, Navier–Stokes–Gleichungen, usw.) zu erfassen, erlangte die automatische Erzeugung von Rechengittern in den letzten Jahren eine immer wichtigere Bedeutung. In diesem Kapitel sollen Kriterien und Techniken aufgezeigt werden, die es erm¨ oglichen, weitestgehend ohne manuelles Eingreifen m¨oglichst optimale Gitter in komplexen 3D–Geometrien im Sinne einer genauen Approximation der Physik zu erzeugen.
6.1
Koordinatentransformation
Betrachtet man anhand von Abbildung 51 s¨ amtliche Gr¨ oßen bezogen auf ein kartesisches Bezugssystem, so wird deutlich, daß die Vorgabe der Randwerte f¨ ur die abh¨ angigen Variablen und deren erste Ableitungen ¨außerst schwierig ist. Eine beliebige K¨ orperkontur kann vom kartesischen Gitter nur im Rahmen einer Stufenapproximation wiedergegeben werden. F¨ ur das in Abbildung 51 skizzierte Beispiel der Umstr¨omung eines Fahrzeugs liegen sehr wenige Kontrollpunkte des kartesischen Gitters auf der K¨orperkontur, die die nat¨ urlichen Randbedingungen des Problems (z.B. u, v = 0) beherbergt. Zur Anpassung der L¨osung an die Randbedingungen bedarf es daher aufwendiger Interpolationen, die zudem stets Ungenauigkeiten mit sich f¨ uhren. Daneben stellt sich die Frage, welche Werte man den abh¨angigen Variablen an den im Inneren des K¨ orpers gelegenen Knotenpunkten zuweist.
Abbildung 51: Stufenf¨ormige Approximation einer K¨orperkontur (Fahrzeug)
Wir ziehen daraus die Schlußfolgerung, daß ein auf den Parameterlinien x = const und y = const des kartesischen Bezugssystems basierendes Gitter zur Beschreibung der Umstr¨ omung eines beliebigen K¨ orpers ungeeignet ist. Demgegen¨ uber schmiegt sich das in Abbildung 52 skizzierte k¨orperangepaßte Gitter an den Verdr¨angungsk¨ orper an und ist augenscheinlich besser zur Diskretisierung der Str¨omungsdifferentialgleichung geeignet. Die Basis des k¨ orperangepaßten Gitters
6.1 Koordinatentransformation
95
bezieht sich auf die Parameter ξ und η wobei die K¨ orperkontur per Definition mit einer Parameterlinie η = const zusammenfallen soll. Hierdurch wird ein stromlinien¨ ahnlicher Verlauf der Scharlinien η erzwungen. Die (ξ, η) Parameterlinien verlaufen im kartesischen Bezugssystem krummlinig, weshalb man vereinfacht auch von ”krummlinigen Koordinaten” spricht. Die Scharlinien x = const bzw. y = const verlaufen im (ξ, η) Bezugssystem (Rechengebiet) jedoch nicht weniger krummlinig, wohingegen das k¨orperangepaßte Gitter im Rechengebiet einen geradlinigen Verlauf nimmt.
Abbildung 52: K¨orperangepaßtes Gitter f¨ ur eine Profilumstr¨omung
In dem k¨orperangepaßten Koordinatensystem sind die Punkte einer bestimmten Gitterlinie nat¨ urliche Randpunkte des Problems. Eine gute Aufl¨ osung der Randbedingungen durch das diskrete System ist somit gew¨ahrleistet. F¨ ur die numerische L¨ osung des Differentialgleichungssystems auf dem k¨orperangepaßten Rechengitter wird die Verwendung von an kartesische Koordinaten orientierter Differenzenquotienten sehr aufwendig. Es ist daher angebracht, das ganze Problem nicht im urorperangepaßten Rechengebiet spr¨ unglichen System (sog. ”physical domain”), sondern in einem k¨ (”computational domain”) zu betrachten. Dazu muß man die das Problem beschreibenden Differentialgleichungen in Abh¨angigkeit der neuen unabh¨ angigen Ver¨ anderlichen ξ und η formulieren. Im folgenden sollen deshalb die Transformationsbeziehungen zwischen den beiden Sets unabh¨angiger Variablen hergeleitet werden. Der Einfachheit halber betrachten wir hier nur instation¨ are Prozesse in den unabh¨ angigen kartesischen Ver¨ anderlichen x, y und t. Die Erweiterung auf r¨ aumlich dreidimensionale Probleme bereitet logisch keinerlei Schwierigkeiten. Es fallen lediglich Terme an, deren Vielzahl und Kompliziertheit h¨aufig die Verwendung formelreduzierender Programme verlangt. Will man (x, y, t) in einen anderen Variablenraum transformieren, dessen explizite Parameterdarstellung ξ = ξ(x, y, t) η = η(x, y, t) τ
(6.1)
= τ (t)
lautet, so hat man lediglich die Kettenregel zu beachten: µ ¶ µ ¶ µ ¶ µ ¶ µ ¶ µ ¶ µ ¶ ∂ ∂ ∂ξ ∂ ∂η ∂ ∂τ = + + ∂x y,t ∂ξ η,τ ∂x y,t ∂η ξ,τ ∂x y,t ∂τ ξ,η ∂x y,t
(6.2)
96
Numerische Gittergenerierung
Die Indizes der obigen Beziehung bezeichnen die bei der partiellen Ableitung festgehaltenen Variablen, werden jedoch im folgenden wieder fallengelassen. Zusammengefaßt erh¨ alt man : µ ¶ µ ¶µ ¶ µ ¶µ ¶ ∂ ∂ξ ∂ ∂η ∂ = + ∂x ∂ξ ∂x ∂η ∂x µ ¶ µ ¶µ ¶ µ ¶µ ¶ ∂ ∂ ∂ξ ∂ ∂η = + (6.3) ∂y ∂ξ ∂y ∂η ∂y µ ¶ µ ¶µ ¶ µ ¶µ ¶ ∂ ∂ ∂ξ ∂ ∂η = + ∂t ∂ξ ∂t ∂η ∂t Die Gleichungen (6.3) geben an, welche Gestalt eventuell auftretende partielle Ableitungen durch die Transformation erhalten. Die dabei auftretenden Richtungsableitungen der neuen unabh¨ angigen Ver¨anderlichen (ξ, η, τ ) nach den urspr¨ unglichen Variablen (x, y, t) wollen wir Metrikkomponenten nennen. Man bestimmt sie aus den Parameterdarstellungen (6.1). Sollten die Parameterdarstellungen geschlossene analytische Ausdr¨ ucke sein, dann lassen sich die Metrikkomponenten ebenfalls geschlossen angeben. Andernfalls sind die Metrikkomponenten numerisch z.B. durch zentrale Differenzenformeln zu bestimmen. Analog erh¨ alt man die zweiten partiellen Ableitungen µ 2 ¶ µ ¶ µ ¶ µ ¶ ·µ ¶ µ ¶ µ ¶ µ ¶¸ ∂ ∂ ∂ ∂ξ ∂ ∂η ∂ ∂ = + = 2 ∂x ∂x ∂x ∂x ∂ξ ∂x ∂η ∂x µ ¶µ 2¶ µ ¶µ 2 ¶ µ ¶µ 2¶ µ ¶µ 2 ¶ ∂ ∂ξ ∂ ∂ ∂η ∂ ∂ξ ∂η = + (6.4) + + 2 2 ∂ξ ∂x ∂x ∂x∂ξ ∂η ∂x ∂x ∂η∂x F¨ ur die in (6.4) auftretenden gemischten Differentiationen notiert man unter erneuter Verwendung von (6.3) µ ¶µ ¶ µ 2 ¶µ ¶ µ 2 ¶µ ¶ µ 2 ¶ ∂ ∂ ∂ ∂ ∂η ∂ ∂ξ = = + (6.5) 2 ∂x∂ξ ∂x ∂ξ ∂ξ ∂x ∂η∂ξ ∂x µ 2 ¶ µ ¶µ ¶ µ 2 ¶µ ¶ µ 2 ¶µ ¶ ∂ ∂ ∂ ∂ ∂ξ ∂ ∂η = = + (6.6) ∂x∂η ∂x ∂η ∂η∂ξ ∂x ∂η 2 ∂x und erh¨alt schließlich µ 2 ¶ µ ¶ µ 2 ¶ µ ¶ µ 2 ¶ µ 2 ¶ µ ¶2 µ 2 ¶ µ ¶2 ∂ξ ∂η ∂ ∂ ∂ ∂ ∂ξ ∂ ∂η = + + + + ∂x2 ∂ξ ∂x2 ∂η ∂x2 ∂ξ 2 ∂x ∂η 2 ∂x µ 2 ¶µ ¶µ ¶ ∂ ∂η ∂ξ 2 . ∂η∂ξ ∂x ∂x Die Transformation der zweiten partiellen Ableitung nach y ergibt µ 2 ¶ µ ¶ µ ¶ µ ¶ ·µ ¶ µ ¶ µ ¶ µ ¶¸ ∂ ∂ ∂ ∂ ∂ ∂ξ ∂ ∂η = = + ∂y 2 ∂y ∂y ∂y ∂ξ ∂y ∂η ∂y µ ¶µ 2¶ µ ¶µ 2 ¶ µ ¶µ 2¶ µ ¶µ 2 ¶ ∂ ∂ξ ∂ξ ∂ ∂ ∂η ∂η ∂ = + + + , 2 2 ∂ξ ∂y ∂y ∂y∂ξ ∂η ∂y ∂y ∂η∂y bzw. mit
¶ µ ¶µ ¶ µ 2 ¶µ ¶ µ 2 ¶µ ¶ ∂2 ∂ ∂ ∂ ∂ξ ∂ ∂η = = + , 2 ∂y∂η ∂y ∂η ∂η∂ξ ∂y ∂η ∂y µ 2 ¶ µ ¶µ ¶ µ 2 ¶µ ¶ µ 2 ¶µ ¶ ∂ ∂ ∂ ∂ ∂ξ ∂ ∂η = = + , 2 ∂y∂ξ ∂y ∂ξ ∂ξ ∂y ∂η∂ξ ∂y
(6.7)
(6.8)
µ
(6.9) (6.10)
6.1 Koordinatentransformation
97
schließlich µ 2 ¶ µ ¶ µ 2 ¶ µ ¶ µ 2 ¶ µ 2 ¶ µ ¶2 µ 2 ¶ µ ¶2 ∂ ∂ ∂ξ ∂ ∂η ∂ ∂ξ ∂ ∂η = + + + + 2 2 2 2 2 ∂y ∂ξ ∂y ∂η ∂y ∂ξ ∂y ∂η ∂y µ 2 ¶µ ¶µ ¶ ∂ ∂ξ ∂η 2 . (6.11) ∂η∂ξ ∂y ∂y ³ 2 ´ ∂ Zum Schluß soll noch die gemischte partielle Ableitung ∂x∂y transformiert werden. µ
∂2 ∂x∂y
¶
µ
¶ µ ¶ µ ¶ ·µ ¶ µ ¶ µ ¶ µ ¶¸ ∂ ∂ ∂ ∂ ∂ξ ∂ ∂η = = + ∂x ∂y ∂x ∂ξ ∂y ∂η ∂y µ ¶µ ¶ µ ¶µ 2 ¶ µ ¶µ ¶ µ ¶µ 2 ¶ 2 ∂ ∂ξ ∂ξ ∂ ∂ ∂η 2 ∂η ∂ = + + + (6.12) ∂ξ ∂x∂y ∂y ∂ξ∂x ∂η ∂x∂y ∂y ∂η∂x
F¨ uhrt man hierin (6.5) bzw. (6.6) ein, dann ergibt sich µ 2 ¶ µ ¶µ ¶ µ ¶µ ¶ µ 2 ¶µ ¶µ ¶ ∂ ∂ξ 2 ∂ ∂η 2 ∂ ∂ξ ∂ξ ∂ = + + + 2 ∂x∂y ∂ξ ∂x∂y ∂η ∂x∂y ∂ξ ∂x ∂y µ 2 ¶ µ ¶ µ ¶ µ 2 ¶ ·µ ¶ µ ¶ µ ¶ µ ¶¸ ∂ ∂η ∂ ∂η ∂ξ ∂ξ ∂η ∂η + + ∂η 2 ∂x ∂y ∂η∂ξ ∂x ∂y ∂x ∂y
(6.13)
Unangenehmerweise erh¨oht sich der Rechenaufwand durch die Transformation. Die transformierte Laplace Gleichung ∆Φ = 0 beispielsweise lautet im ξ − η System µ 2 ¶ µ ¶2 ¶ µ ¶ µ ¶ µ 2 ¶ µ ¶2 µ ¶µ 2¶ µ ∂Φ ∂η ∂ξ ∂Φ ∂ξ ∂ξ ∂Φ2 ∂η ∂Φ ∆Φ = + +2 + 2 2 ∂ξ ∂x ∂ξ∂η ∂x ∂x ∂η ∂x ∂ξ ∂x2 ¶ µ 2 ¶ µ 2 ¶ µ ¶2 ¶ µ ¶ µ ¶ µ ¶ µ µ ¶ µ ∂η ∂η ∂ξ ∂Φ2 ∂Φ ∂Φ ∂ξ ∂Φ2 ∂η 2 + + + +2 ∂η ∂x2 ∂ξ 2 ∂y ∂η∂ξ ∂y ∂y ∂η 2 ∂y ¶µ 2¶ µ ¶µ 2¶ µ ∂ξ ∂η ∂Φ ∂Φ + + = 0. (6.14) 2 ∂ξ ∂y ∂η ∂y 2 Die Umformung von (6.14) ergibt µ 2 ¶ "µ ¶2 µ ¶2 # µ 2 ¶ "µ ¶2 µ ¶2 # ∂Φ ∂ξ ∂ξ ∂Φ ∂η ∂η + + + + 2 2 ∂ξ ∂x ∂y ∂η ∂x ∂y µ ¶ ·µ ¶ µ ¶ µ ¶ µ ¶¸ µ ¶ ·µ 2 ¶ µ 2 ¶¸ ∂Φ2 ∂η ∂ξ ∂η ∂ξ ∂Φ ∂ξ ∂ξ 2 + + + + 2 ∂ξ∂η ∂x ∂x ∂y ∂y ∂ξ ∂x ∂y 2 µ ¶ ·µ 2 ¶ µ 2 ¶¸ ∂Φ ∂η ∂η + = 0. 2 ∂η ∂x ∂y 2
(6.15)
Die o.a. Beziehungen unterst¨ utzen die k¨ orperorientierte Diskretisierung eines urspr¨ unglich in kartesischen Koordinaten formulierten Differentialgleichungsproblems. Gleichung (6.1) bildet in einem ersten Schritt die bez¨ uglich der kartesischen Basis krummlinig verlaufenden Parameternetzlinien auf ein rechtwinkliges Rechengitter (mit einheitlichen Schrittweiten) in der ξ − η Ebene ab. Die ¨ darauf folgenden Gleichungen dienen zur Ubertragung der das Problem beschreibenden Differentialgleichungen in das neue Bezugssystem. Die transformierten Differentialgleichungen k¨ onnen nun beispielsweise durch finite Differenzen in der ξ−η Ebene diskretisiert werden. Danach bestimmt man die Werte der abh¨angigen Variablen an allen Gitterpunkten in der transformierten Ebene. Hierzu
98
Numerische Gittergenerierung
benutzt man einen geeigneten L¨osungsalgorithmus, in dem lediglich noch die im ξ − η System sehr nat¨ urlich gegebenen Randbedingungen zu ber¨ ucksichtigen sind. Das Ergebnis der Berechnung ist ¨ dann durch inverse Uberlegungen in das Ausgangssystem u ¨bertragbar. Die nun folgenden Abschnitte besch¨aftigen sich mit einzelnen Abbildungsstrategien der Form (6.1). Zun¨ achst wollen wir jedoch kurz auf die inverse Formulierung der Parameterdarstellung eingehen, die f¨ ur die Eindeutigkeit der Zuordnung zwischen ”physical” und ”computational domain” von Bedeutung ist. 6.1.1
Metrikkomponenten und Jakobideterminante
Bei der Transformation der partiellen Ableitung traten im vorangegangenen Abschnitt Faktoren der Art ξx , ξy , ηy usw. auf, die wir Metrikkomponenten der Transformation (x, y) → (ξ, η) nannten. Ihre geometrische Deutung ist naheliegend, sofern man n¨ aherungsweise µ ξx =
∂ξ ∂x
¶ =
∆ξ ∆x
setzt. Offensichtlich handelt es sich bei den Metrikkomponenten um eine vergleichende Gr¨ oße, die die Bogenl¨ange einander zugeordneter Abschnitte in Relation setzt. Tats¨achlich l¨aßt sich z.B. die Gr¨oße eines Fl¨ achenelements des Rechengebiets dA˜ = (dξ · dη) durch die Metrikkomponenten mit derjenigen des dazugeh¨ origen Elements dx × dy im Integrationsgebiet vergleichen. Von dx = folgt
∂ξ ∂x ∂η ∂x
dx,
dy =
∂ξ ∂y ∂η ∂y
dy
(6.16)
¯ ¯ ¯ ¯ ¯ ξx ξy ¯ ¯ ¯ dx dy dx × dy = ¯ ¯ ¯ ηx ηy ¯ → dA˜ = (ξx ηy − ηx ξy ) dA
(6.17)
oder aber f¨ ur den Fall der inversen Abbildung dA = (xξ yη − xη yξ ) dξ dη | {z } ˜ dA
H¨aufig findet man anstelle der Parameterdarstellung (6.1) die inverse Abbildungsvorschrift (x, y) ← (ξ, η) x = x(ξ, η) , y = y(ξ, η) ,
(6.18)
t = t(τ ) , deren unabh¨angige Variablen ξ, η, τ lauten. Betrachtet man z.B. die x-Komponente eines ebenen Geschwindigkeitsfeldes, so erh¨alt man wegen u = u(x, y, t) = u[x(ξ, η), y(ξ, η), t(τ )]
6.1 Koordinatentransformation
99
y xdA η η y y ξ ξ η x
ξ dA ~ η y y η η y x x ξ ξ x
x ξ
Abbildung 53: Veranschaulichung der Metrikkomponenten a) (ξ, η) → (x, y) Transformation, b) (x, y) → (ξ, η) Transformation
mit Hilfe des totalen Differentials µ
µ ¶ µ ¶ ¶ ∂u ∂u ∂u du = dx + dy + dt ∂x ∂y ∂t µ ¶ µ ¶µ ¶ µ ¶µ ¶ ∂u ∂u ∂x ∂u ∂y ⇒ = + ∂ξ ∂x ∂ξ ∂y ∂ξ µ ¶µ ¶ µ ¶µ ¶ µ ¶ ∂u ∂x ∂u ∂y ∂u = + . ∂η ∂x ∂η ∂y ∂η
(6.19)
Die Gleichungen (6.19) stellen ein gekoppeltes System von zwei Gleichungen f¨ ur die beiden unbekannten partiellen Ableitungen ∂u/∂x und ∂u/∂y dar. Die Aufl¨ osung dieses Systems unter Verwendung der Cramer’schen Regel ergibt: ¯ ¯ ¯ ¯ ¯ ∂u ∂y ¯ ¯ ∂x ∂u ¯ ¯ ∂ξ ∂ξ ¯ ¯ ∂ξ ∂ξ ¯ ¯ ¯ ¯ ¯ µ ¶ ¯¯ ∂u ∂y ¯¯ µ ¶ ¯¯ ∂x ∂u ¯¯ ∂u ∂u ∂η ∂η ∂η ∂η ¯ ; ¯ =¯ = ¯ (6.20) ¯ ¯ ¯ ∂x ∂y ∂y ∂y ¯ ∂x ¯ ∂x ¯ ¯ ¯ ¯ ∂ξ ∂ξ ¯ ¯ ∂ξ ∂ξ ¯ ¯ ∂x ∂y ¯ ¯ ∂x ∂y ¯ ¯ ∂η ∂η ¯ ¯ ∂η ∂η ¯ Die Nennerdeterminante der Beziehung (6.20) nennt man Determinante der Jakobimatrix ¯ ¯ ¯ ¯ ¯ xξ yξ ¯ ¯ ¯ J =¯ ¯ ¯ xη yη ¯ mit detJ = J =
∂(x, y) = (xξ yη − yξ xη ) , ∂(ξ, η)
(6.21)
(6.22)
so daß wir alternativ zu (6.20) auch ∂u ∂x ∂u ∂y
= =
·µ ¶ µ ¶ µ ¶ µ ¶¸ 1 ∂u ∂y ∂u ∂y − , J ∂ξ ∂η ∂η ∂ξ ·µ ¶ µ ¶ µ ¶ µ ¶¸ 1 ∂u ∂x ∂u ∂x − J ∂η ∂ξ ∂ξ ∂η
(6.23)
100
Numerische Gittergenerierung
verwenden k¨onnen. Die Ausdr¨ ucke (6.23) geben Aufschluß u ¨ber den Wert der partiellen Ableitungen nach den freien Parametern des kartesischen Systems in Abh¨ angigkeit der partiellen Ableitungen in der transformierten Ebene und inverser Metrikkomponenten xξ , xη , yξ etc. Der Fall J = 0 entzieht sich unserer Kenntnis. Es handelt sich dabei um eine nicht eindeutig umkehrbare Abbildung (x, y) → (ξ, η), f¨ ur die keine R¨ ucktransformation der Ergebnisse ins Ursprungssystem m¨ oglich ist. Schließt man derartig pathologische F¨alle einmal aus, so l¨ aßt sich leicht zeigen, auf welche Weise man die Metrikkomponenten aus einer gegebenen inversen Abbildung gewinnt. Die Abbildungen
dξ
=
dx
ξy
ηx ηy
dη
ξx
xξ xη yξ
dy
dy
=
dx
dξ
dη
yη
sind offensichtlich zueinander invers, woraus −1 ξx ξy xξ xη = ηx ηy yξ yη zu schließen ist. Die Invertierung einer 2×2 Matrix ist durch das einfache Schema A−1 = beschrieben, weshalb man 1 yη , J 1 ξy = − xη , J 1 ηx = − yξ , J 1 ηy = xξ , J
1 detA (adjA)
ξx =
(6.24)
findet. Die Bogenl¨ange ds eines differentiellen Linienelementes ds = (dx; dy) der Ausgangskonfiguration wird durch die Beziehung (ds)2 = dx2 + dy 2 bzw. mit x = x(ξ, η) sowie y = y(ξ, η) µ ¶2 µ ¶2 ∂x ∂x ∂y ∂y 2 ds = dξ + dη + dξ + dη ∂ξ ∂η ∂ξ ∂η = (x2ξ + yξ2 ) dξ 2 + 2 (xξ xη + yξ yη ) dξdη + (x2η + yη2 ) dη 2 | {z } | {z } | {z } 2
ds
g11 2
g12
= g11 dξ + 2g12 dξdη + g22 dη
g22 2
(6.25)
beschrieben. Die darin auftretenden Metrikkoeffizienten g11 = (x2ξ + yξ2 ) = rξ · rξ , g12 = (xξ xη + yξ yη ) = rξ · rη , g22 = (x2η + yη2 ) = rη · rη
(6.26)
6.1 Koordinatentransformation
101
nennt man auch die drei Gauß’schen Fundamentalgr¨ oßen erster Ordnung. Diese lassen sich zu einer ugen Matrix G zusammenf¨ g11 g12 , G= (6.27) g12 g22 deren Determinante durch detG = J 2
(6.28)
festgelegt ist.
η
y
y dη η
dη
ds dξ
y d ξ ξ
xd ξ ξ
ξ x
x dη η
Abbildung 54: Darstellung eines differentiellen Linienelements
Metrikterme wie Gauß’sche Fundamentalgr¨ oßen dienen insbesondere zur Beschreibung der Gestalt des k¨orperangepaßten Gitters in kartesischen Bezugssystem. Als erstes wollen wir in diesem Zusammenhang herausfinden, welcher Bedingung die Metrik im Falle orthogonaler Scharlinien (ξ, η) gen¨ ugen muß. Der ¨ortliche Verlauf einer Parameterlinie im (x − y) System wird durch den kartesischen Gradienten vektorwertig beschrieben. Die Orthogonalit¨ atsrelation lautet somit ∇ξ · ∇η ξx ηx + ξy ηy
=
|∇ξ| |∇η| cosϕξ,η = 0, £ 2 ¤ 1/2 = (ξx + ξy2 )(ηx2 + ηy2 ) cosϕξ,η = 0 .
(6.29)
Unter Ber¨ ucksichtigung von (6.24) erhalten wir eine a ¨quivalente Formulierung auf der Basis inverser Metrikkomponenten, £ ¤1/2 (xη xξ + yη yξ ) = − (x2η + yη2 )(x2ξ + yξ2 ) cosϕξ,η = 0 ,
(6.30)
aus der man die (lokale) Orthogonalit¨ atsbedingung (cosϕξ,η = 0) g12 = 0 ,
(6.31)
gewinnt. H¨aufig w¨ unscht man sich einen glatten Verlauf der Parameterlinien im kartesischen System. Die Parameterwerte d¨ urfen sich dann beim Fortschreiten in x bzw. y -Richtung nur geringf¨ ugig ¨andern. Ein geeigneter skalarer Richtwert ist durch die zu minimierende Beziehung (6.32) gegeben (∇ξ)2 + (∇η)2
(6.32)
→ ξx2 + ξy2 + ηx2 + ηy2 = min .
(6.33)
102
Numerische Gittergenerierung
Die Verwendung inverser Metrikkomponenten f¨ uhrt alternativ zu (6.33) auf 1 2 (x + yξ2 + x2η + yη2 ) = min J2 ξ
(6.34)
bzw.
1 (g11 + g22 ) = min . J2 Einheitliche Maschen- (bzw. Volumenzellen-) weiten enth¨ alt man aus q detG = J = konst .
(6.35)
(6.36)
Hierdurch wird eine gleichm¨aßige Genauigkeit im Feld gew¨ ahrleistet.
6.2
Derivativa des Rechengebiets
Die im vergangenen Abschnitt diskutierten Zusammenh¨ ange zwischen den Metrikkomponenten zweier, zueinander inverser Abbildungsvorschriften erm¨ oglichen die Darstellung der kartesischen Ableitungen im Rechengebiet als alleinige Funktion der inversen Abbildung (x, y) → (ξ, η). F¨ ur die ersten kartesischen Ableitungen wiederholen wir zun¨ achst von (6.3) ∂f ∂x ∂f ∂y
= fx = ξx fξ + ηx fη
(6.37)
= fy = ξy fξ + ηy fη .
Verwendet man anstelle der darin auftretenden Richtungsableitungen der neuen unabh¨ angigen Ver¨anderlichen (ξ, η) nach den urspr¨ unglichen Parametern (x, y) inverse Metrikkomponenten, so ergibt sich von (6.24) fx = J −1 [yη fξ − yξ fη ] fy = J
−1
(6.38)
[xξ fη − xη fξ ] .
Die Formulierung der zweiten kartesischen Ableitungen geschieht analog, z.B. f¨ ur µ ¶ ∂ ∂ ξx + ηx (ξx fξ + ηx fη ) ∂ξ ∂η ∂ ∂ = ξx (ξx fξ + ηx fη ) + ηx (ξx fξ + ηx fη ) ∂ξ ∂η 2 = ξx fξξ + ξx (ξx )ξ fξ + ξx ηx fηξ + ξx (ηx )ξ fη
∂2f ∂ (fx ) = = 2 ∂x ∂x
+ηx ξx fξη + ηx (ξx )η fξ + ηx2 fηη + ηx (ηx )η fη .
(6.39)
In einem ersten Schritt ersetzt man wiederum s¨ amtliche Metrikkomponenten durch die ¨ aquivalenten Ausdr¨ ucke auf der Basis inverser Metrikterme und erh¨ alt ∂2f ∂x2
= J −2 [yη2 fξξ + 2yξ yη fξη − yξ2 fηη ] +J −1 yη [fξ (ξx )ξ − fη (ηx )ξ ] −J −1 yξ [fξ (ξx )η − fη (ηx )η ] .
(6.40)
6.2 Derivativa des Rechengebiets
103
Analog bestimmen sich die beiden anderen zweiten kartesischen Ableitungen zu
∂2f ∂x∂y
= J −2 [fηξ (xη yξ + xξ yη ) − fξξ xη yη − fηη xξ yξ ] −J −1 xη [fξ (ξx )ξ + fη (ηx )ξ ] +J −1 xξ [fξ (ξx )η + fη (ηx )η ] .
∂2f ∂y 2
(6.41)
= J −2 [fξξ x2η − 2xξ xη fξη + fηη x2ξ ] −J −1 xη [fξ (ξy )ξ + fη (ηy )ξ ] +J −1 xξ [fξ (ξy )η + fη (ηy )η ] .
(6.42)
In diesen Ausdr¨ ucken treten zus¨atzlich noch Ableitungen der Metrikkomponenten auf. In Kenntnis der Funktionaldeterminante ergeben sich die Beziehungen
(ξx )ξ = (J
−1
· ¸ yη ∂ yη )ξ = ∂ξ xξ yη − xη yξ
= J −2 [yξη (xξ yη − xη yξ ) − yη (yη xξξ + xξ yξη − xη yξξ − yξ xξη )] (ηx )ξ = (−J
−1
· ¸ −yξ ∂ yξ )ξ = ∂ξ xξ yη − xη yξ
= −J −2 [yξξ (xξ yη − xη yξ ) − yξ (yη xξξ + xξ yξη − xη yξξ − yξ xξη )] (ξx )η = (J −1 yη )η =
· ¸ yη ∂ ∂η xξ yη − xη yξ
= J −2 [yηη (xξ yη − xη yξ ) − yη (xξ yηη + yη xξη − yξ xηη − xη yξη )] (ηx )η = (−J
−1
· ¸ −yξ ∂ yξ )η = ∂η xξ yη − xη yξ
= −J −2 [yξη (xξ yη − xη yξ ) − yξ (xξ yηη + yη xξη − yξ xηη − xη yξη )]
104
Numerische Gittergenerierung
(ξy )ξ = (−J
−1
· ¸ −xη ∂ xη )ξ = ∂ξ xξ yη − xη yξ
= −J −2 [xξη (xξ yη − xη yξ ) − xη (yη xξξ + xξ yξη − yξ xξη − xη yξξ )] (ηy )ξ = (J
−1
· ¸ xξ ∂ xξ )ξ = ∂ξ xξ yη − xη yξ
= J −2 [xξξ (xξ yη − xη yξ ) − xξ (yη xξξ + xξ yξη − yξ xξη − xη yξξ )] (ξy )η = (−J
−1
· ¸ −xη ∂ xη )η = ∂η xξ yη − xη yξ
= −J −2 [xηη (xξ yη − xη yξ ) − xη (yη xξη + xξ yηη − yξ xηη − xη yξη )] (ηy )η = (J
−1
· ¸ xξ ∂ xξ )η = ∂η xξ yη − xη yξ
= J −2 [xξη (xξ yη − xη yξ ) − xξ (yη xξη + xξ yηη − yξ xηη − xη yξη )] .
(6.43)
Aus den so gewonnenen Ausdr¨ ucken ∂2f ∂x2
= J −2 [yη2 fξξ − 2yξ yη fξη + yξ2 fηη ] +J −3 [(fξ xη − fη xξ )(yη2 yξξ − 2yη yξ yξη + yξ2 yηη )] +J −3 [(fη yξ − fξ yη )(yη2 xξξ − 2yη yξ xξη + yξ2 xηη )]
∂2f ∂y 2
(6.44)
= J −2 [x2η fξξ − 2xξ xη fξη + x2ξ fηη ] +J −3 [(fξ xη − fη xξ )(x2η yξξ − 2xη xξ yξη + x2ξ yηη )] +J −3 [(fη yξ − fξ yη )(x2η xξξ − 2xη xξ xξη + x2ξ xηη )]
(6.45)
erh¨alt man mit Hilfe der Metrikkoeffizienten (6.26) beispielsweise die Laplacegleichung im Rechengebiet
∆f
= J −2 [g22 fξξ − 2g12 fξη + g11 fηη ] +J −3 [(g22 yξξ − 2g12 yξη + g11 yηη )(xη fξ − xξ fη )] +J −3 [(g22 xξξ − 2g12 xξη + g11 xηη )(yξ fη − yη fξ )] . (6.46)
bzw. ∆f = J −2 [g22 fξξ − 2g12 fξη + g11 fηη + afη + bfξ ] ,
(6.47)
6.3 Grundklassen von Rechengittern
105
wobei a := J −1 (yξ α − xξ β) b := J −1 (xη β − yη α) α := g22 xξξ − 2g12 xξη + g11 xηη β := g22 yξξ − 2g12 yξη + g11 yηη .
6.3
(6.48)
Grundklassen von Rechengittern
Prinzipiell unterscheidet man zwei Klassen von Rechengittern. In der ersten Klasse, den strukturierten Gittern (Abb. 55), werden die Raumpunkte in direkter Weise auf die Elemente einer Matrix abgebildet (Abb. 56), so daß benachbarte Punkte im physikalischen Raum auch benachbarte Elemente in der Punktematrix sind. Der Vorteil dieser Anordnung liegt in der schnellen Implementierung und Abarbeitung auf einem Rechner und erlaubt die Benutzung von richtungsorientierten L¨osungsverfahren, wie z.B. das ADI–Verfahren oder das Linien–Gauß–Seidel–Verfahren usw...
Abbildung 55: Grundtypen strukturierter Gitter (von links nach rechts: C–Gitter, O–Gitter, H–Gitter)
Abbildung 56: Abbildung eines strukturierten Gitters vom physikalischen Gebiet auf eine Matrix
Demgegen¨ uber ben¨otigt ein unstrukturiertes Gitter (Abb. 57) das Mitf¨ uhren einer sog. ”connectivity matrix”, in der die Verbindung eines jeden Punktes zu seinen jeweiligen Nachbarpunkten explizit festgelegt wird. Der Vorteil der unstrukturierten Gitter liegt darin, daß einerseits komplexe
106
Numerische Gittergenerierung
Geometrien sehr leicht modelliert werden k¨ onnen und andererseits in Bereichen starker Gradienten der Approximationsfehler durch einfaches lokales Hinzuf¨ ugen von Punkten reduziert werden kann. Durch das Fehlen einer globalen Struktur und das damit verbundene st¨ andige Zugreifen auf die ”connectivity matrix” w¨ahrend des L¨osungsprozesses kann dieser jedoch erheblich verlangsamt werden, was wiederum zu h¨oheren Rechenzeiten f¨ uhrt.
1.00
Grid-Plot grid
0.60
0.20 y
-0.20
-0.60
-1.00 -0.50
-0.10
0.30
0.70
1.10
x
1.50 2/09/95 16:10:44
Abbildung 57: Unstrukturiertes Gitter und dessen ”connectivity matrix”
Eine Vorgehensweise, die mittlerweile weitestgehend etabliert ist, und die die Vorteile beider Gitternetztypen in sich vereinigt, ist die Multi–Block–Methode (das blockstrukturierte Gitter). Dabei wird zun¨achst eine komplexe Geometrie in angemessene Bl¨ ocke aufgeteilt, die untereinander durchaus unstrukturiert vorliegen k¨onnen (Abb. 58). Im Inneren eines jeden Blockes wird anschließend ein strukturiertes Gitternetz erzeugt. Eine andere M¨oglichkeit, komplexe Geometrien auf vergleichsweise einfache Art zu vernetzen, stellen u angige ¨ berlappende Gitter, sog. Chimera Gitter dar. Hier werden voneinander unabh¨ Teilgitter erstellt, die sich gegenseitig u ¨berlappen. Ein Beispiel ist in Abbildung 59 gezeigt. Insbesondere bei der Vernetzung von Mehrk¨orperproblemen bietet dieses Verfahren Vorteile, weil f¨ ur jeden Einzelk¨orper ein optimal angepaßtes Gitter aus einem oder mehreren Bl¨ ocken erstellt und diese dann mit Hilfe der Chimeratechnik verbunden werden k¨ onnen. ¨ Uberlappende Gitter sind einfach zu erzeugen, erfordern jedoch aufwendige Interpolationen im Verfahren zur L¨osung der str¨omungsmechanischen Grundgleichungen. Des weiteren stellt sich die Frage, inwiefern auf Grund der Interpolationen bei steilen Gradienten Genauigkeitsverluste auftreten. Wichtig ist in diesem Zusammenhang vor allem sicherzustellen, daß das Interpolationsverfahren
6.4 Anforderungen des numerischen Verfahrens an das Rechengitter
107
Abbildung 58: Blockstrukturiertes Gitter
¨ Abbildung 59: Uberlappendes Gitter (Chimera)
konservativ ist, d.h. globale Erhaltung von Masse, Energie, usw. auch im u ¨berlappenden Bereich sichergestellt ist.
6.4
Anforderungen des numerischen Verfahrens an das Rechengitter
Zur L¨osung eines gegebenen Problems k¨ onnen sehr unterschiedliche numerische Gitter erzeugt werden. Es stellt sich somit die Frage, welche Anforderungen an ein Gittergenerierungsverfahren zu stellen sind und wie die Qualit¨at eines erzeugten Gitters beurteilt werden kann. Die Anforderungen an ein Gittergenerierungsverfahren sind haupts¨ achlich durch die Eigenschaften des numerischen Verfahrens zur L¨osung der str¨ omungsmechanischen Grundgleichungen bedingt und k¨onnen wie folgt unterteilt werden: • Das generierte Gitter muß nicht–¨ uberschneidende Gitterlinien besitzen, d.h. durch das Verfahren muß eine eindeutige Abbildung zwischen der physikalischen Ebene und der Rechenebene gew¨ahrleistet sein. • Es sollte m¨oglich sein, Gitterpunkte und Gitterlinien in beliebig w¨ ahlbaren Bereichen zu konzentrieren, in denen steile Gradienten der L¨ osung der str¨ omungsmechanischen Grundgleichungen und damit große L¨osungsfehler erwartet werden.
108
Numerische Gittergenerierung
• Die Lage der Punkte auf der Berandung sollte vorgebbar sein, um eine m¨ oglichst genaue Wiedergabe der Geometrie zu gew¨ahrleisten. W¨ ahrend der Gittergenerierung sollten sich die Punkte entlang der Berandung m¨oglichst nicht verschieben. • Das generierte Gitter sollte glatt sein, um allzu große Fehler bei Interpolationen und Metrikberechnungen zu vermeiden. • Starke Gitterverzerrungen sollten vermieden werden, d.h. m¨ oglichst orthogonale Gitter sind w¨ unschenswert. • Die Schnittwinkel entlang der Berandung sollten vorgegeben werden k¨ onnen. Dadurch ist zum einen die Erzeugung randorthogonaler Gitter m¨ oglich, mit denen z.B. Wandgrenzschichten ¨ genau aufgel¨ost werden k¨onnen, und zum anderen kann ein glatter Ubergang beim blockstrukturierten Gitter erreicht werden. • W¨ unschenswert sind kurze Rechenzeiten bei der Gittergenerierung, um einerseits ein interaktives Arbeiten zu erm¨oglichen oder andererseits das Verfahren zur Generierung adaptiver Gitter einsetzen zu k¨onnen. • Es sollte m¨oglichst nur eine geringe Zahl von Spezifikationen notwendig sein, damit das Verfahren auch von weniger erfahrenen Anwendern eingesetzt werden kann. • Das Gittergenerierungsverfahren sollte auch bei dreidimensionalen Problemen eingesetzt werden k¨onnen.
Welcher der genannten Punkte als unbedingt erforderlich oder als w¨ unschenswert angesehen werden muß, h¨angt vom gestellten Problem ab. Zwingend ist sicherlich die erste Forderung; die in den weiteren Punkten genannten Anforderungen beeinflussen die Qualit¨ at des erzeugten Gitters. Ein optimales Gitter schon beim ersten Versuch zu generieren, ist im allgemeinen kaum m¨ oglich. Es ist somit notwendig, die Qualit¨at eines erzeugten Gitters zu pr¨ ufen, zum einen, um es eventuell zu verbessern und zum anderen, um das endg¨ ultig generierte Gitter zu beurteilen. Dies erfolgt meist optisch, indem das Gitter gezeichnet wird und vom Anwender hinsichtlich der Gitterverzerrung und –orthogonalit¨at, der Linien– und Punktkonzentration sowie der Glattheit des Gitters ¨ u uft wird. Solche Uberpr¨ ufungen sind auch numerisch m¨ oglich, erfordern jedoch umfangreiche ¨berpr¨ Berechnungen.
6.5
Mathematische Modellierung von Kurven und Fl¨ achen im Raum
Die genaue Darstellung der Rechengebietsberandung (bei blockstrukturierten Gittern zus¨ atzlich die Blockgrenze) ist die Voraussetzung f¨ ur die weiteren Arbeitsschritte der Gittergenerierung. Die Berandung des Rechengebietes besteht aus Kurven (2–D) oder Fl¨ achen (3–D), die im allgemeinen gekr¨ ummt sind. Die inneren Gitterpunkte k¨ onnen als Schnittpunkte von zwei Kurvenscharen oder von drei Fl¨achenscharen angesehen werden. Die Kontrolle solcher Kurven– oder Fl¨ achenscharen ist eine wichtige M¨oglichkeit zur Beeinflussung der Gitterpunkte. In diesem Kapitel werden die g¨angigen Methoden zur Darstellung von Kurven und Fl¨ achen im 3D–Raum und ihre Kontrollm¨oglichkeit dargestellt.
6.5 Mathematische Modellierung von Kurven und Fl¨ achen im Raum
109
Die Lagrangesche und Hermitesche Interpolation von Kurven Eine Kurve im physikalischen Raum ist in jedem Punkt durch den Ortsvektor x in der Parameterdarstellung x(τ ) definiert. Dabei ist τ der Kurvenparameter, der entlang der Kurve monoton ansteigt, und x ist durch die drei kartesischen Koordinaten xi des entsprechenden Kurvenpunktes bestimmt. Ein Einheitskreis in der Ebene (z = 0) kann z.B. wie folgt dargestellt werden: x = x(τ ) = cos τ ; y = y(τ ) = sin τ ; 0 < τ < 2π z = z(τ ) = 0 . Oft ist nur eine endliche Anzahl von Punkten x(τk ) f¨ ur diskrete Werte τk (k = 0, ..., n) des Kurvenparameters gegeben, und der Verlauf der Kurve zwischen diesen St¨ utzpunkten wird durch entsprechende Interpolationspolynome approximiert. Ist n + 1 die Anzahl der gegebenen Punkte, dann kann ein Polynom P L (τ ) vom Grade n konstruiert werden, das genau durch diese Punkte l¨ auft. Die allgemeine Form von P L (τ ) ist durch die Lagrangesche Interpolationsformel PL =
n X
Li (τ ) x(τi ) = x(τ )
(6.49)
i=0
gegeben, mit den Lagrange–Polynomen Li (τ ) =
n Y j=0(j6=i)
µ
τ − τj τi − τj
¶ .
(6.50)
Man realisiert leicht, daß Gleichung (6.49) f¨ ur τi = τ die gegebenen Punkte x(τi ) reproduziert. Eine alternative Methode zur Lagrangeschen Interpolation ist die Hermitesche Interpolation. In ihr wird zus¨atzlich zu den diskreten Kurvenpunkten auch die Steigung der Kurve in diesen Punkten vorgeschrieben. Die Steigung im Punkte x(τi ) ist ihrerseits durch die partielle Ableitung des Ortsvektors nach dem Kurvenparameter und damit durch x0 (τi ) bestimmt. Die allgemeine Form der Hermiteschen Interpolation lautet: PH =
n X
[ Hi (τ ) x(τi ) + Ki (τ ) x0 (τi ) ] = x(τ )
(6.51)
i=0
mit den Hermiteschen Polynomen Hi (τ ) = [ 1 − 2L0i (τi ) (τ − τi )] L2i (τ )
(6.52)
Ki (τ ) = (τ − τi ) L2i (τ ) Obwohl die Hermitesche Interpolation Vorteile aufweist, ist sie aufgrund ihrer Sensitivit¨ at ge¨ gen¨ uber leichten Anderungen in den Steigungswerten x0 (τi ) nur sehr schwierig zu handhaben. Der Hauptnachteil sowohl der Lagrangeschen als auch Hermiteschen Interpolation liegt letztlich darin, daß beide bei Verwendung mehrerer Punkte zu starken Oszillationen neigen (Abb. 60). Ein wichtiger Spezialfall, der in der algebraischen Gittergenerierung eine große Rolle spielt, folgt aus Gleichung (6.49) bzw. Gleichung (6.51) f¨ ur n = 1, d.h. wenn nur der linke und rechte Randpunkt
110
Numerische Gittergenerierung
Abbildung 60: Kurve, die nach Lagrange oder Hermite gem¨aß Gleichung (6.49) bzw. Gleichung (6.51) interpoliert ist; • vorgegebene Kurvenpunkte; ◦ interpolierte Kurvenpunkte; — oszillierender Verlauf der Interpolationskurve.
in die Interpolation eingehen. In diesem Fall k¨ onnen nat¨ urlich keine Oszillationen auftreten. Hier gilt allgemein: m = 0, 1 τ −τ1−m τm −τ1−m
∂Lm ∂τ
=
Hm = 3L2m − 2L3m
∂Hm ∂τ
=
Km = (τm − τ1−m )(L3m − L2m )
∂Km ∂τ
= 3L2m − 2Lm
Lm =
1 τm −τ1−m 6Lm (1−Lm ) τm −τ1−m
∂ 2 Lm ∂τ 2 ∂ 2 Hm ∂τ 2 ∂ 2 Km ∂τ 2
=
0
=
6(1−2Lm ) (τm −τ1−m )2 6Lm −2 τm −τ1−m
=
(6.53)
Unter der Annahme, daß τ0 = 0 und τ1 = 1 ist, folgt dann f¨ ur die Lagrangesche Interpolation P L = L0 (τ ) x0 + L1 (τ ) x1
(6.54)
mit : L0 (τ ) = 1 − τ und L1 (τ ) = τ . Gleichung (6.53) wird auch als Scherungstransformation bezeichnet. F¨ ur die Hermitesche Interpolation gilt analog P H = H0 (τ ) x0 + H1 (τ ) x1 + K0 (τ ) x00 + K1 (τ ) x01
(6.55)
mit : H0 (τ ) = (1 + 2τ )(τ − 1)2 ; K0 (τ ) = τ (τ − 1)2 und H1 (τ ) = (3 − 2τ )τ 2
; K1 (τ ) = τ 2 (τ − 1) .
In Abb. 61 sind die Verl¨aufe der Lagrangeschen bzw. Hermiteschen Polynome dargestellt. Das Interpolationspolynom kann als Einflußfaktor des einzelnen St¨ utzwertes auf den gesamten Funktionsverlauf interpretiert werden. Der Kurvenparameter τ kann seinerseits eine beliebige Funktion einer neuen Variablen ξ sein, wodurch entsprechend dem gew¨ahlten funktionalen Zusammenhang die Punkteverteilung auf der Interpolationskurve manipuliert werden kann. τ (ξ) wird deshalb auch als Verteilungs– oder Streckungsfunktion bezeichnet.
6.5 Mathematische Modellierung von Kurven und Fl¨ achen im Raum
111
Abbildung 61: Funktionsverl¨aufe der Lagrangeschen bzw. Hermiteschen Polynome f¨ ur zwei St¨ utzstellen
Die Splinefunktion und ihre Anwendung in der Kurveninterpolation Einerseits sind die Lagrangeschen und Hermiteschen Interpolationen wegen ihres oszillierenden Charakters nicht geeignet, Kurven durch mehrere St¨ utzpunkte zu interpolieren, andererseits f¨ uhrt ein einfacher Polygonzug als Kurveninterpolation schon bei der ersten Ableitung zur Unstetigkeit. Eine Abhilfe schafft hier die sogenannte ”Splinefunktion”, die auch in der Praxis vielfach angewendet werden. Sie ist ein Kompromiß zwischen Polygonzug und Interpolation mit Polynomen h¨ oherer Ordnung. Dabei wird das Interpolationspolynom intervallweise konstruiert und die Glattheit oder, mathematisch ausgedr¨ uckt, die stetige Differenzierbarkeit, an der Intervallgrenze verlangt. Kubische Splinefunktion Betrachtet wird zun¨achst eine Funktion f (τ ), die an den n St¨ utzstellen τi (i = 1, ..., n) durch die St¨ utzwerte fi = f (τi ) gegeben ist. Der Funktionsverlauf innerhalb der einzelnen Intervalle wird durch Polynome 3. Grades interpoliert: Pi (τ ) = fi + bi (τ − τi ) + ci (τ − τi )2 + di (τ − τi )3 ; τ ∈ [τi , τi+1 ] , i = 1, .., n − 1
(6.56)
Es wird verlangt, daß die Interpolationsfunktionen an der Intervallgrenze zweifach stetig differenzierbar sind: Pi (τi+1 ) = fi+1 , i = 1, .., n − 1 ; (6.57) 0 Pi0 (τi+1 ) = Pi+1 (τi+1 ) , 00 Pi00 (τi+1 ) = Pi+1 (τi+1 ) , i = 1, .., n − 2.
Die Bestimmung der Polynomkoeffizienten erfolgt nach den Gleichungen f¨ ur ci : c1 = f100 /2; cn = fn00 /2 hi−1 ci−1 + 2(hi−1 + hi )ci + hi ci+1 =
(6.58)
3(fi+1 − fi ) 3(fi − fi−1 ) − , i = 2, .., n − 1 . hi hi−1
mit hi = τi+1 − τi bi : bi =
fi+1 − fi hi (ci+1 + 2ci ) − ; i = 1, .., n − 1 . hi 3
(6.59)
112
Numerische Gittergenerierung
di : di =
ci+1 − ci ; i = 1, .., n − 1 . 3hi
(6.60)
Die Koeffizienten von Gleichung (6.58) bilden eine tridiagonale Matrix. Durch LU–Zerlegung oder Gauss–Elimination lassen sich die ci effizient berechnen. Danach folgt die Auswertung von bi , di nach den Formeln (6.59) und (6.60). Somit sind alle Koeffizienten des Interpolationssplines festgelegt. Eine alternative Methode mittels Hermitescher Interpolation Im letzten Abschnitt haben wir festgestellt, daß die Interpolation mit kubischen Splines, d.h. st¨ uckweise mit Polynomen 3. Grades, eine sehr glatte Kurve erzeugt. Erinnern wir uns, daß die intervallweise hermitesche Interpolation ebenso Polynome 3. Grades verwendet. Zus¨ atzlich verl¨ auft mindestens die 1. Ableitung an der Intervallgrenze stetig. Wenn nun die ersten Ableitungen fi0 an der St¨ utzstellen τi , i = 1, ..n so bestimmt werden, daß die 2. Ableitungen dort auch stetig sind, kommen wir zu gleichen Polynomen 3. Grades wie bei der Spline–Interpolation. Der Funktionsverlauf im Intervall τ ∈ [τi , τi+1 ] ist vorgegeben durch: 0 Pi (τ ) = H0i fi + H1i fi+1 + K0i fi0 + K1i fi+1
(6.61)
Es wird verlangt, daß die Interpolation f (τ ) = Pi (τ ); τ ∈ [τi , τi+1 ] zweimal stetig differenzierbar ist, d.h. 00 Pi−1 (τi ) = Pi00 (τi ) ; i = 2, .., n − 1 (6.62) oder 0 H000i−1 (τi )fi−1 + H100i−1 (τi )fi + K000i−1 (τi )fi−1 + K100i−1 (τi )fi0
(6.63)
0 = H000i (τi )fi + H100i (τi )fi+1 + K000i (τi )fi0 + K100i (τi )fi+1
Aus den Gleichungen (6.53) und (6.63) folgt nun die Bestimmungsgleichung f¨ ur fi0 : −
6(fi − fi−1 ) 2 0 4 0 6(fi+1 − fi ) 4 2 0 + fi−1 + fi = − fi0 − fi+1 2 2 hi−1 hi−1 hi hi hi−1 hi
oder nach fi0 sortiert: 2 hi−1
µ 0 fi−1
+
4 hi−1
4 + hi
¶ fi0 +
2 0 6(fi − fi−1 ) 6(fi+1 − fi ) + ; i = 2, .., n − 1 f = hi i+1 h2i−1 h2i
(6.64)
Das Gleichungssystem wird entweder durch die Vorgabe der 1. Ableitungen f10 , fn0 oder durch die Vorgabe der 2. Ableitungen f100 , fn00 an den Randpunkten mit der Beziehung: f100 =
fn00 = − geschlossen.
6(f2 − f1 ) 2(f20 + 2f10 ) − h1 h21
0 ) 6(fn − fn−1 ) 2(2fn0 + fn−1 + 2 hn−1 hn−1
(6.65)
6.5 Mathematische Modellierung von Kurven und Fl¨ achen im Raum
113
Parameter–Spline–Interpolation Die Kurve in einer Ebene kann mit der im vorigen Abschnitt beschriebenen Methode interpoliert werden, wenn wir die Funktion f durch y und die unabh¨ angige Variable τ durch x ersetzen. Diese Methode setzt leider den monotonen Anstieg von x voraus und kann z.B. eine geschlossene Kurve nicht interpolieren. Eine allgemeinere Methode, mit der man auch die Kurve im 3D–Raum interpolieren kann, ist die sogenannte ”Parameter–Spline–Interpolation”. Hier werden die Komponenten der Kurvenkoordinaten einzeln mit Splinefunktionen interpoliert. Der gewonnene Kurvenverlauf ist somit zweimal stetig nach dem Kurvenparameter τ differenzierbar, was eine gute Glattheit verspricht. Von der zu interpolierenden Kurve x(τ ) seien die Ortsvektoren xi an den n St¨ utzstellen τi (i = 1, .., n) gegeben. Dann gilt: x(τ ) = P i (τ ) = xi + bi (τ − τi ) + ci (τ − τi )2 + di (τ − τi )3 , τ ∈ [τi , τi+1 ] , i = 1, .., n − 1
(6.66)
Die Komponenten der Koeffizienten ci , bi , di werden nach den Formeln (6.58) bis (6.60) berechnet, utzwerte fi der Funktion indem man jeweils die Komponenten xi , yi , zi der St¨ utzpunkte xi als St¨ einsetzt. Als Kurvenparameter τi kann entweder der Laufindex, τi = i − 1 ,
(6.67)
τ1 = 0 ; τi = τi−1 + |xi − xi−1 | , i = 2, .., n
(6.68)
die resultierende Sekantenl¨ange
oder eine beliebige monoton steigende Funktion verwendet werden. atzlich als xn+1 = x(τn+1 ) definiert. F¨ ur eine geschlossene Kurve wird der Punkt x1 zus¨ Anstelle der Schließungsgleichung an den R¨ andern verlangen wir wiederum die zweimal stetige Differenzierbarkeit auch an dem Punkt x1 bzw. xn+1 : P n (τn+1 ) = P 1 (τ1 ) P 0n (τn+1 ) = P 01 (τ1 ) P 00n (τn+1 ) = P 001 (τ1 ) Statt der Gleichungen (6.58)–(6.60) gilt dann: ci : hn cn + 2(hn + h1 )c1 + h1 c2 = hi−1 ci−1 + 2(hi−1 + hi )ci + hi ci+1 =
3(x2 − x1 ) 3(x1 − xn ) − ; h1 hn
3(xi+1 − xi ) 3(xi − xi−1 ) − , i = 2, .., n − 1 ; hi hi−1
hn−1 cn−1 + 2(hn−1 + hn )cn + hn c1 = bi : bi =
(6.69)
3(x1 − xn ) 3(xn − xn−1 ) − . hn hn−1
xi+1 − xi hi (ci+1 + 2ci ) − , i = 1, .., n − 1 ; hi 3
(6.70)
114
Numerische Gittergenerierung
bn = di : di =
x1 − xn hn (c1 + 2cn ) − . hn 3
ci+1 − ci c − cn , i = 1, .., n − 1 ; dn = 1 . 3hi 3hn
(6.71)
Die Kurve wird dann aus den folgenden Segmenten zusammengesetzt: x(τ ) = P i (τ ) = xi + bi (τ − τi ) + ci (τ − τi )2 + di (τ − τi )3 , τ ∈ [τi , τi+1 ] , i = 1, .., n
(6.72)
Man kann hier auch die alternative Methode (vgl. vorherigen Abschnitt) einsetzen. Es wird dann die Ableitung des Ortsvektors x0i nach dem Kurvenparameter τ gesucht. x0 zeigt in die gleiche Richtung wie die Tangente der interpolierten Kurve. Analog zur Gleichung (6.64) bestimmt man x0i aus dem folgenden Gleichungssystem: µ ¶ 6(xi − xi−1 ) 6(xi+1 − xi ) 2 0 4 4 2 xi−1 + + x0i + x0i+1 = + ; i = 2, .., n − 1 (6.73) hi−1 hi−1 hi hi h2i−1 h2i mit der Schließungsbeziehung: x01 = x0 (τ = τ1 ) ; x0n = x0 (τ = τn ) oder
6(x2 − x1 ) 2(x02 + 2x01 ) − = x00 (τ = τ1 ) , h1 h21 −
6(xn − xn−1 ) 2(2x0n + x0n−1 ) + = x00 (τ = τn ) hn−1 h2n−1
oder f¨ ur eine geschlossene Kurve: µ ¶ 2 0 4 4 2 6(x1 − xn ) 6(x2 − x1 ) xn + + x01 + x02 = ; + hn hn h1 h1 h2n h21 µ
2 hn−1
x0n−1
+
4 hn−1
4 + hn
¶ x0n +
(6.74)
6(xn − xn−1 ) 6(x1 − xn ) 2 0 x1 = + . hn h2n h2n−1
Es ist zu beachten, daß hier 3 Gleichungssysteme zu l¨ osen sind. Der Kurvenverlauf der einzelnen Intervalle ergibt sich aus: x(τi < τ < τi+1 ) = P i (τ ) = H0i xi + H1i xi+1 + K0i x0i + K1i x0i+1
(6.75)
mit i = 1, .., n − 1 f¨ ur die offene und i = 1, .., n f¨ ur die geschlossene Kurve. Der kubische B´ ezier–Spline zur Approximation von Kurven Der kubische B´ezier–Spline verwendet Polynome 3. Grades und approximiert den Kurvenverlauf durch vier sogenannte ”B´ezier–Punkte” in jedem Intervall. Seien vier B´ezier–Punkte Bki (bki ; k = 0, 1, 2, 3) im Intervall i (τ ∈ [τi , τi+1 ]) gegeben, dann wird der Kurvenverlauf zwischen den Punkten B0i und B3i wie folgt approximiert: xi (τ ) = L30i b0i + 3L20i L1i b1i + 3L0i L21i b2i + L31i b3i ,
(6.76)
6.5 Mathematische Modellierung von Kurven und Fl¨ achen im Raum
115
Abbildung 62: B´ezier–Punkte und kubischer B´ezier–Spline
mit den Lagrangeschen Polynomen 1. Ordnung L0i , L1i : L0i =
τ − τi+1 τ − τi ; L1i = . τi − τi+1 τi+1 − τi
Das Resultat dieser Approximation ist, daß die Kurve durch die Punkte B0i (τ = τi ) und B3i (τ = τi+1 ) l¨auft und die Tangenten an den Stellen τ = τi bzw. τ = τi+1 in die gleiche Richtung wie B0i B1i bzw. B2i B3i zeigen. Das l¨aßt sich leicht durch die Bildung der 1. Ableitung der Kurve zeigen: x0i =
3L20i 3L21i 6L0i L1i (b1i − b0i ) + (b2i − b1i ) + (b − b2i ) ; mit hi = τi+1 − τi hi hi hi 3i
Daraus folgt: x0i (τ = τi ) =
(6.77)
3 3 (b1i − b0i ) ; x0i (τ = τi+1 ) = (b3i − b2i ) hi hi
Die 2. Ableitung lautet: x00i =
6L0i 6L1 (b2i − 2b1i + b0i ) + 2 i (b3i − 2b2i + b1i ) 2 hi hi
(6.78)
Verlangt wird hier, wie bei der kubischen Spline–Interpolation, daß die Kurve sowie ihre 1. und 2. Ableitung an den Intervallgrenzen (τ = τi ; i = 2, .., n − 1) stetig sind. Betrachten wir nun 2 Intervalle, i-1 und i: xi−1 (τi ) = xi (τi ) : b3i−1 = b0i x0i−1 (τi ) = x0i (τi ) : x00i−1 (τi ) = x00i (τi ) :
3(b3i−1 − b2i−1 ) hi−1
=
6(b3i−1 − 2b2i−1 + b1i−1 ) h2i−1
3(b1i − b0i ) hi
=
6(b2i − 2b1i + b0i ) h2i
Die 3 Bedingungen f¨ uhren auf folgende Gleichung: ¶ ¶ µ µ hi hi−1 + 1 (b2i−1 − b1i−1 ) = b2i − + 1 (b2i − b1i ) = v i , b1i−1 + hi−1 hi
(6.79)
116
Numerische Gittergenerierung
was nichts anderes bedeutet, als daß die Punkte B1i−1 , B2i−1 und B1i , B2i in einem bestimmten Verh¨altnis zum Schnittpunkt Vi (v i ) der Verl¨ angerungslinien von den Strecken B1i−1 B2i−1 und B2i B1i liegen m¨ ussen. Das Verh¨altnis h¨angt von der Wahl des Kurvenparameters τ ab. Bei der B´ezier-Spline-Approximation werden normalerweise die Schnittpunkte Vi (v i ; i = 1, .., n), die auch Gewichtspunkte genannt werden, vorgegeben. Daraus werden zun¨ achst die B´ezier–Punkte B1i , B2i nach der Beziehung (6.79): µ ¶ µ ¶ hi−1 hi+1 v i = b2i − + 1 (b2i − b1i ) ; v i+1 = b1i + + 1 (b2i − b1i ) hi hi bestimmt: b1i = v i + b2i = v i +
hi−1 (v − vi) hi−1 + hi + hi+1 i+1
(6.80)
hi−1 + hi (v − v i ) , i = 2, .., n − 2 . hi−1 + hi + hi+1 i+1
Bei der offenen Kurve werden die B´ezier–Punkte B0i=1 und B3i=n−1 mit den Gewichtspunkten V1 und Vn gleichgesetzt. Die Positionen von B1i=1 , B2i=1 und von B1i=n−1 , B2i=n−1 bestimmt man aus den Formeln (6.79) und der Vorgabe von x0 (τ1 ), x0 (τn ) oder x00 (τ1 ), x00 (τn ). Z.B. gilt f¨ ur x00 (τ1 ) = 0 00 (dies wird zusammen mit x (τn ) = 0 meistens f¨ ur eine offene Kurve eingesetzt): 6(b21 − 2b11 + v 1 ) =0 h21 µ ¶ h2 + + 1 (b21 − b11 ) = v 2 h1
x00 (τ1 ) = x001 (τ1 ) = b11 oder b11 = v 1 +
h1 2h1 (v − v 1 ) ; b21 = v 1 + (v − v 1 ) . 2h1 + h2 2 2h1 + h2 2
Hinweis: Wenn man in den Gleichungen (6.80) formal i = 1 und h0 = h1 einsetzt, ergeben sich die gleichen Formeln wie oben. Analog gilt es f¨ ur x00 (τn ) = 0 mit i = n − 1 und hn = hn−1 : b1n−1 = v n−1 +
hn−2 hn−2 + hn−1 (v n − v n−1 ) ; b2n−1 = v n−1 + (v − v n−1 ) hn−2 + 2hn−1 hn−2 + 2hn−1 n
F¨ ur eine geschlossene Kurve werden die B´ezier–Punkte in dem Intervall 1 (τ1 < τ < τ2 ) bzw. n (τn < τ < τn+1 ) genauso erzeugt wie in dem inneren Intervall, indem man in der Gleichungen (6.80) f¨ ur i = 1 h0 durch hn und f¨ ur i = n hn+1 durch h1 und v n+1 durch v 1 ersetzt: b11 = v 1 +
hn hn + h1 (v 2 − v 1 ) ; b21 = v 1 + (v − v 1 ) hn + h1 + h2 hn + h1 + h2 2
(6.81)
bzw. b1n = v n +
hn−1 hn−1 + hn (v − v n ) ; b2n = v n + (v − v n ) . hn−1 + hn + h1 1 hn−1 + hn + h1 1
Danach k¨onnen die Punkte B0i bzw. B3i−1 nach der Formel: 3(b0i − b2i−1 ) hi−1
=
3(b1i − b0i ) hi
(6.82)
6.5 Mathematische Modellierung von Kurven und Fl¨ achen im Raum
oder b0i = b3i−1 =
hi−1 b1i + hi b2i−1 hi−1 + hi
; i = 2, .., n − 1
117
(6.83)
berechnet werden. Bei einer geschlossenen Kurve gilt obige Gleichung zus¨ atzlich noch f¨ ur i = n: Die Positionen von B01 bzw. B3n werden mit der folgenden Formel bestimmt: b01 = b3n =
hn b11 + h1 b2n . hn + h1
Durch die Anwendung der B´ezier–Approximationsformel (6.76) in jedem Intervall (i = 1, .., n − 1 f¨ ur die offene und i = 1, .., n f¨ ur die geschlossene Kurve) entsteht schließlich eine zweimal stetig differenzierbare Kurve. Ihr Verlauf approximiert die exakte Kurve, die durch die Punkte Vi geht. Der Vorteil der B´ezier–Spline–Interpolation liegt zun¨ achst darin, daß aus den gegebenen Gewichtspunkten die B´ezier–Punkte f¨ ur jedes Intervall direkt bestimmt werden k¨ onnen, womit die gesamte ¨ Approximationskurve festgelegt ist. Außerdem beeinflußt die Anderung oder das Hinzuf¨ ugen von Gewichtspunkten nur wenige lokale Kurvensegmente. Die Erzeugung von Fl¨ achen im 3D–Raum Die parametrische Darstellung von Fl¨ achen wird gegeben durch x = x(ξ, η)
(6.84)
Man kann z.B. eine Einheitskugel wie folgt darstellen: x = cos(ξ) sin(η) y = sin(ξ) sin(η)
0 < ξ < 2π
z = cos(η)
0<η<π
Im allgemeinen Fall, insbesondere bei unregelm¨ aßigen Geometrien, werden nur diskrete Punkte vorgegeben. Der Verlauf der Fl¨achen im Raum muß daher interpoliert werden. Hier wird eine einfache Methode vorgestellt, die die Fl¨ achen zellenweise hermitesch interpoliert. Seien die diskreten Punkte xij = x(ξi , ηj ) (i = 1, .., I; j = 1, .., J) vorgegeben, dann wird der Verlauf der Fl¨ache in der Zelle ij (ξi < ξ < ξi+1 ; ηj < η < ηj+1 ) wie folgt interpoliert: x(ξi < ξ < ξi+1 , ηj < η < ηj+1 ) = P ij =
(6.85)
¶ 1 µ X ∂x ∂2x ∂x Hlmij xi+l,j+m + K1lmij + K2lmij + K12lmij ∂ξ i+l,j+m ∂η i+l,j+m ∂ξ∂η i+l,j+m
l,m=0
mit Hlmij (ξ, η) = Hli (ξ)Hmj (η) K1lmij (ξ, η) = Kli (ξ)Hmj (η) K2lmij (ξ, η) = Hli (ξ)Kmj (η) K12lmij (ξ, η) = Kli (ξ)Kmj (η) .
(6.86)
118
Numerische Gittergenerierung
Die zweimal stetige Differenzierbarkeit wird dadurch erreicht, daß man die Ableitungen des Ortsvektors ∂x ∂x ∂2x , und ∂ξ ij ∂η ij ∂ξ∂η ij nach folgender Prozedur bestimmt: 1. Schritt : F¨ ur j (j = 1, .., J) wird ∂x/∂ξ ij nach den Gleichungen (6.73)–(6.74) bestimmt. Dabei setzen wir den Kurvenparameter ξ anstelle von τ ein. 2. Schritt : F¨ ur i (i = 1, .., I) wird ∂x/∂η ij nach den Gleichungen (6.73)–(6.74) bestimmt. Dabei setzen wir den Kurvenparameter η anstelle von τ ein. 3. Schritt : F¨ ur j (j = 1 und J) wird ∂ 2 x/∂η∂ξ ij nach den Gleichungen (6.73)–(6.74) bestimmt. Hier wird nicht nur der Kurvenparameter τ durch ξ ersetzt, sondern auch x durch ∂x/∂η und x0 durch ∂ 2 x/∂η∂ξ . Dieser Schritt dient zur Erzeugung von Randwerten des n¨ achsten Schritts und wird nur bei Bedarf einbezogen. 4. Schritt : F¨ ur i (i = 1, ..I) wird ∂ 2 x/∂ξ∂η ij nach den Gleichungen (6.73)–(6.74) bestimmt. Hier wird der Kurvenparameter τ durch η , x durch ∂x/∂ξ und x0 durch ∂ 2 x/∂ξ∂η ersetzt. Die obige Prozedur mag auf den ersten Blick kompliziert erscheinen. Sie ist aber im Grunde nur eine wiederholte Anwendung der im Abschnitt 6.5 beschriebenen alternativen Methode bez¨ uglich beider Kurvenparameter. Es ist festzustellen (ohne Beweis), daß die so interpolierte Fl¨ ache auf allen Zellengrenzen (nicht nur an den vorgegebenen St¨ utzpunkten) zweimal stetig differenzierbar ist. Damit ist die Anforderung der zweimal stetigen Differenzierbarkeit in jedem Punkt der Fl¨ ache sichergestellt. Die selben Fl¨achen k¨onnen nat¨ urlich auch durch klassische Spline–Interpolation erzeugt werden, indem man folgenden kubischen Polynomansatz f¨ ur jede Zelle macht: P ij =
3 X
almij (ξ − ξi )l (η − ηj )m .
l,m=0
Die Berechnung der Koeffizienten almij erfolgt ebenso aus der Bedingung der zweifach stetigen Differenzierbarkeit. Außer dem un¨ ubersichtlichen Bestimmungsvorgang der Koeffizienten ist ein schwerwiegender Nachteil dieser Methode der 4-fach gr¨ oßere Speicherbedarf gegen¨ uber der zellenweisen Hermiteschen Interpolation. B´ ezier–Spline–Approximation von Fl¨ achen Die kubische 2D–B´ezier–Spline–Approximation st¨ utzt sich auf 16 Be´zier–Punkte Blmij (l, m = 0, 1, 2, 3) pro Zelle ij (ξi < ξ < ξi+1 , ηj < η < ηj+1 ): P i,j (ξ, η) = L30i (ξ)t0i,j + 3L20i (ξ)L1i (ξ)t1i,j + 3L0i (ξ)L21i (ξ)t2i,j + L31i (ξ)t3i,j
(6.87)
mit (m = 0 , 1 , 2 , 3) tli,j (η) = L30j (η)bl0i,j + 3L20j (η)L1j (η)bl1i,j + 3L0j (η)L21j (η)bl2i,j + L31j (η)bl3i,j . Die gesamte Fl¨ache wird dann zellenweise zusammengestellt: x(ξ, η) = P i,j (ξ, η) , ξ ∈ [ξi , ξi+1 ] , η ∈ [ηj , ηj+1 ] ; i = 1, .., I − 1 or I; j = 1, .., J − 1 orJ (6.88)
6.6 Die Punkteverteilung
119
Bei gegebenen Gewichtspunkten Vij (i = 1, .., I; j = 1, .., J) werden die B´ezierpunkte ohne n¨ ahere Beweisf¨ uhrung (das gleiche Prinzip wie im 1D–Fall) wie folgt berechnet: 1. Schritt: Bestimmung der B´ezier–Zwischenpunkte wie im Fall der 1D–B´ezier–Approximation in i– bzw. ξ–Richtung f¨ ur alle Linien η = ηj (j = 1, ..., J ; jeweils einzeln betrachtet): v i,j , ξi → bzli,j ; l = 0, 1, 2, 3; i = 1, .., I − 1 oder I . 2. Schritt: Die Zwischenpunkte bzli,j werden als Gewichtspunkte der 1D–B´ezier–Approximation in j– bzw. η–Richtung f¨ ur alle li –Linien ( l = 0,1,2,3; i=1,..,I-1 oder I; jeweils einzeln betrachtet) eingesetzt. Die erzeugten B´ezier–Punkte der 1D–Approximation sind gleichzeitig die gesuchten 2D–B´ezier–Punkte: bzli,j , ηj → blmi,j ; m = 0, 1, 2, 3; j = 1, .., J − 1 oder J . Das folgende Bild verdeutlicht den Bestimmungsprozeß:
Abbildung 63: Bestimmungsschritte der B´ezier–Punkte der 2D–Approximation.
6.6
Die Punkteverteilung
Sinn und Zweck der exakten Beschreibung von Kurven oder Fl¨ achen ist es, daß f¨ ur einen beliebig gew¨ahlten Kurven–/Fl¨achenparameter der Punkt exakt auf der festgelegten Kontur liegt. Die gew¨ahlten Punkte dienen als Randgitterpunkte und ihre Verteilung auf der Kontur hat deswegen großen Einfluß auf die Gestaltung des zu generierenden Gitters. 6.6.1
Verteilung auf einer Kurve
Mathematisch gesehen suchen wir eine geeignete Verteilung des Kurvenparameters τ (Gi ), i = 1, .., IG, so daß die entsprechende Punkteverteilung Gi auf der Kurve bestimmten Anforderungen, wie z.B. Verdichtung in bestimmten Bereichen, gen¨ ugt. Um bessere Kontrolle zu erlangen, basiert die Bestimmung der Verteilung meist auf der auf die St¨ utzpunkte bezogenen, normierten resultierenden Sekantenl¨ ange s. Es ist zun¨ achst die Abbildungsvorschrift zwischen dem L¨angenmaß s und dem Kurvenparameter τ zu bestimmen. Dabei
120
Numerische Gittergenerierung
wird die resultierende Sekantenl¨ange sli f¨ ur alle St¨ utzpunkte Si einer Kurve berechnet: sl1 = 0 ; sli = sli−1 + |xi − xi−1 | ; i = 2, .., m .
(6.89)
Es folgt dann die Normierung auf die gesamte L¨ ange: s(Si ) = sli /slm , i = 1, .., m .
(6.90)
Da jeder St¨ utzpunkt einen Wert des Kurvenparameters hat, kann die Beziehung von s und τ z.B. durch lineare Interpolation festgelegt werden. Die Bestimmung der Verteilungsfunktion s(Gi ) der Punkte geschieht unabh¨ angig davon nach den gestellten Anforderungen. Schließlich wird die Verteilungsfunktion s(Gi ) zur¨ uck auf den Kurvenparameter τ (Gi ) abgebildet und damit sind die zu verteilenden Punkte bestimmt.
Abbildung 64: s − τ (Si )− und s − Gi − Diagramm und die Abbildung von τ (Gi )
Die Verteilungsfunktion s(Gi ) muß nat¨ urlich eine monoton steigende Funktion sein. Ihre Steigung legt in etwa die auf das L¨angenmaß bezogene Schrittweite fest. Ihre 1. Ableitung sollte nach M¨oglichkeit stetig verlaufen. Ein Knick in der Verteilungsfunktion ¨ bedeutet eine unstetige Anderung in der Schrittweite. Die einfachste Verteilungsfunktion ist eine Gerade. Sie erzeugt eine beinahe ¨ aquidistante Punkteverteilung. Eine weitere h¨aufig verwendete Verteilungsfunktion ist die exponentielle Funktion (IG: Anzahl der zu verteilenden Punkte): s(Gi ) = (q i−1 − 1)/(q IG−1 − 1), i = 1, .., IG
(6.91)
Sie wird h¨aufig verwendet, um die Gitterpunkteverteilung zwischen dem k¨ orpernahen Bereich und dem Fernfeld zu bestimmen. Der Parameter q gibt das Verh¨ altnis zweier aufeinander folgender Punkteabst¨ande an. Eine a¨hnliche Funktion, die das Verh¨altnis der maximalen und der minimalen Punkteabst¨ ande festlegt, hat folgende Gestalt: · ¸ 1 −σ i − 1 s(Gi ) = − ln 1 − (1 − e ) (6.92) σ IG − 1 Das Verh¨altnis wird durch eσ bestimmt.
6.6 Die Punkteverteilung
121
Um in bestimmten Bereichen die Verteilung der Gitterpunkte zu verdichten, ist folgende Verteilungsfunktion geeignet: µ ¶ 1 1 + (eβ − 1)d i−1 sinh[β(η − A)] ; A= ln , η= (6.93) s(Gi ) = d 1 + −β sinh(βA) 2β 1 + (e − 1)d IG − 1 Mit der obigen Funktion wird die Punkteverteilung um s = d verdichtet. Die St¨ arke der Verdichtung bestimmt der Parameter β. Abbildung 65 zeigt den Verlauf dieser Funktion bei einigen unterschiedlich gew¨ahlten Parametern d und β .
s(Gi)
0.9
β=1. β=5. β=9. β=13.
β=1. β=5. β=9. β=13.
0.6
0.3
0.0 0.0
0.2
0.4
0.6
0.8
η
1.0 0.0
0.2
0.4
0.6
0.8
1.0
η
Abbildung 65: Die Verteilungsfunktion zur gezielten Verdichtung der Punkteverteilung, Parametervariation in Formel (6.93), links: d = 0.3, rechts: d = 0.5
Bei komplexen CFD-Problemen ist es meistens notwendig, mehrere Bereiche um den K¨ orper herum (Hinterkante, Nase, Verdichtungsstoß ...) mit dichterer Verteilung der Gitterpunkte zu versehen. Dies mit einer einzigen analytischen Funktion zu erreichen, ist mathematisch sehr aufwendig und auch nicht notwendig. Hier kann die Verteilungsfunktion intervallweise definiert werden. Um den Knick im Verlauf der gesamten Verteilungsfunktion zu vermeiden, k¨ onnen die im letzten Abschnitt beschriebene intervallweise Hermitesche Interpolation oder die B´ezier-Spline-Approximation herangezogen werden, da sie geeignet sind, um eine glatte Verteilungsfunktion zu generieren. Dabei kann jeder gew¨ unschte Bereich zun¨ achst durch Funktionswerte oder ihre Ableitungen, was dem Abstand zwischen den Punkten entspricht, fixiert werden. Die Verteilungsfunktion geht dann entweder aus der B´ezier-Spline-Approximation aller fixierten Funktionswerte oder intervallweiser Hermitescher Interpolation hervor. Wenn interaktive Arbeitsm¨oglichkeiten vorhanden sind, kann damit die gew¨ unschte Verteilungsfunktion sehr schnell generiert werden. 6.6.2
Punkteverteilung auf der Fl¨ ache
Die Verteilung von Punkten auf einer Fl¨ ache oder, mit anderen Worten, die Bestimmung der Fl¨achenparameter ξ(GIi , GJj ) und η(GIi , GJj ) (mit GIi und GJj bezeichnen wir die Laufindizes der zu verteilenden Punkte), wird meistens in zwei Arbeitsschritten durchgef¨ uhrt. Im ersten Schritt legt man eine Linienschar in einer Richtung fest. Dabei ist es notwendig, zun¨ achst die normierte resultierende Sekantenl¨ ange in einer der beiden Richtungen der Fl¨ achenparameter (o.
122
Numerische Gittergenerierung
Abbildung 66: Verteilungsfunktion mittels B´ezier-Spline oder Hermitescher Interpolation
B. d. A. s1 in ξ-Richtung) f¨ ur alle St¨ utzpunkte P (SIi , SJj0 ) entlang ausgew¨ ahlter SJj0 −Kurven zu berechnen (SIi , SJj : Laufindizes der St¨ utzpunkte; ausgew¨ ahlter Index mit ’): x(SIi , SJj0 ) => s1 (SIi , SJj0 ) => AB[s1 , ξ](SJj0 ) Damit steht die Abbildungsvorschrift von s1 und ξ auf solchen Kurven fest. Unabh¨angig davon generiert man die Verteilungsfunktion s1 (GIi , SJj0 ) f¨ ur die gew¨ ahlten SJj0 −Kurven nach vorgegebenen Anforderungen (z.B.: die Randkurven SJ1 und SJn ). Die entsprechende abgebildete Verteilung des Kurvenparameters ξ(GIi , SJj0 ) wird dann auf den gesamten η−Bereich interpoliert (hier ist eine glatte Interpolation notwendig). Damit stehen alle Kurven GIi mit dem Kurvenparameter ξ(GIi , η) fest. s1 (GIi , SJj0 ) mit AB[s1 , ξ](SJj0 ) => ξ(GIi , SJj0 ) => ξ(GIi , η)
Abbildung 67: Punkteverteilung auf Fl¨achen, erster Schritt
Im zweiten Schritt werden die Punkte auf den festgelegten GIi −Kurven verteilt. Hier ist zun¨achst die Berechnung der normierten resultierenden Sekantenl¨ ange s2 (SIi0 , SJj ) in 0 0 der η−Richtung f¨ ur bestimmte SIi −Kurven notwendig, damit die s2 (GIi , SJj ) f¨ ur die gew¨ ahl0 ten GIi −Kurven daraus linear interpoliert werden k¨ onnen. Die Abbildungsvorschriften von s2 und η der GIi0 −Kurven werden wiederum durch lineare Interpolation bestimmt. x(SIi0 , SJj ) => s2 (SIi0 , SJj ) => s2 (GIi0 , SJj ) => AB[s2 , η](GIi0 )
6.7 Das strukturierte Gitter
123
ur die Genauso wie beim ersten Schritt wird parallel dazu die Verteilungsfunktion s2 (GIi0 , GJj ) f¨ gew¨ahlten GIi0 −Kurven nach den vorgegebenen Anforderungen generiert und der entsprechende Kurvenparameter η(GIi0 , GJj ) durch lineare Abbildung gewonnen. Im n¨ achsten Schritt wird dann η(GIi0 , GJj ) auf den gesamten GIi -Bereich interpoliert. s2 (GIi0 , GJj ) mit AB[s2 , η](GIi0 ) => η(GIi0 , GJj ) => η(GIi , GJj ) Den Kurvenparameter ξ(GIi , GJj ) kann schließlich aus der Interpolationsgleichung ξ(GIi , η) mit η = η(GIi , GJj ) bestimmt werden.
Abbildung 68: Punkteverteilung auf Fl¨achen, zweiter Schritt
Damit sind die Fl¨achenparameter ξ(GIi , GJj ) und η(GIi , GJj ) festgelegt und die Ortsvektoren der verteilten Punkte k¨onnen berechnet werden.
6.7
Das strukturierte Gitter
Finite–Differenzen–, Finite–Volumen– und Finite–Elemente–Methoden ben¨ otigen im Gegensatz zu Spektralverfahren eine endliche Anzahl diskreter Punkte oder Zellen, die das Rechengebiet ausf¨ ullen und auf denen die zu l¨osenden Differentialgleichungen approximiert werden. Die Effizienz einer Rechnung wird maßgeblich von der Organisation und den Datenstrukturen der Punkteverteilung bestimmt. In diesem Abschnitt werden strukturierte Anordnungen unter Einf¨ uhrung von krummlinigen Koordinatensystemen betrachtet. Dabei wird stets vorausgesetzt, daß ¨ außere Berandungen des physikalischen Gebietes mit einer Koordinatenlinie (2-D Fall) oder einer Koordinatenfl¨ ache (3-D Fall) zu identifizieren sind. Die Bestimmung eines k¨orperorientierten, krummlinigen Koordinatensystems, auf dem ein strukturierter Satz von diskreten Punkten etabliert wird, reduziert sich schließlich auf das Problem, Transformationsbeziehung x(ξi ) zu finden, die die kartesischen Koordinaten x der Gitterpunkte im physikalischen Raum in Abh¨angigkeit der krummlinigen Koordinaten ξi darstellen (vergleiche Kapitel 6.1). Dazu unterscheidet man im wesentlichen algebraische Methoden, die das Netz im Gebietsinneren durch Interpolation zwischen den Randpunkten erstellen (Kapitel 6.7.2), und Methoden, die auf der L¨osung elliptischer, parabolischer oder hyperbolischer Differentialgleichungssysteme basieren (Kapitel 6.8). Eine interessante Alternative zu den elliptischen Gittergenerierungsmethoden stellen Differentialgleichungssysteme dar, die aus der Formulierung geometrisch motivierter Variationsprinzipien resultieren. Die Methode der konformen Abbildung beispielsweise hat in der Geschichte der Str¨omungsmechanik eine bedeutende Rolle gespielt, ist heute jedoch im Zuge der numerischen L¨osung der str¨omungsmechanischen Probleme weitgehend in den Hintergrund getreten und wird haupts¨achlich noch zur Netzgenerierung um ebene Tragfl¨ ugelprofile eingesetzt.
124
Numerische Gittergenerierung
Bei komplexeren Geometrien ist es meist erforderlich, daß das Berechnungsgebiet in verschiedene Bereiche aufgeteilt wird, innerhalb derer das numerische Gitter generiert wird. Die einzelnen Bereich haben eine geometrisch einfachere Berandung und somit ist auch in diesen die Gittergenerierung leichter. Derart generierte numerische Netze werden als blockstrukturiert bezeichnet. 6.7.1
”Computational domain” und ”physical domain” der Grundgittertypen
Nach den Berandungen der strukturierten 2–D–Gitter im physikalischen Raum (”physical domain”) unterscheidet man drei grundlegende Gittertypen: H–, C– und O–Typ. Beispiele sind in Abbildung 55 dargestellt.
H−Gitter 3
O−Gitter
C−Gitter
4 2 1
1
4 3
3
4
2
1
2
Abbildung 69: Grundgittertypen: H–, C– und O–Gitter
Bei den O–Gittern sind die Berandungslinien geschlossen, bei den C–Gittern halb–offen und bei den H–Gittern werden sie durch offene Linien gebildet. Die Frage, welcher der Gittertypen gew¨ ahlt wird, muß in Verbindung mit dem gestellten Str¨omungsproblem sowie dem L¨ osungsverfahren beantwortet werden. O-Gitter sind ausgezeichnet geeignet, um die Grenzschicht an einem umstr¨ omten K¨ orper aufzul¨osen. Es ist jedoch schwierig, konsistent die Randbedingungen am ¨ außeren Rand einzubringen, da entlang einer geschlossenen Gitterlinie sowohl Eintritts– als auch Austrittsrandbedingungen vorgegeben werden m¨ ussen. C–Gitter sind ideal f¨ ur Tragfl¨ ugel oder andere tropfenf¨ ormige K¨ orper, die eine stumpfe Vorder– und eine spitze Hinterkante besitzen. Die Problematik der Vorgabe der Außenrandbedingungen ist ¨ahnlich wie beim O–Gitter, jedoch liegt f¨ ur den Austrittsrand eine eigene Linie vor. H-Gitter sind besonders geeignet zur Berechnung von Durchstr¨ omungen. F¨ ur die Berechnung der Umstr¨omung stumpfer K¨orper sind sie wegen der Bildung der K¨ orperkontur durch die offenen Linien nicht sehr geeignet. Die Geometrien der Grundgitter in dem ξi −Koordinatensystem (”computational domain”) stellen zun¨achst rechteckige Netzwerke dar. Die drei Grundgittertypen werden durch keine oder bestimmte zus¨atzliche Verkn¨ upfung von Gitterpunkten unterschieden. W¨ ahrend das H–Gitter ohne jegliche zus¨atzliche Verkn¨ upfung auskommt, wird bei den C–Gittern eine Anzahl von Gitterpunkten der gleichen logischen Gitterlinie gleichgesetzt und bei den O– Gittern die Randlinien in einer Richtung verbunden. 6.7.2
Algebraische Gittergenerierung mit der Transfiniten Interpolation
Die Methoden der algebraischen Gittergenerierung vermitteln einen direkten funktionalen Zusammenhang zwischen den Punkten x des physikalischen Gebiets, gekennzeichnet durch die kartesischen Koordinaten xi , und den jeweils zugeordneten Punkten im Rechengebiet, die durch die Koordinaten ξi gegeben sind. Bei der Klasse von algebraischen Methoden, die weitestgehende Kontrolle u ¨ber das
6.7 Das strukturierte Gitter
H−Gitter 3
1
125
O−Gitter
C−Gitter
4
3
4
1
2
1
2
3
4
2
Abbildung 70: ”computational domain” der H–, C– und O–Gitter
Gitter erlauben, handelt es sich um Methoden, die auf Interpolationspolynomen basieren, die im letzten Kapitel ausf¨ uhrlich behandelt wurden. Wir betrachten zun¨achst eine gekr¨ ummte Fl¨ ache im physikalischen Raum, die von vier Randkurven begrenzt wird. Auf den Randkurven sei jeweils die gleiche Anzahl von Randgitterpunkten in beiden Richtungen verteilt. W¨ahrend eine Kurve durch einen einzigen Parameter beschrieben wird, ben¨otigt die vollst¨andige Beschreibung einer Fl¨ ache die Darstellung in zwei unabh¨ angigen Parametern ξ und η. D.h., die Fl¨ache wird von zwei unabh¨ angigen Scharen von Koordinatenlinien aufgespannt, entlang denen jeweils der Wert eines Parameters variiert, w¨ ahrend der andere Parameter konstant ist. Den Verlauf dieser Koordinatenlinien zu finden, ist Gegenstand der zweidimensionalen Interpolation.
Abbildung 71: Parameterdarstellung einer gekr¨ ummten Fl¨ache im physikalischen Raum
Die Koordinaten ξ und η werden hier mit den Laufindizes der Randgitterpunkte i und j definiert: ξi = (i − 1)/(IG − 1) ; ηj = (j − 1)/(JG − 1) Die Koordinaten der Randgitterpunkte sind dann gegeben durch: x(0, ηj ); x(1, ηj ) und x(ξi , 0); x(ξi , 1) . Scherungstransformation Unter Scherungstransformation verstehen wir die Lagrangesche Interpolation durch zwei St¨ utzstellen. Zwischen jeweils zwei Randpunkten werden zwei Scherungstransformationen in der ξ− und η−Parameter– bzw. Koordinatenrichtung definiert.
126
Numerische Gittergenerierung
A(ξ, η) = L0 (ξ)x(0, η) + L1 (ξ)x(1, η)
(6.94)
B(ξ, η) = L0 (η)x(ξ, 0) + L1 (η)x(ξ, 1) ξ und η spannen im Parameterraum die Einheitsfl¨ ache auf, d.h. ξ ∈ [0, 1] und η ∈ [0, 1]. Der Verlauf der Koordinatenlinien ist in Abbildung 72 dargestellt.
Abbildung 72: Verlauf der Koordinatenlinien aus der Scherungs–Transformation
Man erkennt, daß keine der Transformationen aus der Gleichung (6.94) in der Lage ist, alle vier Randkurven zu reproduzieren. Vielmehr erzeugen beide einen geraden Koordinatenlinienverlauf jeweils an den R¨andern, deren Randkurven sie nicht erfassen k¨ onnen. Die Ursache hierf¨ ur liegt in aß ihrer Konstruktion unabh¨ angig der Tatsache, daß die Transformationen A(ξ, η) und B(ξ, η) gem¨ voneinander sind und nur in den vier Eckpunkten der Fl¨ ache f¨ ur gleiche Parameterwerte das gleiche Ergebnis liefern. Tensor–Produkt–Transformation Eine Transformation, die in gewissem Sinne die beiden Gleichungen in (6.94) miteinander kombiniert, ist die Tensor–Produkt–Transformation T (ξ, η). Sie ist die sukzessive Anwendung der Scherungstransformation B(ξ, η) auf das Ergebnis der Transformation A(ξ, η); d.h., x(ξ, 0) und x(ξ, 1) werden ersetzt durch A(ξ, 0) und A(ξ, 1). T (ξ, η) := (BA)(ξ, η)
(6.95)
= L0 (η)A(ξ, 0) + L1 (η)A(ξ, 1) = L0 (η)[L0 (ξ)x(0, 0) + L1 (ξ)x(1, 0)] + L1 (η)[L0 (ξ)x(0, 1) + L1 (ξ)x(1, 1)] = L0 (ξ)L0 (η)x(0, 0) + L0 (ξ)L1 (η)x(0, 1) + L1 (ξ)L0 (η)x(1, 0) + L1 (ξ)L1 (η)x(1, 1) Man kann sich leicht davon u ¨berzeugen, daß die umgekehrte Transformation T (ξ, η) := (AB)(ξ, η) zum gleichen Ergebnis f¨ uhrt. Gleichung (6.95) stellt eine bilineare Transformation zwischen den vier Eckpunkten x(0, 0), x(1, 0), x(0, 1) und x(1, 1) dar. Wie Abbildung 73 zeigt, verlaufen die beiden Koordinatenlinienscharen ξ = const. und η = const. geradlinig. Transfinite Interpolation Hier werden die beiden Scherungstransformationen und die Tensor–Produkt–Transformation derart kombiniert, daß durch die resultierende Beziehung ein strukturiertes Netz auf der betrachteten Fl¨ache unter der Bedingung erzeugt wird, daß die Randkurven exakt erfaßt werden (Abb. 71).
6.7 Das strukturierte Gitter
127
Abbildung 73: Bilineare Tensor–Produkt–Transformation zwischen den Eckpunkten
Die Vektorsumme A+B der Gleichung ( 6.94) enth¨ alt sowohl alle vier vorgegebenen Randkurven als auch die Verbindungsgeraden zwischen den jeweils benachbarten Eckpunkten der Fl¨ achen, wie eine Auswertung von A+B f¨ ur die Randparameterwerte ξ = 0, 1 und η = 0, 1 zeigt. Dies macht auch eine Betrachtung von Abbildung 72 deutlich. Andererseits erzeugt die Tensor–Produkt–Transformation T der Gleichung (6.95), wie gesehen, ebenfalls geradlinige Koordinatenverl¨ aufe, also auch an den vier R¨andern. Es liegt deshalb nahe, T von A + B zu subtrahieren und auf diese Weise eine neue Transformation P zu konstruieren. P (ξ, η) = A(ξ, η) + B(ξ, η) − T (ξ, η)
(6.96)
ur alle Parameterwerte ξ und η auf der Fl¨ ache, In der Tat liegt der durch P erzeugte Punkt f¨ die durch die Randkurven aufgespannt wird. Da Gleichung (6.96) eine Interpolation zwischen der geschlossenen Randkurve darstellt, wobei die Randkurve als kontinuierliche Funktion eine unendliche Anzahl von Punkten enth¨alt, wird die Transformation P auch als Transfinite Interpolation bezeichnet. Damit wird die M¨oglichkeit der Einbeziehung unendlich vieler Punkte in die Interpolation zum Ausdruck gebracht, im Gegensatz zu lediglich vier Eckpunkten bei der bilinearen Tensor–Produkt–Transformation. Abschließend sei noch bemerkt, daß der Transfiniten Interpolation statt der Scherungstransformation aus der Lagrange–Interpolation (6.94) auch die Hermitesche Interpolation zugrunde gelegt werden kann. Die Benutzung der Hermiteschen Interpolation ist insbesondere dann von Interesse, wenn Randorthogonalit¨at eine wichtige Rolle spielt. Wie schon dargestellt, ist die Ableitung des Kurvenpunktes nach dem Parameter ein Vektor tangential zur Kurve. Randorthogonalit¨ at bedeutet nun, daß dieser Vektor dem Normalenvektor n auf der Berandungskurve entspricht. Wird der Tangentialvektor t an die Randkurve aus deren gegebener Punkteverteilung berechnet, dann folgt der Normalenvektor n aus der Beziehung n · t = 0. Modifikation der Scherungstransformation Die einfache Scherungstransformation (6.94) bzw. die darauf basierende Transfinite Interpolation ¨ (6.96) kann zu sehr ung¨ unstigen Gitterpunkteverteilungen oder sogar zu Uberschneidungen von Gitterlinien f¨ uhren. In solchen F¨allen kann eine Modifikation der Scherungstransformation Abhilfe schaffen. Dabei werden die linearen Interpolationsfunktionen L0 und L1 in der Scherungstransformation durch andere Funktionen F0 und F1 ersetzt. Dabei soll beachtet werden, daß die Summe von F0 und F1 eins ergibt und die Funktion selbst monoton zwischen 0 und 1 verl¨ auft. Eine M¨oglichkeit ist es, ohne Einschr¨ ankung der Allgemeing¨ ultigkeit L(ξ) durch H(ξ) in der Gleichung (6.94) A(ξ, η) = H0 (ξ)x(0, η) + H1 (ξ)x(1, η)
128
Numerische Gittergenerierung
zu ersetzen. Das f¨ uhrt zur dichteren Verteilung der Gitterpunkte im randnahen Bereich. Eine weitere Vorgehensweise ist in den folgenden Gleichungen gegeben (als Beispiel die Scherungstransformation in der ξ−Richtung): F0 (ξ) = L0 (ξ)α ; F1 (ξ) = 1 − L0 (ξ)α
(6.97)
F0 (ξ) = 1 − L1 (ξ)α ; F1 (ξ) = L1 (ξ)α
(6.98)
oder Dabei sollte F1 (ξ) etwa die Verteilungsfunktion an den Randkurven x(ξ, 0) und x(ξ, 1) wiedergeben.
Abbildung 74: Modifizierte Scherungstransformation und die Verteilung der Randgitterpunkte
Von dieser Idee ausgehend, k¨onnen wir folgende Scherungstransformation konstruieren: A(ξ, η) = F a0 (ξ, η)x(0, η) + F a1 (ξ, η)x(1, η)
(6.99)
mit F a0 (ξ, η) = L0 (η)[1 − sls (ξ)] + L1 (η)[1 − sln (ξ)] F a1 (ξ, η) = 1 − F a0 (ξ, η) = L0 (η)sls (ξ) + L1 (η)sln (ξ) . Es kann leicht festgestellt werden, daß A(ξ, 0) der Randpunkteverteilung des S¨ udrands und A(ξ, 1) der des Nordrands entspricht. A(ξ, 0) = [1 − sls (ξ)]x(0, 0) + sls (ξ)x(1, 0) = x(0, 0) + sls (ξ)[x(1, 0) − x(0, 0)] A(ξ, 1) = [1 − sln (ξ)]x(0, 1) + sln (ξ)x(1, 1) = x(0, 1) + sln (ξ)[x(1, 1) − x(0, 1)] Analog f¨ ur die Scherungstransformation in der η−Richtung: B(ξ, η) = F b0 (ξ, η)x(ξ, 0) + F b1 (ξ, η)x(ξ, 1)
(6.100)
mit F b0 (ξ, η) = L0 (ξ)[1 − slw (η)] + L1 (ξ)[1 − sle (η)] F b1 (ξ, η) = 1 − F b0 (ξ, η) = L0 (ξ)slw (η) + L1 (ξ)sle (η) . Anstelle der Tensor–Produkt–Transformation (BA)(ξ, η) kann folgende Transformation verwendet werden: T (ξ, η) =
F a0 (ξ, η)F b0 (ξ, η)x(0, 0) + F a1 (ξ, η)F b0 (ξ, η)x(1, 0) +F a0 (ξ, η)F b1 (ξ, η)x(0, 1) + F a1 (ξ, η)F b1 (ξ, η)x(1, 1)
(6.101)
6.7 Das strukturierte Gitter
129
Die Transfinite Interpolation setzt sich dann zusammen aus: P (ξ, η) = A(ξ, η) + B(ξ, η) − T (ξ, η) Interpolation der Gitterpunkte beim O– und C–Gitter Die in den letzten Abschnitten dargestellte Methode der Transfiniten Interpolation eignet sich sehr gut f¨ ur die Gittergenerierung von H–Gittern. F¨ ur die O– und C–Gitter ist die Methode ungeeignet. Bei den O–Gittern sind nur zwei Randkurven, die K¨ orperkontur (η = 0) und der ¨ außere Rand (η = 1), gegeben. Wenn die Transfinite Interpolation verwendet werden soll, m¨ ussen die ben¨ otigten beiden anderen Randkurven (ξ = 0, ξ = 1) k¨ unstlich erzeugt werden. Die Methode f¨ uhrt nicht unbedingt zum erw¨ unschten Ergebnis. Eine bessere Vorgehensweise ist es, die inneren Gitterpunkte linienweise zu erzeugen. Die denkbar einfachste M¨oglichkeit w¨are es, die Gitterpunkte nach einer vorgegebenen Verteilungsfunktion f (η) auf Verbindungsgeraden zwischen den Randgitterpunkten der K¨ orperkontur und des ¨außeren Randes zu plazieren: x(ξi , ηj ) = [1 − f (ηj )]x(ξi , 0) + f (ηj )x(ξi , 1) (6.102)
Abbildung 75: O–Gittergenerierung
Die Verbindungsgeraden k¨onnen nat¨ urlich durch gekr¨ ummte Kurven ersetzt werden, um bestimmte Eigenschaften (z.B. Orthogonalit¨at an den R¨ andern) zu erm¨ oglichen. Es seien z.B. die normalen onnen die inneren Gitterpunkte wie folgt Richtungen ni (ξi ), na (ξi ) an den R¨andern gegeben. Dann k¨ verteilt werden: x(ξi , ηj ) =
H0 [f (ηj )]x(ξi , 0) + H1 [f (ηj )]x(ξi , 1)
(6.103)
+K0 [f (ηj )]n(ξi , 0) + K1 [f (ηj )]n(ξi , 1) Dabei kann durch geschickte Steuerung des Betrags des Normalenvektors die Gefahr der Gitterlinien¨ uberschneidung weitestgehend vermieden werden. Hier ist die Berechnung des Normalenvektors f¨ ur alle Randgitterpunkte nicht notwendig. Es m¨ ussen nur an den signifikanten Stellen die Normalenvektoren vorgegeben werden. Die restlichen Richtungsvektoren der Randpunkte und ihre Betr¨ age k¨ onnen daraus interpoliert werden. Die Vorgehensweise bei den C–Gittern ist ¨ ahnlich wie bei den O–Gittern. Dabei wird durch die spitze Hinterkante der K¨orperkontur das Rechengebiet zweigeteilt (Abb. 76). Im vorderen Teil gehen wir genauso vor wie beim O-Gitter. Im hinteren Teil, wo sich der Nachlauf einer K¨ orperumstr¨ omung befindet, wird meistens verlangt, daß die Gitterlinien an der Schnittstelle zwischen dem oberen und unteren Gitterteil glatt verlaufen. Dies ist am besten zu verwirklichen, wenn man die Hermitesche Interpolation verwendet.
130
Numerische Gittergenerierung
Abbildung 76: C–Gittergenerierung
Transfinite Interpolation bei 3D–Gittern Bei der Erweiterung der zweidimensionalen Interpolation auf den 3D-Fall werden drei oberfl¨ achenkonforme, krummlinige Koordinaten ξi ; i = 1, 2, 3 definiert. Dies bedeutet, daß jede Oberfl¨ ache identisch ist mit einer Koordinatenfl¨ache, die ihrerseits durch zwei Koordinatenlinienscharen aufgespannt wird und auf der die jeweils dritte Koordinate konstant ist (Abb. 77). Die konsequente Konstruktion der Transfiniten Interpolation nimmt dann die folgende komplexe Form an: P (ξi ) = A(ξi ) + B(ξi ) + C(ξi ) − AB(ξi ) − AC(ξi ) − BC(ξi ) + ABC(ξi )
(6.104)
Abbildung 77: 3D Transfinite Interpolation
Die einzelnen Terme in der obigen Gleichung behalten ihre Bedeutung. Die Ausf¨ uhrungen f¨ ur Fl¨achen werden hier lediglich auf die drei Raumkoordinaten ξi erweitert. Dementsprechend kommt zu den beiden Scherungstransformationen A und B eine dritte Transformation C hinzu. Die einfache Tensor–Produkt–Transformation AB wird ebenfalls um zwei weitere Transformationen AC und BC erg¨anzt, da ja der 3D–Raum durch drei unabh¨ angige Fl¨ achenscharen aufgespannt wird, auf denen jeweils eine Raumkoordinate ξi konstant ist. Auf diese Weise wird jede Koordinatenfl¨ ache wie in einer 2D Transfiniten Interpolation behandelt, und die Randkurven einer jeden Koordinatenfl¨ ache verlaufen genau in den Berandungsfl¨achen des betrachteten Raumes. In ihrer Gesamtheit bilden dann die Koordinatenfl¨achen ein Netz auf den Randfl¨ achen.
6.8 Numerische Gittergenerierung mit dem ”elliptischen Gittergenerator”
131
Die doppelte Tensor–Produkt–Transformation ABC ist schließlich n¨ otig, um eine Korrektur der Transformation, wie sie die ersten sechs Terme in Gleichung (6.104) vermitteln, in der Weise vorzunehmen, daß die acht Eckpunkte des Gebiets durch Gleichung (6.104) reproduziert werden. Die explizite Form der Terme in Gleichung (6.104) wird im folgenden vorgegeben: A(ξi ) = L0 (ξ1 )x(0, ξ2 , ξ3 ) + L1 (ξ1 )x(1, ξ2 , ξ3 ) B(ξi ) = L0 (ξ2 )x(ξ1 , 0, ξ3 ) + L1 (ξ2 )x(ξ1 , 1, ξ3 )
(6.105)
C(ξi ) = L0 (ξ3 )x(ξ1 , ξ2 , 0) + L1 (ξ3 )x(ξ1 , ξ2 , 1) Die einfachen Tensor–Produkt–Transformationen sind kommutativ und folgen durch sukzessive Anwendung von A auf B, von A auf C und von B auf C. AB(ξi ) = L0 (ξ1 )L0 (ξ2 )x(0, 0, ξ3 ) + L0 (ξ1 )L1 (ξ2 )x(0, 1, ξ3 ) +L1 (ξ1 )L0 (ξ2 )x(1, 0, ξ3 ) + L1 (ξ1 )L1 (ξ2 )x(1, 1, ξ3 )
(6.106)
AC(ξi ) = L0 (ξ1 )L0 (ξ3 )x(0, ξ2 , 0) + L0 (ξ1 )L1 (ξ3 )x(0, ξ2 , 1) +L1 (ξ1 )L0 (ξ3 )x(1, ξ2 , 0) + L1 (ξ1 )L1 (ξ3 )x(1, ξ2 , 1)
(6.107)
BC(ξi ) = L0 (ξ2 )L0 (ξ3 )x(ξ1 , 0, 0) + L0 (ξ2 )L1 (ξ3 )x(ξ1 , 0, 1) +L1 (ξ2 )L0 (ξ3 )x(ξ1 , 1, 0) + L1 (ξ2 )L1 (ξ3 )x(ξ1 , 1, 1) Die doppelte Tensor–Produkt–Transformation ist ebenso wie die einfache kommutativ. ABC kann dann beispielsweise durch Anwendung von A auf das einfache Tensorprodukt BC gebildet werden. ABC(ξi ) = L0 (ξ1 )L0 (ξ2 )L0 (ξ3 )x(0, 0, 0) + L0 (ξ1 )L0 (ξ2 )L1 (ξ3 )x(0, 0, 1)
(6.108)
+L0 (ξ1 )L1 (ξ2 )L0 (ξ3 )x(0, 1, 0) + L0 (ξ1 )L1 (ξ2 )L1 (ξ3 )x(0, 1, 1) +L1 (ξ1 )L0 (ξ2 )L0 (ξ3 )x(1, 0, 0) + L1 (ξ1 )L0 (ξ2 )L1 (ξ3 )x(1, 0, 1) +L1 (ξ1 )L1 (ξ2 )L0 (ξ3 )x(1, 1, 0) + L1 (ξ1 )L1 (ξ2 )L1 (ξ3 )x(1, 1, 1) Diese Gleichung kann auch als trilineare Interpolation zwischen den acht Eckpunkten x(0, 0, 0), x(0, 0, 1), x(0, 1, 0), x(0, 1, 1), x(1, 0, 0), x(1, 0, 1), x(1, 1, 0) und x(1, 1, 1) des betrachteten r¨ aumlichen Gebietes verstanden werden.
6.8
Numerische Gittergenerierung mit dem ”elliptischen Gittergenerator”
Im Abschnitt 6.7.2 wurden algebraische Netzgenerierungsmethoden vorgestellt, die im allgemeinen gut kontrollierbare Maschenweitenverteilungen erzeugen, andererseits aber auch große Unstetigkeiten aufweisen k¨onnen. Verl¨auft beispielsweise eine Randkoordinatenlinie u ¨ber eine Ecke, dann pflanzen sich die resultierenden Unstetigkeiten in den Ableitungen der kartesischen Koordinaten nach den krummlinigen Koordinaten, die ihrerseits ja die Metrikkoeffizienten bestimmen, ins Gebietsinnere fort. Gehen weiterhin die Metrikkoeffizienten in die transformierten Str¨ omungsgleichungen ein, etwa bei der finiten Differenzenmethode, dann kann dies verheerende Folgen auf das Konvergenzverhalten und die Genauigkeit der L¨ osung haben. Die Motivation zur Benutzung elliptischer Gleichungssysteme als Gittergenerator liegt nun in deren Eigenschaft, Randwerte u atten. Im Fall des 2D-Gitters steht hierf¨ ur ¨ber das Gebietsinnere zu gl¨ die Methode der konformen Abbildung zur Verf¨ ugung. Da wird der Real– und Imagin¨ arteil einer
132
Numerische Gittergenerierung
komplexen Zahl als Gitterkoordinate verwendet. Die beiden Teile entsprechen der Stromfunktion und dem Strompotential einer Potentialstr¨ omung und gen¨ ugen den Laplace-Gleichungen. Die erzeugten Gitter sind orthogonal und glatt. Das Problem dabei ist die fehlende M¨ oglichkeit, die Gitterabst¨ande sowohl an den R¨andern als auch im Gebietsinneren zu beeinflußen. Eine Erweiterung auf 3D–Gitter ist von der Theorie her nicht m¨ oglich. Die numerische Gittergenerierung mit elliptischen Differentialgleichungen ist gewissermaßen die numerische Erweiterung der konformen Abbildung. Dabei wird gefordert, daß die Gitterkoordinaten ξi (i = 1, 2, 3) der Laplace– bzw. Poissongleichung gen¨ ugen. Die entstandenen Gleichungssysteme werden dann numerisch gel¨ost. Es sind nat¨ urlich auch parabolische und hyperbolische Differentialgleichungen geeignet, Gitter zu generieren. Vor allem dann, wenn in der einen und/oder anderen Koordinatenrichtung eine der beiden Randkurven (–fl¨achen) und die Punkteverteilung nicht festgelegt sind. 6.8.1
Die Grundgleichung des elliptischen Gittergenerators
Zur Erkl¨arung des theoretischen Hintergrunds ist es hilfreich, zun¨ achst ein Basiskoordinatensystem ξi∗ (i = 1, 2, 3) einzuf¨ uhren, dessen einzelne Komponenten der Laplacegleichung gen¨ ugen: ∆ξi∗ = 0 ; i = 1, 2, 3 .
(6.109)
Transformiert man weiterhin das System ξi∗ (i = 1, 2, 3) auf ein neues Koordinatensystem (das eigentlich zu generierende System) ξi (i = 1, 2, 3), dann folgt aus der Gleichung (6.109) ∆ξi = P i , i = 1, 2, 3 ; mit P i = g jk Γijk ; Γijk =
∗ ∂ξ ∗ ∂ 2 ξ ∂ξm i n . ∗ ∂ξ ∗ ∂ξj ∂ξk ∂ξm n
(6.110)
(6.111)
In dieser Gleichung sind g jk die kontravarianten Metrikkoeffizienten. Die Γijk sind durch die Transformation von ξi∗ nach ξi bestimmt und stellen die Verzerrung des zu generierenden Gitterkoordinatensystems ξi und des Basiskoordinatensystems ξi∗ dar. Dies legt nahe, die Gleichung (6.110) als allgemeines Gittergenerierungssystem zugrundezulegen, wobei der Verzerrungsfaktor Γijk nicht u ¨ber Gleichung (6.111), sondern als Kontrollfunktion direkt zu bestimmen ist. Die L¨osung der Gleichung (6.110) stellt die krummlinigen Koordinaten ξi als Funktion der kartesischen Ortskoordinaten xi dar. W¨ unschenswert w¨ are aber, den umgekehrten funktionalen Zusammenhang, d.h. die Gitterpunkte im physikalischen Gebiet in Abh¨ angigkeit der krummlinigen Koordinaten, zu kennen. Dazu wird die Gleichung mit x,i multipliziert und es folgt: g ij (x,ij + Γkij x,k ) = 0 .
(6.112)
Die krummlinigen Koordinaten bilden ein rechteckiges, a ¨quidistantes Gitternetz in der ”computational domain”, in dem die berandenden Koordinatenlinien bzw. –fl¨ achen den physikalischen Randlinien bzw. –fl¨achen entsprechen. Damit wird die L¨ osung von Gleichung (6.110), d.h. die Punkteverteilung in der ”physical domain”, durch die die Oberfl¨ ache beschreibenden kartesischen Koordinaten der Randpunkte bestimmt.
6.8 Numerische Gittergenerierung mit dem ”elliptischen Gittergenerator”
133
Die wichtigsten bzw. dominierendsten Kontrollfunktionen Γijk sind Γααα (α = 1, 2, 3), die jeweils einer in jeder Koordinatenrichtung unabh¨ angigen Verzerrung entsprechen. Setzt man nun alle anderen Kontrollfunktionen zu null, das heißt Γijk = δαj δαk δiα Γα , dann ergibt sich Gleichung (6.110) zu: g ij x,ij + g 11 Γ1 x,1 + g 22 Γ2 x,2 + g 33 Γ3 x,3 = 0
(6.113)
Wenn die Kontrollfunktionen Γi null sind, dann reduziert sich Gleichung (6.113) auf die Laplace– Gleichung, die ein glattes Gitternetz erzeugt. Das auf diese Weise erzeugte Netz zeigt die Tendenz, Gitterlinien u andern auseinan¨ber konvexen Berandungen zu konzentrieren und u ¨ber konkaven R¨ derzuziehen.
Abbildung 78: Elliptisches Gitternetz u ¨ber a) konvexer und b) konkaver Berandung
Nimmt man jedoch die Kontrollfunktionen Γi in Gleichung (6.113) hinzu, dann bewirken negative Werte f¨ ur Γi eine Bewegung der Linien oder Fl¨ achen ξi = const. in Richtung anwachsender ξi −Werte; positive Werte haben den entsprechend entgegengesetzten Effekt. Diese Eigenschaft wird dazu benutzt, Gitterpunkte in gewissen Bereichen, z.B. an einer festen Wand, zu konzentrieren.
Abbildung 79: Verzerrung eines elliptischen Netzes durch die Kontrollfunktionen a) Γ1 : (ξ−Richtung) b) Γ2 : (η−Richtung)
Die Auswertung und Bestimmung der Kontrollfunktionen erfolgt in einem automatisierten Prozeß entweder anhand eines vorgegebenen algebraischen Netzes oder durch Interpolation der Randpunkteverteilung ins Gebietsinnere. Beide Methoden werden im folgenden beschrieben.
134
6.8.2
Numerische Gittergenerierung
Bestimmung der Kontrollfunktion
Gl¨ attung eines vorhandenen Gitters Liegt bereits ein Gitternetz aus einem algebraischen Generierungsprozeß vor, so kann die Gleichung (6.113) nach den Γi aufgel¨ost werden. Diese Beziehungen, eingesetzt in Gleichung (6.113), w¨ urde nach deren L¨osung wieder das algebraische Netz liefern. Das macht nat¨ urliche keinen Sinn, es sei attet. Eine Gl¨ attung wird nun in der denn, die Kontrollfunktionen werden vor dem Einsetzen gegl¨ Weise vorgenommen, daß Γi (ξj ) an jedem Gitterpunkt durch den Mittelwert der vier Nachbarpunkte in den Koordinatenrichtungen ξj ; j 6= i ersetzt wird. F¨ ur Γ1 gilt beispielsweise: Γ1 (ξ1 , ξ2 , ξ3 ) = [Γ1 (ξ1 , ξ2 + 1, ξ3 ) + Γ1 (ξ1 , ξ2 − 1, ξ3 )
(6.114)
+ Γ1 (ξ1 , ξ2 , ξ3 + 1) + Γ1 (ξ1 , ξ2 , ξ3 − 1)]/4 .
Abbildung 80: Mittelung der Kontrollfunktion Γ1 entlang den Koordinatenlinien ξ2 und ξ3
Eine Mittelung in ξ1 −Richtung wird nicht vorgenommen, da dann die Maschenweite in dieser Richtung gegl¨attet w¨ urde. Die Maschenweitenverteilung soll jedoch aus dem algebraischen Netz erhalten bleiben. Die L¨osung von (6.112) mit den so gegl¨ atteten Kontrollfunktionen liefert ein glattes Gitternetz, das im wesentlichen die Eigenschaften des algebraischen Netzes aufweist. Setzt man desweiteren bei der Auswertung der Kontrollfunktion Γi die Nebendiagonalelemente des Metriktensors, die ja die Schiefwinkligkeit der Koordinatenlinien zueinander beschreiben, zu null, das heißt g ij = 0 f¨ ur i 6= j, dann wird eine gewisse Orthogonalisierung des Netzes erzwungen. Dies verbessert zwar die Qualit¨at des Gitters im Gebietsinneren, hat aber meist auch zur Folge, daß die Schiefwinkligkeit am Rand bei festgehaltenen Randgitterpunkten verst¨ arkt wird, was wiederum sehr unvorteilhaft ist. Interpolation der Randpunkteverteilung ins Gebietsinnere Neben der Bestimmung der Kontrollfunktion aus einem algebraischen Netz besteht eine zweite Methode darin, diese aus der Punkteverteilung auf der Berandung zu berechnen und anschließend in das Gebietsinnere zu interpolieren. Dazu wird Gleichung (6.113) auf eine Koordinatenlinie bzw. Koordinatenfl¨ache projiziert und die resultierende Gleichung nach den Kontrollfunktionen aufgel¨ost. Um dies zu verdeutlichen, werden folgende einfache Beispiele betrachtet. Abbildung 81 zeigt ein physikalisches Rechteck mit ungleichf¨ ormiger Punkteverteilung auf den vertikalen R¨ andern (ξ2 −Richtung) und ¨aquidistanter Verteilung auf den horizontalen R¨ andern (ξ1 −Richtung). Ohne die Kontrollfunktionen (d.h. Γi = 0) liefert die Gleichung (6.112) ein Gitternetz, wie in Abbildung 81a
6.8 Numerische Gittergenerierung mit dem ”elliptischen Gittergenerator”
135
dargestellt. W¨ unschenswert aber ist ein Koordinatenlinienverlauf, wie er in Abbildung 81b zu sehen ist.
Abbildung 81: Elliptisch generiertes Gitternetz in einem Rechteck mit ungleichm¨aßiger Randpunkteverteilung: a) Γi = 0 b) Bestimmung der Γi auf der Berandung und anschließende Interpolation ins Gebietsinnere
Mit den Transformationsgleichungen f¨ ur die Punktekoordinaten: x = ξ1 ; y = y(ξ2 ) gilt dann: Γ1 = 0 und
Γ2 = −y,22 /y,2 .
(6.115)
Die Kr¨ ummungsanteile verschwinden, da die Koordinatenlinien nicht gekr¨ ummt sein sollen. Γ1 ergibt sich aufgrund der ¨aquidistanten Punkteverteilung in ξ1 −Richtung zu null, wohingegen Γ2 einen Anteil aus der ungleichf¨ormigen Punkteverteilung in ξ2 −Richtung erh¨ alt. Γ2 wird schließlich zwischen dem rechten und linken Rand ins Gebietsinnere interpoliert. Im Falle eines O–Gitters um einen Zylinder lauten die Transformationsgleichungen: x(r, θ) = r(ξ2 ) cos(θ) und y(r, θ) = r(ξ2 ) sin(θ) mit θ = const · ξ1 . Damit ergibt sich Γ1 wie im vorangegangenen Fall zu Null, Γ2 erh¨alt jetzt einen zus¨ atzlichen Term r,2 /r, der sich aus einem Bogenl¨ angenanteil r,2 und einem Kr¨ ummungsanteil 1/r zusammensetzt. Damit folgt: Γ1 = 0 und
Γ2 = −r,22 /r,2 + r,2 /r
(6.116)
Hier w¨ urde die Vernachl¨assigung des Kr¨ ummungstermes bewirken, daß sich die Koordinatenlinien st¨arker an die konvexe Oberfl¨ache des Zylinders anschmiegten. Als drittes Beispiel sei ein C-Gitter um einen Zylinder betrachtet (Abb. 82), das die Problematik der beiden vorangegangenen F¨alle in sich vereinigt. So liefert die Kontrollfunktion aus Gleichung (6.115) ein ad¨aquates Gitter f¨ ur den rechten Bereich in Abbildung 81, w¨ ahrend die Kontrollfunktion aus der Gleichung (6.116) im Bereich um den Zylinder angemessener ist. Die Konsequenz daraus ist, daß zur Bestimmung der Kontrollfunktion Γ2 lediglich die Bogenl¨ angenanteile A2 = −r,22 /r,2 und s2 = r,2 zwischen den vertikalen R¨andern des ”computational domain” ins Gebietsinnere interpoliert werden. Der Kr¨ ummungsanteil ρ2 = 1/r ist jedoch durch die Kr¨ ummung der inneren und ¨außeren Berandung des ”physical domain” bestimmt, die im rechten Bereich verschwindet und um den Zylinder ihr Maximum annimmt. Darum liegt es nahe, den Kr¨ ummungsterm ρ2 im Gebietsinneren durch Interpolation der entsprechenden Werte auf der unteren und oberen Berandung des Rechengebietes zu ermitteln.
136
Numerische Gittergenerierung
Abbildung 82: C–Gitter um einen Zylinder
a) ”physical domain”
b) ”computational domain”
Verallgemeinerung In Verallgemeinerung dieser Betrachtungen auf den 3D–Fall gilt dann f¨ ur die Seitenfl¨ achen eines quaderf¨ormigen ”computational domain” auf der ξα = const. ist: x,β · x,ββ x,γ · x,γγ ; Aγ = − gββ gγγ √ √ sβ = gββ ; sγ = gγγ µ ¶ x,ββ x,γγ ρα = −n · + gββ gγγ
Aβ = −
(6.117)
Die betrachtete Fl¨ache ξα = const. wird durch die beiden Kurvenscharen ξβ , ξγ aufgespannt, n ist der Normalenvektor auf dieser Fl¨ache gem¨aß: n=
x,β × x,γ |x,β × x,γ |
(6.118)
Schreibt man die Beziehungen in Gleichung (6.117) f¨ ur alle Fl¨ achen des Quaders an, dann folgt Γα im Gebietsinneren durch zweidimensionale Transfinite Interpolation der Werte von Aα und sα auf den vier Randfl¨achen, auf denen ξα variiert, und durch eindimensionale Interpolation der Werte von ρα auf den beiden Randfl¨achen, auf denen ξα = const. ist. Iterative Anpassung der Kontrollfunktionen zur Einarbeitung von Randorthogonalit¨ at und Vorgabe der Maschenweite normal zur Wand In der vorangegangenen Methode wurde die Verteilung der Kontrollfunktionen im gesamten Rechengebiet einzig und allein aus der Punkteverteilung auf den Randfl¨ achen bestimmt. Zwar konnten dadurch die Kontrollfunktionen auf einfache Weise direkt ermittelt werden, jedoch hat man keine M¨oglichkeit der Einflußnahme auf das Netz bez¨ uglich Maschenweite und Orthogonalit¨ at auf dem Rand. Neben der Vorgabe der kartesischen Koordinaten der Randpunkte, die als Randbedingungen in das elliptische DGL.System 2. Ordnung in Gleichung (6.113) eingehen, k¨ onnen im allgemeinen durch die freie Wahl der drei Kontrollfunktionen Γα prinzipiell drei weitere Bedingungen in den Gittergenerierungsprozeß eingebracht werden. Betrachtet man dazu die Fl¨ ache ξα = const., in der die beiden Kurvenscharen ξβ und ξγ verlaufen, dann sollen diese drei Bedingungen formuliert werden als die beiden Orthogonalit¨atsforderungen x,α ⊥x,β → gαβ = 0
(6.119)
6.8 Numerische Gittergenerierung mit dem ”elliptischen Gittergenerator”
137
Abbildung 83: 3D ”computational domain”: a) Bestimmungsort der Gr¨oßen Aβ , Aγ , sβ , sγ und ρα auf den Koordinatenfl¨achen ξα = const. b) Interpolation der Kontrollfunktion Γα im Gebietsinneren aus den Gr¨oßen Aα , sα und ρα auf den sechs Randfl¨achen.
x,α ⊥x,γ → gαγ = 0
(6.120)
gαα = |x,α |
(6.121)
sowie die Vorgabe der Maschenweite auf der Wand entlang der Koordinatenlinie ξα .
Abbildung 84: Orthogonalit¨ats– und Maschenweitenvorgabe auf der Koordinatenfl¨ache ξα = const.
Die entsprechende mathematische Formulierung kann unter Ber¨ ucksichtigung von: Γα = −C · A ; Γβ = −B 1 · A ; Γγ = −B 2 · A auf der Koordinatenfl¨ache ξα = const. geschrieben werden mit gαα 2 ) (gγγ x,ββ + gββ x,γγ − 2gβγ x,βγ ) (gββ gγγ − gβγ µ ¶ µ ¶ gβγ gβγ 1 1 B1 = x,β − x ; B2 = x,γ − x gαα gγγ ,γ gαα gββ ,β x,β × x,γ C=q 2 ) gαα (gββ gγγ − gβγ
A = x,αα +
(6.122)
138
Numerische Gittergenerierung
Analoge Beziehungen f¨ ur die Koordinatenfl¨ achen ξβ bzw. ξγ = const. ergeben sich durch zyklisches Vertauschen von α, β und γ in der Gleichung (6.122). Alle hierin auftretenden Gr¨ oßen, außer x,αα im Term A, lassen sich aus der Punkteverteilung auf der Randfl¨ ache und der vorgegebenen Maschenweite gαα normal zur Fl¨ache bestimmen. Die Ermittlung der Gr¨ oße x,αα erfolgt schließlich in dem folgenden iterativen Prozeß: 1. Annahme der Kontrollfunktionen Γi auf dem Rand 2. Interpolation von Γi vom Rand ins Gebietsinnere 3. Bestimmung des Gitters durch L¨osung der DGL. (6.113) 4. Bestimmung von x,αα auf dem Rand durch einseitige Differentiation =⇒ Bestimmung der Kontrollfunktionen Γi mit der Gleichung (6.122) 5. Iteration von 2. bis 4. bis zur Konvergenz Eine m¨ogliche Erweiterung dieser Methode besteht darin, die beschriebene Vorgehensweise auf mehrere aufeinanderfolgende Koordinatenfl¨ achen ξα = const. anzuwenden. Ausgehend von der ersten Maschenweite normal zur Wand werden die folgenden Maschenweiten zwischen benachbarten Punkten entlang der ξα −Koordinatenlinien gem¨ aß einer Sinus-hyperbolicus-Verteilung bestimmt. Dar¨ uber hinaus kann damit auch eine gewisse Eindringtiefe bez¨ uglich der Orthogonalit¨ at bewirkt werden. 6.8.3
L¨ osungsverfahren der elliptischen DGL.
Nachdem nun verschiedene Methoden zur Bestimmung der Kontrollfunktionen dargelegt wurden, verbleibt schließlich noch die Aufgabe, das elliptische DGL.System (6.113) zu l¨ osen. Dazu ersetzt man den Ortsvektor x durch seine kartesischen Koordinaten xl : g ij xl,ij + g 11 Γ1 xl,1 + g 22 Γ2 xl,2 + g 33 Γ3 xl,3 = 0
(6.123)
Die L¨osung von Gleichung (6.123) erfolgt u ¨blicherweise nach einer Finite–Differenzenapproximation mit dem SOR(Successive–Over–Relaxation)–Verfahren: Zun¨achst werden zentrale Differenzenapproximationen zweiter Ordnung f¨ ur die ersten und zweiten partiellen Ableitungen von xl im Feld DR(3, 3, 0 : 3) abgespeichert: DR(l, i, 0) := xl,i = [xl (ξi + 1) − xl (ξi − 1)]/2
(6.124)
DR(l, i, j) := xl,ij + 2δij xl
(6.125)
:= xl (ξi + 1) + xl (ξi − 1) f u ¨r i = j 1 := [xl (ξi + 1, ξj + 1) + xl (ξi − 1, ξj − 1) 4 −xl (ξi + 1, ξj − 1) − xl (ξi − 1, ξj + 1)]
fu ¨r i 6= j
Die ko– und kontravarianten Koeffizienten gij bzw. g ij (inverse Matrix von gij ) werden in den Arrays G(3, 3) und GG(3, 3) gespeichert: X G(i, j) := xl,i xl,j := DR(l, i, 0)DR(l, j, 0) ; GG(i, j) := g ij = (gij )−1 (6.126) l
Das SOR–Verfahren ist ein iteratives Verfahren, dessen Konvergenz maßgeblich von der Struktur der zugeordneten Koeffizientenmatrix und damit einerseits von den Koeffizienten der Differenzengleichung und andererseits von der Form der Differenzenapproximation bestimmt ist. Neben der
6.8 Numerische Gittergenerierung mit dem ”elliptischen Gittergenerator”
139
Benutzung der zentralen Differenzenquotienten aus Gleichung (6.124) und (6.125) werden alternativ auch h¨aufig einseitige, sog. ”upwind”-Approximationen benutzt, wodurch sowohl auf das Konvergenzverhalten als auch auf die Qualit¨ at der L¨ osung Einfluß genommen werden kann. Dies gilt im besonderen f¨ ur die ersten und die gemischten zweiten Ableitungen, da in diesem Fall die zentrale Approximation keinen Beitrag des entsprechenden Diagonalelementes der Koeffizientenmatrix liefert. Im folgenden werden f¨ ur die einzelnen Terme in Gleichung (6.123) Differenzenausdr¨ ucke angegeben, in denen durch die geeignete Wertezuweisung zweier Parameter Ω und Λ eine zentrale, eine reine upwind– oder eine gewichtete zentral/upwind–Approximation gew¨ ahlt werden kann. Approximation des Terms g 11 Γ1 xl,2 + g 22 Γ2 xl,2 + g 33 Γ3 xl,3 : Abh¨angig vom Vorzeichen der Kontrollfunktion Γi wird eine vor– oder r¨ uckw¨ artige upwind–Approximation benutzt. xl,i = [xl (ξi ) − xl (ξi − 1)] , wenn Γi < 0 xl,i = [xl (ξi + 1) − xl (ξi )] , wenn Γi > 0
(6.127)
Unter Einf¨ uhrung eines Parameters Ω faßt man die Gleichungen (6.124) und (6.127) zu einer einzigen Gleichung zusammen: g ii Γi xl,i = g ii [Γi DR(l, i, 0) + Ω|Γi |[DR(l, i, i)/2 − xl ]] Aus der Diagonaldominanzforderung ergibt sich Ω zu: |Γi |/2 ; |Γi | < 2 Ω= 1 ; |Γi | ≥ 2
(6.128)
(6.129)
Es l¨aßt sich leicht zeigen, daß im Grenzfall Γi = 0 (Ω = 0) aus Gleichung (6.128) die rein zentrale Approximation von Gleichung (6.124) folgt. F¨ ur |Γi | ≥ 2 (Ω = 1) liefert die Gleichung die upwind– Approximation. F¨ ur −2 < Γi < 2 ergibt sich eine lineare Wichtung zwischen der zentralen und der entsprechenden vor– bzw. r¨ uckw¨artigen upwind–Approximation. Approximation des Terms g ij xl,ij Analog zur einseitigen Differenzenapproximation f¨ ur die ersten Ableitungen lassen sich f¨ ur die gemischten zweiten Ableitungen (i 6= j) die folgenden ”schiefen” upwind–Approximationen formulieren: Wenn g ij > 0: xl,ij = [xl (ξi + 1, ξj + 1) + xl (ξi − 1, ξj − 1) − xl (ξi + 1, ξj ) − xl (ξi − 1, ξj )
(6.130)
−xl (ξi , ξj + 1) − xl (ξi , ξj − 1) + 2xl (ξi , ξj )]/2 Wenn g ij < 0: xl,ij = −[xl (ξi + 1, ξj + 1) + xl (ξi − 1, ξj + 1) − xl (ξi + 1, ξj ) − xl (ξi − 1, ξj )
(6.131)
−xl (ξi , ξj + 1) − xl (ξi , ξj − 1) + 2xl (ξi , ξj )]/2 Auch hier lassen sich die Gleichungen (6.125), (6.130) und (6.131) unter Einf¨ uhrung des Parameters Λ zusammenfassen: g ij xl,ij = g ij [DR(l, i, j) − 2δij xl ] (6.132)
140
Numerische Gittergenerierung
+Λ|g ij |[DC(l, i, j) − DR(l, i, i) − DR(l, j, j) + 2xl ]/2 mit DC(l, i, j) := [xl (ξi + 1, ξj + 1) + xl (ξi − 1, ξj − 1)
(6.133)
+xl (ξi + 1, ξj − 1) + xl (ξi − 1, ξj + 1)]/2 Im Falle i = j, wird Λ zu null gesetzt, und es folgt die zentrale Approximation. Wenn i 6= j ist, dann liefert Λ = 0 ebenfalls wieder die zentrale Approximation, jedoch ist in diesem Fall die ”schiefe” Approximation sinnvoller (Λ = 1). Einsetzen der Gleichungen (6.128) und (6.132) in Gleichung (6.123) liefert schließlich die finite Differenzenapproximation der elliptischen Gittergenerierung im Punkt (ξi , ξj , ξk ) X X GG(k, k)(2 + Ω|Γk |) − Λ |GG(i, j)| xl (6.134) k
−
X
i,j,(i6=j)
{GG(i, j)DR(l, i, j) + Λ|GG(i, j)|[DC(l, i, j) − DR(l, i, i) − DR(l, j, j)]/2}
i,j,(i6=j)
−
X
GG(k, k)[(1 + Ω|Γk |/2)DR(l, k, k) + Γk DR(l, k, 0)] = 0 .
k
Diese Gleichung kann f¨ ur alle Punkte des Rechengebietes angeschrieben werden und das resultierende Gleichungssystem lautet in Matrizenschreibweise A·X =B . X ist der L¨osungsvektor, der die gesuchten kartesischen Koordinaten aller inneren Netzpunkte enth¨alt, A ist die zugeordnete Koeffizientenmatrix und die rechte Seite B beinhaltet die Koordinaten der vorgegebenen Randpunkte. Die L¨ osung des Systems mittels eines direkten Verfahrens (z.B. Gauß–Elimination) liefert zwar in einem Schritt die L¨ osung f¨ ur jeden Punkt, jedoch ist diese Vorgehensweise bei großen Punktzahlen sehr rechenintensiv. Effizienter ist dagegen ein iteratives Verfahren. Dazu wird hier das SOR–Verfahren betrachtet, das durch folgenden Algorithmus beschrieben wird: App Xp(n+1)
= ω[−
p−1 X q=1
Apq Xq(n+1)
−
N X
Apq Xq(n) + Bp ] + (1 − ω)App Xp(n)
(6.135)
q=p+1
Der obere Index n bezeichnet die Iterationsstufe des SOR–Verfahrens. Die Folge aller inneren Punkte des Rechengebiets, die nach einer bestimmten Reihenfolge in dem eindimensionalen Array ahlindex p = 1, ..., N gekennzeichnet. ω ist der X abgespeichert werden, ist durch den unteren Z¨ Relaxationsfaktor. Mit ω = 1 reduziert sich das SOR–Verfahren auf das Gauß–Seidel–Verfahren, ¨ w¨ahrend dieses im Fall ω > 1 bzw. ω < 1 durch Uber– bzw. Unterrelaxation beschleunigt wird. Gem¨aß der Beziehung (6.135) werden nun alle Xp nacheinander berechnet, wobei bereits ermittelte Werte Xq f¨ ur q < p direkt in die Auswertung der rechten Seiten einfließen. aßt sich das Aufl¨ osen der Gleichung (6.134) mit dem Unter Einf¨ uhrung des Zwischenwertes Xp∗ l¨ SOR–Verfahren in der kompakten Form schreiben: Xp(n+1) = ωXp∗ + (1 − ω)Xp(n) mit Xp∗ = xl (ξi , ξj , ξk ) =
SU M 1 + SU M 2 SU M
(6.136)
6.9 Das dynamisch adaptive Gitter
und SU M =
X
141
k
SU M 1 =
X
X
GG(k, k)(2 + Ω|Γk |) − Λ
|GG(i, j)|
i,j,(i6=j)
GG(k, k)[(1 + Ω|Γk |/2)DR(l, k, k) + Γk DR(l, k, 0)]
k
SU M 2 =
X
{GG(i, j)DR(l, i, j) + Λ|GG(i, j)|[DC(l, i, j) − DR(l, i, i) − DR(l, j, j)]/2}
i,j,(i6=j)
Setzt man bei der Auswertung der Beziehungen in Gleichung (6.135) nur Werte aus der vorangegangenen Iterationsstufe (n) ein, dann bezeichnet man Gleichung (6.135) als das extrapolierte Jacobi–Verfahren. Entscheidend f¨ ur das Konvergenzverhalten des SOR–Verfahrens ist die optimale Bestimmung des Relaxationsfaktors ω, auf dessen exakte Herleitung aufgrund der Komplexit¨ at hier nicht n¨ aher eingegangen werden kann. Dazu sei zun¨ achst auf numerisches Experimentieren verwiesen.
6.9
Das dynamisch adaptive Gitter
Wir ben¨otigen Rechengitter zur Beschreibung von Str¨ omungsgebieten (Außenstr¨ omungen, also Tragfl¨ ugelumstr¨omungen usw. sowie Innenstr¨ omungen, d.h. Stufen, Kan¨ ale etc.), auf denen wir dann die diskretisierten Str¨omungsgleichungen l¨ osen. Da mit wachsender Punkteanzahl sowohl Rechenzeit als auch Speicherbedarf stark ansteigen, wird man versuchen, mit m¨ oglichst wenigen Punkten auszukommen. Auf der anderen Seite m¨ ussen bestimmte Bereiche des Str¨ omungsgebietes aus verschiedenen Gr¨ unden fein aufgel¨ost werden, wie z.B. wandnahe Bereiche bei viskosen Str¨ omungen oder Gegenden mit starken Gradienten in der Str¨ omung (Verdichtungsst¨ oße). Bei praktischen Str¨omungsrechnungen wird man von einer bestimmten maximalen Punkteanzahl zur Diskretisierung des Rechengebietes ausgehen. Diese Punkteanzahl richtet sich in erster Linie nach dem zur Verf¨ ugung stehenden Arbeitsspeicher oder einer Kombination aus Speicherbedarf und Rechenzeit (aus diesen Gr¨oßen werden bei Hochleistungsrechnern, wie z.B. den Cray’s am ZIB, Priorit¨aten zur Nutzung der CPU’s berechnet; je weniger Kapazit¨ aten ein Rechenlauf beansprucht, desto h¨oher ist die Priorit¨at). Eine optimale Punkteverteilung ist bei der Auslegung des Rechengitters nicht ohne weiteres m¨ oglich; so weiß man z.B. die Lage eines Verdichtungsstoßes auf einem Tragfl¨ ugel im allgemeinen nicht im voraus. Man k¨onnte nun einen Rechenlauf mit einem beliebigen Gitter starten, das Gitter ’von Hand’ an die L¨osung anpassen, erneut rechnen etc. Diese Methode ist relativ aufwendig und, wenn u uhrbar. Wesentlich eleganter ¨berhaupt, nur bei station¨aren Problemen in vertretbarer Zeit durchf¨ und effizienter w¨are eine Methode, bei der das Gitter automatisch und w¨ ahrend der Rechnung ver¨andert wird. Im folgenden sollen Adaptionskriterien und –techniken vorgestellt werden. Adaptionskriterien Die meisten Adaptionskriterien gehen von folgender Annahme aus: Der Gesamtfehler einer Berechnung wird dann minimal, wenn das Integral u ¨ber den Fehler f (x) konstant ist, mathematisch ausgedr¨ uckt: Z xi+1
f (x)dx = const.
(6.137)
xi
Dieser Fehler ist normalerweise als Feldgr¨ oße nicht bekannt und steht somit als Funktion nicht zur Verf¨ ugung.
142
Numerische Gittergenerierung
Zur Verf¨ ugung stehen aber alle zu berechnenden Feldgr¨ oßen. Es ist sicher legitim anzunehmen, daß ¨ bei großen Anderungen der L¨osung zwischen zwei Punkten der Fehler gr¨ oßer ist als bei kleinen. Die Frage ist nun, welcher Teil des L¨osungsvektors als ’Fehlerfunktion’ in Frage kommt. Leider gibt es hierf¨ ur keine allgemeine Antwort, die Auswahl ist problemspezifisch. Betrachten wir z.B. eine transsonische Str¨omung mit einem Verdichtungsstoß, w¨ are der Dichte– bzw. Druckgradient eine gute Sensorfunktion zur Adaption des Stoßes, der Geschwindigkeitsgradient dagegen ist zur Stoßadaption nicht geeignet. Zur Adaption von Grenzschichten dagegen ist der Geschwindigkeitsgradient sehr gut geeignet, der Druck– bzw. Dichtegradient nicht, da sich Dichte und Druck u ¨ber die Grenzschichtdicke i. a. kaum ¨andern (s. a. Prandtlsche Grenzschichtvereinfachung). Im weiteren wollen wir als Beispiel eine einfache Str¨ omung mit einem Verdichtungsstoß annehmen. Die verwendete Adaptionstechnik wird zun¨achst an einem eindimensionalen Fall erl¨ autert und dann auf zwei Dimensionen erweitert. Die Adaption von 3D–Gittern ist mit dieser Technik ebenfalls m¨ oglich und wird abschließend kurz beschrieben. Adaptionstechniken Grunds¨atzlich lassen sich die Adaptionstechniken in zwei verschiedene Klassen einteilen: Die eine enth¨alt diejenigen Techniken, bei denen sich die Anzahl der Gitterpunkte und die Struktur ¨ andert, die andere solche, wo dies nicht der Fall ist. Bei der ersten Gruppe werden in Bereichen, an denen das Gitter verfeinert werden soll, einfach zus¨atzliche Zellen erzeugt. Die Erzeugung eines auf diese Art adaptierten Gitters ist nicht schwer, allerdings muß der Str¨omungsl¨oser in der Lage sein, unstrukturierte Gitter zu verarbeiten, auch wenn das Ausgangsgitter strukturiert ist. Techniken der zweiten Gruppe behalten die Struktur des Gitters und die Anzahl der Gitterpunkte bei. Die f¨ ur eine Verdichtung erforderlichen zus¨ atzlichen Zellen werden an Stellen, an denen kleine Gradienten der Str¨omungsl¨osung vorliegen, ’abgezweigt’. Diese Methode soll nun n¨ aher beschrieben werden. Eine einfache r¨aumliche Diskretisierung von (6.137) ergibt: f (ξ) · ∆ξ = const.
(6.138)
mit ∆ξ als Punkteabstand und f (ξ) als Gradient der Dichte zwischen zwei Punkten. (6.138) w¨ urde bei einem Nullgradient zwischen zwei Punkten einen unendlichen Punkteabstand erzwingen, was nat¨ urlich f¨ ur ein Rechengitter nicht sinnvoll ist. Daher wird eine andere ’Fehlerfunktion’ eingef¨ uhrt, die (vom Benutzer einzugebende) Minimal– und Maximalabst¨ ande zwischen zwei Punkten ber¨ ucksichtigt. ∆xmax f − fmin , A= −1 . (6.139) wi = 1 + A · f˜B , f˜ = fmax − fmin ∆xmin Die Konstante B muß nun so bestimmt werden, daß der eingestellte Minimalabstand ∆xmin dem Minimalabstand M IN (∆xi ) entspricht. (6.138) ist die Euler–Lagrange–Gleichung f¨ ur das Minimum von Z 1
Iw =
0
w(ξ)x2ξ dξ .
(6.140)
Das Minimum von (6.140) entspricht der Minimalenergie eines Systems aus in Reihe geschalteten Federn mit den Federkonstanten w(ξ). Die Energie eines solchen Systems wird minimal, wenn die Produkte aus Abstand und entsprechender Federkonstanten gleich dem Produkt aus Gesamtl¨ ange L und Ersatzfederkonstanten wers des Systems sind: ∆xi · wi = L · wers ,
1 1 , = PN wers j=1 wj
(6.141)
6.9 Das dynamisch adaptive Gitter
143
→ Punkteabst¨ande ∆xi =
wi
L PN
j=1 wj
.
(6.142)
Die Konstante B wird aus den Gleichungen (6.139) und (6.142) mit einer Newton–Iteration bestimmt: B n+1 = B n + ∆B n ; (6.143) mit hochgestelltem Index ’n’ als aktuelle Iterationsebene. ∆B ergibt sich zu: ∆B n =
∆xmin − M IN (∆xi )n ∂M in(∆xi ) ∂B
(6.144)
Der Nenner in (6.144) l¨aßt sich folgendermaßen angeben: " Ã ! # N X ∂M in(∆xi ) 1 wi ∆xi ˜B = −A · − fj · ln(f˜j ) ∆xi δij 2L ∂B wi w j j=1
(6.145)
Der beschriebene Algorithmus verh¨ alt sich so, als ob man zwischen die Zellw¨ ande Federn mit Federkonstanten nach (6.139) einbaut, was eine recht anschauliche Analogie ist. 2D–Adaption Man k¨onnte nun alle Zeilen und/oder Spalten eines Rechengebietes mit der oben beschriebenen Methode durchlaufen. Diese Methode ist sicher nicht sehr sinnvoll, da sie im allgemeinen ein stark verzerrtes Gitter erzeugt. Bei Verwendung des 1D–Verfahrens auf jede Zeile/Spalte eines Gitters werden nur Informationen der aktuellen Linie verarbeitet, also kann sich jede Linie ohne R¨ ucksicht auf Orthogonalit¨at etc. frei einstellen. Somit w¨ are ein glattes Gitter purer Zufall. Da die meisten L¨osungsverfahren auf glatten und m¨ oglichst orthogonalen Gittern wesentlich besser konvergieren als auf verzerrten, ist es nicht einsichtig, ein glattes Startgitter durch die Adaption, die ja eine Verbesserung der L¨osung bezwecken soll, verzerren zu lassen. Im folgenden wird ein Verfahren – wiederum auf einer Federmodellanalogie basierend – vorgestellt, das eine glatte und orthogonale Punkteverteilung erm¨oglicht. Betrachten wir eine Str¨omung auf einer leicht gekr¨ ummten Fl¨ ache, z. B. auf der Oberseite eines Tragfl¨ ugelprofils, die krummlinigen Koordinaten heißen ξ und η. Die Vorgehensweise ist nun wie folgt: Auf der Linie j = 1 wird, wie oben beschrieben, die Punkteverteilung ausgerechnet (Die Linie j = 1 wird auf eine gerade Linie der L¨ange S transformiert, man f¨ uhrt die 1D–Adaption durch und transformiert die neue Punkteverteilung wieder auf die Fl¨ ugeloberfl¨ ache zur¨ uck). Auf den Linien j = 2,..,NJ wird nun eine zus¨ atzliche Bedingung eingebaut: Am Punkt (i, j–1), das ist Punkt ’D’ in der Skizze, wird eine Torsionsfeder angebracht. Diese Feder ist entspannt, wenn sich der betrachtete Punkt auf der Linie j = const. (Punkt A in der Skizze) auf Punkt A’ befindet. Die Lage von A’ ergibt sich aus einer ’Mittelung’ zwischen der Geraden durch E und D sowie der Strecke DAn , wobei DAn die Normale auf die Strecke DF darstellt (f¨ ur j = 2 nimmt man nur die Normale, da es die Gerade durch E und D nicht gibt). Man kann nun f¨ ur eine Linie j = const. das Kr¨aftegleichgewicht anschreiben: wi · (si+1 − si ) − wi−1 · (si − si−1 ) − CΘi = 0,
(6.146)
144
Numerische Gittergenerierung
mit wi wie bei j = 1, allerdings wird f˜ aus dem gesamten Feld berechnet. Θi ist der Winkel, um den die Torsionsfeder ausgelenkt wurde, und C ist die Torsionsfederkonstante: Ã ! N 1 X C = cF · wk cF = const. (6.147) N k=1
Die Wirkung der Torsionsfeder l¨aßt sich auch durch eine Zugfeder beschreiben, damit (6.146) als einzige Unbekannte s enth¨alt. Damit ergibt sich (6.146), geordnet nach si , zu si+1 · wi − si · (wi + wi−1 + wi0 ) + si−1 · wi−1 + wi0 · s0i = 0
(6.148)
ederkonstante mit T orsionsf als entsprechender Federkonstanten w’. Das Gleichungssystem (6.148) l¨ aßt Strecke 0 A0 D0 sich mit dem TDMA l¨osen.
Die gesamte Prozedur l¨aßt sich folgendermaßen zusammenfassen: 1. Auswahl einer geeigneten Sensorfunktion 2. Bestimmung zul¨assiger Minimal– und Maximalabst¨ ande 3. Transformation der krummlinigen Koordinaten auf eine Strecke 4. iterative Bestimmung von B 5. Berechnung der wi 6. Berechnung der neuen Punkteverteilung 7. R¨ ucktransformation Gerade → krummlinige Koordinaten Die Schritte 3 bis 7 werden f¨ ur alle j ≤ 2 < N J durchgef¨ uhrt. Vereinfachungen und Ab¨ anderungen W¨ahrend der Adaption sollte man immer im Hinterkopf behalten, daß sie nur dann Sinn macht, wenn ihr Rechenzeitbedarf gegen¨ uber der Gesamtrechenzeit nicht ins Gewicht f¨ allt. Daher ist jede m¨ogliche Vereinfachung anzustreben! Bei vielen Anwendungen (z.B. Stoß) sind die st¨ arksten Gradienten auf der ersten Linie zu finden. Hier gen¨ ugt es, die Konstante B einmal auf der Linie j = 1 zu berechnen und f¨ ur die anderen Linien beizubehalten. Vorteil: Die iterative Berechnung der Konstanten ist relativ zeitraubend; man spart sich also Einiges an CPU–Zeit! Die dargestellte Methode entspricht einem Anfangswertproblem. Es ist auch m¨ oglich, ’elliptische’ Probleme zu berechnen. Hierbei wird einfach eine zweite Torsionsfeder an der Stelle (i, j+1) angebracht. Die L¨osung erfolgt dann nicht in einem Schritt, sondern in mehreren, ¨ ahnlich dem Linienl¨osungsverfahren. Das Verfahren eignet sich außer zur Adaption auch zur Gl¨ attung vorhandener Gitter. Insbesondere kann das Verfahren sehr gut zur Randorthogonalisierung eingesetzt werden; man muß lediglich die Torsionsfederkonstante am Rand auf einen sehr großen Wert setzen. Man kann mit dem Verfahren auch Gitter in beiden Dimensionen adaptieren, indem man z.B. zuerst alle Linien, dann alle Spalten rechnet. Ebenso sind alternierende Algorithmen (ADI) m¨ oglich. Man kann aber auch ein anderes L¨osungsverfahren als das Linienverfahren einsetzen, wie z.B. den Stone– Algorithmus oder das CGS–Verfahren.
145
7 7.1
Turbulente Str¨ omungen ¨ Ubersicht
Die meisten technisch wichtigen Str¨omungen sind turbulent. W¨ ahrend sie bei grober Betrachtung wie u ¨blich noch durch ein schichtenweise geordnetes Bewegungsverhalten charakterisierbar sind, entdeckt man bei detaillierten Betrachtungen auch rege, nicht viskose Austauschprozesse zwischen den einzelnen Schichten. Die lokalen Eigenschaften der Str¨ omung reagieren auf diese Austauschprozesse folgerichtig mit Fluktuationen. Eine turbulente Str¨ omung ist also lokal instation¨ar, ihre physikalischen Eigenschaften an einem festgehaltenem Ort sind zeitlich nicht konstant, sondern vielmehr hochfrequenten, dreidimensionalen Schwankungen unterworfen. Anschaulich beschreibt man dieses Ph¨anomen, indem man oberhalb einer charakteristischen Kenngr¨ oße (z.B. der Reynoldszahl, siehe Abb. 85a) neben der schichtartigen Bewegungsform in Hauptstr¨ omungsrichtung quer dazu zus¨atzliche Eigenbewegungen gr¨oßerer Fl¨ ussigkeitsvolumen, sogenannter Turbulenzballen, einf¨ uhrt. Die Tatsache, daß man derartige Turbulenzballen mit bloßem Auge experimentell beobachten kann, verdeutlicht den makroskopischen Charakter der Turbulenz. a)
b)
Abbildung 85: a) Laminar-turbulenter Umschlag , b) Geschwindigkeitsprofile bei laminarer / turbulenter Grenzschicht
Die als turbulente Diffusion bezeichnete Mischbewegung ist f¨ ur den Verlauf der Str¨ omung und ihren Kr¨aftehaushalt von großer Bedeutung. Sie bringt Wirkungen hervor, als w¨ are die Z¨ahigkeit des Fluids um mehrere Zehnerpotenzen erh¨ oht worden. Die turbulente Mischbewegung ist maßgeblich f¨ ur Reibungswiderst¨ande von Schiffen, Flugzeugen, Verlusten in Rohrleitungen, Turbinen usw. verantwortlich. Sie macht sich jedoch auch positiv bemerkbar, so z.B. bei der Umstr¨ omung eines Tragfl¨ ugels, wo die energiereichere turbulente Grenzschicht wesentlich sp¨ ater abl¨ ost als die laminare. Man beachte, daß neben einem erh¨ ohtem Impulsaustausch auch ein erh¨ ohter W¨ armeund Stoffaustausch u ber die Turbulenzballen abl¨ a uft. Turbulente Str¨ o mungen sind also mischungs¨ intensiver. F¨ ur viele verfahrenstechnische Anwendungen ist dies von großem Nutzen. Beispielsweise h¨angt der Wirkungsgrad einer Brennkammmer von der guten Vermischung des Sauerstofftr¨ agers mit dem Brennstoff ab. Infolge der Austauschprozesse zwischen den Schichten findet man daher einen relativ gleichm¨aßigen Verlauf aller Eigenschaften in den Querrichtungen vor. Anhand von Abb. 85b sei dieses gel¨aufige Unterscheidungsmerkmal am Beispiel einer Impulsgrenzschicht wiedergegeben. F¨ ur praxisnahe Disziplinen wie die numerische Str¨ omungsmechanik ist die Beschreibung von Turbulenz unabdingbar. Im Unterschied zur laminaren Str¨ omung, die durch Viskosit¨ at und Tr¨ agheit bestimmt und dadurch physikalisch vollkommen u ¨berschaubar ist, sind die turbulenten Schwankungsbewegungen in ihren Einzelheiten hoffnungslos kompliziert.
146
7.2
Turbulente Str¨ omungen
Direkte Numerische Simulation (DNS)
Ein effizientes numerisches Verfahren sollte sowohl die Turbulenzmechanismen als auch die laminaren Effekte f¨ ur das gesamte Str¨omungsfeld komplett erfassen k¨ onnen. Prinzipiell geht dies durch L¨osung der Bilanzgleichungen f¨ ur die Momentanwerte. Die damit verbundene Problematik ¨ wird deutlich, wenn man sich die Turbulenz als Uberlagerung von Wirbeln (eddies) unterschiedlicher Gr¨oße und Frequenz vorstellt. Bekanntlich h¨ angt die G¨ ute eines numerischen Verfahrens vom Aufl¨osungsverm¨ogen des ihm zugrundeliegenden Rechengitters ab. Um zu einer verl¨ aßlichen L¨ osung zu gelangen, m¨ ussen deshalb alle Skalen auch die kleinsten auftretenden Strukturen sowohl r¨ aumlich als auch zeitlich aufgel¨ost werden. Da die Gr¨ oße des kleinsten Turbulenzelementes (z.B. die Gr¨ oße der kleinsten Wirbel in einer Luftstr¨omung) jedoch wesentlich kleiner als das Integrationsgebiet ist, sind zur Aufl¨osung der Mischbewegung unvorstellbar viele Gitterpunkte notwendig. Das Verh¨altnis der gr¨oßten zu den kleinsten auftretenden turbulenten Skalen h¨ angt im wesentlichen von der Reynoldszahl ab. Die erforderliche Anzahl der Gitterpunkte N ist deshalb proportional zu Re9/4 , der Rechenaufwand sogar zu Re11/4 . Das heißt, daß f¨ ur eine Steigerung der Reynoldszahl um den Faktor 10 mit einem numerischen Aufwand zu rechnen ist, der um einen Faktor von 560 ansteigt. Geht man von einer Verdopplung der Leistung von Rechenanlagen alle 18 Monate aus, dann dauert es 13.5 Jahre, bis die verf¨ ugbare Rechenleistung in gleicher Gr¨ oße gewachsen ist. Man findet im Zuge der informationstechnischen Entwicklung heute vermehrt Arbeiten, die die Turbulenzmechanismen auf diesem direktem Wege berechnen (direkte Simulation, DNS). Dabei werden die Momentanwerte aus der dreidimensionalen, zeitabh¨ angigen Bilanzgleichung bestimmt. Bis heute k¨onnen nur einige akademische Teststr¨omungen mit Hilfe einer DNS untersucht werden (z.B. Kanalstr¨omung, einfache Scherschichten). Da man aus einer DNS alle Str¨ omungsgr¨ oßen inklusive solche, die sich nicht messen lassen, wie Korrelationen von Druck und Geschwindigkeit, gewinnen kann, stellen solche Untersuchungen heute eine wichtige Grundlage f¨ ur die Modellierung der Turbulenz dar.
7.3
Large–Eddy–Simulation (LES)
Daneben existieren sogenannte Grobstrukturverfahren (large eddy simulation, LES), deren hochaufl¨osendes Gitter ebenfalls den Zugang zu den Turbulenzgr¨ oßen erm¨ oglicht. Im Unterschied zur direkten Simulation k¨onnen die Grobstrukturverfahren den Einfluß kleinskaliger Turbulenzbewegungen jedoch nicht mehr auf direktem Wege sondern nur u ¨ber den Umweg der Modellierung erfassen. Die Modellierung der kleinen Wirbel (small eddies), die durch das Gitter nicht mehr aufgel¨ ost werden k¨onnen, ist zumeist sehr einfach, weil die kleinskalige Turbulenzbewegung kaum noch von den Str¨omungsbedingungen abh¨angt. Feingitterverfahren und direkte Simulation sind f¨ ur technisch relevante Probleme rechentechnisch zu aufwendig. Sie dienen vielmehr der Entwicklung und Verbesserung einfacher Modelle.
7.4
Die Reynolds-Gleichung
Sowohl Direkte Numerische Simulationen als auch Large-Eddy-Simulationen k¨ onnen nur dreidimensional und instation¨ar durchgef¨ uhrt werden, auch wenn die Str¨ omung tats¨ achlich station¨ ar und zweidimensional ist. Da zudem die Aufl¨ osung in Zeit und Raum sehr fein sein muß, sind beide Ans¨atze sehr teuer und f¨ ur technisch relevante Str¨ omungen nicht einsetzbar. Um den großen Aufwand einzud¨ammen, versucht man deshalb auf halbempirischen Wege zu einer theoretischen Behandlung turbulenter Str¨omungen auf Basis sog. Turbulenzmodelle zu gelangen. Ein wesentlicher Nachteil dieser Vorgehensweise ist die geringe Universalit¨ at der Ans¨ atze. Sie sind zwar vielfach zu ganzen Theorien ausgebaut worden, versagen aber h¨ aufig schon bei der Beschreibung nur eines
7.4 Die Reynolds-Gleichung
147
Str¨omungstyps. Vielmehr sind von Fall zu Fall zus¨ atzliche Hypothesen und experimentelle Aussagen zur Bestimmung der vorhandenen freien Parameter des Ansatzes erforderlich. Generell haben alle numerischen Verfahren die unangenehme Eigenschaft, daß die Qualit¨ at der L¨ osung sehr stark von dem verwendeten Turbulenzmodell abh¨ angt. Den bekanntesten Weg zur Berechnung von turbulenten Str¨ omungen, hat Reynolds im Jahre 1894 eingeschlagen, wobei er zwischen den stark fluktuierenden Gr¨ oßen und den mittleren Str¨ omungsgr¨oßen unterschied. Er gewann daraus eine Impulsgleichung, in der die Turbulenz in Form eines zus¨atzlichen Terms ber¨ ucksichtigt ist. Diese sog. Reynolds-Gleichung wird aus der Navier-StokesGleichung gewonnen, indem die Momentanwerte durch deren Mittelwerte und Schwankungsgr¨ oßen substituiert werden und die entstandene Gleichung gemittelt wird. Um bei dieser Mittelung den bez¨ uglich der Grundstr¨omung und der zeitlichen Mittelwerte der Fluktuationen instation¨ aren Charakter der Bewegungsgleichung zu erhalten, muß die Mittelung als Ensemble-Mittel oder als zeitliches Mittel u ¨ber einen begrenzten Zeitraum verstanden werden. Dieser Zeitraum sollte dann so gew¨ahlt werden, daß nur die Kurzzeitvorg¨ ange der Turbulenz gegl¨ attet werden, der instation¨ are Charakter der Grundstr¨omung jedoch erhalten bleibt. 7.4.1
Herleitung der Reynolds-Gleichung
Nach einem Vorschlag von O. Reynolds werden zun¨ achst Geschwindigkeit und Druck in Mittelwert und Schwankungsgr¨oße aufgespalten: 0
0
Geschwindigkeit: ui = ui + ui
Druck: p = p + p .
(7.1)
Diese werden in die Navier-Stokes-Gleichung (2.23) eingesetzt und der Index j auf der rechten Seite durch k ersetzt. 0 0 0 i ∂%(ui + ui ) ∂ h ∂(p + p ) ∂ 2 (ui + ui ) 0 0 + %(ui + ui )(uk + uk ) = − +µ . ∂t ∂xk ∂xi ∂x2k
(7.2)
Die Terme werden getrennt und sortiert. # " 0 0 0 ´i ∂%ui ∂%ui ∂ h ³ ∂p ∂p ∂ 2 ui ∂ 2 ui 0 0 0 0 + + % ui uk + ui uk + ui uk + ui uk = − − +µ + . (7.3) ∂t ∂t ∂xk ∂xi ∂xi ∂x2k ∂x2k Durch die Mittelung fallen die Terme weg, die linear in den Schwankungstermen sind. · 2 0 0 ¸ ∂ ui ∂ 2 ui ∂%ui ∂%ui ∂ £ ¡ ∂p ∂p0 0 0 0 0 ¢¤ + + % ui uk + ui uk + ui uk + ui uk = − − +µ + ∂t ∂t ∂xk ∂xi ∂xi ∂x2k ∂x2k 0
0
0
0
0
∂%ui ∂%ui ∂(%ui uk ) ∂(%ui uk ) ∂(%ui uk ) ∂(%ui uk ) + + + + + ∂t ∂xk ∂x ∂x ∂xk | ∂t {z } | {zk } | {zk } =0
=0
=0
∂p ∂ ∂%ui ∂(%ui uk ) + =− + ∂t ∂xk ∂xi ∂xk
0
∂2u ∂p ∂p0 ∂ 2 ui = − − +µ 2 + µ 2i ∂xi ∂x ∂xk ∂x |{z}i | {z k} =0
µ ¶ ∂ui 0 0 µ − %ui uk . ∂xk
=0
(7.4)
Alle Turbulenzmodelle, die auf der Reynoldsgleichung basieren, werden RANS-Modelle genannt (Reynolds-averaged Navier-Stokes equation). Da die Reynoldsgleichung genau genommen nur f¨ ur
148
Turbulente Str¨ omungen
voll ausgepr¨agte Turbulenz gilt, gew¨ahren solche Modelle keinen Zugang zum Ph¨ anomen der Transition. Sie hat, bez¨ uglich der mittleren Gr¨ oßen dieselbe Form wie die Navier-Stokes-Gleichung, besitzt jedoch gegen¨ uber dieser einen Zusatzterm, der aus der Konvektion stammt und diffusive Eigenschaften aufweist. Da die Dichte und die molekulare Z¨ ahigkeit im Inkompressiblen keinen ¨ Anderungen unterworfen ist, kann sie aus der Mittelwertbildung herausgenommen werden. 7.4.2
Die Reynoldsspannungen
Die turbulenten Geschwindigkeitsschwankungen (oder -fluktuationen) k¨ onnen also im Sinne eines Spannungstensors interpretiert werden. Dieser Spannungstensor wird der Gleichung folgend Reynoldsscher Spannungstensor und die Komponenten Reynolds-Spannungen genannt.
−%u0 2
τij,t
= −%ui uj = −%v 0 u0 −%w0 u0 0
0
−%u0 v 0 −%v
02
−%w0 v 0
−%u0 w0
−%v w . −%w0 2 0
0
(7.5)
Die Terme auf der Hauptdiagonalen werden als Normalspannungen, die anderen als Schubspannungen interpretiert. Die Reynoldsspannungen stellen nun neun zus¨ atzliche Unbekannte in dem obigen Gleichungssytem dar, f¨ ur die zus¨atzliche Beziehungen angegeben werden m¨ ussen. Offenbar l¨aßt sich diese Zahl zun¨achst auf sechs reduzieren, wenn man die Symmetrie des Spannungstensors beachtet. Die sechs verbleibenden Terme sind dann u0 2 , v 0 2 , w0 2 , u0 v 0 , v 0 w0 , u0 w0 . Diese Zahl reduziert sich bei im Mittel zweidimensionalen Str¨ omungen auf vier. Dabei ist zu beachten, daß die Turbulenz immer dreidimensional ist, d.h. die Geschwindigkeitsfluktuationen w0 2 6= 0. Hierbei sind die gemittelten Werte der Produkte der Schwankungsgeschwindigkeiten u0 2 , v 0 2 , u0 v 0 im allgemeinen von gleicher Gr¨oßenordnung (siehe Abschnitt 7.7). Den beiden Impulsgleichungen und der Kontinuit¨ atsgleichung stehen sechs Unbekannte gegen¨ uber. Das Gleichungssystem ist also nicht geschlossen. Diese durch Mittelwertbildung entstandene Tatomungen. sache nennt man daher auch das Schließungsproblem der Berechnung turbulenter Str¨ Die in der Folge skizzierten Ans¨atze zur L¨ osung dieses Problems leisten nichts weiter als einen funktionalen Zusammenhang zwischen den urspr¨ unglichen Variablen und den Reynoldsschen Korrelationsgliedern, wodurch die Anzahl der Gleichungen der Anzahl der Unbekannten wieder die Waage h¨alt.
7.5
Das Reynolds-Spannungsmodell
Eine M¨oglichkeit zur Bestimmung der unbekannten Korrelationsglieder besteht in der L¨ osung zus¨atzlicher Transportgleichungen f¨ ur diese Gr¨ oßen. Unter dem Begriff Transportgleichungen ver¨ steht man Differentialgleichungen, die etwas u von Korrelationen turbu¨ber die totale Anderung lenter Schwankungsgr¨oßen, wie z.B. Reynoldsspannungen aussagen. Diese Korrelationen k¨ onnen Ein- oder Mehrpunktkorrelationen sein. Ausgehen von der Reynoldsschen Gleichung (7.4) lassen sich direkt Transportgleichungen f¨ ur die Reynoldsspannungen formulieren. Modelle die eine solche Transportgleichung l¨osen werden implizite Reynolds-Spannungsmodelle oder kurz RS–Modelle genannt. Die meisten Transportgleichungen werden aus den Navier-Stokes-Gleichungen hergeleitet
7.5 Das Reynolds-Spannungsmodell
149
und enthalten Terme, die man physikalisch interpretieren kann. In die Navier-Stokes-Gleichung 0 werden Mittelwerte und Schwankungsgr¨ oßen eingef¨ uhrt. Diese Gleichung wird mit uj multipliziert und zeitlich gemittelt. 0
0
0
0
0 2 ∂%ui 0 0 ∂(%ui ) 0 ∂(%ui ) 0 0 ∂(%ui ) 0 ∂p 0 ∂ u uj + uj uk + uk uj + uj uk = −uj + µ uj 2i . ∂t ∂xk ∂xk ∂xk ∂xi ∂xk 0
(7.6)
Vertauscht man hier die Indizes i und j miteinander, ergibt sich eine weitere Gleichung, die zu der ersten addiert wird. 0
0
0
∂%uj ∂%ui 0 0 0 ∂(%ui ) 0 0 ∂(%uj ) 0 ∂(%ui ) ; uj + ui + uj uk + ui uk + uk uj ∂t ∂t ∂xk ∂xk ∂xk 0
0
0
+uk uj
∂(%uj ) ∂xk
0
0
∂(%uj ) ∂(%ui ) 0 0 + uj uk + ui uk = ∂xk ∂xk 0
0
0
0 2 0 ∂ 2 uj ∂p 0 ∂p 0 ∂ u 0 −uj − ui + µ uj 2i + µ ui 2 . ∂xi ∂xj ∂xk ∂xk 0
0
(7.7)
F¨ ur inkompressible Medien l¨aßt sich % k¨ urzen. Die ¨ ahnlichen Terme werden nun paarweise zu jeweils einem Term verschmolzen, indem man sozusagen die Produktregel ”r¨ uckw¨ arts” anwendet: 0 0 0 f g + f g = (f g) . Das Ergebnis ist die gesuchte Transportgleichung 0
0
∂ui uj | ∂t {z } 1.
0
+ uk |
1 − % |
Ã
0
0
∂(ui uj )
0
0
∂(ui uj uk ) ∂(ui ) 0 0 ∂(uj ) + ui uk + uj uk + = ∂xk ∂xk ∂xk ∂xk {z } | {z } | {z } 0
0
2. 0
0
0
!
3.
∂p ui ∂p uj 1 + + ∂xj ∂xi % {z } | 0
Ã
0
!
4. 0
0
∂uj ∂ 2 ui uj ∂ui + p0 p +ν − 2ν ∂xj ∂xi ∂x2k {z } | {z } | 0
Ã
0
5.
7.
6.
! 0 0 ∂ui ∂uj , ∂xk ∂xk {z }
(7.8)
8.
deren Bestandteile beschrieben und deren physikalische Bedeutung aufgezeigt wird. Die Bilanzgleichung f¨ ur die Reynoldsspannungen l¨ aßt sich auch alternativ formulieren: cij = dij + εij + Pij + φij1 + φij2 + φijw .
(7.9)
¨ ¨ d.h.Anderung an einem festen Ort u 1. Lokale Anderung, ¨ber die Zeit. ¨ 2. Konvektive Anderung, durch Geschwindigkeit uk verursacht. Die beiden ersten Terme 0 0 ¨ k¨onnen zu der substantiellen Anderung D(u u )/Dt zusammengefaßt werden. i j
0
cij =
0
Dui uj Dt
0
=
0
∂ui uj ∂t
0
+ uk
0
∂ui uj ∂xk
; instation¨arer u. konvektiver Term
3. Produktionsterme, die der Hauptstr¨ omung kinetische Energie zugunsten der Schwankungsgr¨oßen entziehen und damit der Turbulenz zuf¨ uhren. Diese Terme sind vor allem an der Wand von großer Bedeutung. Die Produktion kann ohne Modellierung exakt wiedergegeben werden. µ ¶ 0 0 ∂uj 0 0 ∂ui Pij = − ui uk + uj uk ; Produktion ∂xk ∂xk
150
Turbulente Str¨ omungen
4. Tripelkorrelation, die eine Umverteilung der Turbulenz durch Diffusion beschreibt. Diese ist oft von kleiner Gr¨oßenordnung und wird z.B. nach Daly & Harlow modelliert: " Ã !# 0 0 ∂u u ∂ k 0 0 i j dij = cs uk ul ∂xl ε ∂xk
; Diffusion
0
5. Druckdiffusionsglieder, ausgedr¨ uckt durch die Korrelation p0 ui . Die Druckschwankungen bewirken einen Austausch bzw. eine zus¨ atzliche Vermischung. Diese Terme werden bei RSModellen im allgemeinen vernachl¨assigt bzw. bei 5 mitber¨ ucksichtigt. 6. Druck-Scher-Korrelationen bewirken die Wandlung anisotroper Fluktuationen in isotrope Verteilungen. Druckdiffusion und Druck-Scher-Korrelationen werden gemeinsam modelliert, wobei ihre Wirkung nach Rotta durch mehrere Terme wiedergegeben wird. Das Druck-ScherKorrelations-Modell ist von großer Bedeutung f¨ ur die Eigenschaften des Gesamtmodells. µ ¶ ε 2 0 0 φij1 = −c1 ui uj − δij k ; Return-To-Isotropy-Term k 3 ¶ µ 1 ; Rapid-Term φij2 = −c2 Pij − δij Pkk 3 µ ¶ ε 3 0 0 3 0 0 0 φijw = c1w uk u0m nk nm δij − uk ui nk nj − uk uj nk ni fl k 2 2 ¶ µ 3 3 ; Wall-Reflection-Term +c2w φkm nk nm δij − φki2 nk nj − φki2 nk ni fl 2 2 7. viskoser Diffusionsterm, der durch die molekulare Z¨ ahigkeit verursacht wird, hat bei Reynoldszahlen Re > 1000 praktisch keine Bedeutung mehr. 8. Dissipationsanteil, der die kinetische in innere Energie umwandelt. Sie wird als skalare Gr¨oße modelliert, f¨ ur die eine heuristische Transportgleichung gel¨ ost wird (siehe 7.10.1).
2 εij = − δij ε mit 3
· ¸ ∂(%ε) ∂(%ε) ∂ µt ∂ε ε %ε2 + uj − (µ + ) = Cε1 Pk − Cε2 . ∂t ∂xj ∂xj P rε ∂xj k k
Die verschiedenen RS–Modelle unterschiedlicher Autoren unterscheiden sich in den verwendeten ¨ Modellkonstanten. Die folgende Tabelle gibt einen Uberblick u angige lineare Modelle. ¨ber g¨ Autoren
c1
c2
c1w
c2w
cs
cε
cε1
cε2
Str¨ omungstyp
Peric/Scheurer
1.80
0.60
0.50
0.18
0.22
0.18
1.45
1.90
Backward-Facing Step
Gibson/Launder
1.80
0.60
0.50
0.30
0.22
0.18
1.45
1.92
Highly Swirling Flow
Younis
3.00
0.30
0.75
0.50
0.22
0.15
1.40
1.80
Swirling Jets
¨ Tabelle 8: Ubersicht der Konstanten von Reynolds-Spannungs-Modellen
7.6 Das Wirbelviskosit¨ atsprinzip
7.6
151
Das Wirbelviskosit¨ atsprinzip
Kennzeichnend f¨ ur fast alle Turbulenzmodelle ist das Bem¨ uhen, die in den Bilanzgleichungen auftretenden Schwankungsgr¨oßen (ohne Ber¨ ucksichtigung des eigentlichen Turbulenzmechanismus) analog zum molekularen Transport zu beschreiben. Der Ausdruck µ ¶ ∂ui 0 0 µ − %ui uk , ∂xk
(7.10)
in (7.4) wird meist als die effektive (Gesamt-) Schubspannung τij =
τij,m + τij,t |{z} |{z} molekular
,
(7.11)
turbulent
bezeichnet. Man beachte, daß die Gr¨oße τij,t nicht durch stoffliche Viskosit¨ at sondern durch Mischbewegung der Teilchen bedingt ist, weshalb man auch von turbulenter ”Scheinreibung” spricht. Der wohl bekannteste Ansatz zur Modellierung der turbulenten Viskosit¨ at ist bereits sehr fr¨ uhzeitig ahigkeitsbeiwert des Newtonschen durch Boussinesq (1877) angegeben worden. In Analogie zum Z¨ Schubspannungsansatzes f¨ ur laminare Str¨ omungen ·
τij,m
∂uj ∂ui + =µ ∂xj ∂xi
¸ ,
(7.12)
f¨ uhrte Boussinesq f¨ ur den turbulenten Anteil τij,t die turbulente Austauschgr¨ oße µt ein. · τij,t =
−%u0i u0j
= µt
∂uj ∂ui + ∂xj ∂xi
¸ .
(7.13)
Da es sich bei µt im Unterschied zur Z¨ ahigkeit µ nicht um einen Stoffwert handelt, h¨ angt die Austauschgr¨oße ihrerseits noch von den urspr¨ unglichen Variablen ab. Die turbulente Austauschgr¨ oße µt bezeichnet man u ahigkeit oder Wirbelviskosit¨ at (engl. eddy ¨blicherweise als die turbulente Scheinz¨ viscosity): µt νt = , (7.14) % eine Gr¨oße, die der kinematischen Z¨ahigkeit ν = µ/% f¨ ur laminare Str¨ omungen entspricht. Mit Hilfe der Scheinz¨ahigkeit notieren wir f¨ ur die Gesamtschubspannung · τij = τij,m + τij,t = (µ + µt )
∂uj ∂ui + ∂xj ∂xi
¸ ,
(7.15)
sowie unter Verwendung von (7.4) die Impulsgleichung: ∂%ui ∂(%ui uj ) ∂p ∂ + =− + ∂t ∂xj ∂xi ∂xj
µ ¶ ∂ui (µ + µt ) . ∂xj
(7.16)
Die turbulente Scheinz¨ahigkeit h¨angt von der lokalen Turbulenzstruktur ab. Diese wird je nach Wahl des Turbulenzmodells durch unterschiedliche Parameter charakterisiert, worauf in den folgenden Abschnitten eingegangen werden soll.
152
7.7
Turbulente Str¨ omungen
Mischungsweghypothese
Einen Zugang zur Wirbelviskosit¨at bietet die Mischungsweghypothese. Zur Schließung der Gleichung (7.16) ben¨otigt man eine Abh¨angigkeit der turbulenten Viskosit¨ at von den globalen Str¨ omungsgr¨oßen, also einen Zusammenhang der Form µ ¶ ∂u ∂u µt = f u, v, , . (7.17) ∂y ∂x Im folgenden wollen wir den auf Prandtl (1915) bzw. Taylor (1925) zur¨ uckgehenden Mischungswegansatz skizzieren. Zur Herleitung des Zusammenhangs zwischen der Austauschgr¨ oße µt und der mittleren Geschwindigkeit betrachten wir das einfache Beispiel der Parallelstr¨ omung. Die Hauptstr¨ omungsrichtung m¨oge mit der Abzisse zusammenfallen, so daß man f¨ ur die Geschwindigkeiten u = u(y)
v=w=0
(7.18)
notiert. Angenommen, der Str¨omungszustand hat eine bestimmte kritische Kenngr¨ oße u ¨berschritten (Transition), so daß einzelne Fluidballen sich entlang des hinzugewonnenen Freiheitsgrades zwischen den Schichten hin und her zu bewegen beginnen. Auf ihrem Weg durch die Schichten beteiligen sich die Ballen an den turbulenten Austauschvorg¨ angen, bis sie sich hinsichtlich ihrer Eigenschaften nicht mehr von der aktuellen Schicht unterscheiden und somit zerfallen. Die Wegl¨ ange l ist in diesem Zusammenhang ein Maß f¨ ur die L¨ange, u at” beibeh¨ alt. ¨ber die ein solcher Ballen seine ”Identit¨
Abbildung 86: Austausch der Turbulenzballen in der Schicht y1
Unter Hinweis auf Abbildung 86 ergibt sich f¨ ur die momentan in einer Schicht y1 anzutreffenden Ballen einer geschwindigkeits¨armeren (y = y1 − l) und einer geschwindigkeitsreicheren (y = y1 + l) Schicht der Betrag der mittleren L¨angsschwankung ¯ 0¯ ¯u ¯ = 1 {|u(y1 − l) − u(y1 )| + |u(y1 + l) − u(y1 )|} 2¯µ ¶¯ ¯ 0¯ ¯ ¯ ¯u ¯ = l ¯ ∂u ¯ . (7.19) ¯ ∂y ¯ F¨ ur die Bestimmung der Geschwindigkeitsschwankung in Querrichtung |v 0 | stelle man sich die Kollision zweier Ballen vor. Befindet sich der schnellere Ballen stromab des langsameren Ballens,
7.7 Mischungsweghypothese
153
dann prallen beide mit der Relativgeschwindigkeit 2 |u0 | aufeinander und weichen mit |v 0 | seitlich aus. Befindet sich im umgekehrten Falle der langsame Ballen hinter dem schnelleren, so entfernen sich die Ballen voneinander. Die entstehende L¨ ucke muß aus Kontinuit¨ atsgr¨ unden von der Umgebung durch Querfluktuation aufgef¨ ullt werden. Die Schwankung in Querrichtung |v 0 | ist also in beiden F¨ allen von der gleichen Gr¨ oßenordnung wie die in L¨angsrichtung. F¨ ur die zeitlichen Mittelwerte der Schwankungsbetr¨ age kann man daher |u0 | = l |∂u/∂y| und |v 0 | = k |u0 | schreiben. Aus der Abbildung links wird ersichtlich, daß einer positiven L¨angsschwankung u0 immer eine negative Querschwankung v 0 zugeordnet ist und umgekehrt. Daher notiert man f¨ ur den zeitlichen Mittelwert des Korrelationsgliedes (u0 v 0 )
¯ ¯¯ ¯ (u0 v 0 ) = −k ¯u0 ¯ ¯v 0 ¯
(7.20)
bzw. mit (7.19) µ (u0 v 0 )
=−
∂u ∂y
¶2
(lm )2 ;
mit
2 lm = l 2 · κ2 .
(7.21)
lm = Mischungswegl¨ ange √ κ = k. Das negative Vorzeichen ist wegen der verschiedenen Vorzeichen von u0 und v 0 erforderlich . F¨ uhrt man die Gleichung (7.21) in den Ansatz (7.13) ein, so erh¨ alt man ¯ ¯µ ¶ ¯ ¯ 2 ¯ ∂u ¯ ∂u , (7.22) τt = % l m ¯ ¯ ∂y ∂y wodurch gesichert ist, daß ein positiver Geschwindigkeitsgradient auch einer positiven Schubspannung entspricht. Ein Vergleich mit (7.13) liefert f¨ ur die turbulente Scheinz¨ ahigkeit den Ausdruck ¯ ¯ ¯ ¯ 2 ¯ ∂u ¯ µt = % lm (7.23) ¯ ∂y ¯ . Um den Mischungswegansatz anwenden zu k¨ onnen, ist jetzt noch die Bestimmung des Mischungsweges als Funktion des Ortes notwendig. F¨ ur Str¨ omungen mit fester Begrenzung (Rohrstr¨ omung, Wandgrenzschicht) oder Str¨omungen mit freien Grenzen (Nachlaufstr¨ omung, Freistrahl) kann man n¨aherungsweise lm = κy
(feste Wand),
bzw.
lm = βb(x)
(freie Str¨ omung)
(7.24)
setzen. Hierin repr¨asentiert y den Wandabstand und b(x) die Nachlauf- oder Freistrahlbreite. Bei β und κ handelt es sich um problemunabh¨ angige Konstanten. Typische Werte sind: Wandgrenzschicht κ = 0.4; runder Freistrahl β = 0.075; ebener Freistrahl β = 0.09; Radialstrahl β = 0.125; ¨ ebener Nachlauf β = 0.16. Die bisherigen Uberlegungen wollen wir in einer einzigen Formel zusammenfassen ¯ ¯ ¯ ¯ τt ∂u 2 2 ¯ ∂u ¯ ∂u 0 0 −u v = = uτ = νt = lm ¯ ¯ , (7.25) % ∂y ∂y ∂y
154
Turbulente Str¨ omungen
aus der wir den ”plausiblen” Ansatz νt = (charakteristische L¨ange) × (charakteristische Geschwindigkeit) = lm uτ .
(7.26)
ableiten. Die sog. Schubspannungsgeschwindigkeit ist eine Funktion der Wandschubspannung τw : r uτ =
7.8
τw ∂u = lm . % ∂y
(7.27)
Nullgleichungsmodelle
Verwendet man zur Beschreibung der turbulenten Scheinz¨ ahigkeit νt einen Ansatz, der mit Hilfe rein algebraischer Beziehungen das System aus Gleichung (7.16) und der Kontinuit¨ atsgleichung schließt, so spricht man von einem algebraischen Turbulenzmodell. Da sich die Anzahl der insgesamt zu l¨osenden Differentialgleichungen nicht vom laminaren Str¨ omungstyp unterscheidet, nennt man solche Modelle auch Nullgleichungsmodelle. Die ¨ ortlichen Werte der Scheinz¨ ahigkeit werden durch das Turbulenzmodell als proportional zu den partiellen Ableitungen der mittleren Geschwindigkeit gesetzt. Daneben finden einige algebraische Zusatzterme zur Modellierung von charakteristischer L¨ange und Geschwindigkeit Verwendung. Alle derartigen Turbulenzmodelle kn¨ upfen im Ansatz an ¨ die o.a. Uberlegungen zur Mischungsweghypothese an. Es gilt beispielsweise f¨ ur eine Grenzschicht: νt =
¯ ¯
¯ ¯
2 ¯ ∂u ¯ lm ¯ ¯
∂y
,
(7.28)
wobei auch das turbulente L¨angenmaß lm aus dem mittleren Str¨ omungsfeld bzw. dem Abstand zur Wand ermittelt wird. In den letzten 20 Jahren fanden algebraische Turbulenzmodelle weite Verbreitung bei ingenieurtechnischen Anwendungen vor allem in der Aerodynamik. Die g¨ angigsten Modelle sind dabei die von Baldwin-Lomax und Cebeci-Smith. Das Problem aller algebraischen Modelle liegt darin, das durch den lokalen Ansatz, d.h. die ausschließliche Verwendung von Gr¨ oßen, die am Ort gebildet werden, keine Informationen u achtnis” ¨ber den Transport und damit das ”Ged¨ der Turbulenz vorhanden sind. Zur Erfassung dieser Effekte ist das L¨ osen einer oder mehrerer Transportgleichungen erforderlich.
7.9
Eingleichungsmodelle
Um den Transport turbulenter Eigenschaften durch das Str¨ omungsgebiet erfassen zu k¨ onnen, kann entweder eine Transportgleichung f¨ ur die turbulente Viskosit¨ at νt oder f¨ ur die turbulente kinetische Energie k gel¨ost werden. Beide Ans¨atze sind erfolgreich verfolgt worden. Das prominenteste Beispiele ist das Eingleichungsmodell von Spalart und Allmaras.
7.10
Zweigleichungsmodelle
Im Gegensatz zu Null- und Eingleichungsmodellen werden bei den Zweigleichungsmodellen Transportgleichungen f¨ ur zwei unterschiedliche Gr¨ oßen gel¨ ost. Der große Vorteil gegen¨ uber den einfacheren Modellen liegt dabei darin, daß sich durch die zwei Gr¨ oßen auch die beide wichtigsten Eigenschaften der Turbulenz, n¨amlich Intensit¨at und Struktur wiedergeben und transportieren lassen. Dabei ist es zun¨achst beliebig, welche beiden Gr¨ oßen gew¨ ahlt werden: u ¨blich sind die Kombinationen turbulente kinetische Energie und turbulente Dissipationsrate (k-ε), turbulente kinetische Energie und turbulente Frequenz (k-ω) oder turbulente kinetische Energie und turbulentes Zeitmaß
7.10 Zweigleichungsmodelle
155
(k-τ ). Im Gegensatz zu den RS–Modellen wird jedoch auf die Modellierung der Turbulenzanisotropie verzichtet. Mit zwei Gr¨oßen kann keine ”Richtung” der Turbulenzstruktur wiedergegeben werden. 7.10.1
Das k-ε Modell
Wertet man die Transportgleichung (7.8) f¨ ur die Reynoldsschen Spannungskomponenten statt f¨ ur ur die Spur des Spannungstensors %u0i u0i = 2%k aus, so ergibt sich jede Komponente %u0i u0j einzeln f¨ 0
0
0
0
0
0
0
∂(%ui ui uk ) ∂%ui ui ∂(%ui ui ) 0 0 ∂(%ui ) 0 0 ∂(%ui ) + uk + ui uk + ui uk + = ∂t ∂xk ∂xk ∂xk ∂xk à à ! ! 0 0 0 0 0 0 2 u0 u0 ∂p0 ui ∂p0 ui ∂u ∂u ∂ ∂u ∂u i i i i − − + p0 i + p0 i +µ − 2µ , ∂xi ∂xi ∂xi ∂xi ∂xk ∂xk ∂x2k | {z }
(7.29)
= 0
wobei der Druck–Scher–Korrelationsterm gerade verschwindet (Kontinuit¨ atsgleichung). Das Ergebnis ist eine Transportgleichung f¨ ur die turbulente kinetische Energie k: Ã 0 ! 0 0 0 0 ∂ui ∂ui ∂(%k) ∂(%k) 1 ∂(%kuj ) ∂p uj ∂2k 0 0 ∂(%ui ) + uj = −ui uj − − +µ −2µ , ∂t ∂xj ∂xj 2 ∂xj ∂xj ∂xj ∂xj ∂x2j | {z } | {z } | {z } Produktion Diffusion Dissipation
(7.30)
bei der Modellierung der Produktion kann auf den Ansatz von Boussinesq (7.13) zur¨ uckgegriffen werden, so daß sich f¨ ur den Produktionsterm ergibt: · ¸ ∂uj ∂ui ∂ui 0 0 ∂(%ui ) ≈ µt + . (7.31) Prod{k} = Pk = −ui uj ∂xj ∂xj ∂xi ∂xj Die Diffusionsterme werden zu einem einzigen zusammengefaßt und mit einem einfachen Ansatz modelliert: Diff{k} = −
· ¸ 0 0 0 1 ∂(%kuj ) ∂p uj ∂2k ∂ µt ∂k − +µ ≈ (µ + ) . 2 ∂xj ∂xj ∂xj P rk ∂xj ∂x2j
(7.32)
Die Dissipation wird sp¨ater als eigene Transportgr¨ oße ε modelliert: Diss{k} = %ε .
(7.33)
Die Transportgleichung f¨ ur die turbulente kinetische Energie k lautet damit zusammengefaßt: ∂(%k) ∂(%k) + uj − Diff{k} = Prod{k} − Diss{k} . ∂t ∂xj
(7.34)
· ¸ ∂(%k) ∂ µt ∂k ∂(%k) + uj − (µ + ) = Pk − %ε . ∂t ∂xj ∂xj P rk ∂xj
(7.35)
Eine weitere Transportgleichung wird f¨ ur die turbulente Dissipationsrate ε ben¨ otigt. Zwar l¨ aßt sich ausgehend von den Navier-Stokes Gleichungen auch eine Transportgleichung f¨ ur ε formulieren,
156
Turbulente Str¨ omungen
doch es hat sich gezeigt, daß damit keine erfolgreiche Simulation turbulenter Str¨ omungsvorg¨ ange gelingt. Stattdessen erwies es sich als g¨ unstig, eine sehr einfache heuristische Transportgleichung f¨ ur die Dissipationsrate zu verwenden: ∂(%ε) ∂(%ε) ε ε + uj − Diff{ε} = Cε1 Prod{k} − Cε2 Diss{k} . ∂t ∂xj k k
(7.36)
· ¸ ∂(%ε) ∂(%ε) ∂ µt ∂ε ε %ε2 − (µ + ) = Cε1 Pk − Cε2 + uj . ∂t ∂xj ∂xj P rε ∂xj k k
(7.37)
Die turbulente Scheinz¨ahigkeit µt wird dabei analog zur Mischungsweghypothese nach der Glei˜ und charakteristische Geschwindigkeit V˜ chung (7.26) bestimmt. Die charakteristische L¨ ange L sind dabei: 3
2 ˜=k L ε
und
√ k.
V˜ =
(7.38)
2
˜ × V˜ = %cµ k . µt = %cµ L ε
(7.39)
¨ Ahnlich wie bei den RS–Modellen gibt es auch unterschiedliche Varianten von k-ε Modellen, die sich nur in der Gr¨oße der Konstanten unterscheiden. Je nach Autor werden die Konstanten entweder durch Vergleich mit experimentellen Daten bestimmt oder aus weiteren Zwangsbedingungen abgeleitet. Da die Koeffizientens¨atze jeweils f¨ ur einzelne Str¨ omungsf¨ alle ermittelt wurden, sind sie oft auch nur f¨ ur diese oder sehr ¨ahnliche Str¨ omungen zu benutzen. Zwei S¨ atze von Koeffizienten k¨onnen aus der folgenden Tabelle entnommen werden. Autoren
cµ
cε1
cε2
P rk
P rε
Jones/Launder (1971)
0.09
1.55
2.0
1.0
1.3
Launder/Spalding (1974)
0.09
1.44
1.92
1.0
1.3
Chien (1982)
0.09
1.35
1.80
1.0
1.3
standard
Tabelle 9: Zusammenfassung der Konstanten des k-ε Modells
7.10.2
Das k-ω Modell
Wie bereits erw¨ahnt kann alternativ zu einer zweiten Transportgleichung f¨ ur die Dissipationsrate ε auch eine Gleichung f¨ ur die spezifische Dissipationsrate bzw. die turbulente Frequenz ω gel¨ ost werden. ε . (7.40) k Das am weitesten verbreitete k-ω Modell stammt von D.C. Wilcox. Es kann als das Standard k-ω Modell betrachtet werden. Die Modellierung erfolgt analog zur Herleitung des k-² Modells, wobei die Transportgleichung f¨ ur ω wiederum heuristischer Natur ist: ω = cµ
7.11 Wandturbulenz
157
· ¸ ∂(%k) ∂(%k) ∂ µt ∂k + uj − (µ + ) = Pk − cµ %kω , ∂t ∂xj ∂xj P rk ∂xj
(7.41)
· ¸ ∂(%ω) ∂(%ω) ∂ µt ∂ω ω + uj − (µ + ) = αω Pk − βω %ω 2 , ∂t ∂xj ∂xj P rω ∂xj k
(7.42)
mit · Pk = µt
Autor Wilcox (1988)
∂uj ∂ui + ∂xj ∂xi
¸
∂ui , ∂xj
µt = %
cµ
αω
βω
P rk
P rω
0.09
5/9
3/40
2.0
2.0
k . ω
standard
Tabelle 10: Zusammenfassung der Konstanten des k-ω Modells
Sowohl k-ε- als auch k-ω Turbulenzmodelle weisen einige typische Probleme auf: • k-ε-Modelle erweisen sich als ung¨ unstig f¨ ur die Erweiterung auf den wandnahen Bereich (lowRe, siehe Abschnitt 7.11). • k-ε-Modelle sind weniger sensibel gegen¨ uber den Freistromwerten der Turbulenzgr¨ oßen. Das ist von Vorteil, weil die Vorgabe von Randbedingungen bei unbekannten Str¨ omungen leichter f¨allt, ist aber andererseits von Nachteil, wenn spezielle Varianten von Einstr¨ omturbulenz untersucht werden sollen. • k-ε-Modelle sind in der Regel ung¨ unstig f¨ ur Effekte wie druckinduzierte Abl¨ osung. • k-ω-Modelle sind schlechter geeignet f¨ ur die Wiedergabe freier Scherschichten und Strahlen.
7.11
Wandturbulenz
¨ Die turbulente Schubspannung ist nach (7.4) eine Funktion der Korrelationsglieder u0i u0j . Ublicherweise formuliert man die Randbedingung an der Wand in Form der Wandhaftbedingung. Hier verschwinden somit auch s¨amtliche Schwankungskomponenten, und es verbleiben nur noch die z¨ ahen Spannungen der laminaren Str¨omung. Auch im wandn¨ achsten Bereich spielen die Spannungen aufgrund turbulenter Scheinreibung eine untergeordnete Rolle. Man nennt diesen auch z¨ ahe (laminare) ¨ Unterschicht. An die z¨ahe Unterschicht schließt sich ein Ubergangsbereich an, in dem die Geschwindigkeitsschwankungen turbulente Schubspannungen von der Gr¨ oßenordnung der Z¨ ahigkeitskr¨ afte erzeugen. Mit zunehmendem Wandabstand u ¨berwiegen schließlich die turbulenten Schubspannungen (vollturbulente Außenschicht). Abbildung 87 zeigt das typische Geschwindigkeitsprofil einer turbulenten Str¨omung u ache. Die Abbildung st¨ utzt sich auf den dimensi¨ber einer glatten Oberfl¨ onslosen Wandabstand y + sowie die dimensionslose Geschwindigkeit u+ y + := y
uτ ; ν
wodurch man wieder ¨ahnliche Profile erh¨ alt.
u+ :=
u , uτ
(7.43)
158
Turbulente Str¨ omungen
Abbildung 87: Dimensionsloses Geschwindigkeitsprofil bei turbulenter Str¨omung u ¨ber glatten Oberfl¨achen
Zur Erfassung der Wandturbulenz durch Modelle notiert man unter Verwendung des Mischungswegl¨angenansatzes lm = κy (vergleiche 7.24): τw %
= (ν + νt )
∂u ∂y
= (ν + κyuτ )
∂u . ∂y
(7.44)
Im Hinblick auf eine m¨oglichst allgemeing¨ ultige Aussage, ersetzen wir nun noch die dimensionsbehafteten Gr¨oßen u und y gem¨aß (7.43, 7.27) durch die dimensionslosen Gr¨ oßen u+ bzw. y + , und erhalten somit die gew¨ohnliche Differentialgleichung 1 = (1 + κy + )
∂u+ . ∂y +
(7.45)
Nach Trennung der Variablen l¨aßt sich diese Beziehung f¨ ur den vollturbulenten Bereich (y + À 1) u+ (y + ) = bzw.
u+ (y + ) =
¤ 1 £ ln 1 + κy + + C κ 1 ln(Ey + ) , κ
(7.46)
dem sogenannten logarithmischen Wandgesetz integrieren. Die Integrationskonstante ergibt sich aus Vergleich zu Experimenten mit E ≈ 8.432. Der G¨ ultigkeitsbereich des logarithmischen Wandgesetzes wird auch als high-Reynoldsnumber-Bereich bezeichnet. F¨ ur den wandnahen Bereich (y + < 1), der auch als low-Reynoldsnumber-Bereich bezeichnet wird, f¨ uhrt die Auswertung von (7.44) mit ν À νt auf u+ = y + .
(7.47)
Die beiden Beziehungen (7.47) und (7.46) wurden bereits in Abbildung 87 graphisch wiedergegeben. Hierbei ist zu beachten, daß die Abzissenkoordinate y + logarithmisch aufgetragen ist, weswegen das
7.11 Wandturbulenz
159
logarithmische Wandgesetz die Form einer Geraden annimmt. Den in der Abbildung skizzierten Verlauf einer den gesamten inneren Bereich zusammenfassenden Kurve erh¨ alt man durch Modifizierung der Mischungswegl¨ange. Van Driest (1956) schlug die Ber¨ ucksichtigung eines D¨ ampfungsfaktors £ ¤ lm = κ 1 − exp(−y + /A+ ) y , A+ = D¨ ampfungskonstante (7.48) vor, womit man anstelle von (7.45) eine Differentialgleichung ¡ ¢ ¤ ∂u+ £ 1 + κ 1 − exp(−y + /A+ ) y + = 1 , + ∂y
(7.49)
erh¨alt, die f¨ ur extreme Werte y + (0 bzw. ∞) mit den beiden o.g. Gesetzen (7.47/7.46) u ¨berlappt. Wandfunktionen (high-Re Randbedingung) Um die Punktanzahl bei der Aufl¨osung von Wandgrenzschichten zu begrenzen, werden oft sog. Wandfunktionen verwendet, d.h. es wird eine Randbedingung eingesetzt, die die Annahme beinhaltet, daß sich der wandn¨achste Rechenknoten bereits innerhalb des logarithmischen Bereichs der Grenzschicht befindet (y + > 10, besser y + ≈ 20 − 100). Die Schubspannungsgeschwindigkeit kann hier unter der Annahme turbulenten Gleichgewichts sowie (7.31, 7.39, 7.27) mit der turbulenten kinetischen Energie parametrisiert werden: turbulentes Gleichgewicht: Pk = %ε µ ¶2 ∂u k2 µt = % %cµ ∂y µt ¶2 µ ∂u νt = cµ k 2 ∂y uτ
1/2 = c1/4 . µ k
(7.50)
Damit ergibt sich die Wandschubspannung, die als Randbedingung in den Impulsgleichungen erforderlich ist, zu τw = % u2τ τw = %
µ
1/2 (c1/4 µ kp )
up κ ln(Eyp+ )
¶
1/4 1/2
τw =
%cµ kp κ up . ln(Eyp+ )
(7.51)
Der Index p markiert Gr¨oßen am wandn¨ achsten Knoten, wobei up die Geschwindigkeitskomponente parallel zur Wand darstellt. Bei einem k-ε Modell, das typischerweise in Kombination mit Wandfunktionen zum Einsatz kommt, m¨ ussen Randbedingungen f¨ ur beide transportierten Gr¨ oßen gesetzt werden. W¨ ahrend f¨ ur die turbulente kinetische Energie k eine Neumann-Randbedingung an der Wand verwendet wird, muß die turbulente Dissipationsrate ε am wandn¨ achsten Knoten fixiert werden. Nach (7.39) gilt kp2 εp = %cµ µt Mit µt aus der Mischungsweghypothese (7.24, 7.26) l¨ aßt sich daf¨ ur schreiben 3/4 3/2 kp2 cµ kp εp = %cµ = , %κyp uτ κyp
(7.52)
160
Turbulente Str¨ omungen
wobei yp f¨ ur den senkrechten Abstand des wandn¨ achsten Knotens steht. Eine analoge Formulierung f¨ ur ωp ist m¨oglich wird jedoch u ¨blicherweise nicht verwendet. Low-Re Randbedingung Im Bereich der z¨ahen Unterschicht findet man analog zu (7.47) einen Geschwindigkeitsverlauf, der sich linear zum Wandabstand verh¨alt. % u(y) = u2τ · y . (7.53) µ Wenn y die wandnormale Richtung ist, ergeben sich die Schwankungsgr¨ oßen u0 , v 0 und w0 aus einer Auswertung der Kontinuit¨atsgleichung in Wandn¨ ahe zu: u0
=
a1 y + a2 y 2 + a3 y 3 + . . . ∼ y
v0
=
+b2 y 2 + b3 y 3 + . . . ∼ y 2
w0
=
c1 y + c2 y 2 + c3 y 3 + . . . ∼ y k ∼ y2,
→
(7.54)
u0 v 0 ∼ y 3
Damit lassen sich die einzelnen Terme der Transportgleichung f¨ ur k in ihrem asymptotischen Verlauf zur Wand absch¨atzen: Dk = 0 = Pk − ε − Diff{k} Dt
k − Gleichung: Produktion
Pk ∼ u0 v 0
Diffusion
d dk dy (µt dy )
Diff{k} ∼
du dy
∼
d dk 2 dy (k /ε dy )
∼ y3
steigt mit dritter Ordnung
4
steigt mit vierter Ordnung
∼y
(7.55)
Im allgemeinen wird daher ein Gleichgewicht von Diffusion und Dissipation angenommen, woraus sich eine Randbedingung am wandn¨achsten Punkt f¨ ur ε formulieren l¨ aßt: d2 k − %ε dy 2 2νkp d2 k ∂k = ν 2 = . . . mit { = 0} . . . = 2 . dy ∂y y
0 = µ →
εp
(7.56)
F¨ uhrt man nun eine a¨hnliche Absch¨atzung f¨ ur die ε-Transportgleichung durch, zeigt sich das Problem des k-ε-Modells: ε − Gleichung:
Dε = 0 = Pε − Diss{ε} − Diff{ε} Dt
(7.57)
ε ε2 Pk ∼ y Diss{ε} ∼ ∼ y −2 , Diff{ε} ≈ 0 . k k Wegen des unterschiedlichen Verhaltens der Terme l¨ aßt sich diese Gleichung nicht l¨ osen. Dieses Problem kann nur durch komplizierte Modifikationen umgangen werden. Einen besseren Zugang zum semiviskosen Bereich der Grenzschicht erlaubt das k-ω Modell, das keine derartige Problematik aufweist. Analog zu (7.56) lautet die Randbedingung f¨ ur die ω-Gleichung: Pε ∼
ωp =
6ν . βy 2
(7.58)
161
8
Literaturu ¨ bersicht
Leider ist die deutschsprachige Literatur auf dem Gebiet der numerischen Str¨ omungsberechnung nicht sehr zahlreich. Das Vorlesungsskript lehnt sich in weiten Teilen an das Buch von K.A. Hoffmann [1] an. Wer sich weiterhin f¨ ur Methoden der numerischen Str¨ omungsberechnung interessiert, sei auf die allgemeinen Lehrb¨ ucher [6, 7, 8, 9, 10, 11] verwiesen. F¨ ur die Vertiefung im Bereich der Finite–Volumen–Verfahren sind [2, 3, 4] und vor allem [5] zu empfehlen. Im Hinblick auf einzelne Fachgebiete bietet spezielle Literatur, auch f¨ ur den Anf¨ anger, in der Regel den besseren Einstieg. Folgende Beispiele seien hier angef¨ uhrt f¨ ur Partielle Differentialgleichungen [12], Str¨omungsmechanik und Turbulenz (allgemein) [13, 14, 15, 16, 17, 18], Tensorrechnung [19], Mehrgitter-Verfahren [20], Methode der Fourierreihen [21], Gittergenerierung [22], Turbulenzmodellierung [23, 24, 25]. Ferner stehen am Hermann-F¨ottinger-Institut verschiedene Skripte zum betreffenden Themenbereich zur Verf¨ ugung [26, 27, 28, 29, 30, 31, 32, 33, 34]. Allen, die sich eingehender mit numerischer Str¨omungsberechnung und deren Anwendung in ingenieurtechnischen Disziplinen besch¨ aftigen wollen, sei in diesem Zusammenhang vor allem das Vorlesungsskript zur Lehrveranstaltung ”Finite– Volumen Methode in der Numerischen Thermofluiddynamik” [35] ans Herz gelegt. References [1] K.A. Hoffmann; Computational Fluid Dynamics for Engineers, Engineering Education System, Austin, TX 78713-8148, USA, 1998, (ISBN 0-9623731-4-1) [2] Suhas V. Patankar; Numerical Heat Transfer and Fluid Flow, McGraw-Hill, 1980 (ISBN 0 07 48740 5) [3] B.E. Sch¨onung; Numerische Str¨ omungsmechanik, Springer, 1990 (ISBN 3 540 53137 8) [4] B. Noll; Numerische Str¨ omungsmechanik, Springer, 1993 [5] J.M. Ferziger, M. Peri`c; Computational Methods for Fluid Dynamics, Springer, 1996 (ISBN 3 540 59434 5) [6] C. Hirsch; Numerical Computation of Internal and External Flows, Vol. 1 & 2, John Wiley & Sons, 1989, (ISBN 0 471 92385 0, 0 471 92452 0) [7] C.A.J. Fletcher; Computational Techniques for Fluid Dynamics, Vol. 1 & 2, Springer, 1988 (ISBN 3 540 19466 5) [8] D.A. Anderson, J.C. Tannehill, R.H. Pletcher; Computational Fluid Mechanics and Heat Transfer, McGraw Hill, 1984 (ISBN 0 07 050328 1) [9] R. Peyret, T.D. Taylor; Computational Methods for Fluid Flow, Springer, 1983 (ISBN 3 540 13852 X) [10] T. Cebeci, P. Bradshaw; Physical and Computational Aspects of Convective Heat Transfer, Springer, 1984 [11] M. Sch¨afer; Numerik im Maschinenbau, Springer, 1999 [12] G.D. Smith; Numerische L¨ osung von partiellen Differentialgleichungen, Vieweg, 1970 (ISBN 3 582 08296 8) [13] J.O. Hinze: Turbulence - An Introduction to Its Mechanism and Theory McGraw-Hill, 1959
162
Literaturu ¨ bersicht
[14] H. Tennekes, J.L. Lumley; A First Course in Turbulence MIT-Press, Cambridge (Mass.), USA, 1972 [15] J.C. Rotta; Turbulente Str¨ omungen, Teubner, 1972 [16] J. Spurk; Str¨ omungsmechanik, Springer, 1991 [17] M. Jischa; Konvektiver Impuls-, W¨ arme- und Stoffaustausch, Vieweg, 1982 [18] H. Schade, E. Kunz; Str¨ omungslehre, de Gruyter, 1989 [19] H. Schade; Tensoranalysis, de Gruyter, 1997 [20] W. Hackbusch; Multi-Grid Methods and Applications, Springer, 1985 (ISBN 3 540 127615) [21] R. C. Le Bail; Use of Fast Fourier Transformations for solving partial differential equations in physics, J. Comp. Phys., (9), 1972 [22] J.F. Thompson, Z.U.A. Warsi, C. Wayne Mastin; Numerical Grid Generation, Elsevier, 1985 (ISBN 0 444 00985 X) [23] W. Rodi; Turbulence Models and Their Application in Hydraulics, Elsevier, 1984 [24] B.E. Launder, D.B. Spalding; Lectures in Mathematical Models of Turbulence, Academic Press, 1972 [25] D.C. Wilcox; Turbulence Modeling for CFD, DCW Industries Inc., La Ca˜ nada, 1993 [26] R. Wille; Str¨ omungslehre, Vorlesungsskript, HFI, 1991 [27] H.H. Fernholz; Grenzschichttheorie I und II, Vorlesungsskript, HFI, 1997 [28] H.E. Fiedler; Turbulente Str¨ omungen, Vorlesungsskript, HFI, 1995 [29] A. Michalke; Gasdynamik, Vorlesungsskript, HFI, 1994 [30] H. Schade; Kontinuumsphysik, Vorlesungsskript, HFI [31] H. Schade; Dimensionsanalyse, Vorlesungsskript, HFI, 2000 [32] T. Rung; Statistische Turbulenzmodellierung, Vorlesungsskript, HFI, 2001 [33] W.W. Baumann, C. B¨ohning, F. Thiele; Einf¨ uhrung in die Informationstechnik f¨ ur Ingenieure, Vorlesungsskript, HFI, 1999 [34] M. Stoewer, K. Grunert, S. Schmidt, W.W. Baumann; Aktuelle Arbeitstechniken der Informations- und Kommunikationstechnik f¨ ur Ingenieure, Vorlesungsskript, HFI [35] W.W. Baumann, M. Schatz, F. Thiele, Finite–Volumen–Methode in der Numerischen Thermofluiddynamik, Vorlesungsskript, HFI, 1999