Die ersten Schritte in der numerischen Modellierung eines Flusses mit BASEMENT bestehen in der Umwandlung eines *Digital Elevation Model (DEM) in ein Rechennetz. Dieses Tutorial führt durch die Erstellung eines QGIS-Projekts zur Umwandlung eines DEM (GeoTIFF) in ein Rechennetz, das mit verschiedenen numerischen Modellierungssoftware in diesem eBook verwendet werden kann. Am Ende dieses Tutorials haben ABSCHNITT-Nutzer im Format SMS 2dm ein Rechennetz generiert.
QGIS Setup¶
Koordinatenreferenzsystem (Koordinatenreferenzsystem)¶
Starten Sie QGIS und create a new QGIS project, um mit diesem Tutorial zu beginnen. Wie in der QGIS Tutorial dargestellt, wurde für das Projekt ein Koordinatenreferenzsystem (Koordinatenreferenzsystem) eingerichtet. Dieses Beispiel verwendet Daten eines Flusses in Bayern (Deutschland-Zone 4), die folgende Koordinatenreferenzsystem erfordert:
Im QGIS Top-Menü gehen Sie zu Projekt*Properties.
Aktivieren Sie die Registerkarte Koordinatenreferenzsystem.
Geben Sie
Germany_Zone_4ein und wählen Sie das Koordinatenreferenzsystem unter Fig. 1.Klicken Sie auf Apply und OK*.

Figure 1:Define Germany Zone 4 als Projekt Koordinatenreferenzsystem.
Erhalten Sie das BASEmesh Plugin¶
Installieren Sie BASEMENT’s BASEmesh Plugin (Anweisungen aus dem BASEMENT Systemhandbuch):
Laden Sie den QGIS Plugin Manager: *Plugins Menü > Verwalten und Installieren von Plugins.
Gehen Sie zur Registerkarte Einstellungen.
Scrollen Sie nach unten (Plugin Repositories Listbox in Fig. 2), klicken Sie auf Add....
Geben Sie im Popup-Fenster ein:
einen Namen für das neue Projektarchiv, zum Beispiel
BASEmesh Plugin Repositorythe repository address: https://
people .ee .ethz .ch / ~basement /qgis _plugins /qgis _plugins .xml alle anderen Voreinstellungen beibehalten.
Klicken Sie auf OK. Das neue Repository sollte nun im Listenfeld Plugin Repositories sichtbar sein. Wenn die Verbindung *OK ist.

Figure 2:Fügen Sie das BASEMENT-Repository zum QGIS-Plugins-Manager hinzu.
Noch im Plugins Popup-Fenster gehen Sie zurück auf den *All Tab und geben Sie im Suchfeld
basemeshein.Finden Sie das newest BASEmesh (d.h. ** Verfügbare Version** >= 2.0.0) Plugin und klicken Sie auf Install Plugin.
Nach der erfolgreichen Installation Close das Plugins Popup-Fenster.
Vergewissern Sie sich, dass das BASEmesh 2 Plugin jetzt im Menü QGIS’ Plugins verfügbar ist (siehe Fig. 3).

Figure 3:Das BASEmesh 2 Plugin ist nach der erfolgreichen Installation im QGIS Plugins Menü verfügbar.
Digitales Oberflächenmodell (DOM)¶
This tutorial uses an application-ready DEM in GeoTIFF Gridded Cell (Raster) Daten format that stems from a Lidar point cloud. The DEM raster provides height (Z) information from a section of a gravel-cobble bed river in South-East Germany, which constitutes the baseline for the computational grids featured in the next sections. To get the provided DEM in the QGIS project:
** Laden Sie das Beispiel Digitales Oberflächenmodell (DOM) GeoTIFF* herunter und speichern Sie es im gleichen Ordner (
/Project Home/oder Unterverzeichnis) wie das oben erstellte qgz-Projekt.Fügen Sie die heruntergeladene Digitales Oberflächenmodell (DOM) als neue Rasterschicht in QGIS hinzu:
In QGIS’ Browser finden Sie das Project Home-Verzeichnis, in dem Sie das Digitales Oberflächenmodell (DOM) tif heruntergeladen haben.
Ziehen Sie den Digitales Oberflächenmodell (DOM) tif aus dem *Projekt Home Ordner in das QGIS’ *Layer Panel.
Um später die Abgrenzung bestimmter Regionen des Flussökosystems zu erleichtern, fügen Sie eine satellite imagery basemap (XYZ-Fliese) unter der DEM hinzu und passen Sie die Layer-Symbologie an.
Die Digitales Oberflächenmodell (DOM) sollte nun auf der Karte angezeigt werden (wenn nicht: mit der rechten Maustaste auf die Digitales Oberflächenmodell (DOM)-Schicht und klicken Sie auf *Zoom auf Layer(s) im Kontextmenü) wie unter Fig. 4 dargestellt.

Figure 4:Die importierte Digitales Oberflächenmodell (DOM) auf einer Google-Satelliten-Bildungsbasiskarte (Quelle: Google / GeoBasis-DEBKG 2019). Die Strömungsrichtung ist von links nach rechts nach dem Pfeil Q.
2dm Mesh erstellen¶
Die Generation einer SMS 2dm nutzt die QGIS BASEmesh plugin und erfordert die Zeichnung
Line Shapefile mit Modellgrenzen und internen Bruchlinien zwischen Modellregionen mit unterschiedlichen Eigenschaften (Abschnitt Modell Boundary und Breaklines);
Line Shapefile mit Modellgrenzen für die Zuweisung von Zu- und Abflussbedingungen (Abschnitt Flüssige (Hydraulik)) und a
Point Shapefile mit Markern für die Definition von Merkmalen der Modellregionen (Abschnitt Landmarken).
Diese Shapefiles ermöglichen die Erzeugung einer Quality Mesh. Letztendlich sind Höheninformationen interpolated to the quality mesh und das resultierende Mesh wird als SMS 2dm-Datei gespeichert. Die nächsten Abschnitte gehen Schritt für Schritt durch den Verfahrensschritt mit detaillierten Erläuterungen. Weitere Materialien und Zwischenprodukte werden im ergänzenden Datenrepository (materials-bm) für dieses Tutorial bereitgestellt.
Modell Boundary und Breaklines¶
The model boundary defines the model extent and can be divided into regions with different characteristics (e.g., roughness values) through breaklines. Breaklines indicate, for instance, channel banks and the riverbed (main channel), and need to be inside the DEM extents. Boundary lines and breaklines are stored in a Line Shapefile that BASEmesh uses to find both model boundaries and internal breaklines between model regions. For this purpose, Erstellen einer Line Shapefile with one Text Field called LineType and call it breaklines.shp (Layer > Create Layer > New Shapefile Layer). Click on QGIS’ Layers menu > Create Layer > New Shapefile Layer... (see Fig. 5). Make sure to select ESRI: 31494 - Germany_Zone_4 as CRS
.

Figure 5:Erstellen Sie eine neue Formdatei aus dem QGIS’ Layers Menü.
Es ist wichtig, dass sich die Linien nicht überschneiden, um mehrdeutige oder fehlende Definitionen von Regionen zu vermeiden und sicherzustellen, dass alle Grenzlinien geschlossene Bereiche (Flächen) bilden. Aktivieren Sie daher Snapping:
Aktivieren Sie die Snapping Toolbar: View**** Toolbars*******
Snapping toolbarEnable Snapping

Ermöglichen Sie Schnappen für
Vertex, Segment und Middle of Segments
.*Snapping on Intersections
.
Als nächstes bearbeiten Sie breaklines.shp mit einem Klick auf den gelben Stift
und zeichnen Sie die in Fig. 6 angegebenen Zeilen durch Aktivierung Add Line Feature
.
Boundäre des Modells links und rechts Boodplaingrenzen:
Delineieren Sie die äußeren Grenzen der Flutplaine.
Stellen Sie sicher, dass alle Punkte und Zeilen innerhalb der DEM layer sind.
Überqueren Sie nicht den Fluss (eingebettet durch die Satellitenbildkarte angezeigt).
Finalize* jede Zeile mit Rechtsklick*.
Für das Feld LineType verwenden Sie Textwerte wie boundary Left/right floodplain.
Siehe die red Zeilen in Fig. 6.
**Breaklines der linken Bank (LB) und der rechten Bank (RB)*:
Zeichnen Sie Linien entlang des benetzten Hauptkanals in der Satellitenbildarchiv-Basiskarte angezeigt.
Stellen Sie sicher, dass die Linie perfekt mit den vorkonstruierten Überschwemmungsgrenzlinien übereinstimmt (das ist, wo Snapping hilft); so müssen die harten Bruchlinien des Hauptkanals und die Überschwemmungsgrenzlinien die Überschwemmungen ohne Lücke zwischen den Leitungen umschließen.
Für das Feld LineType verwenden Sie Textwerte wie hardline LB/RB.
Beziehen Sie sich auf die yellow-orange Linien in Fig. 6 (Anmerken Sie die Abgrenzung der kleinen Nebenflüsse in der oberen linken Ecke der linken Bank und unten rechts an der rechten Bank).
Großbritannien:
Zeichnen Sie Linien entlang der Kiesbanken, die in der Satellitenbildkarte im Hauptkanal sichtbar sind.
Stellen Sie sicher, dass die Linie mit den vorgefertigten Hauptkanalbruchlinien (Hardlines) perfekt zusammenfällt; so müssen die harten Bruchlinien des Hauptkanals und die Kiesbankbruchlinien die Kiesbanken ohne Lücke zwischen den Linien umschließen.
Für das Feld LineType verwenden Sie Textwerte wie hardline Kiesbank.
grüne Linien in Fig. 6.
Optional: *Breaklines of block ramps:
Finden Sie die groben Blockrampen (abstoßende Gewässer) in der Satellitenbildarchiv-Basiskarte und delineieren Sie sie durch Linien über den benetzten Hauptkanal.
Stellen Sie sicher, dass die Linie perfekt mit den Hauptkanalbruchlinien zusammenfällt; so müssen die harten Bruchlinien des Hauptkanals und die Blockrampenbruchlinien die Blockrampen ohne Spalt zwischen den Leitungen umschließen.
For the LineType field use text values such as hardline sss (or anything else - the example refers to the German word Schüttsteinschwelle).
blaue Linien in Fig. 6.
Optional: *Breakline einer Sandbank:
Finden Sie die Sandbank-Lagerung in der oberen linken Ecke in Fig. 6 auf der Satellitenbildkarte und delineieren Sie sie durch eine glatt gekrümmte Linie.
Stellen Sie sicher, dass die Linie endet perfekt mit den Hauptkanalbrüchen zusammenfallen und einen geschlossenen Bereich ohne Lücke zwischen den Linien umschließen.
Für das Feld LineType verwenden Sie Textwerte wie hardline sand.
Referentin **** in der oberen linken Ecke inFig. 6.
Zu richtige Zeichnungsfehler verwenden Sie das Vertex Tool
. Schließlich speichern Sie die neuen Zeilen (Angaben von breaklines.shp), indem Sie auf das Save Layer Edits
symbol klicken. Stop (Toggle) Editing durch erneutes Klicken auf den gelben Stift
Symbol.

Figure 6:Überwundene und Brechlinien, um breaklines.shp zu zeichnen. In Strömungsrichtung (*Q Pfeil) werden linke und rechte Banken und Flutplaine ausgerichtet.
Der Standardschichtstil ist Single Symbol. Für eine bessere Darstellung, doppelklicken Sie auf die Breaklines-Schicht, gehen Sie auf die *Symbology-Tab und wählen Sie Kategorisiert (oder Graduiert) anstelle von Single Symbol (an der Spitze des Layer Properties-Fensters). Im Feld Value wählen Sie LineType, klicken Sie dann auf die Klassifikation Taste unten im Fenster Layer Properties. Die Listbox zeigt nun die LineType Werte an.
Flüssige (Hydraulik)¶
Die Flüssigkeitsgrenzen definieren, wo hydraulische Bedingungen, wie eine gegebene Ableitungs- oder Phasenentladungsbeziehung, am Modellzufluss (Upstream) und Abfluss (downstream) Grenzen gelten. So benötigt ein funktionelles Flussmodell mindestens eine Zuflussgrenze (Linie), in der der Massenstrom in das Modell und eine Abflussgrenze (Linie), in der Massenflüsse das Modell verlassen. Zu diesem Zweck rufen Erstellen einer Line Shapefile liquid-boundaries.shp an und definieren ** zwei Textdatenfelder** mit dem Namen type und stringdef. Stellen Sie sicher, dass *snapping noch deabled ist (wie oben im Abschnitt Modell Boundary und Breaklines) und Toggle (Start) Editing
die neuen liquid-boundaries.shp. Dann zwei Linien ziehen:
Aktivieren Sie Add Line Feature
.Eine Zuflussgrenze zeichnen (siehe auch Fig. 7):
Zoomen Sie in den Zuflussbereich der Digitales Oberflächenmodell (DOM)-Grenze, wo zwischen** die oben erstellten -Flottplain-Grenzlinien liegen.
Starten Sie eine Linie auf der linken Bank (linke Seite der untenstehenden Figur) und zogen nach Osten (d.h. nach rechts), um sieben weitere Punkte über den Fluss zu machen.
Der siebte Punkt muss coincide* mit dem Ende der rechten Bank ** Floodplain Grenzlinie**.
So kommt der stromaufwärtige Fluss von der rechten Seite der Zuflussgrenzlinie (d.h. die stromaufwärts gerichtete Strömungsrichtung wird
rightfür das numerische Modell sein).Finalize* die Zeile mit einem right-click*, und geben Sie
Inflowim *type-Feld undinflowim stringdef-Feld ein.Zu richtige Zeichnungsfehler verwenden Sie das Vertex Tool
.

Figure 7:Die Zulaufgrenzlinie wird von links nach rechts gezogen (d.h. der Vorstrom kommt von der rechten Seite der Zulaufgrenzlinie). Die Reihenfolge der zu verwendenden Tasten wird durch die roten Boxen hervorgehoben.
Dann ziehen Sie eine Abflussgrenze (siehe auch Fig. 8):
Zoomen Sie in den Abflussbereich der Digitales Oberflächenmodell (DOM)-Grenze, wo zwischen** die oben erstellten Flottplain-Grenzlinien liegen.
Starten Sie eine Linie auf der linken Bank (oben der unteren Figur) und bewegen Sie Südwesten (d.h. nach unten), um sieben weitere Punkte über den Fluss zu machen.
Der siebte Punkt muss coincide* mit dem Ende der rechten Bank ** Floodplain Grenzlinie**.
So kommt der stromaufwärtige Fluss von der rechten Seite der Abflussgrenzlinie (d.h. die stromaufwärts gerichtete Strömungsrichtung wird
rightfür das numerische Modell sein).Finalize* die Zeile mit einem right-click*, und geben Sie
Outflowim *type-Feld undoutflowim stringdef-Feld ein.Zu richtige Zeichnungsfehler verwenden Sie das Vertex Tool
.

Figure 8:Die Abflussgrenzlinie wird von oben nach unten gezogen (d.h. der stromaufwärtige Strom kommt von der rechten Handseite der Abflussgrenzlinie).
Schließlich speichern Sie die flüssigen Grenzlinien (Angaben von liquid-boundaries.shp), indem Sie auf das Save Layer Edits
symbol klicken. Stop (Toggle) Editing durch erneutes Klicken auf den gelben Stift
Symbol.
Landmarken¶
Regionenmarker werden innerhalb von Bereichen platziert, die durch Randlinien und Bruchlinien definiert sind. Jeder Bereichsmarker (d.h. ein Punkt irgendwo im Bereich) weist beispielsweise eine Materialkennung (MATIDs) und einen maximalen Netzzellenbereich zu. Letztere Option ermöglicht es, kleine Netzzellen (mesh-Bereiche) im aktiven Kanalbett zu definieren und kann größere Zellbereiche in den Flutplainbereichen. Erstellen einer Point Shapefile named raster-points.shp mit folgenden Definitionen (siehe auch Fig. 9):
Definieren Sie den Dateinamen als region-points.shp (oder ähnlich)
Stellen Sie sicher, dass der Geometrietyp *** ist
The CRS
corresponds to Germany Zone 4 (see project CRS)Fügen Sie drei Neue Felders hinzu (Zusätzlich zum Standard Integer* Typ ** Feld):
max area = Dezimalzahl* (Länge = 10, *Präzision = 3)
****** = ===*************======*****************************************************************************************
Typ = Textdaten (** Länge** = 20)
Klicken Sie auf OK, um die neue Punktformdatei zu erstellen.

Figure 9:Definitionen und Felder, die der Region-Punkte-Formdatei hinzugefügt werden.
Betrachten Sie ** Deaktivieren Sie Snapping** zum Zeichnen der Region Marker, um zu vermeiden, dass Region Marker mit jeder Zeile zusammenfallen. Dann Toggle (Start) Editing
die neue region-points.shp-Datei und aktivieren Add Point Feature*
. Zeichnen Sie einen Punkt in jedem Bereich, der von Bruchlinien und (flüssigen) Begrenzungslinien eingeschlossen ist. Abhängig vom scheinbaren Flächentyp aus der Satellitenbildarchiv-Basiskarte, ordnen Sie eine der fünf Regionen unter Tab. 1 an jeden Punkt.
Table 1:Region names and their max_area, MATID, and type field values.
Region | Flussbett | Blockrampen | Gravel Banken | Floodplas | Sand |
|---|---|---|---|---|---|
*max area | 25.0 | 20.0 | 25.0 | 80,0 | 20.0 |
** MATID** | 1 | 3 | ANHANG | ||
** Typ** | Flussbett | Block-Rampe | Kroatisch | Flutpla | sand deposit |
Nach dem Zeichnen eines Punktes in jedem geschlossenen Bereich, speichern Sie die Region Punktmarker (Angaben von region-points.shp), indem Sie auf das Save Layer Edits
symbol klicken. Stop (Toggle) Editing durch erneutes Klicken auf den gelben Stift
Symbol. Figure 10 zeigt ein Beispiel für Region Markerpunkte innerhalb der von den Breaklines delineierten Bereiche.

Figure 10:Beispiel für Bereichspunktmarker in den Projektgrenzen.
Erstellen eines Qualitäts-Mesh¶
Das hochwertige Mesh-Tool von BASEmesh schafft ein rechnerisch effizientes dreieckiges Mesh basierend auf Shewchuk (1996) und innerhalb der oben definierten Modellgrenzen. Das Tool verbindet Mesh-Eigenschaften mit der Region Shapefile ([siehe oben Abschnitt unter Landmarken), aber es enthält keine Elevationsdaten. Nach dem Erzeugen eines Qualitätsnetzes müssen also Höheninformationen hinzugefügt werden. Dieser Abschnitt erklärt die Qualitätsmaschenerzeugung und der nächste Abschnitt zeigt die Interpolation der unteren Erhebungen.
Im Menü QGIS’ Plugins klicken Sie auf BASEmesh 2**** QUALITY MESHING, um das Qualitätsmaschenwerkzeug zu öffnen. Geben Sie im Popup-Fenster folgende Einstellungen ein (siehe auch Fig. 11):
Triangulation Zwänge Rahmen:
Breaklines = Breaklines* (siehe Modell Boundary und Breaklines)
Halten Sie alle anderen Standardeinstellungen.
Rahmen der Regionen:
Aktivieren Sie das Kontrollkästchen Regionen.
Regionsmarkerschicht = Regionen-Punkte (siehe Landmarken).
** Aktivieren Sie das Kontrollkästchen MATID** und wählen Sie das regions-points formfile’s MATID Feld aus.
Aktivieren Sie das Feld Maximale Fläche* und wählen Sie die regions-points formfiles max area Feld aus.
Mesh-Domainrahmen: Standardeinstellungen beibehalten.
String Definitionsrahmen:
Aktivieren Sie die String Definitionen Checkbox.
*String Definitionsschicht = flüssige Grenzen.
*String-Definitionen ID-Feld = stringdef.
*Aktivieren Sie die Include in 2DM-Knotenstrings (BASEMENT 3) Checkbox.
Ignorieren Sie alle BASEMENT 2.8 Optionen.
Einstellungen Frame: halten Standardeinstellungen.
Ausgangsrahmen:
Klicken Sie auf den Browse... Button und definieren Sie einen Dateinamen 2dm im
/Project Home/-Verzeichnis, wie prepro-tutorial quality-mesh.2dm.
Klicken Sie auf die Schaltfläche Run, um das Qualitätsmaschen zu erstellen.

Figure 11:Definitionen in BASEmeshs Qualitätsmaschenwerkzeug.
Qualität Meshing kann Zeit nehmen. Nach einer erfolgreichen Mesh-Generierung wurde die Datei prepro-tutorial quality-mesh-interp.2dm erzeugt.
Interpolate Bottom Elevation to Quality Mesh¶
The BASEmesh plugin’s Interpolation tool projects bottom elevation data onto the quality mesh by interpolation from another mesh or a DEM Gridded Cell (Raster) Daten. Here, we use the above-introduced DEM GeoTIFF. To run the interpolation, open BASEmesh’s Interpolation tool (QGIS Plugins menu > BASEmesh 2 > Interpolation) and make the following settings (see also Fig. 12):
In der Mesh-Schicht zum Interpolieren-Rahmen, wählen Sie prepro-tutorial quality-mesh.
In der Registerkarte Basic finden Sie den Elevationsquelle Rahmen und aktivieren Sie die Aktivierung über Digitales Oberflächenmodell (DOM) (Raster) Funktaste.
Wählen Sie dem.tif GeoTIFF (siehe Digitales Oberflächenmodell (DOM) Sektion) als Rasterschicht.
Im Output-Rahmen klicken Sie auf die Browse-Taste, um einen Ausgabenetznamen im
/Project Home/-Verzeichnis zu definieren, z.B. prepro-tutorial quality-mesh-interp.2dm*Klicken Sie auf ****, um das höheninterpolierte Mesh zu erstellen.

Figure 12:BASEmesh’s Z-Wert (Höhe) Interpolation Tool und Setup, um unteren Höhenwerte dem Qualitätsmaschen zuzuordnen.
Nach der Erhebungsinterpolation überprüfen Sie, ob die Erhebungen korrekt zugeordnet sind (d.h. die Bed Elevation sollte Werte zwischen *367 und 387 m a.s.l) genommen haben. Um die Schichtvisualisierung (Symbology) zu ändern, doppelklicken Sie auf das neue *prepro-tutorial quality-mesh-interp und gehen Sie zum Symbology Band. Wählen Sie Graduiert an der Spitze des Fensters, setzen Sie die Value auf Z, *Method auf COLOR, wählen Sie eine Farbrampe und klicken Sie auf die Klassifikation unten (unterer Teil des Fensters). Klicken Sie auf Apply und OK, um die Symbologieeinstellungen zu schließen. Figure 13 zeigt ein Beispiel für die Visualisierung des höheninterpolierten Netzes.

Figure 13:Verifizieren Sie die Höheninterpolation mit abgestuften Farbrampen.
Verwendung mit BASEMENT¶
Die in diesem Tutorial erstellte 2dm mesh-Datei kann direkt mit ABSCHNITT verwendet werden, wobei wie später erläutert nur die Definition von Eigenschaften der geometrischen (z.B. Rauheitskoeffizienten) und Flüssigkeit (z.B. Entladungen) erforderlich ist.
- Shewchuk, J. R. (1996). Triangle: Engineering a 2D quality mesh generator and Delaunay triangulator. In M. C. Lin & D. Manocha (Eds.), Applied Computational Geometry Towards Geometric Engineering (pp. 203–222). Springer. 10.1007/BFb0014497