Difference between revisions of "TUFLOW CATCH Tutorial M03 Draft"
(18 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
<font color="red"><font size=18>Page Under Construction</font></font> | <font color="red"><font size=18>Page Under Construction</font></font> | ||
= Introduction = | = Introduction = | ||
− | In this module, a TUFLOW CATCH | + | In this module, a TUFLOW CATCH hydrology model is developed. <br> |
− | TUFLOW CATCH Tutorial | + | TUFLOW CATCH Tutorial 03 is built from the model created in <u>[[TUFLOW_CATCH_Tutorial_M02 | TUFLOW CATCH Tutorial 02]]</u>. The completed TUFLOW CATCH Tutorial 02 is provided in the '''TUFLOW_CATCH_Module_03\Modelling''' folder of the download dataset as the starting point for this tutorial. |
− | If | + | If unfamiliar with TUFLOW CATCH, it is recommended to complete <u>[[TUFLOW_CATCH_Tutorial_M01 | TUFLOW CATCH Tutorial 01]]</u> and <u>[[TUFLOW_CATCH_Tutorial_M02 | TUFLOW CATCH Tutorial 02]]</u> prior to starting this tutorial. |
− | = | + | = GIS Inputs = |
− | + | Create, import and view input data: | |
− | + | :*<u>[[TUFLOW_CATCH_Tutorial_M03_TUFLOW_HPC_GIS_Inputs_QGIS | TC03 - TUFLOW HPC GIS Inputs]]</u> | |
− | + | :*<u>[[TUFLOW_CATCH_Tutorial_M03_TUFLOW_FV_GIS_Inputs_QGIS | TC03 - TUFLOW FV GIS Inputs]]</u> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |- | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | < | ||
− | [[ | ||
− | |||
− | </ | ||
= Simulation Control Files = | = Simulation Control Files = | ||
The following steps will require use of a text editor. The tutorial demonstration uses Notepad++. For its configuration information refer to <u>[[NotepadPlusPlus_Tips | Notepad++ Tips]]</u>. <br> | The following steps will require use of a text editor. The tutorial demonstration uses Notepad++. For its configuration information refer to <u>[[NotepadPlusPlus_Tips | Notepad++ Tips]]</u>. <br> | ||
− | === | + | === TUFLOW Boundary Control File (TBC) === |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<ol> | <ol> | ||
− | <li> | + | <li>Save a copy of '''TC01_001.tbc''' as '''TC03_001.tbc''' in the '''TUFLOW_CATCH_Module_03\Modelling\TUFLOW\model''' folder. |
− | <li> | + | <li> Open the '''TC03_001.tbc''' in a text editor and update the reference to the 1D/2D culvert connections:<br> |
− | + | <font color="blue"><tt>Read GIS BC </tt></font> <font color="red"><tt>== </tt></font> <font color="black"><tt>gis\2d_bc_TC03_001_P.shp</tt></font> <font color="green"><tt> ! Links the two upstream 1D culverts to the 2D domain</tt></font> <br> | |
− | + | <font color="blue"><tt>Read GIS BC </tt></font> <font color="red"><tt>== </tt></font> <font color="black"><tt>gis\2d_bc_TC03_001_L.shp</tt></font> <font color="green"><tt> ! Links the two upstream 1D culverts to the 2D domain</tt></font> <br> | |
− | + | <li>Save the TBC. | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <tt> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <li> Save the | ||
</ol> | </ol> | ||
− | === | + | === TUFLOW ESTRY Control File (ECF) === |
<ol> | <ol> | ||
− | <li> | + | <li> Save a copy of '''TC01_001.ecf''' as '''TC03_001.ecf''' in the '''TUFLOW_CATCH_Module_03\Modelling\TUFLOW\model''' folder. |
− | + | <li> Open the '''TC03_001.ecf''' in a text editor and update the following line to reference the new 1d_nwk layer (containing the two upstream culverts):<br> | |
− | + | <font color="blue"><tt>Read GIS Network </tt></font> <font color="red"><tt>== </tt></font> <font color="black"><tt>gis\1d_nwk_TC03_001_L.shp</tt></font> <font color="green"><tt> ! Defines the two upstream culverts</tt></font> | |
− | + | <li>Save the ECF. | |
− | <li> | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | : | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | <li>Save the | ||
</ol> | </ol> | ||
== TUFLOW CATCH Control File (TCC) == | == TUFLOW CATCH Control File (TCC) == | ||
=== Global Settings === | === Global Settings === | ||
− | For this tutorial, leave all commands as is. This section of the .tcc was populated in <u>[[TUFLOW_CATCH_Tutorial_M01 | TUFLOW CATCH Tutorial | + | For this tutorial, leave all commands as is. This section of the .tcc was populated in <u>[[TUFLOW_CATCH_Tutorial_M01 | TUFLOW CATCH Tutorial 01]]</u>. |
=== Catchment Hydraulic Model === | === Catchment Hydraulic Model === | ||
This block contains commands that construct the TUFLOW HPC simulation. | This block contains commands that construct the TUFLOW HPC simulation. | ||
<ol> | <ol> | ||
− | <li> Save a copy of '''TC02_001.tcc''' as '''TC03_001.tcc''' in the '''TUFLOW_CATCH_Module_03\Modelling\ | + | <li> Save a copy of '''TC02_001.tcc''' as '''TC03_001.tcc''' in the '''TUFLOW_CATCH_Module_03\Modelling\TUFLOWCATCH\runs''' folder. |
− | <li> Open '''TC03_001.tcc''' in a text editor, and comment out the following command | + | <li> Open '''TC03_001.tcc''' in a text editor, and update the following commands to reference the new TBC and ECF:<br> |
− | <tt><font color=green>! | + | <tt><font color=blue>BC Control File</font><font color=red> == </font>..\..\TUFLOW\model\TC03_001.tbc </font> <font color=green> ! Reference the TUFLOW Boundary Conditions Control File</font></tt><br> |
+ | <tt><font color=blue>ESTRY Control File</font><font color=red> == </font>..\..\TUFLOW\model\TC03_001.ecf </font> <font color=green> ! Reference the ESTRY (1D) Control File</font></tt><br> | ||
+ | |||
+ | <li> Remove or comment out the following command using a '<font color="green"><tt>!</tt></font>' symbol. The receiving polygon can only be used in the pollutant export configuration of TUFLOW CATCH. <br> | ||
+ | <tt><font color=green>! Receiving Polygon == ..\..\TUFLOW\model\gis\2d_rp_TC01_001_R.shp ! GIS layer defining the receiving polygon</font></tt><br> | ||
</ol> | </ol> | ||
=== Pollutant Export Model === | === Pollutant Export Model === | ||
− | This block contains commands that control the pollutant export (and other constituent) simulation. As this tutorial model is | + | This block contains commands that control the pollutant export (and other constituent) simulation. As this tutorial model is a hydrology simulation, we must set the pollutant export model to 'None', and comment out all commands. The pollutant export model block should look similar to the below:<br> |
− | + | :<tt><font color=blue>Catchment Pollutant Export Model </font><font color=red>==</font> None</tt><br> | |
− | + | ::<tt><font color=green>! Constant Salinity == 0.0</font></tt><br> | |
− | <tt><font color=blue>Catchment Pollutant Export Model</font><font color=red> == </font> | + | ::<tt><font color=green>! Constant WQ_DISS_OXYGEN_MG_L == 8.0</font></tt><br> |
− | < | + | ::<tt><font color=green>! Time-Series Temperature == temp</font></tt><br> |
− | </ | + | ::<tt><font color=green>! Material == ALL ! Default parameters for all materials</font></tt><br> |
+ | :::<tt><font color=green> ! SED_CLAY, Method == Shear1, Rate == 0.0, Limit == 100.0, Depth Threshold == 0.02, Deposition Stress == 0.1, Erosion Stress == 0.5, Deposition Velocity == 0.1, Erosion Rate == 0.05</font></tt><br> | ||
+ | :::<tt><font color=green> ! WQ_PATH_ECOLI_ALIVE_CFU_100ML, Method == Washoff1, Rate == 0.0, Limit == 0.0, Time Constant == 3600.00, Rain Threshold == 1.0, Depth Threshold == 0.20, Deposition Velocity == 0.0</font></tt><br> | ||
+ | :::<tt><font color=green> ! WQ_PATH_ECOLI_DEAD_CFU_100ML, Method == Washoff1, Rate == 0.0, Limit == 0.0, Time Constant == 3600.00, Rain Threshold == 1.0, Depth Threshold == 0.20, Deposition Velocity == 0.0</font></tt><br> | ||
+ | ::<tt><font color=green>! End Material </font></tt><br> | ||
+ | ::<tt><font color=green>! Other material specifications ...</font></tt><br> | ||
+ | ::<tt><font color=green>! Read GIS Intervention == ..\..\TUFLOW\model\gis\2d_im_TC02_001_L.shp ! GIS layer defining interventions</font></tt><br> | ||
+ | ::<tt><font color=green>! Device == ALL ! Default parameters for all devices</font></tt><br> | ||
+ | :::<tt><font color=green> ! SED_CLAY, Method == Eqn, Eqn == Constant, Coefficients == 1.0</font></tt><br> | ||
+ | :::<tt><font color=green> ! WQ_PATH_ECOLI_ALIVE_CFU_100ML, Method == Eqn, Eqn == Constant, Coefficients == 1.0</font></tt><br> | ||
+ | :::<tt><font color=green> ! WQ_PATH_ECOLI_DEAD_CFU_100ML, Method == Eqn, Eqn == Constant, Coefficients == 1.0</font></tt><br> | ||
+ | ::<tt><font color=green>! End Device</font></tt><br> | ||
+ | ::<tt><font color=green>! Other mass removal specifications ...</font></tt><br> | ||
+ | :<tt><font color=blue>End Catchment Pollutant Export Model </font></tt><br> | ||
=== Receiving Model === | === Receiving Model === | ||
− | This block contains commands that construct the TUFLOW FV simulation. | + | This block contains commands that construct the TUFLOW FV simulation. These commands are almost entirely those that would be used in setting up a standalone TUFLOW FV control file (.fvc), with a small number of additional commands that relate to TUFLOW CATCH. |
<ol> | <ol> | ||
− | <li> In the ' | + | <li> Set the receiving model:<br> |
− | <tt><font color=blue> | + | <tt><font color=blue>Receiving Model</font><font color=red> == </font>TUFLOWFV </font> <font color=green></font></tt> |
− | <tt><font color=blue> | + | |
− | <tt><font color=blue> | + | <li>Above the 'Hardware' section, add the following command. This command allows the simulation to proceed if minor timestepping mismatches occur in the boundary condition timeseries files (written by TUFLOW CATCH). <br> |
− | <tt><font color=blue> | + | <tt><font color=blue>Global Temporal Extrapolation Check</font><font color=red> == </font>WARNING </font> <font color=green></font></tt><br> |
+ | |||
+ | <li>In the 'Timestep Commands' section, update the following commands:<br> | ||
+ | <tt><font color=blue>CFL</font><font color=red> == </font>0.95 </font> <font color=green> ! Specify the Courant–Friedrichs–Lewy (CFL) number</font></tt><br> | ||
+ | <tt><font color=blue>Timestep Limits</font><font color=red> == </font>0.10,1.0 </font> <font color=green> ! Specify the minimum and maximum timesteps (seconds)</font></tt><br> | ||
+ | <tt><font color=blue>Display dt</font><font color=red> == </font>30 </font> <font color=green> ! Interval of displaying timestep information to the log (seconds)</font></tt><br> | ||
+ | |||
+ | <li>In the 'Model Parameters' section, update the following commands. All other commands in this section relate to 3D modelling, so they can be removed or ignored.<br> | ||
+ | <tt><font color=blue>Stability Limits</font><font color=red> == </font>100.0, 10.0 </font> <font color=green> ! Specify maximum water level (meters) and velocity (m/s) which indicate an unstable model</font></tt><br> | ||
+ | <tt><font color=blue>Momentum Mixing Model</font><font color=red> == </font>Smagorinsky </font> <font color=green> ! Specify the momentum mixing model</font></tt><br> | ||
+ | <tt><font color=blue>Global Horizontal Eddy Viscosity</font><font color=red> == </font>0.2 </font> <font color=green> ! Specify the Smagorinsky coefficient</font></tt><br> | ||
+ | <tt><font color=blue>Global Horizontal Eddy Viscosity Limits</font><font color=red> == </font>0.05, 99999. </font> <font color=green> ! Globally sets the minimum and maximum horizontal eddy viscosity limits</font></tt><br> | ||
+ | <tt><font color=blue>Scalar Mixing Model</font><font color=red> == </font>Smagorinsky </font> <font color=green> ! Specify the scalar mixing model</font></tt><br> | ||
+ | <tt><font color=blue>Global Horizontal Scalar Diffusivity</font><font color=red> == </font>0.2 </font> <font color=green> ! Specify the Smagorinsky coefficient</font></tt><br> | ||
+ | <tt><font color=blue>Global Horizontal Scalar Diffusivity Limits</font><font color=red> == </font>0.05, 99999. </font> <font color=green> ! Globally sets the minimum and maximum horizontal scalar diffusivity limits</font></tt><br> | ||
+ | |||
+ | <li>At the end of the 'Model Parameters' section, add the following command to set the cell wetting and drying depths:<br> | ||
+ | <tt><font color=blue>Cell Wet/Dry Depths</font><font color=red> == </font>5.0e-03, 5.0e-02 </font> <font color=green> ! Specify the cell wetting and drying depths (meters)</font></tt><br> | ||
− | <li> In the ' | + | <li>In the '2D Geometry' section, update the following commands to reference the TUFLOW FV mesh and the model domain:<br> |
− | + | <tt><font color=blue>Geometry 2D</font><font color=red> == </font>..\..\TUFLOWFV\model\geo\Stream_Mesh.2dm </font> <font color=green> ! 2D geometry input file (mesh file)</font></tt><br> | |
− | <tt><font color=blue> | + | <tt><font color=blue>Read Grid Zpts</font><font color=red> == </font>..\..\TUFLOWFV\model\geo\DEM.asc </font> <font color=green> ! Assigns the elevation of Zpts from the grid</font></tt><br> |
− | <tt><font color=blue> | ||
− | |||
− | <li> In the ' | + | <li>In the 'Materials' section, update/add the following commands. They reference the TUFLOW FV materials GIS layer and specify the surface roughness or bed resistance values (e.g. Manning’s n) assigned to each material ID within the TUFLOW FV model domain. These are distinct materials from those specified in the catchment hydraulic model.<br> |
− | <tt><font color=blue> | + | <tt><font color=blue>Set Mat</font><font color=red> == </font>1 </font> <font color=green> ! Sets the default material ID for all cells in the TUFLOW FV model domain</font></tt><br> |
+ | <tt><font color=blue>Read GIS Mat</font><font color=red> == </font>..\..\TUFLOWFV\model\gis\2d_mat_TC03_FV_001_R.shp </font> <font color=green> ! Sets the TUFLOW FV material values according to attributes in the GIS layer</font></tt><br> | ||
+ | <tt><font color=blue>Material</font><font color=red> == </font>1 </font> <font color=green> ! Defines properties for material ID 1</font></tt><br> | ||
+ | :<tt><font color=blue>Bottom Roughness</font><font color=red> == </font>0.011 </font> <font color=green> ! Specify the Manning's roughness</font></tt><br> | ||
+ | <tt><font color=blue>End Material</font></tt><br> | ||
+ | <tt><font color=blue>Material</font><font color=red> == </font>2 </font> <font color=green> ! Defines properties for material ID 2</font></tt><br> | ||
+ | :<tt><font color=blue>Bottom Roughness</font><font color=red> == </font>0.015 </font> <font color=green> ! Specify the Manning's roughness</font></tt><br> | ||
+ | <tt><font color=blue>End Material</font></tt><br> | ||
+ | <tt><font color=blue>Material</font><font color=red> == </font>3 </font> <font color=green> ! Defines properties for material ID 3</font></tt><br> | ||
+ | :<tt><font color=blue>Bottom Roughness</font><font color=red> == </font>0.017 </font> <font color=green> ! Specify the Manning's roughness</font></tt><br> | ||
+ | <tt><font color=blue>End Material</font></tt><br> | ||
− | <li> In the 'Initial Conditions' section, update the following | + | <li>In the 'Initial Conditions' section, update the following command to set the initial water level:<br> |
− | <tt><font color=blue>Initial | + | <tt><font color=blue>Initial Water Level</font><font color=red> == </font>35.0 </font> <font color=green> ! Specify initial water level (meters)</font></tt><br> |
− | |||
− | <li>In the ' | + | <li>In the 'Non-Catchment Boundaries' section, update the following commands to reference the downstream TUFLOW FV normal (friction slope) boundary and to define its boundary conditions.<br> |
− | <tt><font color=blue> | + | <tt><font color=blue>Read GIS Nodestring</font><font color=red> == </font>..\..\TUFLOWFV\model\gis\2d_ns_TC03_DS_boundary_001_L.shp </font> <font color=green> ! GIS nodestring layer defining non-catchment boundary(ies)</font></tt><br> |
− | + | <tt><font color=blue>BC</font><font color=red> == </font>QN, DS, 0.001 </font> <font color=green> ! Defines BC type, BC name and friction slope</font></tt><br> | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
<tt><font color=blue>End BC</font></tt><br> | <tt><font color=blue>End BC</font></tt><br> | ||
− | <li> In the ' | + | <li>In the 'Catchment Boundaries' section, update the following command to reference the upstream (inflow) TUFLOW FV boundary. TUFLOW CATCH uses this nodestring to automatically write boundaries that include momentum from catchment hydraulic model predictions. For more information, refer to <u>[https://docs.tuflow.com/catch/manual/2025.1/SimulationConstruction-1.html#SCTCCFV-3 Section 4.5.4 of the TUFLOW CATCH Manual]</u>.<br> |
+ | <tt><font color=blue>Catchment BC Nodestring</font><font color=red> == </font>..\..\TUFLOWFV\model\gis\2d_ns_TC03_US_boundary_001_L.shp </font> <font color=green> ! GIS nodestring layer defining catchment boundary(ies) that include momentum</font></tt><br> | ||
+ | |||
+ | <li>Above the 'Outputs' section, add the following commands to reference the downstream TUFLOW FV culvert and its parameters. <br> | ||
+ | <tt><font color=blue>Read GIS Nodestring</font><font color=red> == </font>..\..\TUFLOWFV\model\gis\2d_ns_TC03_culverts_001_L.shp </font> <font color=green> ! GIS nodestring layer defining the downstream culvert</font></tt><br> | ||
+ | <tt><font color=blue>Read GIS Nodestring</font><font color=red> == </font>..\..\TUFLOWFV\model\gis\2d_ns_TC03_weir_001_L.shp </font> <font color=green> ! GIS nodestring layer enforcing the road crest at the downstream culvert</font></tt><br> | ||
+ | <tt><font color=blue>Structure</font><font color=red> == </font>Linked Nodestrings, FC01.2_R_US, FC01.2_R_DS </font> <font color=green> ! Defines the structure type, culvert US nodestring ID, culvert DS nodestring ID</font></tt><br> | ||
+ | :<tt><font color=blue>Flux Function</font><font color=red> == </font>Culvert </font> <font color=green> ! Culvert flux function </font></tt><br> | ||
+ | :<tt><font color=blue>Culvert File</font><font color=red> == </font>..\..\TUFLOWFV\model\csv\TC03_culvert_dbase_001.csv, 1</font> <font color=green> ! Reference the culvert database and the number of culverts </font></tt> | ||
+ | <tt><font color=blue>End Structure</font></tt><br> | ||
+ | <tt><font color=blue>Structure</font><font color=red> == </font>Nodestring, FC01.2_W </font> <font color=green> ! Defines the structure type and the nodestring ID</font></tt><br> | ||
+ | :<tt><font color=blue>Flux Function</font><font color=red> == </font>Weir_dz</font> <font color=green> ! Weir_dz flux function </font></tt><br> | ||
+ | :<tt><font color=blue>Properties</font><font color=red> == </font>0.1, 1.705 </font> <font color=green> ! Defines the weir height above face elevation (meters) and the weir coefficient</font></tt> | ||
+ | <tt><font color=blue>End Structure</font></tt><br> | ||
+ | |||
+ | <li>In the 'Outputs' section, update/add the following commands. Ensure that the 'Flux' block is removed or commented out. <br> | ||
<tt><font color=blue>Output</font><font color=red> == </font>NetCDF </font> <font color=green></font></tt><br> | <tt><font color=blue>Output</font><font color=red> == </font>NetCDF </font> <font color=green></font></tt><br> | ||
− | :<tt><font color=blue>Output Parameters</font><font color=red> == </font>h, v, d | + | :<tt><font color=blue>Output Parameters</font><font color=red> == </font>h, v, d </font> <font color=green> ! Outputs water level, velocity and depth </font></tt><br> |
:<tt><font color=blue>Output Interval</font><font color=red> == </font>30 </font> <font color=green> ! Interval to output the data (seconds) </font></tt><br> | :<tt><font color=blue>Output Interval</font><font color=red> == </font>30 </font> <font color=green> ! Interval to output the data (seconds) </font></tt><br> | ||
− | :<tt><font color=blue>Suffix</font><font color=red> == </font>HD </font> <font color=green> ! | + | :<tt><font color=blue>Suffix</font><font color=red> == </font>HD </font> <font color=green> ! Specify suffix for the output NetCDF file </font></tt> |
+ | <tt><font color=blue>End Output</font></tt><br> | ||
+ | <tt><font color=blue>Output</font><font color=red> == </font>Mass </font> <font color=green></font></tt><br> | ||
+ | :<tt><font color=blue>Output Interval</font><font color=red> == </font>30 </font> <font color=green> ! Interval to output the data (seconds) </font></tt> | ||
<tt><font color=blue>End Output</font></tt><br> | <tt><font color=blue>End Output</font></tt><br> | ||
− | <li> | + | <li>Remove or comment out the following commands:<br> |
− | <tt><font color= | + | <tt><font color=green>! Write Restart dt == 24</tt></font><br> |
− | + | <tt><font color=green>! Restart Overwrite == 1 </tt></font><br> | |
− | |||
− | |||
− | |||
− | <li>Save the | + | <li> Save the .tcc. |
</ol> | </ol> | ||
= Running the Simulation = | = Running the Simulation = | ||
<ol> | <ol> | ||
− | <li>In Windows File Explorer, navigate to the ''' | + | <li>In Windows File Explorer, navigate to the '''TUFLOWCATCH\runs''' folder. Save a copy of '''_run_TC02_CATCH.bat''' as '''_run_TC03_CATCH.bat''' and open the file in a text editor. |
<li>Update the batch file to reference the '''TC03_001.tcc''':<br> | <li>Update the batch file to reference the '''TC03_001.tcc''':<br> | ||
− | <tt><font color=blue>set </font>exe<font color=red>=</font>"..\..\..\..\exe\TUFLOWCATCH\2025.0 | + | <tt><font color=blue>set </font>exe<font color=red>=</font>"..\..\..\..\exe\TUFLOWCATCH\2025.1.0\TUFLOWCATCH.exe"</tt><br> |
<tt><font color=orange>%exe%</font> TC03_001.tcc</font></tt> | <tt><font color=orange>%exe%</font> TC03_001.tcc</font></tt> | ||
<li>Double click the batch file in file explorer to run the simulation. <br> | <li>Double click the batch file in file explorer to run the simulation. <br> | ||
</ol> | </ol> | ||
− | |||
= Troubleshooting = | = Troubleshooting = | ||
Line 243: | Line 164: | ||
:*<u>[[Tutorial_Troubleshooting_QGIS | QGIS]]</u> | :*<u>[[Tutorial_Troubleshooting_QGIS | QGIS]]</u> | ||
+ | = Check Files and Results Output = | ||
+ | Complete the steps outlined in the following links to review check files and simulation results from the TUFLOW CATCH hydrology model simulation: | ||
+ | :*<u>[[TUFLOW_CATCH_Tutorial_M03_Check_Files_QGIS | TC03 - Check Files]]</u><br> | ||
+ | :*<u>[[TUFLOW_CATCH_Tutorial_M03_Results_QGIS | TC03 - Results]]</u><br> | ||
− | = | + | =Reviewing Model Performance= |
− | + | As discussed in <u>[[TUFLOW_CATCH_Tutorial_M01#Reviewing_Model_Performance | TUFLOW CATCH Tutorial 01]]</u>, there are a number of useful outputs from TUFLOW CATCH for reviewing the model performance. <br> | |
+ | In this tutorial, the receiving model was specified. As such, the TUFLOW FV Log File (.log) should be reviewed. The <tt><font color=blue>Log Folder</font><font color=red> == </font>log</tt> command in the .tcc defines where the .log is written.<br> | ||
+ | Navigate to the '''Modelling\TUFLOWCATCH\runs\log''' folder and open the '''TC03_001_receiving.log''' file in a text editor. | ||
+ | * Scroll down to the bottom to 'Simulation Summary'. This includes information about the computation time and messages. If an error occurred (stopping the simulation), the error message will be output just above the 'Simulation Summary'. | ||
+ | * Review any check, warning or error messages. | ||
− | : | + | '''Note:''' It is recommended to check all simulation log files at the end of each run. For this tutorial, the catchment hydraulic and receiving models were specified, so '''TC03_001.catchlog''', '''TC03_001_catchment_hydraulic.tlf''' and '''TC03_001_receiving.log''' should all be reviewed. |
= Conclusion = | = Conclusion = | ||
+ | * A TUFLOW CATCH Hydrology model was created. | ||
+ | * A TUFLOW FV mesh was added to the stream and the downstream culvert was redefined in TUFLOW FV format. | ||
+ | * A TUFLOW CATCH JSON file was created to review the transfer of results between the TUFLOW HPC and the TUFLOW FV domains. | ||
+ | <br> | ||
+ | {{Tips Navigation | ||
+ | |uplink=[[TUFLOW_CATCH_Tutorial_Introduction| Back to Tutorial Introduction Main Page]] | ||
+ | }} |
Latest revision as of 11:00, 10 June 2025
Page Under Construction
Introduction
In this module, a TUFLOW CATCH hydrology model is developed.
TUFLOW CATCH Tutorial 03 is built from the model created in TUFLOW CATCH Tutorial 02. The completed TUFLOW CATCH Tutorial 02 is provided in the TUFLOW_CATCH_Module_03\Modelling folder of the download dataset as the starting point for this tutorial. If unfamiliar with TUFLOW CATCH, it is recommended to complete TUFLOW CATCH Tutorial 01 and TUFLOW CATCH Tutorial 02 prior to starting this tutorial.
GIS Inputs
Create, import and view input data:
Simulation Control Files
The following steps will require use of a text editor. The tutorial demonstration uses Notepad++. For its configuration information refer to Notepad++ Tips.
TUFLOW Boundary Control File (TBC)
- Save a copy of TC01_001.tbc as TC03_001.tbc in the TUFLOW_CATCH_Module_03\Modelling\TUFLOW\model folder.
- Open the TC03_001.tbc in a text editor and update the reference to the 1D/2D culvert connections:
Read GIS BC == gis\2d_bc_TC03_001_P.shp ! Links the two upstream 1D culverts to the 2D domain
Read GIS BC == gis\2d_bc_TC03_001_L.shp ! Links the two upstream 1D culverts to the 2D domain
- Save the TBC.
TUFLOW ESTRY Control File (ECF)
- Save a copy of TC01_001.ecf as TC03_001.ecf in the TUFLOW_CATCH_Module_03\Modelling\TUFLOW\model folder.
- Open the TC03_001.ecf in a text editor and update the following line to reference the new 1d_nwk layer (containing the two upstream culverts):
Read GIS Network == gis\1d_nwk_TC03_001_L.shp ! Defines the two upstream culverts - Save the ECF.
TUFLOW CATCH Control File (TCC)
Global Settings
For this tutorial, leave all commands as is. This section of the .tcc was populated in TUFLOW CATCH Tutorial 01.
Catchment Hydraulic Model
This block contains commands that construct the TUFLOW HPC simulation.
- Save a copy of TC02_001.tcc as TC03_001.tcc in the TUFLOW_CATCH_Module_03\Modelling\TUFLOWCATCH\runs folder.
- Open TC03_001.tcc in a text editor, and update the following commands to reference the new TBC and ECF:
BC Control File == ..\..\TUFLOW\model\TC03_001.tbc ! Reference the TUFLOW Boundary Conditions Control File
ESTRY Control File == ..\..\TUFLOW\model\TC03_001.ecf ! Reference the ESTRY (1D) Control File
- Remove or comment out the following command using a '!' symbol. The receiving polygon can only be used in the pollutant export configuration of TUFLOW CATCH.
! Receiving Polygon == ..\..\TUFLOW\model\gis\2d_rp_TC01_001_R.shp ! GIS layer defining the receiving polygon
Pollutant Export Model
This block contains commands that control the pollutant export (and other constituent) simulation. As this tutorial model is a hydrology simulation, we must set the pollutant export model to 'None', and comment out all commands. The pollutant export model block should look similar to the below:
- Catchment Pollutant Export Model == None
- ! Constant Salinity == 0.0
- ! Constant WQ_DISS_OXYGEN_MG_L == 8.0
- ! Time-Series Temperature == temp
- ! Material == ALL ! Default parameters for all materials
- ! SED_CLAY, Method == Shear1, Rate == 0.0, Limit == 100.0, Depth Threshold == 0.02, Deposition Stress == 0.1, Erosion Stress == 0.5, Deposition Velocity == 0.1, Erosion Rate == 0.05
- ! WQ_PATH_ECOLI_ALIVE_CFU_100ML, Method == Washoff1, Rate == 0.0, Limit == 0.0, Time Constant == 3600.00, Rain Threshold == 1.0, Depth Threshold == 0.20, Deposition Velocity == 0.0
- ! WQ_PATH_ECOLI_DEAD_CFU_100ML, Method == Washoff1, Rate == 0.0, Limit == 0.0, Time Constant == 3600.00, Rain Threshold == 1.0, Depth Threshold == 0.20, Deposition Velocity == 0.0
- ! SED_CLAY, Method == Shear1, Rate == 0.0, Limit == 100.0, Depth Threshold == 0.02, Deposition Stress == 0.1, Erosion Stress == 0.5, Deposition Velocity == 0.1, Erosion Rate == 0.05
- ! End Material
- ! Other material specifications ...
- ! Read GIS Intervention == ..\..\TUFLOW\model\gis\2d_im_TC02_001_L.shp ! GIS layer defining interventions
- ! Device == ALL ! Default parameters for all devices
- ! SED_CLAY, Method == Eqn, Eqn == Constant, Coefficients == 1.0
- ! WQ_PATH_ECOLI_ALIVE_CFU_100ML, Method == Eqn, Eqn == Constant, Coefficients == 1.0
- ! WQ_PATH_ECOLI_DEAD_CFU_100ML, Method == Eqn, Eqn == Constant, Coefficients == 1.0
- ! SED_CLAY, Method == Eqn, Eqn == Constant, Coefficients == 1.0
- ! End Device
- ! Other mass removal specifications ...
- ! Constant Salinity == 0.0
- End Catchment Pollutant Export Model
Receiving Model
This block contains commands that construct the TUFLOW FV simulation. These commands are almost entirely those that would be used in setting up a standalone TUFLOW FV control file (.fvc), with a small number of additional commands that relate to TUFLOW CATCH.
- Set the receiving model:
Receiving Model == TUFLOWFV - Above the 'Hardware' section, add the following command. This command allows the simulation to proceed if minor timestepping mismatches occur in the boundary condition timeseries files (written by TUFLOW CATCH).
Global Temporal Extrapolation Check == WARNING
- In the 'Timestep Commands' section, update the following commands:
CFL == 0.95 ! Specify the Courant–Friedrichs–Lewy (CFL) number
Timestep Limits == 0.10,1.0 ! Specify the minimum and maximum timesteps (seconds)
Display dt == 30 ! Interval of displaying timestep information to the log (seconds)
- In the 'Model Parameters' section, update the following commands. All other commands in this section relate to 3D modelling, so they can be removed or ignored.
Stability Limits == 100.0, 10.0 ! Specify maximum water level (meters) and velocity (m/s) which indicate an unstable model
Momentum Mixing Model == Smagorinsky ! Specify the momentum mixing model
Global Horizontal Eddy Viscosity == 0.2 ! Specify the Smagorinsky coefficient
Global Horizontal Eddy Viscosity Limits == 0.05, 99999. ! Globally sets the minimum and maximum horizontal eddy viscosity limits
Scalar Mixing Model == Smagorinsky ! Specify the scalar mixing model
Global Horizontal Scalar Diffusivity == 0.2 ! Specify the Smagorinsky coefficient
Global Horizontal Scalar Diffusivity Limits == 0.05, 99999. ! Globally sets the minimum and maximum horizontal scalar diffusivity limits
- At the end of the 'Model Parameters' section, add the following command to set the cell wetting and drying depths:
Cell Wet/Dry Depths == 5.0e-03, 5.0e-02 ! Specify the cell wetting and drying depths (meters)
- In the '2D Geometry' section, update the following commands to reference the TUFLOW FV mesh and the model domain:
Geometry 2D == ..\..\TUFLOWFV\model\geo\Stream_Mesh.2dm ! 2D geometry input file (mesh file)
Read Grid Zpts == ..\..\TUFLOWFV\model\geo\DEM.asc ! Assigns the elevation of Zpts from the grid
- In the 'Materials' section, update/add the following commands. They reference the TUFLOW FV materials GIS layer and specify the surface roughness or bed resistance values (e.g. Manning’s n) assigned to each material ID within the TUFLOW FV model domain. These are distinct materials from those specified in the catchment hydraulic model.
Set Mat == 1 ! Sets the default material ID for all cells in the TUFLOW FV model domain
Read GIS Mat == ..\..\TUFLOWFV\model\gis\2d_mat_TC03_FV_001_R.shp ! Sets the TUFLOW FV material values according to attributes in the GIS layer
Material == 1 ! Defines properties for material ID 1
- Bottom Roughness == 0.011 ! Specify the Manning's roughness
Material == 2 ! Defines properties for material ID 2
- Bottom Roughness == 0.015 ! Specify the Manning's roughness
Material == 3 ! Defines properties for material ID 3
- Bottom Roughness == 0.017 ! Specify the Manning's roughness
- Bottom Roughness == 0.011 ! Specify the Manning's roughness
- In the 'Initial Conditions' section, update the following command to set the initial water level:
Initial Water Level == 35.0 ! Specify initial water level (meters)
- In the 'Non-Catchment Boundaries' section, update the following commands to reference the downstream TUFLOW FV normal (friction slope) boundary and to define its boundary conditions.
Read GIS Nodestring == ..\..\TUFLOWFV\model\gis\2d_ns_TC03_DS_boundary_001_L.shp ! GIS nodestring layer defining non-catchment boundary(ies)
BC == QN, DS, 0.001 ! Defines BC type, BC name and friction slope
End BC
- In the 'Catchment Boundaries' section, update the following command to reference the upstream (inflow) TUFLOW FV boundary. TUFLOW CATCH uses this nodestring to automatically write boundaries that include momentum from catchment hydraulic model predictions. For more information, refer to Section 4.5.4 of the TUFLOW CATCH Manual.
Catchment BC Nodestring == ..\..\TUFLOWFV\model\gis\2d_ns_TC03_US_boundary_001_L.shp ! GIS nodestring layer defining catchment boundary(ies) that include momentum
- Above the 'Outputs' section, add the following commands to reference the downstream TUFLOW FV culvert and its parameters.
Read GIS Nodestring == ..\..\TUFLOWFV\model\gis\2d_ns_TC03_culverts_001_L.shp ! GIS nodestring layer defining the downstream culvert
Read GIS Nodestring == ..\..\TUFLOWFV\model\gis\2d_ns_TC03_weir_001_L.shp ! GIS nodestring layer enforcing the road crest at the downstream culvert
Structure == Linked Nodestrings, FC01.2_R_US, FC01.2_R_DS ! Defines the structure type, culvert US nodestring ID, culvert DS nodestring ID
- Flux Function == Culvert ! Culvert flux function
- Culvert File == ..\..\TUFLOWFV\model\csv\TC03_culvert_dbase_001.csv, 1 ! Reference the culvert database and the number of culverts
Structure == Nodestring, FC01.2_W ! Defines the structure type and the nodestring ID
- Flux Function == Weir_dz ! Weir_dz flux function
- Properties == 0.1, 1.705 ! Defines the weir height above face elevation (meters) and the weir coefficient
- Flux Function == Culvert ! Culvert flux function
- In the 'Outputs' section, update/add the following commands. Ensure that the 'Flux' block is removed or commented out.
Output == NetCDF
- Output Parameters == h, v, d ! Outputs water level, velocity and depth
- Output Interval == 30 ! Interval to output the data (seconds)
- Suffix == HD ! Specify suffix for the output NetCDF file
Output == Mass
- Output Interval == 30 ! Interval to output the data (seconds)
- Output Parameters == h, v, d ! Outputs water level, velocity and depth
- Remove or comment out the following commands:
! Write Restart dt == 24
! Restart Overwrite == 1
- Save the .tcc.
Running the Simulation
- In Windows File Explorer, navigate to the TUFLOWCATCH\runs folder. Save a copy of _run_TC02_CATCH.bat as _run_TC03_CATCH.bat and open the file in a text editor.
- Update the batch file to reference the TC03_001.tcc:
set exe="..\..\..\..\exe\TUFLOWCATCH\2025.1.0\TUFLOWCATCH.exe"
%exe% TC03_001.tcc - Double click the batch file in file explorer to run the simulation.
Troubleshooting
See tips on common mistakes and troubleshooting steps if the model doesn't run:
Check Files and Results Output
Complete the steps outlined in the following links to review check files and simulation results from the TUFLOW CATCH hydrology model simulation:
Reviewing Model Performance
As discussed in TUFLOW CATCH Tutorial 01, there are a number of useful outputs from TUFLOW CATCH for reviewing the model performance.
In this tutorial, the receiving model was specified. As such, the TUFLOW FV Log File (.log) should be reviewed. The Log Folder == log command in the .tcc defines where the .log is written.
Navigate to the Modelling\TUFLOWCATCH\runs\log folder and open the TC03_001_receiving.log file in a text editor.
- Scroll down to the bottom to 'Simulation Summary'. This includes information about the computation time and messages. If an error occurred (stopping the simulation), the error message will be output just above the 'Simulation Summary'.
- Review any check, warning or error messages.
Note: It is recommended to check all simulation log files at the end of each run. For this tutorial, the catchment hydraulic and receiving models were specified, so TC03_001.catchlog, TC03_001_catchment_hydraulic.tlf and TC03_001_receiving.log should all be reviewed.
Conclusion
- A TUFLOW CATCH Hydrology model was created.
- A TUFLOW FV mesh was added to the stream and the downstream culvert was redefined in TUFLOW FV format.
- A TUFLOW CATCH JSON file was created to review the transfer of results between the TUFLOW HPC and the TUFLOW FV domains.
Up |
---|
![]() |