Flood Modeller Tutorial Module01 Provisional

From Tuflow
Jump to navigation Jump to search

Introduction

In this module we will link an existing 2D TUFLOW domain to an existing Flood Modeller 1D model. The 2D TUFLOW domain will represent the floodplain in the study area, and the 1D Flood Modeller model will represent the watercourse and all online structures.

1D-2D linked models are able to utilise the individual benefits of 1D and 2D solution schemes. In this example, the 1D Flood Modeller scheme is used to represent the watercourses where the flow is essentially uni-directional. A 2D scheme is suited to the representation of floodplains where more complex flow patterns may occur.

The main watercourse channel is not very well represented using the 5m 2D cell size. In parts, the watercourse is only 5-10m wide and the 5m cell size could be considered too coarse to accurately represent the watercourse topography.
Poor 2d rep.png
Using a cell size that is coarse relative to the width of the watercourse channel may reduce the accuracy of the conveyance in the channel. There are two options for improving the representation of the creek channel:

  • decrease the width of the 2D cells; and/or
  • model the channel as a 1D network, dynamically linked to the 2D domain (the floodplain).

In this module we will adopt the second approach of modelling the creek as 1D elements using Flood Modeller.

TUFLOW may be dynamically linked to 1D networks using the hydrodynamic solutions of ESTRY (TUFLOW 1D), Flood Modeller, XP-SWMM and 12D Solutions’ Dynamic Drainage.

Setting up a 1D/2D model where the 1D channel cuts through the 2D domain is probably the most time-consuming type of a model to setup. However, the reduction in simulation time can be beneficial and make this a good approach. For this module, the complete Flood Modeller 1D model has been provided, to allow for progressing through the module in a relatively short period of time.


Existing Model Data

This tutorial builds upon the 2D TUFLOW domain that was constructed as part of Module 1 and Module 2 of the TUFLOW Tutorial Model.
The model developed in these tutorial modules already contains some culverts modelled as 1D elements. The culverts are modelled in ESTRY, TUFLOW's internal 1D engine. One of these culverts will be kept in ESTRY and the other will be added to the Flood Modeller model.
The 2D boundary conditions (upstream inflows and downstream stage-discharge boundary) will be removed from the model. These will instead be represented in Flood Modeller as it is a more typical schematisation for a 1D/2D linked model.
The existing TUFLOW model consists of:

  • Definition of Active/In-Active Areas
  • Definition of Land Use areas for the assignment of roughness values
  • 1D ESTRY culverts
  • 1D/2D boundary links to connect the 1D ESTRY culverts to the 2D TUFLOW domain.

GIS and Model Inputs

The steps necessary to modify each of the GIS inputs are demonstrated in QGIS using SHP and GPKG formats. If you would like to view instructions for the tutorial in ArcGIS or MapInfo these can be found on the archive page for Tutorial Module 01.

Define the External 1D Networks

This part of the module creates the GIS layers that specify the location of the Flood Modeller nodes that are to be connected to the 2D domain. Follow the instructions below for your preferred GIS format.

Define the 1D/2D Boundary Links

This part of the module creates the 1D/2D boundaries to link the Flood Modeller 1D component to the TUFLOW 2D domain. Follow the instructions below for your preferred GIS format.

Define Bank Elevations

This part of the module defines the bank elevations of the watercourse which are the elevations of the 1D/2D boundary links created in the previous section. Follow the instructions below for your preferred GIS format.

Deactivate 2D cells

This part of the module describes the steps to deactivate the 2D cells where the 1D model is replacing the 2D solution. Follow the instructions below for your preferred GIS format.


Modify Simulation Control Files

Now that we have made all of the necessary changes to the GIS layers, we need to update the TUFLOW control files and Flood Modeller Simulation Files to create a linked model.

TUFLOW Control Files

TUFLOW Geometry Control File

We will first update the TUFLOW Geometry Control (TGC) file. The following changes have been changes made to the geometry:

  • We have deactivated the cells along the watercourse which are represented in the 1D Flood Modeller component of the model
  • We have enforced bank elevations along the watercourse.


  1. In the FMT_Tutorial\FMT_M01\TUFLOW\model folder, save a copy of M01_5m_002.tgc as FMT_M01_001.tgc.
  2. Open FMT_M01_001.tgc

  3. QGIS - SHP

    Add an extra command line after Read GIS Code ==..\model\gis\2d_code_FMT_M01_001_R.shp

    Read GIS Code BC == gis\2d_bc_FMT_M01_HX_001_R.shp  ! Deactivates the cells where the watercourse has been modelled in 1D

    Note that the order of the commands is important. The layer 2d_code_FMT_M01_001_R.shp first activates cells within the modelled area then the layer 2d_bc_FMT_M01_HX_001_R.shp deactivates selected cells along the watercourse.

    QGIS - GPKG

    Add an extra command line after Read GIS Code == 2d_code_FMT_M01_001_R.shp

    Read GIS Code BC == 2d_bc_FMT_M01_HX_001_R.shp  ! Deactivates the cells where the watercourse has been modelled in 1D

    Note that the order of the commands is important. The layer 2d_code_FMT_M01_001_R first activates cells within the modelled area then the layer 2d_bc_FMT_M01_HX_001_R deactivates selected cells along the watercourse.

  4. Topography amendments should be added in a new section at the bottom of the TGC. These are:

  5. QGIS - SHP

    Read GIS Z HX Line MAX == gis\2d_bc_FMT_M01_HX_001_L.shp | gis\2d_bc_FMT_M01_HX_001_P.shp ! Defines the bank crest levels (1D/2D boundary cell elevations). The 'MAX' option prevents any zpt elevations from being lowered

    The two GIS layers must be read in together on the same command line. This tells TUFLOW to associate the points within the 2d_bc_FMT_M01_HX_001_P.shp layer (defining elevation) with the polylines within the 2d_bc_FMT_M01_HX_001_L.shp layer (defining bank location).

    QGIS - GPKG

    Read GIS Z HX Line MAX == 2d_bc_FMT_M01_HX_001_L | gis\2d_bc_FMT_M01_HX_001_P ! Defines the bank crest levels (1D/2D boundary cell elevations). The 'MAX' option prevents any zpt elevations from being lowered

    The two GIS layers must be read in together on the same command line. This tells TUFLOW to associate the points within the 2d_bc_FMT_M01_HX_001_P layer (defining elevation) with the polylines within the 2d_bc_FMT_M01_HX_001_L layer (defining bank location)
    .
  6. Save the file. The geometry control file is now ready to be used.

TUFLOW Boundary Condition Control File


We will now update the TUFLOW Boundary Condition control file (tbc) to reference the model boundary files created in previous steps.

  • Add the 1D/2D boundaries that link the Flood Modeller open channel to the 2D floodplain
  • Update the 1D/2D boundaries which link the ESTRY culverts to the 2D floodplain, as some of these culverts are now modelled in Flood Modeller
  • Remove the external inflows applied to the TUFLOW model, as these are now applied in Flood Modeller
    1. Open M02_5m_001.tbc and save a copy as FMT_M01_001.tbc.
    2. Remove the boundary linking to the TUFLOW inflows by:

      QGIS - SHP

      Put an exclamation mark before the line reading:

      Read GIS BC == gis\2d_bc_M01_002_L.SHP

    3. Update the 1D/2D boundary links at the ESTRY culverts with the new layer:

    4. Read GIS BC == gis\2d_bc_M04_culverts_001_L.shp ! This command reads in SX boundaries linking the 1D ESTRY culverts to the 2D domain

    5. Add reference to the 1D/2D boundary links that connect Flood Modeller to the 2D floodplain:

    6. Read GIS BC == gis\2d_bc_FMT_M01_HX_001_p.shp | gis\2d_bc_FMT_M01_HX_001_L.shp ! This command reads in HX boundaries linking the 1D Flood Modeller watercourse to the 2D domain

      QGIS - GPKG

      Put an exclamation mark before the line reading:

      Read GIS BC == 2d_bc_M01_002_L

    7. Update the 1D/2D boundary links at the ESTRY culverts with the new layer:

    8. Read GIS BC == 2d_bc_M04_culverts_001_L ! This command reads in SX boundaries linking the 1D ESTRY culverts to the 2D domain

    9. Add reference to the 1D/2D boundary links that connect Flood Modeller to the 2D floodplain:

    10. Read GIS BC == 2d_bc_FMT_M01_HX_001_P | 2d_bc_FMT_M01_HX_001_L ! This command reads in HX boundaries linking the 1D Flood Modeller watercourse to the 2D domain

    11. Save the file. The boundary control file is now ready to be used.

    TUFLOW Control File

    Finally, we need to edit the TUFLOW control file (.tcf). We will:

  • Remove reference to model parameters that will be read in from Flood Modeller
  • Read in the GIS layer of the Flood Modeller Nodes
  • Read in the GIS layers to create Water Level Lines along the Flood Modeller component of the model (optional)
  • Add a reference to the ESTRY Control File
  • Update reference to the boundary control file (.tbc) and geometry control file

    1. In the \FMT_Tutorial\FMT_M01\TUFLOW\runs folder, save a copy of the TUFLOW file created as a part of module 2 (M02_5m_001.tcf) as FMT_M01_001.tcf.
    2. In a linked Flood Modeller - TUFLOW model, the Start Time, End Time and 2D Timestep are read from the Flood Modeller .ief file. It is best practice to therefore remove these parameters from the tcf. And an exclamation mark in front of each of the below commands.

      ! SIMULATION TIME CONTROL COMMANDS
      Timestep == 1.5 ! Specifies a 2D computational timestep of 1.5 seconds
      Start time == 0 ! Specifies a simulation start time of 0 hours
      End Time == 3 ! Specifies a simulation end time of 3 hours


    3. We need to read in the GIS layers of the Flood Modeller Nodes. Place the below command line anywhere in the .tcf. It is good practice to create a section within the .tcf to reference all 1D commands:

    4. QGIS - SHP

      Read GIS X1D Nodes == ..\model\gis\1d_x1d_FMT_M01_nodes_001_P.shp ! GIS layer referencing node IDs from Flood Modeller

      QGIS - GPKG

      Read GIS X1D Nodes == 1d_x1d_FMT_M01_nodes_001_P ! GIS layer referencing node IDs from Flood Modeller

    5. Add commands to read in the GIS layers referencing Water Level Lines drawn along the Flood Modeller component of the model:

    6. QGIS - SHP

      Read GIS X1D Network == ..\model\gis\1d_x1d_FMT_M01_nwk_001_L.shp ! GIS layer representing channels to allow for the digitisation of Water Level Lines (optional)

      Read GIS X1D WLL == ..\model\gis\1d_x1d_WLL_FMT_M01_001_L.shp ! GIS layer containing WLLs for visualising 1D results in 2D (optional)

      QGIS - GPKG

      Read GIS X1D Network == 1d_x1d_FMT_M01_nwk_001_L ! GIS layer representing channels to allow for the digitisation of Water Level Lines (optional)

      Read GIS X1D WLL == 1d_x1d_WLL_FMT_M01_001_L ! GIS layer containing WLLs for visualising 1D results in 2D (optional)

    7. The addition of TUFLOW Water Level Lines (WLL) allows the Flood Modeller 1D results to be visualised within the TUFLOW 2D map outputs. They provide a means by which to remove the gaps in the map outputs where the 1D Flood Modeller domains are located and the 2D cells are deactivated. To do this, TUFLOW requires a 1D_WLL layer to define the cross sections locations, and a 1d_nwk layer that defines the river centre line. The layers are not used in the hydraulic calculations and their inclusion is not always required.

    8. The Dist_for_Add_Points determines the intervals in metres at which interpolation points are inserted along each WLL.
    9. Add commands to read in the an Esty Control File which contains references to some of the culverts present on the floodplain:

    10. ESTRY Control File == ..\model\FMT_M01_001.ecf !Reference the ESTRY Control File

    11. Finally, update the links to the Geometry control file, the Boundary Condition control file and the bc_dbase file:

    12. Geometry Control File == ..\model\FMT_M01_001.tgc

      BC Control File == ..\model\FMT_M01_001.tbc

      BC Database == ..\bc_dbase\bc_dbase_FMT_M01.csv

      This concludes the changes that we need to make to the .tcf

    Flood Modeller Simulation Files

    In the FMT_M01\Flood_Modeller folder, we have provided a complete Flood Modeller model. It is located in the DAT, IED and IEF folders.
    The DAT and IED files are complete and will not require any modification to link to TUFLOW.
    However, we will alter the IEF to create the link. The IEF alterations can be done either in a text editor of your choice or using the Flood Modeller Interface.
    The instructions below have been written for the Flood Modeller Interface version 7.2.

    IEF File

    1. Open Flood Modeller. Select 'Load 1D Network'. Navigate to \FMT_Tutorial\FMT_M01\Flood_Modeller\DAT and load the FMT_M01_001.dat.
    2. Right click 'Event Data' and select 'Add Item'. Navigate to \FMT_Tutorial\FMT_M01\Flood_Modeller\IED and load the FMT_Inflows.IED.
    3. On the 'Simulation' tab, click New 1D Simulation. Save the file when prompted in the \FMT_Tutorial\FMT_M01\Flood_Modeller\IEF folder asFMT_M01_001.ief
    4. On the 'Files' Tab of the simulation window, set the following parameters:
      • Event Title: FMT_M01_001
      • 1D Data File: The full path to the \FMT_Tutorial\FMT_M01\Flood_Modeller\DAT\FMT_M01_001.dat
      • Use Initial Conditions from: Network File (.dat)
      • Results File: the full path to \FMT_Tutorial\FMT_M01\Flood_Modeller\RES\FMT_M01_001
    5. To the right of the Event Data box, click Add and select the FMT_Inflows.IED file in the \FMT_Tutorial\FMT_M01\Flood_Modeller\IED folder.
    6. On the 'Times' tab, we will replace the simulation time parameters that were removed from TUFLOW. Enter the following parameters:
      • Run Type: Unsteady (Fixed Timestep)
      • Start Time (hrs): 0
      • Finish Time (hrs): 3
      • Timestep (s):1
      • Save Interval (s): 300
    7. Add the 'Links' tab by clicking View> Tabs > Links. On the 'Links' tab, enter the following parameters:
      • 2-d Scheme: TUFLOW
      • 2-d Timestep: 2
      • Check the box for ‘Perform corrective 1D timestep’
      • 2-d control file: full path to the FMT_M01_001.tcf from the \FMT_Tutorial\FMT_M01\TUFLOW\runs folder
    8. Save the Scenario Data.



    Review the Results

  • Instructions for viewing the TUFLOW mesh (XMDF) and 1D time series (.tpc) outputs specified for this tutorial are provided in Module 1 and Module 3.
  • It can be useful to view 1D Flood Modeller results side by side with the 2D TUFLOW map outputs. The Flood Modeller results can be opened in conjunction with the TUFLOW mesh results in QGIS via the TUFLOW Viewer plugin. Likewise, it is also possible to load the TUFLOW mesh results into the Flood Modeller Pro interface. The methods by which to load the Flood Modeller results using QGIS TUFLOW viewer plugin, and the TUFLOW mesh results in Flood Modeller Pro are shown in the video below.



  • TUFLOW HPC

    To run the linked TUFLOW-Flood Modeller Pro model using HPC we simply need to add a single line to the Tuflow Control File. The HPC solver will only speed up the 2D calculations within the linked 1D-2D model, it will not speed up the 1D calculations that take place in the Flood Modeller Engine. The relatively small nature of this specific model means that use of HPC on multiple CPU cores may not lead to significant improvements to model run times. However, should the machine have an NVIDIA GPU card present then it is possible to run the HPC solver on the GPU to significantly improve model runs times. The larger the 2D domain, the more significant the improvements to model run times through the use of the HPC solver. To utilise the HPC solver:-

    1. Save the TUFLOW runfile ( FMT_M01_001.tcf) as FMT_M01_002.tcf.
    2. Add the following command to the TCF file:
      Solution Scheme == HPC ! Use HPC solver to run the simulation
    3. If you have a CUDA enabled NVIDIA GPU device, you can also add the following command to run the HPC solver using GPU hardware:
      Hardware == GPU ! Run HPC solver on GPU
    4. Save the TCF file and run the model.Troubleshooting for GPU Simulation

    Troubleshooting for GPU Simulation

    If you receive the following error when trying to run the TUFLOW HPC model using GPU hardware:

    TUFLOW GPU: Interrogating CUDA enabled GPUs … 
    TUFLOW GPU: Error: Non-CUDA Success Code returned 
    

    or

    ERROR 2785 - No GPU devices found, enabled or compatible.
    

    Please try the following steps:

    1. Check if your GPU card is an NVIDIA GPU card. Currently, TUFLOW does not run on AMD type GPU.
    2. Check if your NVIDIA GPU card is CUDA enabled and whether the latest drivers are installed. Please see GPU Setup.


    If you experience an issue that is not detailed above please send an email to support@tuflow.com