Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

Unsteady 2d

Erste Schritte

Die steady 2d tutorial hypothesisiert, dass die Entladung eines Flusses im Laufe der Zeit konstant ist. Allerdings ist die Entladung eines Flusses nie wirklich konstant (d.h. nie stabil) und variiert leicht von Sekunde zu Sekunde, auch in kontrollierten Flüssen. Um die inhärent unruhigen Flüsse zu modellieren, können wir die zeitabhängige Entladung (z.B. ein Flut-Hydrograph) in einem numerischen Modell als eine Reihe von stetigen Entladungen diskretisieren. Figure 1 illustriert die Diskretierung einer natürlichen Flut-Hydrographie in Stufen von stetigen Strömungen, die in diesem Kapitel verwendet werden. Beachten Sie, dass der Hydrograph ** mit Time = 15000** beginnt, was das Ergebnis der trocken-initialisierten stationären2d-Simulation ist.

unsteady flow discharge quasi steady telemac telemac2d hydrodynamic

Figure 1:Die Diskretierung eines kontinuierlichen Hydrographen in Stufen von stetigen Strömen (qualitative Hydrograph für dieses Tutorial).

This chapter features the implementation of a quasi-steady discharge hydrograph into a hydrodynamic Telemac2d simulation through the definition of an inflow sequence (red circles in Fig. 1). The tutorial builds on the steady simulation of a discharge of 35 m3^3/s and requires the following data from the pre-processing and steady2d tutorials, which can be downloaded by clicking on the filenames:

Betrachten Sie das Speichern der Dateien in einem neuen Ordner, wie /unsteady2d-tutorial/.

Modellanpassungen

Die Implementierung von unruhigen Strömen erfordert die Anpassung von Schlüsselwörtern und zusätzlichen Schlüsselwörtern (z.B. für die Verknüpfung von flüssigen Grenzdateien) in der Steuerungsdatei (.cas) aus dem stationären Tutorial (download stationär2d.cas).

Hotstart anfängliche Bedingungen

Die folgenden Beschreibungen beziehen sich auf Abschnitt 4.1.3 in der Telemac2d manual.

Um die Berechnungen zu beschleunigen und eine gut konvergierende Basislinie für die quasi-steady Berechnungen bereitzustellen, nutzt dieses Tutorial die Ausgabe der stationären 2d-Simulation mit trockenen Anfangsbedingungen wieder (siehe Abschnitt Ursprüngliche Bedingungen). Diese Art der Modell-Initialisierung wird auch hotstart genannt. Um die Simulation zu starten, muss die stetige Ergebnisdatei r2dsteady.slf als *PREVIOUS COMPUTATION FILE definiert werden:

COMPUTATION CONTINUED : YES
PREVIOUS COMPUTATION FILE : r2dsteady.slf / results of 35 CMS steady simulation
/ INITIAL TIME SET TO ZERO : 0 / avoid restarting at 15000

Ein INITIAL TIME SET TO ZERO Keyword kann definiert werden, um die Zeit aus der vorherigen Berechnungsdatei von 15000 an 0 zurückzusetzen. Dieses Tutorial nutzt diese Option jedoch nicht und setzt sich zum Zeitpunkt 15000 fort.

Um mehrdeutige Definitionen von Anfangsbedingungen zu vermeiden, deaktivieren* (d.h. Zeilen mit / löschen oder herauskommen) das INITIAL CONDITIONS Keyword:

/ INITIAL CONDITIONS : 'ZERO DEPTH'

Allgemeine Parameter

Um das in Fig. 1 dargestellte Hydrograph zu simulieren, muss die Simulation für mindestens weitere 15000 Zeitschritte laufen (d.h. von t=15000 bis t=30000). Da das Ausdrucken (Zwischen-)Ergebnisse eine signifikante Auswirkung auf die Rechenzeit hat, erhöhen Sie den grafischen Ausdruckzeitschritt auf 500 (d.h. verringern Sie die Ausdruckfrequenz im Vergleich zu 200, die für die stetige Simulation verwendet wird):

TIME STEP : 1.
NUMBER OF TIME STEPS : 15000
GRAPHIC PRINTOUT PERIOD : 500
LISTING PRINTOUT PERIOD : 500

Open Bounding

Dieser Abschnitt enthält die Implementierung von quasi-steady (unsteady) Strömungsbedingungen an den offenen Flüssigkeitsgrenzen mit einem zeitabhängigen Zufluss-Hydrograph und einem nachgeschalteten stage-discharge relation (erfasst die Rationalitäten hinter der Wahl von Randtypen von der pre-processing tutorial).

--

*Ein Quasi-Stand Hydrograph definieren

Mit dem trocken-initialisierten Modell, das unter tt=15000 endet, muss der Hydrograph unter 15000 beginnen, obwohl der Modellstart die Zeit Null der unruhigen Simulation darstellen wird. Um den dreieckigen Hydrograph in Fig. 1 zu implementieren, erstellen Sie im Simulationsordner eine neue Datei namens inflows.liq**. Öffnen Sie die neue inflows.liq-Datei in einem Texteditor und fügen Sie die rot umkreisten Punkte in Fig. 1 als zeitabhängige Flussinformationen an den *upstream (1) und *downstream (2) offenen (liquid) Grenzen hinzu. In dieser Datei:

So sollte die inflows.liq-Datei ähnlich aussehen:

# Inflow hydrograph
#
T	Q(1)
s	m3/s
15000	35
16000	35
17000	50
19000	1130
22000	101
25000	35
99000	35

Die ursprüngliche boundaries.cli-Datei beschreibt die nachgeschaltete Grenze mit prescribed Q und H (Typ 5 5 5). In der unruhigen Berechnung muss Q jedoch frei sein (anders muss Q(2) in inflows.liq mit einer zusätzlichen Spalte definiert werden) und deshalb erfordert die boundaries.cli-Datei einige Anpassungen:

Um die richtigen Einstellungen zu überprüfen Randgrenzen-unsteady.cli für die unsteady Simulation herunterladen.

In der steering-Datei passen Sie den -Dateinamen für die Randbedingungen an und fügen Sie den Link zu *inflows.liq hinzu:

BOUNDARY CONDITIONS FILE : boundaries-unsteady.cli
/ ...
LIQUID BOUNDARIES FILE : inflows.liq

--

Rating Curve (Stage-Discharge Relation) Um die Nutzung einer stage-discharge relation für eine offene (flüssige) Grenze zu aktivieren, muss das Schlüsselwort STAGE-DISCHARGE CURVES der Lenkdatei hinzugefügt werden. Dieses Stichwort erfordert eine Liste bestehend aus den folgenden Zahlen:

Das STAGE-DISCHARGE CURVES Schlüsselwort ist eine Liste, die einer der drei Ganzzahlen (d.h. entweder 0, 1, oder 2) den offenen (liquid) Grenzen zuordnet. In diesem Tutorial aktiviert die Einstellung STAGE-DISCHARGE CURVES : 0;1 die Nutzung einer Stage-discharge relation für die nachgeschaltete Grenze nur dann, wenn die *upstream open border number 1 an 0 und die downstream open limit number 1 an 0 gesetzt ist.

Das Formular (Kurve) der Stage-discharge relation muss in einer Phase-Decharge-Datei definiert werden (ASCII Textformat). Solche Dateien gelten typischerweise für die stromabwärtige Begrenzung eines Modells an Kontrollabschnitten (z.B. einem freien Überlaufwehr). Dieses Tutorial verwendet die folgende Beziehung, die in einer Datei namens ratingcurve.txt (download) gespeichert ist:

# Downstream ratingcurve.txt
#
Z(2)	Q(2)
m	m3/s
371.33	35
371.45	50
371.86	101
375.73	1130
379.08	2560

Um die Stage-Decharge-Datei zu verwenden, *definieren Sie die STAGE-DISCHARGE ... Keywords in der Lenkdatei:

/ steering.cas
STAGE-DISCHARGE CURVES : 0;1
STAGE-DISCHARGE CURVES FILE : ratingcurve.txt

--

Remove Ambiguous Open Bounding Definition Keywords

Um mehrdeutige Definitionen der offenen Grenzen zu vermeiden, deaktivieren* (d.h. Zeilen mit / löschen oder herauskommen) die PRESCRIBED ... Schlüsselwörter in der Lenkdatei:

/ PRESCRIBED FLOWRATES  : 35.;0.
/ PRESCRIBED ELEVATIONS : 374.80565;371.33

Numerische Parameter

Die mit 3, 4, 5 oder 15 definierten Prädiktor-Korrektor-Systeme (SCHEME FOR ...** Schlüsselwörter setzen auf einen Parameter, der die Anzahl der Iterationen an jedem Zeitschritt für Konvergenz festlegt (siehe steady2d tutorial). Für quasi-steady-Simulationen empfehlen Telemac-Entwickler, diesen Parameter an 2 oder etwas größer zu setzen (Abschnitt 7.2.1 in der Telemac2d manual). *Damit die folgende Zeile in die Lenkdatei:

NUMBER OF CORRECTIONS OF DISTRIBUTIVE SCHEMES : 2

Kontrollabschnitte

Eine konsequente Möglichkeit, Flussläufe an offenen Grenzen oder anderen bestimmten Linien (z.B. Nebeneinflüsse oder Diversionen) zu überprüfen, besteht darin, das CONTROL SECTIONS Keyword zu verwenden. Ein Steuerabschnitt wird durch eine Folge benachbarter Knotenzahlen definiert. Zum Beispiel, um die Flußmittel über die offenen Grenzen in diesem Tutorial zu überprüfen, überprüfen Sie die Knotenzahlen in der boundaries.cli Datei (z.B. 144 bis 32 für die Upstream- und 34 bis 5 für die Downstream-Grenze). Dann erstellen Sie ** eine neue Textdatei** (z.B. *control-sections.txt) und:

Beispielsweise kann die folgende control-sections.txt-Datei mit der stetigen Simulation in diesem Tutorial verwendet werden (download control-sections.txt).

# control sections steady2d
2 -1
Inflow_boundary
144 32
Outflow_boundary
34 5
Expand to view an example for coordinate-based control sections

Die folgende Steuerabschnittsdatei verwendet Punktkoordinaten anstatt Knoten-ID-Nummern, um drei Abschnitte zu definieren. Lesen Sie mehr unter Gifford-Miears & Leon (2013) (d.h. Abschnitt 4.1.2 in der Baxter tutorial).

# control section file using coordinates
3 0
affluent_creek
19572355.895577 626823.06664 1952347.2733 626923.9554
main_river_upstream
1946449.824 635349.6070 194.919 635209.807
main_river_downstream
1967737.56993 620784.415608 1967998.16429 620638.17849

Die zweite Zeile in dieser Datei sagt TELEMAC, 2Steuerungsabschnitte zu verwenden, die durch Knoten-IDs (-1) definiert sind. Um die Steuerungsabschnitte für die Simulation zu verwenden, fügen Sie folgendes zur Lenkdatei hinzu:

/ steady2d.cas
/ ...
SECTIONS INPUT FILE :  control-sections.txt
SECTIONS OUTPUT FILE : r-control-flows.txt

So wird das Nachlaufen der Simulation die Flussmittel über die beiden definierten Steuerabschnitte in eine Datei namens r-control-flows.txt schreiben. Die Telemac2d manual gibt Erläuterungen in Abschnitt 5.2.2.

Führen Sie Telemac2d Unsteady

Gehen Sie in den Konfigurationsordner der lokalen TELEMAC-Installation (z.B. ~/telemac/v9.0.0/configs/) und laden Sie die Umgebung (z.B. pysource.openmpi.sh - verwenden Sie die gleiche wie für die Erstellung von TELEMAC).

cd ~/telemac/v9.0.0/configs
source pysource.gfortranHPC.sh

Mit der geladenen TELEMAC-Umgebung wechseln Sie in das Verzeichnis, in dem die unruhige Simulation lebt (z.B. /home/telemac/v9.0.0/mysimulations/unsteady2d-tutorial/) und die *.cas-Datei mit dem telemac2d.py-Skript ausführen.

cd ~/telemac/v9.0.0/mysimulations/unsteady2d-tutorial/
telemac2d.py unsteady2d.cas

Eine erfolgreiche Berechnung sollte mit folgenden Zeilen (oder ähnlichen) in Terminal enden:

[...]
                    *************************************
                    *    END OF MEMORY ORGANIZATION:    *
                    *************************************

CORRECT END OF RUN

ELAPSE TIME :
                            10  MINUTES
                            32  SECONDS
... merging separated result files

... handling result files
       moving: r2dunsteady.slf
       moving: r-control-sections.txt
... deleting working dir

My work is done

Telemac2d wird die Dateien r2dunsteady.slf und r-control-sections.txt schreiben. Beide Ergebnisse sind auch im TELEMAC-Repository dieses eBook verfügbar, um das Nachbearbeitungs-Tutorial zu erreichen:

Nachbearbeitung

Open Boundary Flows

Die unruhige Simulation beabsichtigt, zeitvariable Ströme (Grippen) über die vor- und nachgeschalteten Flüssigkeitsgrenzen zu modellieren. Die oben definierten control sections ermöglichen Einblicke in die korrekte Anpassung des Flusses an die stromaufwärtige Zuflussgrenze (vorgeschrieben Q durch inflows.liq) und die stromabwärtige Abflussgrenze (vorgeschrieben H durch ratingcurve.txt). Figure 2 zeigt die modellierten Durchflussraten, bei denen der Inflow boundary eine perfekte Übereinstimmung mit inflows.liq zeigt und der Outflow boundary die Abflachung der Abflusskurve im modellierten mäanderförmigen Schotterbettfluss widerspiegelt.

result unsteady flow discharge telemac2d hydrodynamic inflow outflow control sections

Figure 2:Die simulierten Ströme fließen über die vorgeschalteten Inflow boundary und die nachgeschalteten Outflow boundary Steuerabschnitte.

Der Spitzenzufluss entspricht den angegebenen 1130 m3^3/s, während der Abflussspitzenabfluss nur 889 m3^3/s beträgt und der Peak ca. 1070 Sekunden dauert (Zufluss bei tt=19000 und Abfluss bei tt\approx20070), um durch den Abschnitt zu reisen.

Visualisierung mit QGIS

Die Ergebnisse der unruhigen Simulation können visualisiert und Snapshots exportiert werden, z.B. GeoTIFF oder Shapefile-Formate in QGIS, ähnlich wie in der steady2d post-processing. Insbesondere die neuesten QGIS-Release ermöglichen es, die Selafin-Ergebnisse mesh-Datei (hier: r2dunsteady.slf) als QGIS-Netzschicht zu laden. Daher launch QGIS, gehen Sie zum Layer-Menü und klicken Sie auf Add Layer**** ** Hinzufügen von Mesh Layer...* Im Popup-Fenster (Data Source Manager / Mesh), select r2dunsteady.slf, click Add, and Close. Figure 3 zeigt die importierte r2dunsteady mesh-Schicht in QGIS mit einer Softlight-Mischung (in der Symbology) auf Google-Satellitenbild.

qgis telemac2d unsteady quasi steady simulation results slf

Figure 3:Die unsteady (quasi-steady) Simulationsergebnisse Datei r2dunsteady.slf importiert als Netzschicht in QGIS und überlagert auf google Satellitenbild Google, n.d..

Die Simulationsausgangsparameter (z.B. U, V, oder Q) an einem ausgewählten Zeitschritt können in den Schichteigenschaften der r2dunsteady-Schicht gesteuert werden (Doppelklicken Sie darauf im Layers-Panel).

Um ein Video der Simulationsergebnisse** zu erstellen, verwenden Sie den Time Controller (siehe Aktivierung unter Fig. 4). Die Frequenz der Bilder kann durch Klicken auf das Zahnrad des Zeitreglers eingestellt werden, und Bildsequenzen, die durch Klicken in der Play Taste gespielt werden. Zusätzlich verwendet Fig. 5 eine Überlagerung von Wassertiefe Pixelfarben (Kontourendiagramm) und Strömungsgeschwindigkeitsvektoren, die im Layer Styling Panel definiert sind. Die Nord- und Entladepfeile und der Titel sind Dekoratoren, die in View***Decorators gefunden werden können.

Die exportierte Bildreihe kann in ein Video mit Video-Editing-Software umgewandelt werden, wie z.B. die einfachen und kostenlosen OpenShot(gut für Windows) oder kdenlive(gut für Linux)-Tools. Das unten angezeigte Feld verfügt über ein exemplarisches Video, das mit kdenlive2@ erstellt wurde.

References
  1. Gifford-Miears, C., & Leon, A. (2013). Tutorial on the use of TELEMAC-2D Hydrodynamics model and Pre-/Post-processing with BlueKenue for flood-inundation mapping in Unsteady Flow Conditions. Oregon State University. https://web.eng.fiu.edu/arleon/courses/Transient_flows/Tutorials/TELEMAC_2D/TELEMAC_2D_Tutorial_Baxter.pdf
  2. Google. (nd). Google Satellite Imagery. https://mt1.google.com/vt/lyrs=s&x=%7Bx%7D&y=%7By%7D&z=%7Bz%7D