Appendix A TCF Commands

The TUFLOW Control File (.tcf) is the main control file used to execute a TUFLOW simulation. It includes reference to the second level control files used to consolidate model commands (for geometry, boundaries, 1D domain, events, etc.). It also lists the simulation parameters that define the solver settings, time controls and simulation outputs. The available TCF commands are detailed in Table A.1.

Table A.1: TUFLOW Classic/HPC TCF Commands
Command Solver Description
AD Control File ==
 \(\langle\) .adcf_file \(\rangle\) ]
Classic and HPC Triggers TUFLOW to execute an AD simulation (see Chapter 9) and specifies the TUFLOW AD control file name. A TUFLOW AD Module licence is required (see Section 1.1.5.1).
Adjust Head at ESTRY Interface ==
 [ ON | ON Variable | {OFF} ]
Classic and HPC
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

This command’s main use is to provide backward compatibility for older models using the previous default of “ON” (pre Build 2006-03-AB) . If set to “ON”, TUFLOW lowers the 1D water level sent to the 2D cells along HX lines by an average of the dynamic head based on the 2D velocities, unless the S Flag is specified for a HX line (see Table 8.6). This can be useful where the 1D water level is more representative of a static water level (1D schemes roughly approximate the variation in water level across a flow path due to the dynamic head). Based on numerous and wide ranging application of HX lines, it is recommended that this command use the default “OFF” setting.

The “ON VARIABLE” option, adjusts the water level on a cell-by-cell basis and is presently not recommended other than for research reasons.

Auto Terminate dV Cell Tolerance ==
 [ {0%} | \(\langle\) value \(\rangle\) ]
Classic and HPC

Used to set the % of cells tolerance for automated result monitoring to stop a simulation after the flood peak. This command is used with the stop simulation commands Set Auto Terminate and Read GIS Auto Terminate.

If set to a value of 1, then up to 1% of monitored cells can be within the tolerance value without triggering an auto terminate. The larger the Auto Terminate dV Value Tolerance the further the dV product needs to have dropped from the peak value.

This command is used with the optional commands Auto Terminate dV Value Tolerance, Auto Terminate Start Time and Auto Terminate Wet Cell Tolerance.

Note, the Auto Terminate feature is only assessed at every Map Output Interval.

Refer to Section 13.6.7 for more details.
Auto Terminate dV Value Tolerance ==
 [ {0} | \(\langle\) value \(\rangle\) ]
Classic and HPC

Used to set the velocity-depth tolerance for automated result monitoring to stop a simulation after the flood peak. This command is used with the mandatory stop simulation commands Set Auto Terminate and Read GIS Auto Terminate.

For the velocity-depth tolerance, at each output interval the velocity depth product is compared to the tracked maximum value. If the current dV product is within the specified tolerance using Auto Terminate dV Value Tolerance, the cell is within the range and the simulation is not auto terminated. The total number of cells that are allowable within the specified range is controlled with .tcf command Auto Terminate dV Cell Tolerance.

This command is used with the optional commands Auto Terminate dV Cell Tolerance, Auto Terminate Start Time and Auto Terminate Wet Cell Tolerance.

Note, the Auto Terminate feature is only assessed at every Map Output Interval.

Refer to Section 13.6.7 for more details.
Auto Terminate Start Time ==
 [ {Simulation Start Time} | \(\langle\) value \(\rangle\) ]
Classic and HPC

Used to set the start time when terminate feature commences, after which result monitoring to stop a simulation after the flood peak is done. This command is used with the mandatory stop simulation commands Set Auto Terminate and Read GIS Auto Terminate.

This command is used with the optional commands Auto Terminate dV Cell Tolerance, Auto Terminate dV Value Tolerance and Auto Terminate Wet Cell Tolerance.

Note, the Auto Terminate feature is only assessed at every Map Output Interval.

Refer to Section 13.6.7 for more details.
Auto Terminate Wet Cell Tolerance ==
 [ {0} | \(\langle\) value \(\rangle\) ]
Classic and HPC

Used to set the percentage of cells that have become wet since the Map Output Interval for automated result monitoring to stop a simulation after the flood peak. This command is used with the mandatory stop simulation commands Set Auto Terminate and Read GIS Auto Terminate.

If set to 0, then if any monitored cells have become wet since the last map output the simulation continues. If set, for example, to a value of 5, then up to 5% of monitored cells can become wet since the last map output without triggering an auto terminate.

This command is used with the optional commands Auto Terminate dV Cell Tolerance, Auto Terminate dV Value Tolerance, Auto Terminate Start Time and Auto Terminate Wet Cell Tolerance.

Note, the Auto Terminate feature is only assessed at every Map Output Interval.

Refer to Section 13.6.7 for more details.
BC Control File ==
 \(\langle\) .tbc \(\rangle\) ]
Classic and HPC

Specifies the TUFLOW Boundary Control (.tbc) file (see Section 4.2.6). The available commands that can be read into a .tbc are listed in Appendix D).

There can only be one .tbc file per 2D domain.
BC Database ==
 \(\langle\) .csv \(\rangle\) ]
Classic and HPC

Sets the active BC Database file, as described in Section 8.6. The file is usually created using spreadsheet software such as Microsoft Excel.

If the BC Database is specified in the TUFLOW .tcf file, it is set as the active database for both 2D and 1D models. However, the active database can be changed at any stage in the .tbc and .ecf files by repeating the command with the new database set as the \(\langle\) .csv \(\rangle\).

A BC Database must be specified before any of the other BC commands are used.
BC Event Name ==
 \(\langle\) bc_event_name \(\rangle\) ]
Classic and HPC
Legacy Command. Use BC Event Source instead. Expand to find out more about the legacy settings.

Sets the active BC name to be substituted wherever BC Event Text values occurs in the BC Database. See Section 8.6.2 for a description of how the BC event commands operate and refer to the command BC Event Source.

If specified in the .tcf file, <bc_event_name> also applies to any 1D models.

The <bc_event_name> value can be changed at any stage by repeating this command in the .tbc and .ecf files. For example, it may be set to “Q100” to read in the 100 year catchment inflows, then set as “H010” to read in the 10 year ocean levels for the downstream boundary. Note that, in this case, the locations of the catchment inflows and downstream boundaries would have to be placed in two separate GIS layers.

BC Event Source ==
 \(\langle\)bc_event_text\(\rangle\) | \(\langle\)bc_event_name\(\rangle\) ]
Classic and HPC

Typically used within Define Event blocks in a .tef file (TUFLOW Event File) – see Section 13.3.1, but can be used one or more times in a .tcf file.

ERROR 2313 occurs if <bc_event_text> is not unique for a simulation.

Combines BC Event Name and BC Event Text into one command, and can occur up to 100 times to allow multiple events within the one simulation. Cannot be used in conjunction with BC Event Text.
BC Event Text ==
 \(\langle\)bc_event_text\(\rangle\) ]
Classic and HPC
Legacy Command. Use BC Event Source instead. Expand to find out more about the legacy settings.

Sets the text in the BC Database that is to be substituted by the BC Event Name value. See Section 8.6.2 for a description of how the BC event commands operate.

If specified in the .tcf file, <bc_event_text> also applies to any 1D models. The <bc_event_text> value can be changed at any stage by repeating this command in the .tbc and .ecf files, although it is strongly recommended that the <bc_event_text> value is standardised across all models and the command is specified only once.

BC Wet/Dry Method ==
 [ PRE 2005-11-AF ]
Classic Only
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

Water levels at HX cells are set to be not less than the ZC plus Cell Wet/Dry Depth value for when the 1D water level falls below the HX cell. This enhances stability in some situations. For backward compatibility use the PRE 2005-11-AF option.

BC Zero Flow ==
 [ {OFF} | START | END | START and END |   ]
Classic and HPC

If set to START, END or START and END, zeros the start and/or end of 1D and 2D flow hydrographs (QT, ST, SA) as the option implies. The hydrograph is modified by adding another row at the start/end of the hydrograph with a flow value of zero.

The benefit is that should a simulation start before or finish after the start/end of a hydrograph, the flow from this hydrograph into the model will be zero. (TUFLOW, by default, extends the first value of all boundary conditions backwards in time indefinitely, and the last value forwards in time indefinitely.)

Only applies to hydrographs sourced via the BC Database file. See Section 8.6.
Bed Resistance Cell Sides ==
 [ AVERAGE M | AVERAGE n | MAXIMUM n | {INTERROGATE} ]
Classic and HPC
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

Defines how the bed resistance value at a 2D cell’s mid-side (i.e. that used in the momentum equation) is calculated.

INTERROGATE (the default) applies the exact value from the material polygons using Read GIS Mat. The INTERROGATE option provides a higher resolution sampling of material values compared with just sampling at the cell centres. This higher resolution sampling is particularly useful in modelling urban areas where frequent and large changes in Manning’s n occurs.

Note the Read RowCol Mat command is incompatible with the INTERROGATE option. If using Read RowCol Mat, use AVERAGE M or AVERAGE n.

The AVERAGE M option (TUFLOW Classic only) takes the average Manning’s M (1/Manning’s n) value of the two adjoining cell centre values.

The AVERAGE n option (TUFLOW Classic only) takes the average Manning’s n values of the cell centres.

The MAXIMUM n option (TUFLOW Classic only) takes the maximum n values of the cell centres either side of the cell side.

See Section 7.3.6.1.

Bed Resistance Depth Interpolation ==
 [ LINEAR M  | {SPLINE n}  | LINEAR n ]
Classic Only

Controls how the Manning’s n value is interpolated between the two depths if using the varying Manning’s n with depth (see Read Materials File). The default value is SPLINE n which uses a curved fit so that the n values transition gradually. LINEAR M and LINEAR n both use a linear interpolation of the M (1/n) and n value respectively.

The depth taken to interpolate Manning’s n values that vary with depth is taken as the minimum of the depths at the cell mid-side and the neighbouring cell centres.

See Section 7.3.6.
Bed Resistance Values ==
 [ {MANNING N}  |  MANNING M  |  CHEZY ]
Classic Only Sets the bed resistance formula to use. The default value is MANNING N. See Section 7.5.3.
BG FLC Default Approach ==
 [ {LINEAR}  | LINEAR-CONSTANT |  PARABOLIC | INVERTED-PARABOLIC ]
Classic and HPC

Specifies the approach used to calculate the FLC at different depths for the 2d_bg shape (see Section 7.3.8.2). The default option is LINEAR

It is possible to individually specify the method to be used for each 2d_ bg structure using the ‘Option’ attribute (refer to Table 7.16).
Blank BG FLC Approach ==
 [ {NONE}  | METHOD A | METHOD B ]
Classic and HPC Specifies the approach to automatically generate the superstructure FLC value if the SuperS_FLC attribute is not defined. The default option is NONE (i.e. superstructure FLC must be specified manually). Refer to Section 7.3.8.2.1 and Table 7.16.
Blockage AEP ==
 \(\langle\) aep value in % \(\rangle\) ]
Classic and HPC

Sets the AEP (annual exceedance probability) for the current event, this would typically be defined within an event file (.tef), but can also be specified in the .tcf.

See Section 5.8.1.1 for details of the blockage matrix approach.
Blockage ARI ==
 \(\langle\) ari value in years \(\rangle\) ]
Classic and HPC

Sets the ARI (average recurrence interval) for the current event, this would typically be defined within an event file (.tef), but can also be specified in the .tcf.

See Section 5.8.1.1 for details of the blockage matrix approach.
Blockage Default ==
 \(\langle\) Default Blockage Category \(\rangle\) ]
Classic and HPC Sets the blockage category to be used if one is not defined in the 1d_nwk pBlockage attribute. The pBlockage field must be left blank for this to be used, if a numeric value is specified it is used instead. See Section 5.8.1.1.
Blockage Matrix ==
 [ {OFF}  | ON ]
Classic and HPC Turns on or off the Blockage Matrix of culverts, as described in Section 5.8.1.1.
Blockage Matrix File ==
 \(\langle\) link to blockage .csv file \(\rangle\)  ]
Classic and HPC Sets the blockage matrix file, as described in Section 5.8.1.1. There can only be a single blockage matrix file.
Blockage Method ==
 [ ELM  |  RAM  |  {} ]
Classic and HPC

Sets the blockage matrix method to either ELM (energy loss method) or RAM (reduced area method). If blockage matrix is enabled this command must be specified.ERROR 1622 is returned if Blockage Matrix is on, though no blockage method is specified.

See Section 5.8.1.1 for blockage matrix details.
Blockage Override ==
 \(\langle\) Blockage Category \(\rangle\)  ]
Classic and HPC Sets all culverts to use the specified blockage category. This overwrites the pBlockage attribute in the 1d_nwk layer. Useful for sensitivity testing. See Section 5.8.1.1.
Blockage PMF AEP ==
 \(\langle\) aep value \(\rangle\)  ]
Classic and HPC Sets the AEP for the PMF. Only required if PMF is defined in the AEP column of the blockage matrix file. See Section 5.8.1.1 for blockage matrix details.
Blockage PMF ARI ==
 \(\langle\) ari value in years \(\rangle\)  ]
Classic and HPC Sets the ARI for the PMF. Only required if PMF is defined in the ARI column of the blockage matrix file. See Section 5.8.1.1 for blockage matrix details.
Blockage Return Period ==
 [ AEP  |  ARI ]
Classic and HPC

Used to set Blockage Matrix return period naming convention to ARI or AEP. See Section 5.8.1.1.

If this command above is not set, the first occurrence of either Blockage ARI or Blockage AEP sets the return period naming convention.

The return period values in the first column of the matrix file specified with the .tcf command Blockage Matrix File must be in the same convention. For example, if specifying “Blockage Return Period == AEP”, values in the matrix file must also be specified in AEP.

See Section 5.8.1.1 for blockage matrix details.
Blue Kenue Start Date ==
 \(\langle\) date in isodate format \(\rangle\)  ]
Classic and HPC
Legacy command. Expand to find out more about the legacy settings.

This date is added to the Blue Kenue output files as per the Blue Kenue file format. The date should be specified in ISO 8601 (isodate) format (yyyy-mm-dd). For example, to specify the 5th of November 2023 the .tcf command would be: Blue Kenue Start Date == 2023-11-05. For more information on the Blue Kenue format, see the 2018 TUFLOW Manual.

Boundary Viscosity Factor ==
 [ {1.0}  |  \(\langle\) factor \(\rangle\)  ]
Classic and HPC

Multiplies the eddy viscosity coefficient by <factor> along all open (external) boundaries, and 2D and HX links.

For releases prior to 2016-03 the eddy viscosity coefficient was previously set to zero for the boundary cells (this was because land boundaries required this and open boundaries were treated in the same manner). For the 2013-12 release for Link 2D2D Approach == METHOD D the default is set to 1.0 to improve the performance in flow patterns along the 2D link lines. Changing this value in the range of 0.0 to 5.0 (possibly higher) usually has little effect on results, however, increasing the factor may help “stabilise” unrealistic circulations along a boundary or 2D / HX link line without adversely affecting results. Sensitivity test prior to adopting larger factors.
BSS Cutoff Depth ==
 [ {0.1}  |  \(\langle\) BSS_cutoff_depth \(\rangle\)  ]
Classic and HPC Defines the depth threshold (m) below which the Bed Shear Stress (BSS) and Stream Power (SP) Map Output Data Types will linearly reduce to zero. See Table 11.4.
Calibration Points MI File ==
 \(\langle\) mif_layer \(\rangle\)  ]
Classic and HPC

Assigns the peak water level calculated during the simulation as an extra attribute to the .mif/.mid layer. Useful for obtaining peak flood levels at calibration points and other locations as direct output from TUFLOW. Up to a maximum of ten (10) files can be specified.

The GIS layer at present must be in the .mif/.mid format and is opened and closed during the start-up phase so the existence of the layer is checked (rather than at the end of the simulation as this causes issues if the layer does not exist or has a save date later than the .tab file), and also so that the layers are copied if using the -c or -ca switches (refer to Table 13.2).
Cell Side Wet/Dry Depth ==
 [ {0.001}  |  \(\langle\) depth_in_m \(\rangle\)  ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

No longer required or recommended for use subsequent to implementation of Wetting and Drying == ON METHOD B. See 2010 TUFLOW Manual for details.

Cell Size ==
 \(\langle\) value_in_metres \(\rangle\)  ]
Classic and HPC
Legacy command, use the .tgc Cell Size command instead. Expand to find out more about the legacy settings.

Sets the grid cell size in metres. Rarely used; normally specified in the .tgc file (see Section 7.2.3 and Cell Size). If the command exists in both the .tcf and .tgc, the .tgc command will overwrite the .tcf command.

This command is not supported when using the Quadtree TUFLOW HPC functionality (Section 7.4.1) and the command must be placed in the .tgc instead.

As of the 2023-03-AF release, using this command in the TCF will give an error.

Cell Wet/Dry Depth ==
 [ {0.002}  |  \(\langle\) depth_in_m \(\rangle\)  ]
Classic and HPC

Sets the wet/dry depth for determining when a cell wets and dries. The default is 0.002m (2mm) or 0.007ft if using Units == US Customary. The depth should be selected according to the magnitude of flooding depths. For broad-scale models with large cell sizes values of up to 0.05m (0.16ft) have typically been used, while for models using the direct rainfall approach, or that have a high proportion of steep flow, a wet/dry depth of less than a mm (e.g. 0.0002m or 0.0007ft) may be required due to the substantial amount of shallow sheet flow. A reduced wet/dry depth of 0.0002m (0.0007ft) is particularly recommended for direct rainfall models, noting that the cell wet/dry depth cannot be set to below 0.0002m (0.2mm) or 0.0007ft.

For TUFLOW Classic Multiple 2D Domain (see Section 10.7.2) models, this command is domain dependent.
Change Zero Material Values to One ==
 [ ON  |  {OFF}  ]
Classic and HPC
Legacy command. Expand to find out more about the legacy settings.

The default material value is zero which means that every cell must be assigned a material value (i.e. use Set Mat as the first materials command in the .tgc file). For backward compatibility set to ON. See Section 7.3.6.

Check Inside Grid ==
 [ {ERROR}  |  WARNING  |  OFF  ]
Classic and HPC By default, some layers, such as the 2d_bc and 2d_po layers, must have all of their objects fall within the 2D domain they are associated with, otherwise an ERROR is issued and the simulation stops. Should it be required that this check be switched off, set to either WARNING (a WARNING is issued and will be included in the _messages GIS layer) or OFF (no checks are made). The treatment of objects that fall partly inside a 2D domain should be cross-checked viewing the check files and results as to how they were treated.
Check MI Save Date ==
 [ {ERROR}  |  WARNING  |  OFF  ]
Classic and HPC

Checks that the save date of the .mid file is later than the save date of the GIS layer as defined by Check MI Save Ext. The two files must be located in the same folder. This command is very useful for detecting the possibility that a GIS layer has been modified, but not exported as .mif/.mid files prior to the simulation.

For the ERROR option (the default), the simulation terminates and an error message is given.

For the WARNING option, a warning is written to the screen and log file, but the simulation proceeds without pausing. It remains the responsibility of the user to check for any warnings.

The OFF option disables all checks and no warnings are given.
Check MI Save Ext ==
 [ {.tab}  |  \(\langle\) ext \(\rangle\)  ]
Classic and HPC Sets the extension of the GIS file for which Check MI Save Date uses. The default extension is “.tab”; the MapInfo primary GIS table file.
Command Line Processing ==
 [ {2016}  |  Pre 2016  ]
Classic and HPC Relaxes a rule added in the 2016-03 release that will force an ERROR if a “==” (double =) is not specified for a command. This is to help prevent issues associated with specifying a single = and the command not being processed correctly (as could occur prior to the 2016-03 release).
Control Number Factor ==
 [ {1.0} | \(\langle\)CN_value\(\rangle\)  ]
HPC Only

The default HPC courant, shallow wave celerity and diffusion control number limits can be reduced (or increased – be careful!) to effectively underclock or overclock the simulation. Using the above command factors all three control numbers. For example, a value of 0.8 reduces the limits from 1.0, 1.0, 0.3 to 0.8, 0.8, 0.24, and will increase the run time by 20%. Reducing the control number limits may be useful if the simulation is exhibiting erratic behaviour or numerical “noise”, although testing has found this is rare in real-world models, and if occurring is more likely to be a sign of poor data or poor model schematisation. See Section 3.5.4 for information relating to TUFLOW HPC’s timestep.

Though not recommended, a HPC simulation can be run using a fixed instead of adaptive timestep by setting the <cn_value> to 0 and specifying a Timestep. When running using a fixed timestep, there are no checks on exceedance of control numbers or application of the repeated timestep feature. If the control numbers are exceeded, the simulation has a high risk of going unstable, which is detected by the occurrence of NaNs (Not a Number) in the calculations. However, unstable results can occur prior to NaNs being detected, therefore if no NaNs occur this is not an indication the simulation was stable.
CPU Threads ==
 [ {2.0}  |  \(\langle\)number_of_CPU\(\rangle\)  ]
HPC Only

The number of CPU threads used by a TUFLOW HPC simulation. For example, CPU Threads == 6 runs the HPC 2D solver across 6 CPU core, noting that the number of threads requested is limited to the maximum number of cores available on the machine, and the available TUFLOW Thread licences. The default number of Thread licences is four times the number of TUFLOW Engine licences. For example, a Local 4 licence allows up to a maximum of 16 CPU cores in use at any one time across all simulations.

For further information see Section 12.8.
CSV Header Line ==
 [ {}  |  SINGLE  ]
Classic and HPC
Legacy command. Expand to find out more about the legacy settings.

This is a legacy command that applies to formats prior to the default .csv output for the 2016-03 release.

Specifying SINGLE will only output a single header line in _PO.csv files, which makes it much easier to use the file for graphing in Excel. The simulation name is also included in the label so that it’s easy to distinguish between simulations when graphing comparisons. This is not the default setting, so this command needs to be specified to activate the feature.

CSV Maximum Number Columns ==
 \(\langle\)max_col\(\rangle\) ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

This is a legacy command that applies to formats prior to the default .csv output for the 2016-03 release.

Used to specify a maximum number of columns for 1D .csv output files. The default setting is limitless. Refer also to the .ecf command CSV Maximum Number Columns.

CSV Time ==
 [ DAYS  |  {HOURS}  |  MINUTES  |  SECONDS  ]
Classic and HPC

Specifies the time values of .csv outputs. The default is HOURS.

Will apply to 1D and 2D .csv output. See Section 11.3.
Defaults ==
 [ PRE \(\langle\)Release\(\rangle\) ]
Classic and HPC

Sets backward compatibility to the specified release. See Chapter 18. Options are:

  • 2023-03
  • 2020-10
  • 2020-01
For PRE 2018-03 and earlier please refer to the 2018 TUFLOW Manual.
Define Output Zone ==
 \(\langle\)oz_name\(\rangle\) ]
Classic and HPC

Starts a block of .tcf commands for an Output Zone named \(\langle\)oz_name\(\rangle\). See Section 11.2.5. Only one block can be specified for each unique \(\langle\)oz_name\(\rangle\).

Use End Define to terminate the block. An ERROR occurs if End Define is not specified. Refer also to Model Output Zones.
Demo Model ==
 [ ON  |  {OFF}  ]
Classic and HPC When set to ON, allows simulation of the Demo Models (developed for the 2012 Flood Managers Association (FMA) Conference) and also allows Free Mode for small-scale models without the need for a TUFLOW license. Note that writing to the _All_TUFLOW_Simulations.log file (see Section 14.4) is switched off when this command is set to ON. For further information on the Demo Models refer to Section 2.1.4 and the User Guide Free Demo TUFLOW Wiki page.
Density of Air ==
 [ {1.25}  |  \(\langle\)value\(\rangle\)  ]
Classic Only Sets the density of air in kg/m3. If a cyclone/hurricane/typhoon track is used, the density of air can be varied along the track. See Section 8.7.
Density of Water ==
 [ {1025}  |  \(\langle\)value\(\rangle\)  ]
Classic and HPC Sets the density of water in kg/m3.
Depth/Ripple Height Factor Limit ==
 [ {10}  |  \(\langle\)value\(\rangle\)  ]
Classic Only Sets an upper limit on the ratio of the water depth over the ripple height in the formula for calculating Chezy values based on water depth. The value must be greater than 1/12, and if less than 1/12 is set to the default value of 10. See Section 7.5.3.
Display Water Level ==
 \(\langle\)X\(\rangle\), \(\langle\)Y\(\rangle\) ]
Classic and HPC Displays the water level on the screen for the cell located at X,Y where X and Y are the geographic coordinates in metres. See Section 14.2.1.
Distribute HX Flows ==
 [ ON  |  {OFF}  ]
Classic and HPC Offers an alternative option for distributing the flow across HX lines to/from the 1D nodes, see Section 10.2.1. The distribution is based on a linear interpolation based on the distance of the HX cell from the 1D node. This option, on some models, has improved model performance if the 1D/2D interface is being problematic. The feature is still under trial and should be benchmarked before adopting. It is not available for the Flood Modeller 1D link as incorrect results presently occur. It has not been tested with the XP-SWMM 1D link.
End 1D Domain Classic and HPC Terminates a Start 1D Domain block of 1D (.ecf) commands in a .tcf file. See Chapter 5.
End 2D Domain Classic Only Indicates the end of a block of commands that define a 2D domain. Must only occur after a Start 2D Domain command, otherwise an error occurs. See Chapter 10.7.2.
End After Maximum ==
 \(\langle\)eam\(\rangle\)  |  [ {0.001}  |  \(\langle\)h_tol\(\rangle\)  ]
Classic and HPC

Terminates the simulation <eam> hours after the last time a new maximum was recorded anywhere in the model. End Time should also still be specified as an upper limit to finish the simulation.

<h_tol> is an optional second argument that sets a height tolerance for detecting whether a 1D node or 2D cell has reached its maximum. For example, “End After Maximum == 0.25 | 0.01” will terminate the simulation once either End Time has been reached, or there are no 1D nodes or 2D cells that have increased by 1cm (0.01m) in the last 15mins (0.25h). The % of 1D nodes and 2D cells that have reached their maximum are displayed after the “Mx” on the console window and in the .tlf file.

The default for <h_tol> is 0.001m (or 0.001ft), unless “Defaults == PRE 2016” in which case the default is 0.0. Note that using a 0.0 tolerance may not work as expected due to numerical precision issues.
End After Maximum Start Time ==
 [ {0}  |  \(\langle\)time in hours\(\rangle\)  ]
Classic and HPC

The End After Maximum feature will not commence monitoring until after a specified time (in hours).

For example, “End After Maximum Start Time == 12” does not commence monitoring till a simulation time of 12 hours, therefore, the simulation cannot terminate prior to this time.
End Define Classic and HPC Ends a Define Output Zone block of .tcf commands. This command must be specified if Define Output Zone occurs within the .tcf. See Section 11.2.5.
End Map Output ==
 \(\langle\) time_in_hours \(\rangle\) ]
Classic and HPC

The simulation time in hours when map output terminates. If the command is omitted, the simulation end time is used.

This command can be defined for different output formats by including the output format extension on the left of the command. For example, to set the end time for XMDF output to 10hrs use:

XMDF End Map Output == 10

This functionality is also available for the commands Start Map Output, Map Output Interval and Map Output Data Types. Refer to Section 11.2.1.

This command can be used within a Define Output Zone definition block to change the setting from that for the entire model map output.
End Time ==
 \(\langle\) time_in_hours \(\rangle\) ]
Classic and HPC

Specifies the finish time of the simulation in hours. Value must be greater than the start time and can be negative. See Section 4.2.4.

If the command is omitted, an end time of 1 hour is used.
ESTRY Control File [ {} | AUTO] ==
 [ {}  |  AUTO] == \(\langle\) .ecf_file \(\rangle\) ]
Classic and HPC

Specifies the TUFLOW 1D / ESTRY control file (.ecf) (see Section 4.2.5). There can only be one .ecf file.

The AUTO option automatically sets the .ecf filename to the same as the .tcf file (except for the extension).

Note all 1D output filenames are now based on the .tcf filename, not the .ecf filename. This means that if the .ecf file does not change when setting up a new simulation based on a previous simulation, there is no need to make a copy of the .ecf file (i.e. the .ecf file can be treated in a similar manner to the .tgc and .tbc files).
Event File ==
 \(\langle\) .tef_file \(\rangle\) ]
Classic and HPC

Sets the active event file, see Section 13.3.1. All .tcf and .ecf commands can also be read into a .tef. The additional .tef commands (that cannot be read in to a .tcf or .ecf) are listed in Appendix K.

Whilst this command may be repeated to change the active event file it is recommended that only one event file be created for all simulations.
Excel Start Date ==
 \(\langle\) days_since_1900 \(\rangle\) ]
Classic and HPC

Adjusts the time column of time series output (Section 11.3) by the amount specified. The amount is in days from the year 1900 as used by Microsoft Excel to manage its date fields. To determine this value, enter the date corresponding to time zero in the TUFLOW simulation as a date field in Excel. Change the format of the Excel cell to “Number”, and the number of days since 1900 is shown. Paste this number into the .tcf file for <days_since_1900>.

Note, only applies:

  • if CSV Time == DAYS
  • to 2D timeseries outputs and not 1D timeseries
External Stress File ==
 \(\langle\) .tesf_file \(\rangle\) ]
Classic and HPC Specifies the external stress control file ( .tesf) (see Section 4.2.12). There can only be one .tesf file per 2D domain.
FEWS Geodatum ==
 \(\langle\) geodatum string \(\rangle\) ]
Classic and HPC Used to write out a FEWS regular grid configuration file (.xml). This .xml file is written if the FEWS Geodatum is specified and the Map Output Format includes the “NC” format. The .xml file is written to same results folder as the grid .nc, and has the file name “Grids.xml”. For further details see the NetCDF Raster Output Format TUFLOW Wiki page.
FEWS Input File ==
 \(\langle\) FEWS boundary file \(\rangle\) ]
Classic and HPC Reference to a DELFT-FEWS boundary file in .csv or .xml format. This command can be used to set the duration of the simulation and the NetCDF Output Start Date for a TUFLOW simulation based on the information within the DELFT-FEWS file. Refer to Section 8.6.4.
File Retry Max Count ==
 [ <max count> | {40} ]
Classic and HPC When a file is locked (e.g. due to external use such as during file backups) TUFLOW will retry a set number of times (and for a set period of time - see File Retry Timeout to access the file. The maximum number of retries is capped to prevent an infinite loops if the file is permanently locked. The default number of retries is 40.
File Retry Timeout ==
 [ <max time> | {30} ]
Classic and HPC When a file is locked (e.g. due to external use such as during file backups) TUFLOW will retry to access the file for a set period of time (and a set number of retries - see File Retry Max Count) to access the file. The default timeout value is 30 seconds.
First Sweep Direction ==
 [ AUTOMATIC  |  {POSITIVE}  |  NEGATIVE  ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

Build 2004-05-AD reworked and tested part of the Stelling scheme that can vary the sweep direction depending on the flow regime at the time. In rare situations, this may cause very slight difference in results between two models (e.g. before and after cases) in areas where there should be no difference at all. This was as a result of the unpredictable sweep direction in one part of the scheme. Testing on a number of models showed that by fixing the sweep directions, there was virtually no difference in results. This also solved the rare situation where two models were showing a slight difference in areas they should not have been.

This command is provided for backward compatibility, although it is not considered that this will be necessary in most models. To use the approach prior to Build 2004-05-AD use the AUTOMATIC option.

Force File IO Display ==
 [ ON  |  {OFF}  ]
Classic and HPC

If set to ON, forces all file opening and closing information to be displayed to the screen and .tlf file. Nearly all file opening and closing is displayed, however some isn’t. For example Write PO Online == ON displays a lot of file opening and closing information as the simulation proceeds, so should you wish to activate this for checking purposes set this command to ON.

Note: This command would mainly be used for debugging a file opening and closing issue.
Free Overfall ==
 [ {ON}  |  ON WITHOUT WEIRS  |  OFF  ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

The default ON option activates the free-overfall method described in Syme (1991). The method offers better stability; particularly where major wetting and drying occurs. It also allows large tidal flats to continue to drain without being cut-off at their edges. This option also activates the automatic broad-crested weir flow switch between upstream and downstream controlled flow. Use this option where weir flow occurs over levees and embankments. This option increases the computation time, typically by 10 to 30%, depending on the degree of wetting, drying and weir flow.

Upstream controlled flow is determined by comparison of the upstream and downstream energy levels. If upstream controlled, the broad-crested weir formula is used to define the flow across the cell-side. With the development of the Supercritical flow switch, the automatic weir flow algorithm was enhanced and only applies to cell-sides that have an adverse slope (i.e. the bed slope from the ZC to ZU/ZV point is of opposite sign to the water surface slope) - see Section 7.5.2.

The ON WITHOUT WEIRS option activates the free-overfall method without the automatic weir flow switching. Mainly used for models developed prior to 1999, which is when the weir flow option became available.

The OFF option deactivates the free-overfall method. Used for models with little or no wetting and drying, and no upstream controlled weir flow.

Free Overfall Factor ==
 [ {0.6}  |  \(\langle\) value_0.0_to_1.0 \(\rangle\)  ]
Classic Only

Sets the free-overfall factor (see Syme (1991)).

The default is 0.6. The value should be less than 1.0 and greater than 0.0.
Froude Check ==
 [ {1}  |  \(\langle\) froude_no \(\rangle\)  ]
Classic Only Sets the minimum Froude Number that upstream controlled friction flow may occur. Only applies if Supercritical is set to ON, otherwise it is not used. Improved stability may occur in steeply flowing areas if <froude_no> is less than 1. <froude_no> cannot be below zero and would normally not exceed 1. See Section 7.5.2.
Froude Depth Adjustment ==
 [ {ON}  |  OFF  ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

Switches on or off an additional upstream controlled friction flow check (see Section 7.5.2). Set to OFF for backward compatibility for models run prior to Build 2003-01-AF that use the upstream controlled friction feature (i.e. see Supercritical).

GA Convergence Value ==
 [ {0.001}  |  \(\langle\) value \(\rangle\)  ]
Classic Only Sets the Green Ampt iteration infiltration convergence test value. The default value is 0.001m. See Section 7.3.7.1.1. The default unit for this command is metres. If Units == US Customary, the unit is feet.
GA Maximum Iterations ==
 [ {ON}  |  OFF  ]
Classic Only Sets the limit on the number of iterations for the Green Ampt solution. The default value is 10. If the number of iterations exceeds this value a WARNING 2302 is issued. See Section 7.3.7.1.1.
Geometry Control File ==
 \(\langle\) .tgc_file \(\rangle\) ]
Classic and HPC Specifies the geometry control file (.tgc) (see Section 4.2.7). There can only be one .tgc file per 2D domain.
GIS Format ==
 [ {MIF}  |  SHP  | GPKG ]
Classic and HPC

Specifies the output format for GIS check layers and GIS outputs such as the _TS layers. If the command GIS Format is not specified, the GIS format used for check layers and other GIS outputs is based on whether GPKG Projection, SHP Projection or MI Projection has been specified. If none or all of these commands have been specified, and GIS Format has not been specified, the default of using .mif files is adopted. See Section 11.2.2.5.

Note that the format of an input layer is solely controlled by the file extension (i.e. .gpkg for the GPKG format, .shp for the SHP format and .mif for the MIF format).
GIS Grid Vector Direction ==
 [ {ANGLE}  |  BEARING  |  VERBOSE  ]
Classic and HPC

The magnitude and direction are output as attributes on the GIS object for output of vector data. This command sets the direction convention. For the ANGLE option the direction is output in arithmetic format (0 degrees = East). For BEARING this is set to a compass bearing notation with (0 degrees = North). If set to VERBOSE, the x-direction component, y-direction component, angle and bearing are all output as attributes on the GIS layer.

To apply a different setting for different vector data types, inset the data type before the command. See Section 11.2.2.5.
GIS Grid Vector SF ==
 [ {1}  |  \(\langle\) scale factor \(\rangle\)  ]
Classic and HPC

Scale factor for the scaling of region objects for GIS output of vector data. The default value is 1. A value of 1 means a velocity of 1 m/s is one 2D cell long, therefore, with a scale factor of 2, a vector of magnitude 1 m/s would be two 2D cells long. A negative value outputs vectors of fixed length equal to <scale_factor> in metres or feet.

To apply a different setting for different vector data types, inset the data type before the command. See Section 11.2.2.5.
GIS Grid Vector TTF ==
 [ {0}  |  \(\langle\) tail_thickness_factor \(\rangle\)  ]
Classic and HPC Tail thickness Factor, scales the thickness of the arrow tails (default = 0). The thickness is the <tail_thickness_factor> times the arrow length. For some GIS software such as ArcGIS, a zero tail thickness value may cause issues as the region shape wraps onto itself. To apply a different setting for different vector data types, inset the data type before the command. See Section 11.2.2.5.
GIS Grid Vector Type ==
 [ {Region}  |  Point  ]
Classic and HPC

Specifies whether the vector information (output over a regular grid) should be as points or region objects. Region objects refer to the arrows that TUFLOW_to_GIS produces, scaled according to the vector magnitude. The magnitude and direction are output as attributes to the layer. The default is regions (as per TUFLOW_to_GIS).

To apply a different setting for different vector data types, inset the data type before the command. See Section 11.2.2.5.
GIS Project Path Format ==
 [ Absolute | {Relative} ]
Classic and HPC Sets the referencing type for the workspaces output by TUFLOW, for QGIS (.qgs) and MapInfo (.wor). “Relative” (the default) uses relative referencing, this can be changed to absolute by using “Absolute”. See Section 14.5.6.
GIS Projection Check ==
 [ {ERROR}  |  WARNING  ]
Classic and HPC

Checks that the GPKG Projection, SHP Projection and/or MI Projection setting is the same as the projection for all input layers. See Section 4.4.1. The Coordsys line check removes all spaces, tabs and quotes when making the comparison.

The check includes the “Bounds” values, as having different bounds can affect the decimal precision used by GIS/CAD software when writing .mif files, which can affect the TUFLOW test for snapped (connected) objects.

The default setting is ERROR and will prevent TUFLOW from starting the model simulation. Changing to WARNING output a message to the _messages GIS layer (Section 14.5.5) and will allow the model to continue to compile.
GIS Supported Object Ignored ==
 [ ERROR  |  {WARNING}  ]
Classic and HPC

Controls the response to GIS object ignored messages (for example, see Message 2073). If set to ERROR the simulation is terminated, while is set to WARNING (the default) the message is issued and the simulation continues. The default is for a WARNING to be issued as per releases prior to 2016-03.

Note that various TUFLOW inputs expect different GIS object types, so the behaviour of this reporting varies. For example a 1D boundary (1d_bc) layer can contain points snapped to the 1D nodes and/or region objects used to apply flow boundaries to nodes that fall within the region. So whilst a line is a generally supported object (see GIS Unsupported Object) any line objects in a 1d_bc layer are not used and TUFLOW issues Message 1099.
GIS Unsupported Object ==
 [ {ERROR}  |  WARNING ]  |  [ {1}  |  \(\langle\) level \(\rangle\) ]
Classic and HPC

Controls the approach for issuing messages in relation to unsupported GIS objects. GIS software typically store vector data in three broad geometries:

  • Points
  • Lines
  • Regions

Within these geometry types, different GIS packages may offer options for digitising objects. For example, when drawing a line object in MapInfo the user has the option for a line, a polyline and an arc. From left to right the editing buttons to digitise a line, polyline and arc in MapInfo are:

These line types are stored differently in the MapInfo .mif file, an extract of a .mif file which shows a line (with 2 vertices) object (red), a line (with 3 vertices) object (green) and an arc object (blue) is below.

Line 340604.21 5782377 340612.07 5782369.48
 Pen (1,2,0)

Pline 3
340609.55 5782359.99
340614.35 5782361.73
340623.19 5782363.59
 Pen (1,2,0)
Arc 340630.84 5782358.24 340640.43 5782382.01 180 270
 Pen (1,2,0)

Various GIS packages handle the advanced GIS geometries (such as arcs) differently, for example if converting a MapInfo Arc object using QGIS, the arc object is converted to a polyline with vertices along the length. For consistency between packages and to provide better support across GIS platforms not all GIS geometries are supported by TUFLOW. For lines, arc objects are not supported (but line and polyline objects are both recognised). For region objects rectangles, rounded rectangles and ellipses are not supported.

Two special cases of unsupported geometries are “Text” objects, which can be used to annotate GIS layers, and “None” or “Null” objects, which GIS software may add to the layer to indicate deleted objects (particularly if using the shapefile format).

This command controls TUFLOW’s response for geometries that are not supported by TUFLOW. The ERROR option stops the simulation with a Message 0323, while WARNING issues Message 0323 and continues the simulation. There is an optional severity level component that can be specified as a second argument (separated by a vertical bar) with the options for <level> being:

The severity levels are:

  • Level 0 – No checks on unsupported geometries (i.e. previous behaviour)
  • Level 1 – Check for ellipses, rectangles, rounded rectangles and arcs (curved arcs)
  • Level 2 – All the level 1 checks as above plus checks for null and text objects.
The default for unsupported objects is ERROR | 1, that is arcs, ellipses, rectangle and rounded rectangles will cause the simulation to stop, but any None and Text objects will be ignored.
Global FC Ch Factor ==
 [ {0.8}  |  \(\langle\) Ch \(\rangle\)  ]
Classic Only The global Ch factor applied to flow constrictions when the flow upstream is submerged and the flow downstream is unsubmerged, using the pressure flow equation for upstream controlled flow. See Section 7.5.6.
Global Rainfall Use Material Loss ==
 [ OFF  | {ON} ]
Classic Only Sets whether material rainfall losses (Section 7.3.6.4) are used when using a global rainfall boundary (Section 8.5.3.3). Prior to the 2020-10-AA release, if using material rainfall losses in TUFLOW Classic, the losses were not applied to any global rainfall boundaries. This command can be used to turn off material losses. The default for 2020-10-AA and newer is to apply material losses to global rainfall boundaries (in line with TUFLOW HPC).
Global Weir Factor ==
 [ {1.0}  |  \(\langle\) value \(\rangle\)  ]
Classic and HPC

Factor that adjusts the broad-crested weir formula (see Section 7.5.2). Testing has shown that a value of 1.0 to 1.1 is needed to reproduce upstream controlled weir flow (Syme, 2001b). This factor is applied globally, although spatial variation of the factor can be specified through a GIS layer read by the geometry control file (see Read GIS WrF.

Note that the global value and the spatially varying value are multiplied together (i.e. one does not replace the other).
GPKG Conversion Check  ==
 [ WARNING ]
Classic and HPC ERROR 0248 may occur when reading a SHP or MIF file that has been exported from a GKPG layer (see Section 4.4.1). This command can be used to downgrade ERROR 0248 to a Warning. Alternatively, ensure the input file follows the correct TUFLOW attributes.
GPKG Projection ==
 \(\langle\) GPKG layer \(\rangle\) ]
Classic and HPC

Sets the geographic projection for all GIS input and output in GeoPackage (.gpkg) file format (see Section 4.4.1). This is used for checking whether input layers are in the same projection, and for setting the projection of all output layers (e.g. check layers).

If a model has a mixture of .gpkg, .shp and .mif files as input, then the projection must be specified for each (e.g. using GPKG Projection, SHP Projection and MI Projection)
GPU Device IDs ==
 \(\langle\) list_of_device_ids \(\rangle\) ]
HPC Only

Controls the GPU device or devices to be used for the simulation if multiple CUDA enabled GPU cards are available in the computer or on the GPU itself. If you only have one GPU device, or you wish to use the primary device, this command is not needed. If there is more than one GPU device, and you wish to run the model across cards, enter a list of device IDs. For example, if you wanted to run a model using GPU devices 0 and 2, specify:

GPU Device IDs == 0, 2

Note that the GPU device numbering starts at 0 rather than at 1.

A GPU licence will be needed for each device ID.

Also refer to the batch switch –pu<id> described in which has the same function.

For further information see Section 12.8.
GPU DP Check ==
 [ {ERROR}  |  OFF  ]
HPC Only
Legacy command. Expand to find out more about the legacy settings.

The GPU Solver is a legacy solver.

The default setting of ERROR, causes TUFLOW to stop with ERROR 2420 advising that it is recommended to use the single precision version of the GPU Solver. Due its explicit formulation and being depth based, TUFLOW GPU does not usually require to be run in double precision (DP) mode. Refer to Section 13.4.2 for further information. There can also be substantial speed gains using single precision (SP) on some GPU cards, and there is a significantly less memory footprint. If DP is desired or required for the GPU Module specify GPU DP Check == OFF in the .tcf file, and run using a DP TUFLOW exe.

GPU Peer to Peer Access  ==
 [ DISABLED  | {ENABLED IF AVAILABLE} ]
HPC Only When running a HPC simulation across multiple GPUs, TUFLOW automatically recognises and utilises any peer to peer (p2p) access between GPUs that is possible according to the hardware setup. The user can choose to disable peer to peer GPU by setting this to ‘DISABLE’. This can also be specified using the command line argument -p2p0 to disable, or -p2p1 to enable (if available). The default is to use peer to peer access if available. Peer to peer access in rare occasions has failed to work when a peer connection has been reported as possible by the nVidia console or API. See Section 12.8 and 13.5.3.4.
RAM Optimisation ==
 [ {ON}  |  OFF  ]
HPC Only
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

Set to ON to optimise CPU RAM allocation for TUFLOW HPC simulations. This will cause the CPU RAM requirements to use around 50% less memory. This command should only be set to OFF to identify whether memory allocation is the cause of any issues when running the HPC Solver.

GPU Solver ==
 [ [ ON  |  {OFF}  ]
GPU (pre-2017 HPC release) if set to ON
Legacy command. Expand to find out more about the legacy settings.

Must be set to ON to use the pre 2017 release version of the TUFLOW GPU Engine. Significant improvements were made to the GPU solver for the 2017 release. Please use Solution Scheme and Hardware commands to use the improved TUFLOW HPC solver using GPU hardware. If the command is not specified or set to OFF, the standard TUFLOW Classic CPU Engine will be used to simulate the model.

GPU Temporal Scheme ==
 [ [ 1  | 2 |  {4}  ]
GPU (pre-2017 HPC release)
Legacy command. Expand to find out more about the legacy settings.

Note: This command relates to the legacy TUFLOW GPU solver. Please use Solution Scheme and Hardware commands to use the improved TUFLOW HPC solver using GPU hardware.

This command sets the order of the temporal solution for TUFLOW GPU simulations. The default is the recommended 4th order temporal solution therefore this command is usually not specified.

Available options are:

1 – First order out of place
2 – Second Order
4 – Fourth Order

We recommend the use of the 4th order temporal scheme as it is unconditionally stable with adaptive timestepping turned on, and has found to give excellent results. Lower order schemes save a little on memory requirements, but are more prone to instability and in some cases unreliable results.

Grid Format ==
 [ ASC  |  FLT | {TIF} | GPKG | NC | TGO | WRR ]
Classic and HPC Sets the format that TUFLOW uses to write output and check file grids (see Section 11.2.2.2). The default is the TIF format. Table 11.3 lists the available formats.
Grid Output Cell Size ==
 \(\langle\) grid_cell_size \(\rangle\) ]
Classic and HPC

Sets the cell resolution in metres of all grid outputs. For TUFLOW Classic the default output grid resolution is half the smallest 2D cell size (considering that multiple 2D domains may exist). For TUFLOW HPC the default is half the 2D cell size. For HPC models using Quadtree, the output resolution is the smallest 2D cell size. For more information see Section 11.2.2.2.

A DEM of the final Zpts is automatically written using this resolution if writing check files unless it is excluded using Write Check Files Exclude == DEM_Z.

Increasing the grid output cell size will reduce the RAM required and the size of the output files. Therefore, for very large models, consider increasing this value if there are memory (RAM) allocation issues. For more advice on reducing RAM requirements, see the TUFLOW Simulation Speed wiki page.
Grid Output Origin ==
 [ {AUTOMATIC}  |  MODEL ORIGIN  ]
Classic and HPC

AUTOMATIC, the default, adjusts the origin for the output grids by rounding to the Grid Output Cell Size so that all grids produced from different simulations using different model extents, and between different Output Zones, are all aligned. See Section 11.2.2.2.

If Grid Output Origin == MODEL ORIGIN is specified, this sets grid output (e.g. TIF, FLT or ASC) to have its origin exactly at the model’s lowest left coordinates for map output. Note that output grids of different origins (due to a change in the model’s schematisation or addition of 1D WLLs), or from different Output Zones, may not be aligned.
Groundwater Blend Threshold ==
 \(\langle\) float \(\rangle\) | {0.9} ]
HPC Only When a soil is nearly saturated, the level is transitioned from the level in the current layer to the layer above, as this avoids a sudden change in level as the soil reaches capacity. A “groundwater blend threshold” is used to control this, this threshold has a default value of 0.9, meaning that once a soil exceeds 90% of a soil capacity, the level starts to transition to the level in the layer above. The value must be in the range 0-99. See Section 7.4.5.
Hardware ==
 [ {CPU}  |  GPU ]
Classic and HPC

This command defines the hardware to be used for the compute. See Section 12.

CPU will run a simulation using the Central Processing Unit (CPU).

GPU will run the simulation using the Graphics Processor Unit (GPU) hardware. GPU hardware technology means very large models ($$100 million cells) with fine grids can now be run within a sensible timeframe.

TUFLOW Classic simulations are only possible using CPU. TUFLOW HPC can be run using CPU or GPU. TUFLOW HPC CPU simulations can be done using a standard TUFLOW licence. The GPU Hardware Module is required in addition to a standard TUFLOW licence to run a simulation on GPU. Refer to Section 1.1.5 for more details.
HEC-DSS Start Date ==
 \(\langle\) value \(\rangle\) ]
Classic and HPC Used to identify the date/time that should be used for time-zero. The date should be in the isodate format: yyyy-mm-dd hh:mm:ss, where the time portions are optional. If this command is not used, the first time in the DSS curve will be treated as time 0.0. See Section 8.6.5 for more information.
HPC [Thin | Thick] Weir Parameters ==
 \(\langle\) Cd \(\rangle\), \(\langle\) Ex \(\rangle\), \(\langle\) a \(\rangle\), \(\langle\) b \(\rangle\) ]
HPC Only New command for the TUFLOW 2023 release that sets the 2D weir flow parameters in the HPC solver at thin/thick breaklines, see Section 7.4.4. These parameters are the weir coefficient (Cd), the weir flow equation exponent (Ex) in the advanced weir equation (Section 5.7.5.3), and the exponents used in the Villemonte equation (a and b). The default values are 0.577, 1.5, 8.55 and 0.566, respectively.
HPC 1D Synchronisation ==
 [ {MAXIMISE 1D TIMESTEP}  |  EVERY 2D TIMESTEP]  |  [{10 ]
HPC Only The 1D timestep for a HPC 1D/2D linked model is the maximum or limiting timestep the 1D solver can use. The 1D solver act as an adaptive/varying timestep solution, and can step at different multiples of steps to the HPC 2D solver. Both 1D and 2D solutions are always synchronising at the 2D target timestep, or a multiple of the 2D target timestep if the 1D timestep is sufficiently greater for the 2D to perform more than one step. If the 1D limiting timestep is less than half the 2D target timestep, the 1D proceeds in two or more steps eventually synchronising with the 2D timestep. Where there is not a one-to-one synchronisation of the 1D and 2D timesteps, a usually negligible mass error may occur and can be checked by reviewing the CME% values shown on the Console Window (Section 14.2, the .tlf file (Section 14.5.1) or the _MB.csv file (Section 14.8) in the same manner as Classic. This command forces the 1D and 2D timestepping to be synchronised one-to-one. For more information on timestepping, see Section 3.5.
HPC Boundary Approach ==
 [ Method A  | Method B | {Method C} ]
HPC Only Used to set which HPC Boundary approach to use, for more information see Section 8.3.2.1. Method C is the default which applies energy corrections for HT, HQ and QT boundaries. Method B applies energy correction for HT, HQ, QT and HX boundaries connected to a single 1D node. Method A, the default for TUFLOW Classic, applies no energy connections.
HPC Device Split ==
 \(\langle\) value1, value2, … \(\rangle\) ]
HPC Only (non Quadtree)

If a model is simulated across multiple GPU devices, one of the devices (usually the one with the most wet cells) will be controlling the speed of the simulation and the other devices will be under-utilised. By default, TUFLOW HPC divides a model equally over multiple GPU devices. It is usual for the GPUs to have an un-equal amount of workload due to the number of active cells and number of wet cells, and this can change throughout the simulation as the model wets and dries. This command allows the user to distribute the workload unequally to the GPU devices.

During a simulation the workload efficiency of each GPU is output to the console and to the .tlf file with a suggested distribution provided at the end of the simulation. A number of iterations may be required to fully optimise the distribution. For example, a model simulated across four GPU devices reported at the end of the simulation in the .tlf file:

Relative device loads: 60.3% 100.0% 83.7% 53.2%
HPC Suggested workload balance HPC Device Split == 1.23, 0.74, 0.89, 1.40

For further information see Section 12.8.
HPC DP Check ==
 [ {ERROR}  |  OFF  ]
HPC Only The default setting of “ERROR”, causes TUFLOW to stop with ERROR 2420 (advising that it is recommended to use the single precision version of the HPC Solver). Due its explicit formulation and being depth based, TUFLOW HPC does not usually require to be run in double precision (DP) mode. Refer to Section 13.4.2 and the TUFLOW Wiki for further information. There can also be substantial speed gains using single precision (SP) on some GPU cards, and there is a significantly less memory footprint. If DP is desired or required for the HPC (and as such, the GPU Module) specify HPC DP Check == OFF in the .tcf file, and run using a DP TUFLOW exe.
HPC dt Write Interval ==
 \(\langle\) number of timesteps \(\rangle\) | {\(\langle\) Screen/Log Display Interval \(\rangle\)} ]
HPC Only Sets the output interval for information written to the .hpc.dt.csv file (Section 14.5.1.1). If not set the default is to use the Screen/Log Display Interval. If set to zero of less the file is supressed and not written.
HPC HQ Boundary Approach ==
 [ CELL | {TOTAL} ]
HPC Only HQ boundary computes the flux across the entire boundary line and uses a rating curve to apply a water level to the model. Each line is treated as a separate boundary and has a stage-discharge relationship, this is consistent with the TUFLOW Classic approach to HQ boundaries. Earlier versions of TUFLOW HPC applied the water surface slope on a cell by cell basis. It is possible to revert to all HQ boundaries using a cell by cell approach by setting this command to ‘CELL’. For more information see Section 8.3.2.2.
HPC HQ Boundary Filter Constant ==
 [ {1} | \(\langle\) float \(\rangle\) ]
HPC Only For cross-sections with very low longitudinal slope, the stage vs flow (HQ) relationship can become unstable - a small change in flow causes a change in water level that subsequently causes a similar but opposite change in flow. The user may specify the global HQ boundary filter constant using this command, see Section 8.3.2.3 for further details. The default value is 1, which means no filtering (for backward compatibility).
HPC Infiltration Drying Approach ==
 [ Method A  | Method B ]
HPC Only

Used to control drying when soil infiltration is present, see Section 8.3.2.4. For models using SGS the default is Method B, otherwise the default is Method A.

Infiltration is only computed for wet cells, consequently if the applied rainfall rate is less than the infiltration rate then the cell will repeatedly dry then wet. This can cause time output results to appear erratic and in rare cases has resolved stability issues if SGS was implemented. Currently infiltration rate is limited to the available water within a cell plus a precision adjustment, allowing the cell to dry. An improved approach (Method B) is to remove the precision adjustment for cells that have positive rainfall, so they remain “wet” but with near zero available water, thus eliminating the cyclical drying and wetting.

For models with SGS on the default approach is to use Method B, while for Non SGS models the default approach is to use Method A for backward compatibility. For non-SGS models there maybe be benefits in switching to Method B noting that this will infinitesimally reduce the amount of infiltration and therefore infinitesimally increase the amount of surface water. For SGS activated models, Method B is recommended for improved stability in rare cases and because the differences between methods is even less due to the much smaller wetted area in the cell at the drying point.
HPC Mannings Depth Approach ==
 [ Method A  | {Method B} ]
HPC Only Sets the approach used for the bed resistance calculation in the u and v direction (Section 7.2). “Method B” (the default) upwinds the depth of flow at a face which has found to improve model stability. The previous method is available by setting this command to “Method A”. Note, if using the TUFLOW HPC SGS functionality, this command has no effect.
HPC Restart Geometry ==
 [ Restart File | {TGC} ]
HPC Only Used to specify restart model geometry. From the 2020-10-AB build and onwards, the default option is “TGC”, which uses the bed elevation created by .tgc files. The “TGC” approach is consistent with the Classic solver. The bed elevation from the restart file can be used by selecting the option “Restart File”, this means changes in .tgc files won’t be applied in the restarted model. The “Restart File” approach was the default for HPC models prior to build 2020-10-AB. See Section 8.9.3. See also Restart File Ignore Fields.
HPC SX Momentum Approach ==
 [ Method A  | Method B ]
HPC Only Sets whether momentum flux is added to SX cells (Method B), which improves the boundary cell flow behaviour by applying appropriate momentum source/sink, or if only mass flux is added to SX cells (Method A). Method A is available for backward compatibility. See Section 8.3.2.4.
HPC Temporal Scheme ==
 [ 1 | 2 |  {4} ]
HPC Only

This command sets the order of the temporal solution for TUFLOW HPC simulations, see Section 13.5.3.1. The default is the recommended 4th order temporal solution therefore this command is usually not specified. Available options are:

1 – First order out of place
2 – Second Order
4 – Fourth Order

We recommend the use of the 4th order temporal scheme as it is unconditionally stable with adaptive timestepping turned on, and has found to give excellent results. Lower order schemes save a little on memory requirements, but are more prone to instability and in some cases unreliable results.
HPC Weir Approach ==
 [ Method A  | Method B | {Method B Energy} ]
HPC Only

New command for the TUFLOW 2023 release that sets the 2D weir flow approach in the HPC solver at thin/thick breaklines (see Section 7.4.4).

Available options are:

  • “Method A”: applies a water level gradient limiter for weir flow approximation.
  • “Method B”: applies the weir equation and uses the upstream water level above the weir invert as Hu.
  • “Method B Energy” (default): applies the weir equation and uses the upstream energy level above the weir invert as Hu.
HQ Boundary Approach ==
 [ METHOD A  |  METHOD B  |  {METHOD C} ]
Classic Only Sets the approach to be used for automatically generated 2D HQ boundaries (refer to Section 8.5).

METHOD A extends the HQ curve by ten metres (or 32.8 ft if using Units == US Customary) on its last point which can cause a sudden change in the slope of the curve at this elevation. This method does not issue WARNING 2365 if the top of the curve is exceeded during a simulation.

METHOD B sets the top level in HQ curve to be that of the highest cell elevation, and issues WARNING 2365 if the top of the curve is exceeded during the simulation. If the elevation range of the curve is less than one metre, the top elevation is raised to 1 metre above the lowest 2D cell. Alternatively the 2d_bc d attribute (refer to Table 8.6) can be used to specify the max depth to be used for generating the curve (if less than 1m it is set to 1m).

METHOD C (the default) automatically removes consecutive flow values in automatic 2D HQ boundary tables. For existing models that run with an automatic 2D HQ boundary, if the change in consecutive flow values is less than 0.00001 the results may be very slightly affected by this change. Use of Method B provides backward compatibility if this is an issue.
HR Grid Output Cell Size ==
 [ <distance> ]
HPC Only

SGS Only.

Sets the map output resolution for high resolution grid outputs (Section 11.2.2.3). If this command is not defined, the default HR Grid Output Cell Size is set based on the distance between SGS points.
HR Grid Output Use Face Elevations ==
 [ {ON}  | OFF ]
HPC Only

SGS Only.

When modelling breaklines in TUFLOW, “thin” breaklines modify the cell face elevations but do not modify the cell storages. When outputting high-resolution outputs (Section 11.2.2.3) this command sets whether the cell face elevations are used.

  • ON (default): face elevations are used.
  • OFF: face elevations are not used.
HR Interpolation Approach ==
 [ Method A  | Method B | Method C ]
HPC Only SGS Only. Sets the HR interpolation approach method. The HR output needs to interpolate cell centre water levels to cell corners. However, the interpolation methods for the standard output (Map Output Corner Interpolation == Method C) can produce “bumpy” HR water level output in direct rainfall models with steep terrain, as the water level is linearly interpolated from the cell centres/corners, while the change of sub-grid elevations may not be linear.

The following approaches are available for the HR output interpolation:

  • Method A is the default option that applies the same water level interpolation method used for the standard output.
  • Method B performs sheet flow checks at cell faces and ignores the water level from the upstream cell.
  • Method C applies the same sheet flow checks as the Method B. In addition, it also uses the number of wet SGS sampled points as a weighting that biases non-sheet flow cells that further improves the mapping to in-stream water levels.
See Section 7.4.3.2.3 and the High-Resolution Output TUFLOW Wiki page.
HR Thin Z Line Output Adjustment ==
 [ OFF  | {ON CELL SIDES} | ON ALIGNMENT ]
HPC Only

SGS Only.

Sets the Z Line Output Adjustment at thin breaklines for HR Outputs (Section 11.2.2.3). The three options provided are:

  • OFF: Thin breaklines do not affect the HR raster interpolation
  • ON CELL SIDES (default): This prevents interpolation across cell sides that have thin breaklines.
  • ON ALIGNMENT: The location of the breakline within the TUFLOW cell resolution is stored and stops interpolation occurring over this topographic barrier.
HX Force Weir Equation ==
 [ ON  |  {OFF}  |  \(\langle\) value \(\rangle\)  ]
Classic Only When set to ON, forces the weir flow equation to be applied across all active HX cell sides when the flow is upstream controlled (the default is OFF). This command lowers the HX cell centre elevation by 0.002m below the lowest active HX cell side elevation to force an adverse slope. If a value is specified the feature is turned ON and the value is the amount by which to set the HX cell centre elevation below the lowest active cell side, for example, HX Force Weir Equation == 0.1 would use 0.1 instead of 0.002. See Section 7.5.2. Note that the default approach uses either weir flow or super-critical flow when the flow is upstream controlled, depending on whether the ground surface gradient from HX cell centre to cell side is adverse (weir flow) or not adverse (super-critical flow). When the flow is downstream controlled, regardless of the ground surface slope, the full 2D equations are applied including allowance for momentum across the HX 1D/2D link.
HX ZC Check ==
 [ {ON}  |  OFF  ]
Classic Only

If ON (the default), checks whether the minimum ZC elevation at or along a HX object (see Table 8.5 and Table 8.6) is above the 1D bed level interpolated between connected 1D nodes. This is necessary to ensure that there is water in the nodes when the 2D HX cells start to wet. If the ZC elevation is lower than the 1D bed level, unexpected flows or a surge of water may occur into the 2D domain. See Section 8.5.1.

Using the “Z” flag (see HX in ), the ZC elevation is automatically raised at each 2D HX cell to slightly above the 1D node bed level. Only ZC elevations that are below the 1D bed are raised.

The checks and any automatic raising of ZC points includes the Cell Wet/Dry Depth value so that the ZC elevation is above the node bed plus the cell wet/dry depth.

If this option is set to OFF, lower ZC elevations are allowed and no automatic raising of ZC elevations occurs. Turning this check off is not recommended and may results in mass balance issues.
If Event ==
 \(\langle\) e1 \(\rangle\)  |  \(\langle\) e2 \(\rangle\)  |  \(\langle\) e3 \(\rangle\)  |  … ]
Classic and HPC

Controls which commands to process for different events, as specified using the –e run (see Section 13.3.1 and Table 13.2) or Model Events.

The “If Event” block must be terminated by “End If”, otherwise an ERROR occurs.

Optional “Else If Event” and “Else” blocks can be embedded between “If Event” and “End If”. The first block encountered that refers to a specified scenario is processed, and all remaining blocks within the “If Event” to “End If” construct are ignored. If an “Else” block is used it must occur as the last block (i.e. must occur after any “Else If Event” blocks) and its commands are only processed if no previous blocks have been processed.
If Scenario ==
 \(\langle\) s1 \(\rangle\)  |  \(\langle\) s2 \(\rangle\)  |  \(\langle\) s3 \(\rangle\)  | … ]
Classic and HPC

Controls which commands to process for different scenarios, as specified using the –s run option (see Section 13.3.2 and Table 13.2) or Model Scenarios.

The “If Scenario” block must be terminated by “End If”, otherwise an ERROR occurs.

Optional “Else If Scenario” and “Else” blocks can be embedded between “If Scenario” and “End If”. The first block encountered that refers to a specified scenario is processed, and all remaining blocks within the “If Scenario” to “End If” construct are ignored. If an “Else” block is used it must occur as the last block (i.e. must occur after any “Else If Scenario” blocks) and its commands are only processed if no previous blocks have been processed.
Index 1D2D Links ==
 [ {ON}  |  OFF  ]
Classic and HPC A sophisticated indexing system was implemented in release version 2018-03-AA to improve the run times of models with many HX and SX links (see Section 10.2. The improvement in run time is highly dependent on the size of the 2D domain(s) versus the number of HX and SX connections. It will also be more noticeable for HPC simulations on high end GPU devices where the clock time of the 2D computational effort is substantially lower than if running on a CPU. Improvements in run time vary from around 10% for the tutorial models to over 4,000% (i.e. over 40 times faster!) for a HPC model with 30,000 pit SX connections. This feature benefits both Classic and HPC simulations, and will also benefit links to external 1D schemes.
Input Drive ==
 \(\langle\) drive_letter \(\rangle\) ]
Classic and HPC Changes the drive letter of any input files with a full path specified. For example “Input Drive == K” changes any input filepaths that have a drive letter to the K drive. Also see Output Drive. See Section 11.1.
Inside Region ==
 [ METHOD A  |  {METHOD B}  ]
Classic and HPC
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

Specifies the method used to assign values to 2D cells or cell mid-sides that fall within a polygon using commands that process polygons from a GIS layer (e.g. Read GIS Mat).

Method A uses the previous, much slower method, and is provided in case of backward compatibility issues. Testing thus far has shown the two methods yield identical results although it is possible that if a 2D cell centre or mid-side point lies exactly on a polygon boundary different results may occur.

Method B offers much faster processing than Method A. To appreciate the increase in start-up time this feature offers, testing on two large models reduced the start-up time from 20 minutes to 3 minutes for one model, and from 40 minutes to 5 minutes for the other. The faster start-up time occurs for any polygon layers being accessed from the .tgc and .tbc files, particularly those containing large number of vertices.

Instability Water Level ==
 [ {see_below}  |  \(\langle\) value \(\rangle\)  ]
Classic Only

The default water level used to detect instabilities higher than the highest cell elevation of all cells (whether wet, dry or permanently dry). Any unassigned elevations (which are given a value of 99999, are not included). The default value is 10 metres (or 10ft if using Units == US Customary).

Alternatively, this command is used to set the instability water level manually. See Section 16.3.2.5.
Latitude ==
 [ {0}  |  \(\langle\) value_in_degrees_from_equator \(\rangle\)  ]
Classic Only Sets the latitude used for calculating the Coriolis term in the shallow water equations (Equations (7.2) and (7.3)). A negative value indicates south of the equator. A zero value disables the Coriolis term. See Section 7.5.5.
Layered FLC Default Approach ==
 [ METHOD A  |  {METHOD B}  |  METHOD C  |  METHOD D ]
Classic and HPC

Used to specify the settings for layered flow constrictions (see Section 7.3.8.3). The default setting is METHOD B (PORTION). For releases prior to 2016-03 METHOD A (CUMULATE) was used.

It is possible to individually specify the method to be used for each structure. Specify either METHOD A (CUMULATE), METHOD B (PORTION) or METHOD C in the Shape_Options attribute (refer to Table 7.18). If none of the options occur, the setting as specified in the command Layered FLC Default Approach is used.

  • METHOD A (named CUMULATE in releases prior to 2020-10): Accumulates losses through each of the layers in the 2d_lfcsh as the depth of water increases.
  • METHOD B (named PORTION in releases prior to 2020-10) – the default: Proportions the losses through each of the layers in the 2d_lfcsh based on the depth of water.
  • METHOD C: Combines the METHOD A and METHOD B approaches by utilising METHOD A through to the top of Layer 3 and METHOD B above Layer 3.
Line Cell Selection ==
 [ METHOD A  |  METHOD C  |  {METHOD D}  ]
Classic and HPC
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

Sets the method for selecting 2D cells along lines in GIS layers.

Method A (used prior to Build 2006-06-AA) is the original method and is provided for backward compatibility.

Method C (the default up until Build 2007-04-AC), uses the cell “cross-hair” approach where a cell is only selected if the line intersects imaginary “cross-hairs” that extend from cell mid-sides to cell mid-sides.

Method D (the default) selects cells using the same approach as for Method C, however differs in that it uses a more advanced approach for assigning interpolation weightings of 1D node water levels based on the perpendicular intersection of the 2D cell centre with the boundary line (similar to that used for Z Lines). This provides a “smoother” water surface profile along HX lines, offers better stability along 1D/2D HX interfaces, and is the recommended approach.

Method C and Method D are particularly useful along HX lines that follow, for example, the top of a levee or flood defence wall, as it ensures that the same cells selected along the 1D/2D interface are those raised by the Z line.

Link 2D2D Adjust Velocity Head ==
 [ [{0}  |  \(\langle\) value \(\rangle\)  ]
Classic Only Sets the proportion of the velocity head by which to adjust the water levels along the 2D link line. A value of zero applies no adjustment whilst a value of 1.0 adjusts (downwards) the level by V2/2g. The default is 0.0 (no adjustment). Some tidal models demonstrated improved performance by setting to 1.0, however, where there is rapid changes in velocities along a 2D link line, for example in an urban situation where velocities vary considerably from road to garden to between buildings, this feature may not improve the 2D link performance, therefore sensitivity test before adopting. See Section 10.7.2.
Link 2D2D Approach ==
 [ METHOD A  |  METHOD B  |  METHOD C  |  {Method D} ]
Classic Only

Command used to determine the approach used to link multiple 2D domains. See Section 10.7.2.

Method A is the original 2D2D link approach introduced for the 2009-07 release. This command and Method B was also incorporated into the 2009-07 release.

Method B (also introduced for the 2009-07 release) was an improvement over Method A which was prone to generating flows where the 2D2D link was located along dry boundaries with “bumpy” topography. Method B is preferred over Method A.

Method C (introduced for the 2012-05 release) is the same as Method B, but allocates the storage of the 2D link cells (these cells do not contribute to the model’s storage so the storage is assigned to the hidden nodes) more evenly between the hidden nodes and ensures the nodes’ bed elevation is at or below the lowest connected 2D link cell.

Method D (the default) includes significant enhancements to the 2D/2D linking of different 2D domains. It is recommended that models utilising 2D/2D linking upgrade to Build 2013-12-AC or later where possible to make use of these enhancements. For backwards compatibility, specify Link 2D2D Approach == Method B.
Link 2D2D Distribute Flow ==
 [ {ON}  |  OFF  ]
Classic Only Improves the distribution of flow between 2D cells along 2d_bc 2D link lines. The default is ON. For 2D/2D linking methods prior to Method D OFF applies. See Section 10.7.2.
Link 2D2D Global Stability Factor ==
 [ {1.0}  |  \(\langle\) value \(\rangle\)  ]
Classic Only Will globally factor all 2D link hidden 1D node storages to easily carry out a quick sensitivity test on the effect of increasing the storage of the hidden 1D nodes or to globally improve stability along 2D link lines if needed. The default value is 1.0. Usually, increasing the storage of the hidden 1D nodes by up to around a factor of 5 has only a slight effect on results. Note that any factor specified using the 2d_bc “a” attribute is also applied on top of this factor. Also note that the default value for the 2d_bc “a” attribute using Method D is 1.0 (prior methods use 2.0). See Section 10.7.2.
Log Folder ==
 \(\langle\) folder \(\rangle\) ]
Classic and HPC Redirects the .tlf and _messages file output to the specified folder. Typically used to write these files to a folder named log under the runs folder. For more information, see Section 14.5.
Map Cutoff Depth ==
 [ {0.0}  |  \(\langle\) value_in_m \(\rangle\)  ]
Classic and HPC The minimum depth used as the cutoff that TUFLOW outputs results. Results are only written for cells with depths above the cutoff depth. This feature is particularly useful for direct rainfall modelling where there is a need to differentiate between very shallow sheet flow and flooding. See Section 11.6. The value is in metres (greater than zero), or feet (if using Units == US Customary).
Map Cutoff SGS  ==
 [ Average  |  {Exact}  |  Median  |  Minimum  |  Percentile ]
HPC Only
Legacy command. Use SGS Depth Output instead. Expand to find out more about the legacy settings.

SGS Only.

Used to control the elevation below which cells are shown as “dry” in the map output.

  • Average: uses the mean elevation for the cell.
  • Exact (default): uses the elevation at the exact location of the cell centre. I.e. the elevation that would be sampled if SGS was not used.
  • Median: uses the median (50th percentile) elevation for the cell.
  • Minimum: uses the minimum elevation for the cell.
  • Percentile: define the cutoff elevation based on a user specified set percentile. This requires a second argument, separated by vertical bar “|”, which is the percentile to use. For example, “Map Cutoff SGS == Percentile | 25” will use the 25th percentile of the SGS elevations sampled within the cell.

For the average, exact, median, and minimum options, a optional second argument can be specified which is the depth above the datum. For example, “Map Cutoff SGS == Average | 0.05” will use an elevation 0.05m above the average SGS elevation sampled for the cell.

A combination of Map Cutoff Depth and Map Cutoff SGS can be used in conjunction, with the higher elevation used. When SGS is on, the Map Cutoff Depth refers to a depth above the cell minimum elevation. For example:

Map Cutoff Depth == 0.05

Map Cutoff SGS == Percentile | 25

Will use the maximum of 0.05m above the lowest SGS sampled elevation, or the 25th percentile of the SGS elevations sampled within the cell.

The elevation used for setting whether a cell is wet or dry in the map output, is reported in the _grd_check file as the “Z_Map_Cutoff”. This is the SGS Depth Output elevation for each cell plus the map cutoff depth.

Map Cutoff Vector ==
 [ {ON}  | OFF ]
Classic and HPC

Default value recommended.

When using Map Cutoff Depth with mesh-based output files (XMDF, DAT), the display of scalar and vector outputs at each mesh is controlled by a 0/1 flag, which is set as 0 if the local depth is below the cutoff depth. This flag disables the vector display in SMS however does not in other GIS programs (e.g. QGIS release version 3.14), and thus the velocity vectors could display everywhere for a global rainfall model even if the Map Cutoff Depth command is specified. See Section 18.1.2.

The “ON” option (default) enables the map cutoff depth and sets the vector output value as zero if the cell water depth is below the cutoff depth. “OFF” option can be used for backward compatibility.
Map Output Corner Interpolation ==
 [ METHOD A  |  METHOD B  |  {METHOD C}  ]
Classic and HPC
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

This command determines the approach taken to extrapolate model results to the cell corners at the wet/dry interface.

Method A (the approach adopted prior to the 2013-12 release) was the original routine where some issues were found with tracking the maximum depth related outputs, particularly on steep slopes, at the wet/dry interface where the depth extrapolated to the cell corners was exaggerated as it was extrapolated horizontally.

Method B and Method C resolve the issues found in Method A. Method B will provide slightly better output along thin breaklines where they are dry or free-overfalling occurs, however, Method C provides the most consistent extrapolation to cell corners in terms of tracking maximum values at the wet/dry interface on steep slopes and is the recommended approach and default setting.

Map Output Data Types ==
 [ {h V}  |  \(\langle\) data_types \(\rangle\)  ]
Classic and HPC

Defines the data types to be output. Refer to and for a description of available options. The data types may be specified in any order or combination and are not case sensitive. Spaces between data types are optional, however are strongly recommended to ensure there is no misunderstanding.

For example to output water levels, velocities and unit flow enter the following line:

Map Output Data Types == h V q

The default is:

Map Output Data Types == h V

The format(s) of the map output is controlled by the .tcf command Map Output Format (refer to Section 11.2.2 for further information). Note that not all Map Output Data Types are available for all formats due to limitations or constraints of the format.

This command may also be defined for different output formats by including the output format extension on the left of the command (refer to Section 11.2.3). For example, to write the XMDF Map Output Data Types H and D use:

XMDF Map Output Data Types == h d

This output format specific functionality is also available for commands Start Map Output, End Map Output and Map Output Interval.

This command can be used within an Output Zone definition block to change the setting from that for the entire model map output.
Map Output Entire Model ==
 [ {ON}  |  OFF  ]
Classic and HPC The default is to produce map output for the whole model irrespective of the number of Output Zones (refer to Section 11.2.5) being written. Map output commands that occur outside Output Zone definitions apply to the entire model (i.e. as is the case in previous releases). If map output for the entire model is not required specify Map Output Entire Model == OFF.
Map Output Format ==
 [ {XMDF}  |  \(\langle\) formats \(\rangle\)  ]
Classic and HPC

Sets the format(s) for TUFLOW map output.

The default setting for the 2023-03 release is the XMDF format. The available output formats are listed in Section 11.2.2. For example, to output formats in XMDF and TIF formats specify:

Map Output Format == XMDF TIF

This command can be used within a Define Output Zone block to change the setting from that for the entire model map output to be different for the output zone.

There is no limit (other than disk space!) on the number of formats specified per model simulation. Output format specific commands (Map Output Interval, Start Map Output, End Map Output and Map Output Data Types) can then be used to customise each format type as per the examples below. Refer to Section 11.2.3.

For example, to set the Map Output Interval for XMDF output to 6 minutes specify:

XMDF Map Output Interval == 360

Or to only output depths (d) and Bed Shear Stress (BSS) in TIF format specify:

TIF Map Output Data Types == d BSS
Map Output Interval ==
 \(\langle\) time_in_seconds \(\rangle\) ]
Classic and HPC

The output interval in seconds for map based output. If the command is omitted, an ERROR 0045 is output.

If set to zero (0) no time based map output is produced, and only the maximums are written (note tracking of maximums must be switched on – see command Maximums and Minimums).

This command can be defined for different output formats by including the output format extension on the left of the command. For example, to set the Map Output Interval for XMDF output to 6 minutes use:

XMDF Map Output Interval == 360

If only the maximums in TIF format are required, use:

TIF Map Output Interval == 0

This output format specific functionality is also available for commands Start Map Output, End Map Output and Map Output Data Types. Refer to Section 11.2.

This command can be used within an Output Zone definition block to change the setting from that for the entire model map output.
Mass Balance Corrector ==
 [ ON  |  {OFF}  ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

No longer required or recommended for use subsequent to implementation of Wetting and Drying == ON METHOD B. See the TUFLOW 2010 Manual for details of command.

Mass Balance Output ==
 [ {ON}  |  OFF  ]
Classic Only

If set to ON (the default), outputs the following:

  • _MB.csv and _MB2D.csv files in the .tcf Output Folder and _MB1D.csv in the .ecf Output Folder. These files contain mass balance calculations for the overall model, 1D domains and 2D domains at each time a line is displayed to the Console Window.
  • _MB1 map output for 2D domains only and if specified by Map Output Data Types.
  • _TSMB and _TSMB1d2d GIS layers in the .ecf Output Folder. These files contain summary and time based information on mass errors occurring at all 1D nodes and at 1D nodes connected to 2D HX links.

It is possible to use different timesteps for the mass balance outputs and those shown on the Console Window. The command Mass Balance Output Interval is used for setting the interval in the mass balance outputs whilst Screen/Log Display Interval sets the interval for the Console Window. A summary is included at the end of the simulation on the display console and .tlf file of key model performance indicators (see Section 16.2.3).

Setting to OFF does not produce any mass balance information to the Console Window or data files, and will reduce run-times.

For more information, see Section 14.8.
Mass Balance Output Interval ==
 \(\langle\) time_in_seconds \(\rangle\) ]
Classic and HPC The output interval in seconds for the _MB.csv output files. See Section 14.8. If set to 0 (zero), the output interval used is the timestep set by the Timestep command. If the command is omitted (or set to -1), output is at the lesser of Map Output Interval and Time Series Output Interval.
Maximum 1D Channels ==
 \(\langle\) mchan \(\rangle\)  |  {100000} ]
Classic and HPC Only used during the first pass through the model input files to allocate temporary space. After this pass, the only memory required is for the actual number of channels allocated. The default is 100,000, but can now be increased (or decreased) if required. The upper limit on the number of nodes is set to twice the number of channels. See Section 5.5.
Maximum Courant Number ==
 \(\langle\) Cr_max \(\rangle\) ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

The command is only available for 2D only models.

The Timestep command is only used to set the initial timestep if <cr_max> is greater than zero. It is possible to control the maximum rate at which a timestep can increase by using the command Timestep Maximum Increase. There is no limit to how quickly the timestep can decrease.

For 2D only models (not supported for 1D/2D linked models or hidden 1D)

Maximum Points ==
 \(\langle\) mp \(\rangle\)  |  {500000}  ]
Classic and HPC Controls the maximum number of elevation points that can exist in a GIS layer referenced by commands such as Create TIN Zpts, Read GIS Z Line, Read GIS Z HX Line, Read GIS Z Shape, Read GIS Variable Z Shape, Read GIS FC Shape and Read GIS Layered FC Shape. If the number of points exceeds the amount specified, an ERROR occurs and this command needs to be used to increase the maximum number of points. This value can also be lowered to reduce RAM requirements. See Section 7.3.5.
Maximum Velocity Cutoff Depth ==
 \(\langle\) y \(\rangle\)  |  {0.1}  ]
Classic and HPC

This command sets the depth above which the maximum velocity is tracked as the maximum velocity, rather than the velocity at the peak water level. See Section 11.2.3.

  • If set to a large number that exceeds the greatest depth (e.g. 99999.), the maximum velocity will be as in releases prior to 2009-07, (i.e.. based on the velocity at the peak water level).
  • If set to 0. (zero), the maximum velocity is tracked as the maximum velocity irrespective of the velocity at the peak water level.
  • If <y> is set to a value greater than zero, the maximum velocity is based on the velocity at the peak water level for depths below <y>, while for depths above <y>, the maximum velocity is based on the maximum velocity.

A small value of <y> (e.g. 0.1m which is the default) is recommended, as high velocities can occur at very shallow depths during the wetting and drying process.

Note, as a consequence of the velocities now being tracked independently of the maximum water level (i.e. the maximum water level and maximum velocity can occur at different times), the maximum unit flow (q) and energy (E) were disabled.
Maximum Vertices ==
 \(\langle\) mp \(\rangle\)  |  {100000}  ]
Classic and HPC Controls the maximum number of vertices that can exist in a single polyline or polygon in a GIS layer referenced by commands such as Create TIN Zpts, Read GIS Z Shape, Read GIS Variable Z Shape, Read GIS Layered FC Shape, Read GIS Z Line, Read GIS Z HX Line and Read GIS FC Shape. See Section 7.3.5 and Section 7.3.8.3. If the number of vertices exceeds the amount specified, an ERROR occurs and this command needs to be used to increase the maximum number of vertices. This value can also be lowered to reduce RAM requirements.
Maximums and Minimums ==
 [ ON  |  OFF  |  {ON MAXIMUMS ONLY}  ]
Classic and HPC

Sets whether maximums and/or minimums are to be tracked and written as map output (see Section 11.2). The default setting for this command is ON MAXIMUMS ONLY. To suppress tracking and outputting of maximums for map output set to OFF.

If set to ON or ON MAXIMUMS ONLY, additional information will be displayed to the Console Window and .tlf file for each Screen/Log Display Interval. Three numbers are displayed after “Mx” at the end of each line. The first two numbers are the percentage of 1D nodes and percentage of 2D cells that reached a new maximum in the last computational timestep. The third number is the time in decimal hours since no new maximum was recorded anywhere within the model. For example, “Mx 10 21 0.0” indicates that 10% of 1D nodes and 21% of 2D cells recorded a new maximum last timestep, and the time since the last recorded maximum is zero. Once all 1D nodes and 2D cells have reached their maximums the third (time) value will increase above zero.

This command can be used within an Output Zone definition block to change the setting from that for the entire model map output.
Maximums and Minimums Only for Grids ==
 [ ON  |  {OFF}  ]
Classic and HPC
Legacy command. Expand to find out more about the legacy settings.

Writes only the maximum and minimum grids for specified Map Output Data Types at the end of a simulation. This command only applies if the “Grid”, “TIF”, “FLT”, and/or “ASC” option is specified for the command Map Output Format.

This command is provided for backward compatibility. The preferable command is to use the output format specific functionality <format> Map Output Interval == 0 to output the maximums only for a specific format type. Refer to Section 11.2.2.2.

This command can be used within an Output Zone definition block to change the setting from that for the entire model map output.

Maximums and Minimums Time Series ==
 [ {ON}  |  OFF  ]
Classic and HPC If set to ON, allows for tracking of maximums and minimums at every timestep for PO and LP outputs. See Section 11.3.2.
Maximums Approach ==
 [ Method A  |  {Method B}  ]
HPC Only
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

This command specifies the approach taken in tracking the maximums for map outputs.

Method A is the original approach and only provided for backward compatibility for legacy models.

Method B (the default) introduced for Build 2012-05-AC, fixes a bug that would not correctly track the maximums if both cell cornered map output (.xmdf and .dat formats) and the GRID (ASCII grid) output were both specified. As a consequence of this bug, the approach for tracking cell-centred output maximum water levels is now used by default for both cell-centred and cell corner output formats. This may cause a very slight lowering of maximum water levels (usually a mm or less) in isolated locations.

Maximums Start Track Time ==
 \(\langle\) time in hours \(\rangle\) ]
Classic Only

If tracking of maximums is enabled (the default), this command can be used to set a start time for tracking the maximums. For example, if a model starts at 0 hours, and the user only wants to track maximums after 24 hours of model warmup, Maximums Start Track Time == 24 can be used. See Section 11.2.

This command needs to be used in conjunction with the <format> Start Map Output command.
Maximums Track Time ==
 [ {OFF}  |  ON | OFF Completely | Velocity ]
Classic and HPC

Set to “ON” to enable the tracking of time of maximums for any specified hazard outputs, as well as Bed Shear Stress (BSS), Stream Power (SP) and Energy (E).

Set to “OFF” (the default), to track maximum values, but not the time of maximum. This command does not apply to water level output; time of maximum H “Tmax_h” continues to be tracked.

Set to “OFF Completely” to disable the “Tmax_h” output.

TUFLOW Classic Only: Set to “Velocity” to enable the “Tmax_V” output.

See Section 11.2.
Meshparts ==
 [ ON  |  {OFF} ]
Classic Only

If set to ON, the SMS mesh .2dm file is split up into different meshparts. Meshparts are determined as follows:

  • Each 2D domain constitutes one meshpart.
  • Each 1d_nwk layer constitutes one meshpart.

The benefits of using meshparts are that for recent versions of SMS, while viewing results different meshparts can be switched on and off. Can also be useful when using the TUFLOW_to_GIS.exe utility to remove meshparts from the output. An example is to remove the pipe network layer WLLs from the output.

The name allocated to the meshpart is either the 2D Domain Name (see Start 2D Domain) or the 1d_nwk layer name. The meshpart names can be clarified by opening the .2dm file in a text editor and searching for the “MESHPART” keyword.

See Section 11.6.
MI Projection ==
 \(\langle\) .mif file \(\rangle\)  |  Projection_line_from_MIF_file \(\rangle\)  ]
Classic and HPC

Sets the geographic projection for all GIS input and output in MID/MIF format (see Section 4.4.1). If this command is omitted, TUFLOW searches for a file “Header.mif” in each folder it opens GIS files, and extracts the projection from this file. The “Header.mif” file is any GIS layer in the correct projection exported in MID/MIF format. If no “Header.mif” file is found, non-earth coordinates are assumed.

If a model has a mixture of .gpkg, .shp and .mif files as input, then the projection must be specified for each (e.g. using GPKG Projection, SHP Projection and MI Projection).
MI Projection Check Ignore Bounds  ==
 [ {OFF}  |  ON  ]
Classic and HPC

This sets whether to ignore the MapInfo projection Bounds when the MIF projection check is processed (see Section 4.4.1).

If a MapInfo Projection has been specified using the MI Projection command, TUFLOW checks the projection of the input files against the specified projection. If there is a discrepancy an ERROR is generated, see GIS Projection Check to change this from an error to a warning message.

Internally, when TUFLOW compares the projection of the incoming file against the specified model project, it removes spaces, tabs and quotes before checking to see if they match. This can occasionally cause issues as different software may store the projection bounds differently (causing an ERROR to be generated). For example, the projection line in a MapInfo text file may look something like the below:

CoordSys Earth Projection 8, 104, “m”, 177, 0, 0.9996, 500000, 10000000 Bounds (-7500000.0, 2000.0) (8800000.0, 20000000.0).

The portion of this projection line to the left of the “Bounds” command defines the parameters of the projection, the portion of to the right of the “Bounds” defines a rectangle in which the coordinate system is valid. Some GIS software will write these bounds differently for different layers within the same projection. For example, the two projections below are identical, though with slightly different projections bounds:

CoordSys Earth Projection 8, 104, “m”, 177, 0, 0.9996, 500000, 10000000 Bounds (-7500000.0, 2000.0) (8800000.0, 20000000.0).

CoordSys Earth Projection 8, 104, “m”, 177, 0, 0.9996, 500000, 10000000 Bounds (-7499999.0, 2000.0) (8800000.0, 20000000.0).

When not using the ignore bounds option, the differences in the projection lines above would cause the model to stop, if ignoring bounds the model would continue. The command “GIS Projection Check == {ERROR} | WARNING” can be used to control whether TUFLOW will halt the simulation with an error or give a warning and continue the simulation if there is mis-match in the projection of the GIS file and the projection of the model.
Model Events ==
 \(\langle\) e1 \(\rangle\)  |  \(\langle\) e2 \(\rangle\)  |  \(\langle\) e3 \(\rangle\)… ]
Classic and HPC

Alternative to using the –e option when running TUFLOW (see Table 13.2). Up to nine (9) separate events that have been defined using Define Event can be specified. Separate the event names using vertical bars. The event names specified will be automatically appended to the output filenames if ~e~ or ~eX~ are not in the .tcf filename.

For example:

Model Events == Q100 | 02h

Note that using the –e run option will override this command.
Model Output Zones ==
 \(\langle\) oz_name_1 \(\rangle\)  |  \(\langle\) oz_name_2 \(\rangle\)  |  ….. ]
Classic and HPC

Controls which outputs zones are to be used. If this command is omitted, no output from Output Zones will be written. Separate multiple Output Zones using a “|”. For example, to output from zones ZoneA and ZoneC specify:

Model Output Zones == ZoneA | ZoneC

See Section 11.2.5 and the .tcf command Define Output Zone for further information.
Model Platform ==
 [ w32  |  w64  ]
Classic and HPC Forces the .tcf file to only be run using either a 32-bit (w32) or 64-bit (w64) version. If the command is not specified, the model may be run in either version. If the w32 version of TUFLOW is specified, and the w64 version is used, the simulation stops with an error. Similarly, if w64 is specified, the simulation stops if the w32 version is used. For further discussion see Section 13.4.1.
Model Precision ==
 [ SINGLE  |  DOUBLE  ]
Classic and HPC

Used to force a model to use either the single or double precision version of TUFLOW. If the command is not specified, the model may be run in either version. If SINGLE is specified, and the double precision version of TUFLOW is used, the simulation stops with an error. Similarly, if DOUBLE is specified, the simulation stops if the single precision version is used. For further discussion see Section 13.4.2.

This command is useful for ensuring that the same (single or double) version of TUFLOW is always used.
Model Scenarios ==
 \(\langle\) s1 \(\rangle\)  |  \(\langle\) s2 \(\rangle\)  |  \(\langle\) s3 \(\rangle\)  |  … ]
Classic and HPC

Alternative to using the –s option when running TUFLOW (see Table 13.2). Up to nine (9) separate scenarios that occur using If Scenario can be specified. Separate the scenarios names using vertical bars. The scenario names specified will be automatically appended to the output filenames if ~s~ or ~sX~ are not in the .tcf filename.

For example:

Model Scenarios == opA | opB

Note that using the –s run option will override this command.
Model TUFLOW Build ==
 \(\langle\) build \(\rangle\) ]
Classic and HPC

Forces the .tcf file to only be run using the specified build of TUFLOW. See Section 13.4.1. <build> must be identical to that displayed in the .tlf file or when double clicking TUFLOW.exe. The simulation stops with an error if the specified build is different to that used to run the model.

For example:

Model TUFLOW Build == 2010-10-AA-iSP-w64
Model TUFLOW Build == 2007-07-DB
Model TUFLOW Release ==
 \(\langle\) release \(\rangle\) ]
Classic and HPC

Forces the .tcf file to only be run using a build from a specified release of TUFLOW. See Section 13.4.1.

The specified release must be one of the following options:

  • 2006-06
  • 2007-07
  • 2008-08
  • 2009-07
  • 2010-09
  • 2010-10
  • 2011-09
  • 2012-05
  • 2013-12
  • 2016-03
  • 2017-09
  • 2018-03
  • 2020-01
  • 2020-10
  • 2023-03
Negative Depth Approach ==
 [ Method A  |  {Method B}  ]
Classic Only
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

Method A represents the case of no special treatment of negative depths.

Method B (the default) provides an improved performance in handling negative depths (which are a consequence of a non-convergence of the solution). It is only applied if a cell experiences a depth below zero at its centre. If the flow across any of the four cell sides is extracting water from the cell, a high friction is temporarily applied to that side and the high friction is reduced back to normal within several timesteps. This tends to stop a cell repeatedly experiencing a negative depth, which can cause mass errors. The negative depth problem can be particularly acute where there is very steep (supercritical) flow with high velocities, combined with some cell sides attempting to switch into weir flow.

NetCDF Output Compression ==
 [ OFF  |  {ON}  |  \(\langle\) level \(\rangle\)  ]
Classic and HPC Sets the compression for the output NetCDF file (see Section 11.2.2.2). If set to ON (the default) a compression level of 1 is used. The compression level can also be set via a number from 1 – 9. Higher levels result in smaller files but are slower to write/access, with the greater the number the greater the compression and slower the write/read time. If set to OFF a NetCDF “classic” format is used without compression. If set to ON a NetCDF 4 file is used with compression. The compressed version works well in ArcMap and Matlab but not in QGIS at the time of writing.
NetCDF Output Direction ==
 [ {ANGLE}  |  BEARING ]
Classic and HPC When output in NetCDF raster format (see Section 11.2.2.2) any vector outputs (e.g. flow or velocity) are output as two datasets: magnitude and direction, for example, magnitude_of_velocity and direction_of_velocity. This command specifies whether the direction_of NetCDF attribute is in arithmetic (0 degrees east) or geographic (0 degrees north). The default is arithmetic.
NetCDF Output Format ==
 [ {Generic}  |  FEWS  ]
Classic and HPC Sets the output format for the NetCDF outputs (see Section 11.2.2.2), the outputs are similar but the FEWS format option outputs the maximum, time of peak, duration outputs with a time stamp at the beginning of the simulation to ensure that it loads correctly into FEWS. For the generic output format no timestep is output with these static datasets. For more information on the format please see the TUFLOW Wiki page TUFLOW NetCDF Raster Format for more details.
NetCDF Output Start Date ==
 [ {2000-01-01 00:00}  |  OFF  |   ]
Classic and HPC

Sets the output units for the NetCDF (see Section 11.2.2.2) time variable. If set to OFF or NONE, the “units” attribute of the .nc file is simply the simulation time unit (e.g. units = ‘hours’). If a date is provided the NetCDF time units will be in the format “<unit> since <date>”. For example, unit = ‘hours since 2000-01-01 00:00’ or ‘days since 2000-01-01 00:00’. The default setting is ‘2000-01-01 00:00’ as not having a date appears to cause issues in ArcMap. If a date is specified, it is strongly recommended that this is in isodate format. TUFLOW does not check the date is valid, it is simply written to the NetCDF time variable as entered in this command.

See also NetCDF Output Time Unit command below.
NetCDF Output Time Unit ==
 [ DAY  |  {HOUR}  |  MINUTE ]
Classic and HPC Set the output time unit for .nc outputs (see Section 11.2.2.2). The default is hours (as per other TUFLOW outputs). See also NetCDF Output Start Date command.
Non-Newtonian Mixing Exponent ==
 \(\langle\) float \(\rangle\), \(\langle\) float \(\rangle\), \(\langle\) float \(\rangle\) | {0, 0, 0} ]
HPC Only Used to specify the mixing exponents, m, o, and p to be used, see Section 7.4.6.2.
Null Cell Checks ==
 [ ON  |  {OFF}  ]
Classic Only
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

Switches on and off the checks that ensure null cells occur on one side of an external boundary. A TUFLOW simulation prior to Build 2001-08-AE will not proceed unless a null cell occurs on one side of an external boundary cell (this was used to indicate the inactive side of the boundary line). Setting this to OFF (the default) allows ESTRY models to be inserted through the 2D domain with no need to specify null cells (e.g. a 1D creek flowing through a 2D floodplain). It also allows land cells, instead of null cells, to be specified against a boundary on the inactive side.

Note: Prior to Build 2001-08-AE models were checked for the null cells along boundaries. For models prior to this build, you may need to set this flag.

Number 2D2D Link Iterations ==
 [ {1}  |  \(\langle\) no_iterations \(\rangle\)  ]
Classic Only Specifies the number of iterations for setting water levels at control points along a 2D line in a 2d_bc layer for stitching 2D domains together. See Section 10.7.2.
Number Iterations ==
 [ {2}  |  \(\langle\) no_iterations \(\rangle\)  ]
Classic Only

Specifies the number of iterations per timestep (refer to Stelling (1984) or Syme (1991)). It is rare this value is changed from 2, the default. Doubling the number of iterations slows down the simulation by roughly a factor of two. If a value of less than 2 is specified, 2 is used. See Section 7.2.2.

The main exception to the default value of 2 is in the modelling of rapidly varying flood waves such as dam break hydrographs. For simulations of this kind, improved convergence and reduced mass error can be achieved through increasing the number of iterations up to values as high as 10, although usually 4 should suffice. The recommended approach is if the simulation is demonstrating unacceptably high mass error (e.g. &gt;3%), carry out sensitivity tests that increase the number of iterations to ascertain whether a poor convergence using the default value of 2 is the cause of the problem. If increasing the number of iterations has no benefits keep the value at the default value of 2.
Output Approach ==
 [ {DEFAULT 2016}  |  PRE 2016  ]
Classic and HPC
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

Sets the output approach. For the TUFLOW 2016-03 release a new approach for time-series and summary .csv files was implemented that combines the 1D and 2D plot (time-series) data into a single folder, allowing utilities such as the QGIS TUFLOW Plugin to provide access to all plot output under the one folder. Where no output format has been specified, the new default for the 2016-03 uses the XMDF format. Specifying Defaults == Pre 2016 or Output Approach == Pre 2016 sets the default to the DAT format.

It is intended that further enhancement of the default settings for map and other outputs will be added to future releases.

Output Drive ==
 \(\langle\) drive_letter \(\rangle\) ]
Classic and HPC Changes the drive letter of any output files with a full path specified. For example “Output Drive == K” changes any output filepaths that have a drive letter to the K drive. Also see Input Drive. See Section 11.1.
Output Files [ {ALL} | NONE | INCLUDE | EXCLUDE ]  ==
 \(\langle\) output type list \(\rangle\) ]
Classic and HPC

Can be used to suppress or include certain time series and 1D output (see Section 15.3). Whilst this command currently only applies to 1D output it is assigned to the .tcf commands as is intended to extend to other output files in future releases that may contain 2D output.

The EXCLUDE or INCLUDE options allow for a space delimited list of file extensions or prefixes to be specified to exclude or include output files and GIS layers from being written. The notation must be the same as those used by TUFLOW. For example, “eof” would apply to the .eof file. To exclude/include more than one layer ensure there are spaces between the prefixes. If EXCLUDE or INCLUDE occurs more than once, the latter occurrence prevails.

Note that for the .eof file, this only affects the writing of results output to this file. The header information and input data written to the .eof file will still be output.

Valid options to include or exclude are: EOF, 1d_mmH, 1d_mmQ, 1d_mmV, 1d_CCA, TS, TSF, TSL, TSMB, TSMB1D2D.

Examples:

Output Files EXCLUDE == EOF TSMB TSMB1D2D
Output Files INCLUDE == TS, 1d_CCA
Output Files ALL
Output Files NONE

The ALL and NONE options require no file type list. All output files will be written, specification of the ALL or NONE option will nullify any prior occurrence of an EXCLUDE or INCLUDE list; this is useful if you wish to write no or all output files for one particular run – simply add Output Files ALL to the end of the .tcf file.
Output Folder ==
 \(\langle\) folder \(\rangle\) ]
Classic and HPC

Redirects all TUFLOW output data except the log and summary files to <folder>. See Section 11.1. Typically used to write output to your local C: or D: drive instead of filling up the network drive, or to keep results separate to the input data. A URL can be used (e.g. \bmtserv), which is useful for running simulations on other computers, but with the output directed to your local drive or other location (your drive will need to be shared).

This command can be used within an Output Zone definition block to change the setting from that for the entire model map output.
Pause ==
 \(\langle\) message \(\rangle\) ]
Classic and HPC

Causes TUFLOW to stop whenever it encounters it. It can also be used to pause the simulation and display a given message. The user has the option to continue or discontinue the simulation via a dialog window. See Section 13.3.2.

Example:

Pause == Invalid Scenario specified.
Pit Default Extrapolate Q Curve ==
 [ {ON}  |  OFF  ]
HPC Only Q and VPI pit curves are automatically extrapolated using the orifice flow equation. To cap flow at the last value in a depth discharge curve (i.e. not extrapolate), this command can be set to “OFF”. See Section 5.11.3.
Pit No 1D Connection ==
 [ {CHECK}  |  {ERROR}  ]
Classic and HPC Unconnected pits (see Section 5.11.2) will by default be simulated and will extract water from a 2D domain (i.e. they are treated as a virtual pipe pit). A CHECK 1625 message is issued for unconnected pits (excluding VPI and VPO pits), alerting the modeller to the possibility of a pit possibly being inadvertently not snapped or within the Pit Search Distance.  Prior to Build 2018-03-AA an ERROR would occur for unconnected pits such as “ERROR 1353 - No NA data for Node Pit1. If all the pits should be connected (excluding VPI and VPO pits)”, the user can specify the .ecf command Pit Search Distance ERROR to force an ERROR 1626 in the case of a pit not being connected by snapping or within the Pit Search Distance.
Plot Output Invalid Type ==
 [ ERROR  | {WARNING} ]
Classic and HPC

When a plot output type (Section 11.3) has been assigned to an invalid geometry type, TUFLOW will output WARNING 2136. For example, plot output type “Q” (flow) is valid on a line but not a point.

This can be escalated to an ERROR by setting to “ERROR”.
PO Approach ==
 [ METHOD A  |  {METHOD B}  ]
Classic and HPC
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

METHOD A is the original 2d_po flow lines approach and only provided as a precaution for legacy models. Method A and Method B should give the same results, but Method B is much faster and can substantially reduce simulation times if numerous 2d_po flow lines exist.

METHOD B (the default) utilises a substantially faster approach for 2d_po flow lines, which will not slow down a simulation if numerous 2d_po flow lines exist, as was occurring with old releases.

The previous approach can be used by specifyingPO Approach == Method A however, this should only be necessary in the event of a problem arising in which case please email .

Process All Grids ==
 [ {OFF}  |  ON  ]
Classic and HPC

By default the input grid extents for any grids read using the Read Grid <grid type> command are compared with the TUFLOW model extent and if the input GIS raster is entirely outside of the model area these are skipped to reduce the simulation start-up time. This can be particularly useful if the DEM data is across many tiles, of which only some tiles fall within the 2D domain. In other words, the .tgc file can reference all tiles (e.g. for the whole of the UK), but only those required for the 2D domain are accessed.

To process all grids, regardless of the grid extents, the following .tcf file command can be included.

Process All Grids == ON

Processing of all input grids is set to “ON” if the previous defaults are used (e.g. “Defaults == Pre 2017”).
Quadtree BC Parallel Inertia Approach ==
 [ Method A  | {Method B} ]
HPC Only

TUFLOW HPC Quadtree Only.

Controls the handling of inertia parallel at head boundaries for Quadtree simulations. “Method B” provides consistency with TUFLOW Classic and single level HPC. “Method A” is available for backward compatibility. The default approach is recommended. For more information see Section 18.1.1.
Quadtree Control File ==
 \(\langle\) .qcf_file \(\rangle\) | Single Level ]
HPC Only Specifies the quadtree control file (.qcf), see Section 7.4.1. The keyword “Single Level” can be used instead of a control file to run the Quadtree solver on a single grid model (i.e.. a fixed cell size).
Rainfall Boundaries ==
 [ {STEPPED}  |  SMOOTHED  |  SMOOTHED TIME CENTRED  ]
Classic and HPC

The SMOOTHED TIME CENTRED option “smooths” the rainfall histogram by converting it into a “hydrograph” shaped curve rather than a histogram shape as is usually adopted for rainfall hyetographs.

If TIME CENTRED is omitted (i.e. SMOOTHED option), the timing is such that the first rainfall occurs at the time of the first rainfall but because of the smoothing the volume of rainfall is delayed in time.

The STEPPED option (the default) holds the rainfall constant for the time interval (i.e. the rainfall has a histogram stair-step shape). This means, for example, the second rainfall value in the time-series is applied as a constant rainfall from the first time value to the second time value. As with all rainfall boundaries, the first and last rainfall entries should be set to zero (otherwise these rainfall values are applied as a constant rainfall if the simulation starts before or extends beyond the first and last time values in the rainfall time-series).

See Section 8.5.3.
Rainfall Boundary Factor ==
 \(\langle\) value {1.0} \(\rangle\) ]
Classic and HPC

Sets a global multiplication factor for all rainfall boundaries, including:

Rainfall Control File ==
 \(\langle\) .trfc_file \(\rangle\) ]
Classic and HPC Reads the text rainfall control file, if using time vary, gridded rainfall inputs for the model. See Section 8.5.3.6 for a description of the rainfall control file. Appendix F contains a full list of all the rainfall control file commands.
Rainfall Gauges ==
 [ One per Cell  |  {Unlimited per Cell}  ]
Classic and HPC If each cell is only to be assigned one rainfall time-series (Section 8.5.3.4) use the “One per Cell” option. If One per Cell is set, an ERROR 2070 is issued if a 2D cell is assigned rainfall from more than one RF input (e.g. from overlapping RF polygons) as this would cause a duplication of rainfall on that cell, and so is a good quality control check. Note that if the common boundary of adjoining polygons intersects exactly at a 2D cell’s centre, this ERROR can be produced (slightly re-shape the polygons around the cell’s centre to fix this). This option can also reduce the amount of RAM needed for direct rainfall models, as a separate grid is not needed for each RF input.
Rainfall Null Value ==
 [ {-99}  |  \(\langle\) null value \(\rangle\) ]
Classic and HPC Rainfall timeseries read in via the Rainfall Control File (.trfc) (Section 8.5.3.6) can have a null value, which is user defined using this command. The default null value is -99, and only applies to the IDW rainfall interpolation approach. If a null value is detected at a point location, the IDW interpolation is revised to ignore the location. If all locations have a null value at a boundary time, an ERROR 2642 is generated. Note, prior to release 2020-10 the default null value was -99999, not -99.
Read File ==
 \(\langle\) file \(\rangle\) ]
Classic and HPC

Directs input to another file. When finished reading <file>, TUFLOW returns to reading the .tcf file. See Section 4.2.15.

This command is particularly useful for projects with a large number of simulations. Repetitive commands are grouped and placed in another text file. If one of these commands changes, the command only has to be edited once, rather than in every .tcf file. The command can be used to redirect file(s) up to a maximum of ten levels.

Also available in .tgc and .ecf files.
Read GIS Auto Terminate ==
 \(\langle\) file \(\rangle\) ]
Classic and HPC

TUFLOW simulations can be stopped after the peak flood using the Auto Terminate feature. Set Auto Terminate is used to turn on this feature.

The 2D cells that are monitored are controlled by specifying a value of 0 (exclude) or 1 (include). Set Auto Terminate defines the value over the entire grid. Read GIS Auto Terminate is used to vary the monitoring location spatially.

At each Map Output Interval the monitored cells are compared against two criteria:

  1. The percentage of the wet cells that have become wet since the last map output interval.
  2. The velocity-depth product at the current timestep compared to the maximum.

This command is used with the optional commands Auto Terminate dV Cell Tolerance, Auto Terminate dV Value Tolerance, Auto Terminate Start Time and Auto Terminate Wet Cell Tolerance.

Note, the Auto Terminate feature is only assessed at every Map Output Interval.

Refer to Section 13.6.7 for more details.
Read GIS Cyclone/Hurricane [ {} | NO PRESSURE ] [ {} | NO WIND ]  ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic Only

Reads a cyclone or hurricane track, as discussed in Section 8.7. The attributes of the GIS layer are listed in Table 8.13. Only the first line in the layer is read and used for the track. Points are snapped to the line wherever attribute data are to be assigned. It is not necessary to have points snapped to every vertex of the line – values will be interpolated between the digitised points. There must be points with attribute data snapped to the start and end of the polyline track.

The optional NO PRESSURE and NO WIND options deactivate the pressure/wind fields respectively.

Note that Latitude must be specified so as to distinguish between southern and northern hemispheres.
Read GIS FC ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

It is recommended to use the .tgc command Read GIS Layered FC Shape in preference to this command.

Opens a GIS layer containing details on flow constrictions to model bridges, box culverts, etc, see Section 7.5.6.1. This command may be used any number of times.

Read GIS GLO ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic Only

Opens a GIS layer containing details on gauge level output (2d_glo) locations (refer to Section 11.2.6). GLO controls map output based on the height of the water at a specified location – this is useful for producing a series of output based on gauge heights for flood warning purposes. It can also be used to display the height of the water at the gauge location to the screen.

A buffer has been incorporated so that GLO only repeats at a level once the water level has moved at least 0.1m from the gauge level (this stops repetitive output if the model is “hovering” or “bouncing” around a gauge level.

Only the last occurrence of this command is used.
Read GIS IWL ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic and HPC

Opens a GIS file defining the water level at the start of the simulation. This option allows the water level to vary spatially in height, for example, to set water levels of lakes. This command may be used any number of times. Note that if the water level of a cell is specified more than once, the last occurrence prevails.

Note: This command overwrites any IWL values set in the .tgc file for the same 2D cells.

For details see Section 8.9.1. Initial water levels may also be read directly from a grid file using the command Read Grid IWL.
Read GIS LP ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic Only Opens a GIS layer containing details on longitudinal profile output (LP) locations (see Section 11.3.2.2). This command may be used any number of times.
Read GIS Output Zone ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic and HPC Reads a GIS layer containing a polygon that defines the region to be output. The attributes of the layer are not used. Refer to Section 11.2.5 for further information on Model Output Zones.
Read GIS PO ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic and HPC Opens a GIS layer containing details on plot output (PO) locations (see Section 15.4.3). This command may be used any number of times.
Read GIS Reporting Location ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic Only Reads GIS points and lines for time series result from 1D and 2D sections of the model. This feature has the ability to combine flows, and track maximums, across 1D and 2D domains. See Section 11.3.3 for further information.
Read GIS X1D Network ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic Only

Reads the location of external 1D scheme nodes and channels. Supported 1D schemes are Flood Modeller (formerly known as ISIS), XP-SWMM or 12D Solution’s DDA. 1D Nodes and Channels are referred to as Nodes and Units in Flood Modeller; Nodes and Links in XP-SWMM; and Pits and Pipes in 12D). The nodes in the GIS layer(s) are required for linking the external 1D scheme to TUFLOW. The channels are required only if using Read GIS X1D WLL to integrate 1D and 2D results in the map output. The only attribute required is the ID of the Flood Modeller node/unit, XP-SWMM node/link and 12D pit/pipe. See Section 10.5.1 for details on linking an external 1D scheme to TUFLOW, and Section 11.2.4 for integrating 1D and 2D results.

For linking with TUFLOW, the linked nodes must occur in this layer or in a Read GIS X1D Nodes layer. The nodes and channels (links) can be placed in separate layers, and split over several layers if desired. If desired, and the WLL feature is not being used, the layer can solely contain linked nodes and no channels.
Read GIS X1D Nodes ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

This command is superseded by Read GIS X1D Network, but continues to be supported for legacy models. It is now redundant as the nodes can be placed in a Read GIS X1D Network layer (the Read GIS X1D Network layer can only contain the nodes, and no channels, if so desired).

Read GIS X1D WLL ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic Only Reads the location of an external 1D scheme’s WLLs. See Section 11.2.4 for integrating 1D and 2D results. The GIS layer is identical to that used for Read GIS WLL.
Read GIS X1D WLL Points ==
 \(\langle\) gis_layer \(\rangle\) ]
Classic Only Reads the location of an external 1D scheme’s WLL points for setting elevations and materials at points along WLLs. See Section 11.2.4 for integrating 1D and 2D results for more details. The GIS layer is identical to that used for Read GIS WLL Points.
Read Grid RF ==
 \(\langle\) .csv_file \(\rangle\)  |  \(\langle\) .nc_file \(\rangle\)  ]
Classic and HPC

Reads a comma-delimited or NetCDF (.nc) file to define the rainfall applied directly to 2D cells over time. The .csv file is an index file that references the grids in either ESRI ASCII (.asc) or a binary (.flt) format. The .nc file contains all the rainfall grids over time within the one file. Refer to Section 8.5.3.5 for further information.

Note that the Read Grid RF command is located within the .tcf file, unlike the Read GIS RF and Read RowCol RF commands which are located within the .tbc file. This allows for the rainfall to be applied across all domains if multiple 2D domains are being used. The Read Grid RF command is not domain dependent whilst the .tbc file is.
Read Materials File ==
 \(\langle\) file \(\rangle\)  |  [ {1.0}  |  \(\langle\) n_factor \(\rangle\)  ]
Classic and HPC

Reads a text file containing Manning’s n values for different materials (land-use types).

Two file formats (.csv and .tmf) are available and are discussed in detail in Section 7.3.6. Multiple materials files are also able to be specified.

If a second argument, <n_factor> is provided, this value is used to factor all Manning’s n values. For example, to increase all Manning’s n values by 10%, enter “ Materials File == My_Materials.tmf | 1.1”.

Only available for Bed Resistance Values == MANNING N based bed resistance values.
Read Restart File ==
 \(\langle\) .trf_file \(\rangle\) ]
Classic and HPC

Reads a restart file written from a previous simulation (see Write Restart File at Time and Write Restart File Interval). The file must have the .trf extension, and if a 1D/2D model there must be a corresponding .erf file.

The water levels, velocities, wetting and drying status and other information saved in the restart file are used as the initial conditions for the simulation.

Note that the simulation start time needs to be changed to be the same as the time of the restart file.

Refer to Section 8.9.3 for further information.
Read RowCol IWL ==
 \(\langle\) .mid_file \(\rangle\) ]
Classic and HPC
Legacy command. Use Read GIS IWL or Read Grid IWL instead. Expand to find out more about the legacy settings.

Opens a .mid file defining the water level in each cell at the start of the simulation. This option allows the water level to vary spatially in height, for example, to set water levels of lakes. This command may be used any number of times. Note that if the water level of a cell is specified more than once, the last occurrence prevails.

Note: This command overwrites any IWL values set in the .tgc file for the same 2D cells.

For details see Section 8.9.1. Initial water levels may also be read directly from a grid using the command Read Grid IWL.

Read Soils File ==
 \(\langle\) file.tsoilf \(\rangle\) ]
Classic and HPC Reads a text file containing an integer soil ID, infiltration method and soil parameters for different soil types. Refer to Section 7.3.7 for more information.
Recalculate Chezy Interval ==
 [ {0}  |  \(\langle\) timesteps \(\rangle\)  ]
Classic Only

Warning: This command overwrites any previous use of Bed Resistance Values by setting CHEZY.

Sets the number of timesteps between recalculation of Chezy values based on the ripple height. The default value of zero indicates Chezy values are not recalculated (i.e. remain constant throughout the simulation). See Section 7.5.3.
Record Gauge Data ==
 [ RLP | RLL | Gauge ]
Classic and HPC

Sets whether to automatically include reporting location lines, reporting location points, and gauge locations (PO ‘G_’ type) when processing gauge receptor objects, see Section 11.4.1. The default is to include all reporting location lines, points and gauges.

The options are:

  • “RLP”: reporting location points
  • “RLL”: reporting location lines
  • “Gauge”: gauge locations (2d_po ’G_ type)
Record Gauge Data EXCLUDE ==
 [ RLP | RLL | Gauge ]
Classic and HPC Sets whether to automatically exclude reporting location lines, reporting location points, and gauge locations (PO ‘G_’ type) when processing gauge receptor objects, see Section 11.4.1. The default is to include all reporting location lines, points and gauges.

The options are:

  • “RLP”: reporting location points
  • “RLL”: reporting location lines
  • “Gauge”: gauge locations (2d_po ’G_ type)
Restart File Ignore Fields ==
 \(\langle\) field \(\rangle\) ]
HPC Only Used to specify which fields to ignore for restart files.

The fields are any combination of:

  • Geometry (elevations and Manning’s n values)
  • Groundwater (groundwater depths and groundwater tracer concentrations)
  • Maximum (scalar and vector maximums; both values and times, minimum timestep)
  • Rainfall (cumulative rainfall, cumulative rainfall material losses and cumulative cell wet time)
  • TimeOutputCutoff (Time Output Cutoff; time of first inundation and cumulative time inundated)
  • Tracer (surface and groundwater tracer concentrations)
  • Velocity (velocity and turbulence values)
  • WaterLevel (water level)

For example: “Restart File Ignore Fields == Geometry Groundwater” will ignore the geometry and groundwater information in the restart file (for these, the values set in the control files are used).

By default (without the command above) the geometry information in the restart file is ignored and the .tgc information is used instead. See also HPC Restart Geometry == Restart File | {TGC} command. If the “Restart File Ignore Fields ==” command is included, but does not include geometry then message “WARNING 2902 -‘Restart File Ignore Field’ does not include geometry, overwriting geometry in .tgc with restart file” is issued.

Note: Only one of “Restart File Ignore Fields” or “HPC Restart Geometry” should be used, an error is given if both commands are present in a control file.
Reveal 1D Nodes ==
 [ ON  |  {OFF} ]
Classic and HPC When set to ON, displays the hidden 1D nodes within a 2d_bc 2D link line for models containing multiple 2D domains and for QT boundaries. Refer to Section 10.7.2 for more information.
SA Minimum Depth ==
 [ {-99999}  |  \(\langle\) depth in m \(\rangle\) ]
Classic and HPC Sets the minimum depth a wet cell must have to apply an SA Inflow (see Section 8.5.2). This can resolve a problem that has occurred where large SA inflows onto very shallow, high roughness, areas can appear to gradually flow up hill. This was being caused by the SA inflow being greater than the rate at which the flow was travelling overland and the water would slowly creep up the dry slope at the edge of the flooded area. In such situations using a SA Minimum Depth of around 0.1m will ensure that this does not occur. Note that the only cases this problem has been seen to occur was when modelling an extreme flood event (PMF) on gently sloping high roughness areas.
SA Proportion to Depth ==
 [ {ON}  |  OFF ]
Classic and HPC

This command proportions the SA inflows according to the depth of water (see Section 8.5.2). This feature also enhances SA inflows by applying an inflow in proportion to the depths of water of the wet cells contained within the SA polygon. Where the SA hydrographs have been derived by a hydrologic model that has already included routing effects, this feature will tend to place more inflows in the deeper areas (i.e. the creeks, rivers and downstream areas of the SA region), and hence reduce any routing duplication effects.

Proportioning to depth provides improved performance if using as a side inflow, especially for dam break type analyses, and reduces the effect of any duplicated routing when applying local hydrographs from a hydrology model.
Screen/Log Display Interval ==
 [ {1}  | {10}  | {100}  |  \(\langle\)timesteps\(\rangle\) ]
Classic and HPC

Sets the frequency for display of output to the computer screen and log (.tlf) file (see Section 14.2). The default display frequency for TUFLOW Classic is 1, TUFLOW HPC on CPU is 10 and TUFLOW HPC on GPU is 100.

A value of zero is treated the same as for a value of 1. A value of ‑2 suppresses the display except for any negative depth warnings. A value of ‑3 suppresses all timestep displays.
Set Auto Terminate ==
 \(\langle\) 0 \(\rangle\)  | 1 ]
Classic and HPC

TUFLOW simulations can be stopped after the peak flood using the Auto Terminate feature. Set Auto Terminate is used to turn on this feature.

The 2D cells that are monitored are controlled by specifying a value of 0 (exclude) or 1 (include). Set Auto Terminate defines the value over the entire grid. Read GIS Auto Terminate is used to vary the monitoring location spatially.

At each Map Output Interval the monitored cells are compared against two criteria:

  1. The percentage of the wet cells that have become wet since the last map output interval.
  2. The velocity-depth product at the current timestep compared to the maximum.

This command is used with the optional commands Auto Terminate dV Cell Tolerance, Auto Terminate dV Value Tolerance, Auto Terminate Start Time and Auto Terminate Wet Cell Tolerance.

Note, the Auto Terminate feature is only assessed at every Map Output Interval.

Refer to Section 13.6.7 for more details.
Set IWL ==
 \(\langle\) value \(\rangle\)  |  AUTO  |  {0.0} ]
Classic and HPC

If a <value> is specified, sets the initial water level for all cells in the 2D domain to the value, see Section 8.9.1. Initial water levels for individual cells can be overwritten using Read GIS IWL or Read Grid IWL.

If AUTO is specified, sets the IWL in 1D and 2D domains to the value of the water level boundary in the model at the start of the simulation. If the model has more than one water level boundary, and the starting level is different, an ERROR 0037 occurs. This feature only works for HT and HS boundaries. Note that the initial water level is only applied to 1D nodes and 2D cells that have been allocated a zero IWL (this is the default value).  This means that Read GIS IWL can still be used to set the IWL in other parts of the model, such as a lake.  Note that if Read GIS IWL sets a zero IWL, then this will be overridden by the AUTO value.

Note: This command overwrites any IWL values set in the .tgc file for the same 2D domain.
Set Route Cut Off Type ==
 [ {Depth}  |  Velocity or V  |  Hazard or VxD or Z0  |  Energy ]
Classic Only

Sets the cutoff value type for evacuation routes if the Cut_Off_Type attribute in the Read GIS Z Shape Route layer is blank. Depth, velocity and hazard options are available. The cutoff values are set using Set Route Cut Off Values in the .tcf and/or .tgc file, and evacuation routes are described in Section 11.4.2 and set using the .tgc file command Read GIS Z Shape Route.

This command may be used in either the .tcf and/or .tgc file. If used in the .tcf it is the global default setting when the .tgc file is processed. If used in the .tgc file its location in the file is important in that it only applies to subsequent evacuation route commands. It may be used any number of times in the .tgc file so as to change the evacuation route settings at different points within the .tgc file.
Set Route Cut Off Values ==
 \(\langle\) y1, y2, … \(\rangle\) ]
Classic Only

Sets the cutoff values for the evacuation route feature (see Section 11.4.2) if the Cut_Off_Values attribute in the Read GIS Z Shape Route layer is blank. The type of cutoff values is set using Set Route Cut Off Type and evacuation routes are set using the .tgc file command Read GIS Z Shape Route.

This command may be used in either the .tcf and/or .tgc file. If used in the .tcf it is the global default setting when the .tgc file is processed. If used in the .tgc file its location in the file is important in that it only applies to subsequent evacuation route commands. It may be used any number of times in the .tgc file so as to change the evacuation route settings at different points within the .tgc file.
Set Variable ==
 \(\langle\) value \(\rangle\) ]
Classic and HPC

In any TUFLOW control file use of this command defines a variable’s name and value (Section 13.3.3). Wherever you want to refer to the variable, the variable’s name must be bounded by “<< and “>>” characters.

Note, that when using Set Variable do not use <<…>> to bound the variable’s name as is required to reference the variable in the control files.

Any scenarios and events are automatically set as a variable that can be used within your control files. For example, if your model results are to be output to different folders depending on Scenario 1 (~s1~), enter the following into the .tcf file noting the use of \(\langle\langle\) and \(\rangle\rangle\) to delineate the variable name.

Output Folder == ..\results\<<~s1~>>

In the case above, if Scenario ~s1~ is set to “OpA”, TUFLOW automatically sets a variable named “~s1~” to a value of “OpA”, and the output will be directed to “..\results\OpA”.

As an extension to the example above if the output folder is to also include the first event name, which, for example, is the return period of the flood, the following could be used:

Output Folder == ..\results\<<~e1~>>_<<~s1~>>

If Event ~e1~ is set to “Q100”, the output will be directed to ..\results\Q100_OpA.

Variables may be set to any characters and can be referred to as often as needed in any control file and in other files such as the .tmf and .toc files. At present you can’t use variables in the bc_dbase.csv files, but future builds may offer this feature.

For example the lines below give some idea of how you could use variables that explains how scenarios and events are automatically set as available variables. The commands below set the model’s cell size, timestep and output interval, and sets the folders for outputting check files and results according to Scenario 1 which is the model’s grid resolution (cell size), i.e.. one of “0.5m”, “1.0m” or “2.0m”.

.tcf file entries:

If Scenario == 0.5m
Set Variable 2D_CELL_SIZE == 0.5
Set Variable 2D_Timestep == 0.25
Set Variable Log_Int == 60
Else If Scenario == 1.0m
Set Variable 2D_CELL_SIZE == 1.
Set Variable 2D_Timestep == 0.5
Set Variable Log_Int == 60
Else If Scenario == 2.0m
Set Variable 2D_CELL_SIZE == 2.
Set Variable 2D_Timestep == 1.0
Set Variable Log_Int == 30
End If
! Set times
Start Time == 0
End Time == 0.5
Timestep == <<2D_Timestep>>
Write Check Files == ..\check\<<~s1~>>\
Output Folder == ..\results\<<~s1~>>\
Screen/Log Display Interval == << Log_Int >>

.tgc file entry:

Cell Size == <<2D_CELL_SIZE>>

Note that If Scenario and If Event operate at a higher level than Set Variable, so that they can be used to set different values for the same variable.
SGS ==
 [ ON  | {OFF} ]
HPC Only

To implement sub-grid sampling (SGS) the only command required is SGS == ON.

For information on SGS see Section 7.4.3.
SGS Approach ==
 [ Method B | {Method C} ]
HPC Only

SGS Only.

Sets the approach for Sub-grid Sampling when SGS is used. See Section 7.4.3.

  • Method C (default): retains the SGS elevations in memory throughout the pre-processing stage and performs the generation of the curves only at the end of the pre-processing of all elevation data. Whilst this method can potentially use more memory (CPU RAM) there are considerable benefits in terms of preserving sub-grid elevation data at cells/faces partially affected by terrain data layers and allows TUFLOW to produce high-resolution mapping at the SGS sampling resolution.
  • Method B (legacy): elevations are processed into elevation-volume curves (for cells) and elevation-flow area/width curves (cell faces) after reading each elevation dataset. SGS elevations are discarded after processing the dataset for memory efficiency.
SGS Breakline Detection Delta ==
 \(\langle\) maximum delta value \(\rangle\)  ]
HPC Only SGS Only.

Used to activate the SGS breakline detection delta check. See Section 7.4.3.1.2.

The SGS breakline detection check processes each 2D cell to identify the minimum water surface elevation needed for a continuous wet connection through the cell traversing between left to right and between top to bottom. The maximum invert elevation of the left and right faces is subtracted from the left-right minimum water level and reports it as “uDelta”. Similarly, the top to bottom value is reported as “vDelta”. uDelta and vDelta represent the depth of water over the cell face inverts by which a natural ridge (break) line would block any flow. If either uDelta or vDelta exceeds the <maximum delta value> a spatial (GIS) CHECK 3542 message is issued at the cell location.

This command can add significant time to the initialisation process, it is recommended to perform this check during model set up and to turn off once the creation of breaklines is complete.
SGS Depth Output ==
 [ EXACT |  {CELL AVERAGE} |  MEAN  |  MEDIAN  |  MINIMUM | PERCENTILE ]
HPC Only

SGS Only.

Controls how map output values that use water depth are calculated for mesh based outputs (e.g. XMDF, DAT) if SGS is used. See Section 7.4.3.2.2.

  • CELL AVERAGE (default): calculates the depth by dividing the cell volume by cell area.
  • EXACT: calculates the depth using the ZC and ZH elevations that would be sampled at their respective locations if SGS was not used, i.e. the elevations that would be sampled exactly at the cell centre (ZC) and cell corner (ZH) locations if SGS was not applied.
  • MEAN: uses the average Z value assigned to the cell centre and the cell corners from the SGS sampling, i.e. the map output shows the average depth within a cell / around a cell corner (also see SGS ZH Sample Ratio below).
  • MEDIAN: uses the median (50th percentile) elevation for the cell.
  • MINIMUM: uses the minimum Z value, i.e. the map output shows the maximum depth within a cell / around a cell corner (also see SGS ZH Sample Ratio).
  • PERCENTILE: uses an elevation based on the specified set percentile. This requires a second argument, separated by vertical bar “|”, which is the percentile to use. For example, “SGS Depth Interpolation Approach == Percentile | 25” will use the 25th percentile of the SGS elevations sampled within the cell.
SGS Infiltration Approach ==
 [ {AUTO}  |  TOTAL AREA  |  WETTED AREA ]
HPC Only SGS Only.

Sets the infiltration approach when SGS is enabled. See Section 7.4.3.1.2.

  • Total Area: the infiltration rate used is the raw value computed from the infiltration model regardless of whether the cell is fully wet or partially wet. This is the best option for models with long periods of direct rainfall leading to thin sheet flow.
  • Wetted Area: the infiltration rate used is factored down according to the set area fraction of the cell. This the best option to use for the infiltration of ponded water under no rain conditions.
  • Auto (default): enables the solver to choose between Total Area and Wetted Area for each cell depending on whether or not the cell has rainfall applied at that timestep. If rainfall is non-zero then the raw infiltration rate is used (Total Area option), and if the rainfall is zero the infiltration is factored down by the wet area ratio (Wetted Area option).
SGS Map Extent  \(\langle\) Full or Trim \(\rangle\) ==
 \(\langle\) map data types \(\rangle\) | {ALL} ]
HPC Only SGS Only.

Can be used to change the default trimming option (see Section 7.4.3.2.2. The following options are available:

  • TRIM (default): sets which map data types are presented as “wet” for partially inundated cells and which data types are trimmed based on the Map Cutoff SGS.
  • FULL: partially wet cells are shown as wet in the map output.

For example:

  • SGS Map Extent Trim == All” will trim all mapped data types the Map Cutoff extents. This is the default and trims all output data types to the Map Cutoff SGS extents.
  • SGS Map Extent Full == h v hazard” will set the water level, velocity and any hazard outputs to the full extent, while all other data types will be trimmed.
SGS Materials ==
 [ {OFF} | ON ]
HPC Only
Legacy command. Expand to find out more about the legacy settings.

SGS Only.

Used to enable or disable the sub-grid sampling of materials (land-use). In the 2023-03 Release this functionality has been disabled and TUFLOW will report ERROR 2568. It was included in the 2020-10 Release as beta functionality.

SGS Max Sample Frequency ==
 \(\langle\) maximum frequency \(\rangle\) ]
HPC Only

SGS Only.

Sampling frequency in SGS models is capped at 31 sampling points per cell face by default. This command can be used to increase this limit. Note, a hard limit of 127 per face still applies. See Section 7.4.3.1.1.
SGS Negative Rainfall Approach  ==
 [ TOTAL AREA  |  {WETTED AREA} ]
HPC Only

SGS Only.

Controls the cell area used when negative rainfall is applied in conjunction with SGS. See Section 7.4.3.1.2.

  • Total Area: uses the whole cell area, regardless of the portion of the cell that is wet.
  • Wetted Area (default): option uses only the wetted portion of the cell.
SGS Sample Frequency ==
 \(\langle\) frequency \(\rangle\)  ]
HPC Only SGS Only.

The “frequency” sets the number of sample locations per face. See Section 7.4.3.1.1. If a quadtree mesh is used (Section 7.4.1), different frequencies can be defined for each nesting level (e.g. SGS Sample Frequency == 21, 11, 5).

If neither SGS Sample Frequency nor SGS Sample Target Distance is set, a scan of the Geometry Control File (.tgc) is performed to find the minimum raster grid resolution used in Read Grid Zpt commands, and this is used as the sampling target distance to compute the sampling frequency.
SGS Sample Target Distance ==
 \(\langle\) distance\(\rangle\) ]
HPC Only

SGS Only.

Sets the sampling target distance in meters or feet (if using Units == US Customary). This is the recommended approach to set the SGS sample distance. TUFLOW requires an odd number of sample locations across a cell face. For example, using a cell size of 10m and a sample target distance of 1m, TUFLOW will use 11 sample points along the cell face. If the target distance specified gives an even number, TUFLOW will round up to the next odd number. See Section 7.4.3.1.1.
SGS SX Z Flag Approach  ==
 [ Method A  |  {Method B}  ]
HPC Only

SGS Only.

If set to Method A, cells that are lowered by the “Z” flag on SX connections are assumed flat (i.e. as per the approach for no SGS). The default Method B retains the SGS information, but shifts it all to match the lowered elevation. See Section 7.4.3.1.2.
SGS TIN Memory Allocation Factor ==
 [ {1.02} | \(\langle\) value \(\rangle\) ]
HPC Only

SGS Only.

Occasionally points modified by TINs exceed the size of temporary memory allocated. This command can be used to increase this temporary memory allocation. For example using a value of ‘1.1’ will increase the temporary memory allocation by 10%.
SGS Velocity Based Outputs ==
 [ {CELL AVERAGE DEPTH}  |  SGS DEPTH OUTPUT ]
HPC Only

SGS Only.

Sets how the depth is determined for output data types that use a combination of depth and velocity in the calculation. The velocity used for these outputs should usually be the cell average velocity. For consistency a cell average depth (default) is applied for these output types regardless of the “SGS Depth Output” setting. However, if desired, this can be changed by using “SGS Depth Output” which will use the depth set by the “SGS Depth Output” command.
SGS Z Shape Line Approach  ==
 [ Method A  |  {Method B}  ]
HPC Only

SGS Only.

If set to Method A, cell faces are assumed flat (i.e. SGS is not applied and a rectangular section / flat cell is used). The default, Method B, applies a gradient along the face based on the cell corners and cell side Zpt values and for thick lines uses the ZC, ZU, ZV and ZH values to apply a sloping cell area for the cell volume. See Section 7.4.3.1.2.
SGS ZH Sample Ratio ==
 \(\langle\) ratio \(\rangle\) | {1} ]
HPC Only

SGS Only.

Used to control the area used for SGS at ZH locations. The area is set to \(\langle ratio \rangle \times cell\_area\) to sample and generate Z values around a cell corner (the sampled elevations are not used in the hydraulic computations, only for map output). The default setting for this command is 1.0. The corner elevations are also used to enable the _DEM_Zmin check file to be written. See Section 7.4.3.2.2.
SGS Zpt MAX/MIN Approach  ==
 [ IGNORE  |  {MINIMUM}  |  MEDIAN  |  CENTRE ]
HPC Only
Legacy command. Expand to find out more about the legacy settings.

SGS Only.

When MAX/MIN options are used in SGS .tgc commands, the minimum elevations are used to determine whether the new elevation is higher/lower than the previous one (default option, MINIMUM). However occasionally the new elevation has a median elevation lower than the previous elevation, and in some situations, should be considered as the “lower” elevation. This command allows users to specify which elevation is used for the geometry updates using the MIN or MAX settings.

  • Ignore: ignores the MAX/MIN options and always applies the new elevations.
  • Minimum (default): uses the minimum elevation for comparison.
  • Median: uses the median elevation for the comparison.
  • Centre: uses the cell centre / face mid-point elevations for the comparison.

Only available using the legacy “SGS Approach == Method B”.

Shallow Depth Stability Factor ==
 \(\langle\) SF \(\rangle\) ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

Legacy command. No longer required or recommended for use subsequent to implementation of Wetting and Drying == ON METHOD B. See TUFLOW 2010 Manual for details.

SHP Projection ==
 \(\langle\) SF \(\rangle\) ]
Classic and HPC

Sets the geographic projection for all GIS input and output in Shapefile (.shp) file format (see Section 4.4.1). This is used for checking whether input layers are in the same projection, and for setting the projection of all output layers (e.g. check layers).

If a model has a mixture of .gpkg, .shp and .mif files as input, then the projection must be specified for each (e.g. using GPKG Projection, SHP Projection and MI Projection).
SHP Projection Check Method  ==
 [ SIMPLE  | {PARSED} ]
Classic and HPC Sets the method for processing of the shapefile format projection (.prj) file to ensure an input is the same as the model projection (see Section 4.4.1). Setting to PARSED (default) parses the parameter data into number values and compares each of these numbers to check they are consistent. Setting to ‘SIMPLE’ will read in the file as a character string. Note, using ‘SIMPLE’ could cause issues if moving between GIS platforms (e.g. between ArcMap and QGIS), as these could write the .prj files slightly differently, particularly with a different number of decimal places. For example, consider the two extracts from .prj files; “PARAMETER[”latitude_of_origin”,0]” and “PARAMETER[”latitude_of_origin”,0.0]”. A string compare would highlight these as not matching.
Simulations Log Folder  ==
 \(\langle\) folder \(\rangle\)  | Do Not Use ]
Classic and HPC This command is optional and can be used to sets the folder that the “_ All TUFLOW Simulations.log” is written to (see Section 14.4.2). The default folder is “C:\ProgramData\TUFLOW\log”. Setting this command to ‘Do Not Use’ will supress the writing of the “_ All TUFLOW Simulations.log”.
Simulation Pause Interval ==
 \(\langle\) Time interval in hours \(\rangle\) ]
Classic and HPC This command can be used to pause a TUFLOW simulation at set intervals during the simulation. This will create a Console pause (Section 14.2) requiring a carriage return (enter key) to be pressed before the simulation will continue.
Simulation Pause Start ==
 \(\langle\) Model time in hours \(\rangle\) ]
Classic and HPC This command can be used to pause a TUFLOW simulation at a set time during the simulation. This will create a Console pause (Section 14.2) requiring a carriage return (enter key) to be pressed before the simulation will continue.
Snap Tolerance ==
 [ {0.001}  |  \(\langle\) snap_distance \(\rangle\) ]
Classic and HPC

Sets the search distance in metres or feet for detecting whether two GIS objects are connected (snapped), see Section 16.3.2.5. Note that this command can be repeated to change the tolerance only for a single layer. For example the below could be used set the tolerance and then return it to the default value:

Snap Tolerance == 0.01
Read GIS Network == ..\1d_nwk_example_L.shp
Snap Tolerance == 0.001
Soil Initial Loss ==
 [ {Ignore Material Impervious}  |  Use Material Impervious ]
Classic and HPC

Provides flexibility in the handling of material imperviousness when applying soil initial losses, either using ILCL or Horton soil infiltration methods (Section 7.3.7).

The initial losses can be used to model interception losses (i.e. water that does not reach the soil), in which case the use of a material’s imperviousness is not warranted and the default “Soil Initial Loss == Ignore Material Impervious” is preferred.

For the “Soil Initial Loss == Use Material Impervious” option, the initial loss is reduced by the material’s fraction imperviousness.
Soil Negative Rainfall Approach  ==
 [ {None}  |  Factor ]
HPC Only

Provides the ability for negative rainfall to draw from the topmost groundwater layer under surface layer cells that are dry, mimicking evapotranspiration. Refer to Section 7.4.5.2 for more information.

“Factor” applies the defined negative rainfall at a (globally) factored rate. To set the rate, see Soil Negative Rainfall Factor.
Soil Negative Rainfall Factor  ==
 \(\langle\) factor \(\rangle\)  |  {1}  ]
HPC Only Sets the factor value when Soil Negative Rainfall Approach has been set to “factor”. The default factor is 1, meaning that the full value of the negative rainfall is applied. Refer to Section 7.4.5.2 for more information.
Solution Scheme  ==
 [ {CLASSIC}  |  HPC  |  HPC 1st ]
Classic and HPC

This command defines the 2D solution scheme to be used for a simulation.

Options are:

  • CLASSIC: the simulation will use TUFLOW’s finite difference implicit 2nd order solver (the default option).
  • HPC: the simulation will use TUFLOW HPC’s finite volume explicit 2nd order solver.
  • HPC 1st: uses TUFLOW HPC’s finite volume explicit 1st order solver. When using HPC, the 2nd order solver is recommended over the 1st order alternative due to its greater accuracy.
Refer to Section 7.2.1 for a description of TUFLOW HPC and Section 7.2.2 for a description of TUFLOW Classic.
Spatial Database ==
 \(\langle\) GPKG database \(\rangle\) ]
Classic and HPC Sets the database to use for subsequent inputs when using the GeoPackage format. For more information see Section 4.4.3.
Spatial Database Output ==
 [ SEPARATE | {GROUPED} ]
Classic and HPC

Sets how the outputs are written when using GeoPackages, see Section 4.4.3.2.

Options are:

  • Grouped (default): outputs will be grouped by folder location. For example all check file outputs will be contained within one database.
  • Separate: outputs will be grouped by geometry only.
Start 1D Domain Classic and HPC Indicates the start of a block of 1D Commands (see Appendix B) in the .tcf file. Block must be terminated by using End 1D Domain.
Start 2D Domain ==
 [ {}  |  \(\langle\) 2d_domain_name \(\rangle\)  ]
Classic Only Indicates the start of a block of commands that define a 2D domain (see Section 10.7.2). If no 2d_domain_name is specified, the 2D domain is automatically assigned a name. The name is solely used for reporting in the .tlf file and elsewhere. Also see End 2D Domain. If there is only one 2D domain, this command is optional.
Start Map Output ==
 \(\langle\) time_in_hours \(\rangle\) ]
Classic and HPC

The simulation time in hours when map output commences. If the command is omitted, the simulation start time is used.

This command can be defined for different output formats by including the output format extension on the left of the command. For example, to set the start time for XMDF output to 1hr use:

XMDF Start Map Output == 1

This output format specific functionality is also available for commands End Map Output, Map Output Interval and Map Output Data Types. Refer to Section 11.2.

This command can be used within an Output Zone definition block to change the setting from that for the entire model map output.
Start Time ==
 \(\langle\) time_in_hours \(\rangle\) ]
Classic Only Specifies the start time of the simulation in hours (see Section 4.2.4). Value can be negative and it is recommended that it be relative to midnight for historical events.
Start Time Series Output ==
 \(\langle\) time_in_hours \(\rangle\) ]
Classic and HPC The simulation time in hours when time series (PO and LP) output commences (see Section 11.3.2). If the command is omitted, the simulation start time is used. Also see Time Series Output Interval.
Supercritical ==
 [ {ON}  |  OFF  |  PRE 2002-11-AD ]
Classic Only

Sets the supercritical flow mode. If set to ON (the default), flow automatically switches into upstream controlled friction flow, allowing the supercritical flow conditions on steep slopes to be modelled. See Section 7.5.2 and Froude Check for more details.

If set to OFF, and Free Overfall is set to ON, the broad-crested weir formula applies where flow conditions are predicted to be upstream controlled.

Setting to PRE 2002-11-AD provides backward compatibility for simulations carried out using supercritical flow prior to Build 2002-11-AD. In Build 2002-11-AD, additional checks using the Froude Number specified by Froude Check were incorporated in addition to the downstream/upstream controlled flow check comparison. This may produce different results in some flow conditions. The ON option is to be used in preference to the PRE 2002-11-AD option.
SWMM Control File ==
 \(\langle\) .tscf_file \(\rangle\) ]
Classic and HPC Specifies the TUFLOW SWMM control file (.tscf), see Section 4.2.14 for details. See Appendix I for a list of the SWMM control file commands.
SX Flow Distribution Cutoff Depth ==
 [ {AUTO}  |  \(\langle\) depth_m \(\rangle\) ]
Classic and HPC
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

Sets the depth of water below which an SX boundary cell will not receive flows from the connected 1D element. The default value {AUTO} equals three times 1.5 times the Cell Wet/Dry Depth.

Prior to the 2016-03 TUFLOW release this was set to 0.0, as soon as the cell was wet, flow was applied. Set to 0.0 for backward compatibility.

SX FMP Unit Type Error ==
 [ {ON}  |  Off ]
Classic and HPC

For 2D SX connections linked to Flood Modeller Pro (FMP) (Section 10.5) a check is performed that the FMP node has been assigned as a HTBDY node. If this is not the case, a spatial message (ERROR 2043) is issued and the simulation is stopped.

This error message can be set to a warning with the .tcf command “SX FMP Unit Type Error == OFF”. If set to off, the above will cause a WARNING 2043 to be issued, but the simulation will be allowed to continue.
SX Head Adjustment ==
 [ ON |  {OFF} ]
Classic and HPC If OFF (the default), makes no adjustment for energy compatibility (i.e. the 1D water level and 2D water level are set as equal to each other at the 2D SX link). See Section 10.2.2.
SX Head Distribution Cutoff Depth ==
 [ {AUTO}  |  \(\langle\) depth_m \(\rangle\) ]
Classic and HPC

At an SX link (see Section 10.2.2), the water level sent through to the 1D node is based on the water levels of the wet SX cells. Prior to the 2017 release, this level was simply the average of the wet cells. This approach can cause issues where there are a slightly wet SX cells that are elevated above the SX cells within the main flow path. This primarily occurs if using direct rainfall, or if there is some side flow cascading down the higher SX cells.

For the 2017 release onwards, the default is to calculate the 1D water level based on proportioning to the SX cell depth. This means that the water level transferred to the 1D node is biased to that of the deeper cells.

If depth_m is set to AUTO or is greater than 0.0001, any wet SX cells with a depth less than depth_m is excluded, and the 1D water level is calculated as a depth weighted average of the remaining wet SX cells.
SX Storage Approach ==
 [ {1D NODE AVERAGE}  |  Cell Only ]
Classic and HPC
Legacy command. Default value recommended. Expand to find out more about the legacy settings.

As of the 2017-09 release the default is to distribute the average 1D node storage across connected SX cells (see Section 10.2.2). For backward compatibility in legacy models, and to not assign additional storage to the 2D SX cells based on the 1D node details, set the SX Storage Approach to Cell Only.

SX Storage Factor ==
 [ {1.0, 20.0}  |  \(\langle\) sxs_factor \(\rangle\), \(\langle\) sxs_limits \(\rangle\) ]
Classic and HPC <sxs_factor> is a multiplier that globally adjusts all additional storages applied to SX cells (see Section 10.2.2). <sxs_limits> sets the limit by which an SX cell can have its storage increased in addition to its own storage. By default, this is a factor of 20, in which case, if a 1D node’s storage increases an SX cell’s additional storage by more than 20, the factor is limited to 20.
SX ZC Check ==
 [ {ON}  |  OFF  |  \(\langle\) dZ_limit_in_m \(\rangle\) ]
Classic and HPC

If ON (the default), checks whether the minimum ZC elevation at or along a SX object (see Section 10.2.2) is below the connected or snapped 1D node bed level. This is necessary to ensure that the channels connected to the node only start flowing once the 2D SX cell is wet and the water level in the cell is above the lowest channel bed. If the ZC elevation is higher than the lowest channel, unexpected flows or a surge of water may occur in the 1D channels.

Using the “Z” flag (see SX in Table 8.6), the ZC elevation is automatically lowered at each cell associated with a SX object to below the connected or snapped 1D node bed level. Only ZC elevations that are above the node are lowered. The checks and any automatic lowering of ZC points includes the Cell Wet/Dry Depth value so that the ZC elevation is below the node bed less the cell wet/dry depth.

If OFF, higher ZC elevations are allowed and no automatic lowering of ZC elevations occurs.

A value may be entered to set a maximum permitted change in ZC elevation caused by the use of any “Z” flags for 2D SX links. For example, if SX ZC Check == 0.5 is specified, then if any 2D cell is lowered by more than 0.5m an ERROR 2050 occurs. This allows the modeller to automatically lower 2D cells within the specified limit, but flag an ERROR 2050 if there is a substantial change, which usually indicates there is something inconsistent between the 1D channel bed and the 2D topography. It is strongly recommended that if using the SX Z flag, that this option is specified.
TIF Compression ==
 [ NONE | LZW | {DEFLATE} ]
Classic and HPC

Sets the compression for output GeoTIFF grids (see Section 11.2.2.2). The following compression methods are available:

  • LZW (Read/Write)
  • DEFLATE (Read/Write) - default
Set to “NONE” to disable compression.
TIF Compression Predictor ==
 [ NONE | {Horizontal Differencing} ]
Classic and HPC Sets the compression predictor, used to improve the compression ratio for TIF outputs (see Section 11.2.2.2). Testing has shown that using deflate compression with “horizontal differencing” (default) will typically achieve better compression than the typical method of using a ZIP file on the same uncompressed data. Can be turned off using “NONE”.
TIF Projection ==
 [ /path/to/geotiff ]
Classic and HPC Sets the .tif file projection for setting the projection of all output layers (e.g. check and result layers), see Section 4.4.1. Currently there is no input projection checking of raster layers.
Time Output Corner Interpolation ==
 [ {VALUE | \(\langle\) user specified value \(\rangle\)}  |  WET  |  START | \(\langle\) Offset \(\rangle\) ]
Classic and HPC

The tracking of the time of exceedance and duration (e.g. Time Output Cutoff Depths == 0.35, 0.50) is completed at each computational timestep at both the cell centres and the cell corners (Section 11.2.2). This command allows the user to control how the cell corner values are treated. This may alter result display on the flood fringe.

VALUE|<user specified value>: The cell corners are given a fixed value which is user specified. Using this option any cell corners that have not been exceeded will be given the output value of ‑99. This value can be used to improve the output contouring. This is the default with a specified value of -99.

WET: The cell corner values are based on an interpolation of the surrounding wet cells. Note, this can mask the presence of thin breaklines in the output.

START | <offset>: The cell corners are given a fixed value based on the simulation start time plus an offset.
Time Output Cutoff [Depths | VxD |  \(\langle\)Hazard\(\rangle\) ] ==
 [ [ {OFF}  |  \(\langle\) v1, v2, … \(\rangle\) ]
Classic and HPC

If one or more comma or space delimited values are specified using this command, the map output (Section 11.2) will contain additional time output in hours for each value v1, v2, … as follows. The type of the values is controlled by the [ Depths | VxD | \(\langle\)Hazard\(\rangle\) ] setting (only one of these can be specified).

  • Depths is the depth of water
  • VxD is the velocity times depth product, and
  • <hazard> must be one of the hazard categories as documented in Table 11.5. VxD and Z0 are one in the same.
  1. The time that a cell first experiences a value greater than each of , the simulation time of exceedance is retained, and included in the map output. If using the .xmdf output format, the data is accessed using a simulation time of 100,000 + v in the .xmdf file, where v is v1, v2…. This output is useful for mapping flood warning times for different depths of inundation or when VxD or hazard categories are exceeded. When output as a grid (.asc or .flt) map output format, the file extension given to this output is _TExc_.
  2. The duration of time that a cell is inundated above each of is also retained. For .xmdf file map output the durations are stored under the time of 200,000 + v, where v is v1, v2…. This output is useful for mapping duration of inundation above v1, v2, …. When output as a grid (.asc or .flt) map output format, the file extension given to this output is _TDur_.
Note: If this command is specified more than once, the last one will prevail.
Time Series Null Value ==
 [ {cell elevation}  |  \(\langle\) null value \(\rangle\) ]
Classic and HPC A user specified output null value for water level plot outputs if a cell is dry (see Section 11.3). For other PO outputs, such as; flow, flow area, velocity, a value of 0.0 is output if a cell is dry.
Time Series Output Format ==
 [ {csv} | NC ]
Classic and HPC

This command controls the format of time series outputs written to the results/plot folder. There are two formats available for time series outputs (Section 11.3): comma-separated values (.csv) and NetCDF (.nc).

One of the advantages of NetCDF is all the timeseries output is in a single compressed .nc file, rather than multiple uncompressed .csv files. This can be useful for large 1D models or large amounts of 2d_po data.
Time Series Output Interval ==
 \(\langle\) time_in_seconds \(\rangle\) ]
Classic and HPC

The output interval in seconds for time series based output (PO and LP) (see Section 11.3.2).

Either Output Interval (s) or Time Series Output Interval must be specified otherwise an ERROR 0046 message is output. The default values for these intervals is the computational timestep, and by not specifying values can cause excessive amounts of memory to be allocated, sometimes causing undesirable results!
Timestep ==
 [ {1.0}  |  \(\langle\) timestep_in_seconds \(\rangle\) ]
Classic and HPC

Specifies the computation timestep of the simulation in seconds. Value must be greater than zero. Timesteps that divide equally into one minute or one hour are recommended. For example, 0.5, 1, 2, 3, 5, 6, 7.5, 10, 12, 15, 20, 30, 45, 60, etc. seconds.

Different timesteps can be specified for different 1D and 2D domains. If the command is specified outside a Start 2D Domain / End 2D Domain block, the timestep will apply to any 2D domain that is not given a timestep. If it is specified within a Start 2D Domain / End 2D Domain block it only applies to that 2D domain.

For TUFLOW Classic simulations, the specified value sets the fixed timestep for the simulation.

For TUFLOW HPC simulations, the specified value sets the initial timestep for the simulation. All subsequent timesteps are automatically calculated using an adaptive timestep approach based on control number criterion.

Refer to Section 3.5 for further information.
Timestep Initial ==
 \(\langle\) initial timestep_in_seconds \(\rangle\) ]
HPC Only

The standard Timestep command is only used by the HPC solver for the first timestep if using adaptive timestepping mode, see Section 3.5.4. For consistency with typical Classic timesteps, this timestep is divided by 10 to provide a timestep commensurate with the explicit solution scheme used by HPC. Therefore, the general advice if using the Timestep command is to specify the same timestep as would typically be used when running the Classic solver. This is usually one fifth to half of the 2D cell size in metres.

As of the 2017-09-AC Build the Timestep Initial command can be used to set the HPC initial timestep directly (i.e. the timestep is not divided by 10).
Timestep Maximum ==
 [ {Auto}  | \(\langle\)
HPC Only

Sets a maximum timestep for the simulation, see Section 3.5.4. Particularly useful when running a model with significant periods in which all cells were dry, as the timestep can increase to the map output interval leading to stability issues when the model first wets after a dry period (as the timestep has to reduce rapidly).

If not specified, or set to “Auto”, the maximum timestep is based on the shallow water wave celerity where the wave speed is calculated based on c=√gh where the cell wet/dry depth is used as a water depth (h). The max timestep is calculate as max⁡dt=dx/√gh, so for a 5m cell size with a 2mm wet/dry depth the maximum timestep is 35.7 seconds.

For models with infiltration and direct rainfall with a similar magnitude, it may be desirable to reduce the maximum timestep to avoid repeat timesteps.
Timestep Maximum Increase (%) ==
 [ {0.5}  |  \(\langle\) value_as_a_% \(\rangle\) ]
Classic Only
Legacy command. Expand to find out more about the legacy settings.

This command controls the maximum rate at which an adaptive timestep, using the command Maximum Courant Number, can increase. There is no limit to how quickly the timestep can decrease.

Timestep Minimum ==
 [ {AUTO }  |  \(\langle\) minimun timestep (seconds) \(\rangle\) ]
HPC Only The minimum permissible target timestep allowed by the HPC solver (see Section 3.5.4). By default this is set to the minimum of 0.1 seconds or the cell size divided by 200 m/s. In most cases, where there is no erroneous data or poor model setup, the target timestep will always be well above the default minimum timestep. The timestep Minimum value can be manually specified if desired.
Timestep Repeats ==
 [ {10 }  |  \(\langle\) n_allowed_repeats \(\rangle\) ]
HPC Only This command allows the user flexibility to change the allowable number of TUFLOW HPC repeated timesteps prior to an instability being triggered (see Section 3.5.4). One situation where this might be useful is if a 2D only model remains totally dry for some time the timestep can become very large, and then needs to be rapidly reduced once inflows commence.
TSF Update Interval ==
 [ {0}  |  \(\langle\) interval_in_sec \(\rangle\) ]
Classic Only Sets the interval in seconds to update the .tsf file (Section 14.5.2) while a simulation is running. If set to 0 or less (the default) the .tsf file is only updated at the start and the end of the hydrodynamic calculations.
Tutorial Model ==
 [ ON  |  {OFF} ]
Classic and HPC When set to ON, allows simulation of the Tutorial Models without the need for a TUFLOW license. For further information refer to Section 2.1.1 and the Tutorial Introduction TUFLOW Wiki page.
UK Hazard Debris Factor ==
 \(\langle\) DF \(\rangle\)  |  {1} ]
Classic and HPC

Sets the debris factor (DF) value for calculating the flood hazard output for options ZUK0 and ZUK1 (see Table 11.5) for UK Hazard Formula == D*(V+0.5)+DF. If a UK Hazard Land Use is specified, DF is determined from the debris factor land use table (see UK Hazard Land Use).

The default value is 1.0.
UK Hazard Formula ==
 [ [ D(V+1.5)  |  {D(V+0.5)+DF} ]
Classic and HPC

Sets the formula to be used for calculating the flood hazard output for options ZUK0 and ZUK1 (see Table 11.5), where D is depth, V velocity and DF Debris Factor (see UK Hazard Debris Factor). If a UK Hazard Land Use is set, the D(V+0.5)+DF option is used irrespective of this command.

ZUK0 produces a .xmdf file containing the actual value from applying the UK Hazard Formula, while ZUK1 outputs a .xmdf file containing an integer as per:

  • 0 = No Hazard (H \(\le\) 0)
  • 1 = Low Hazard (H \(\le\) 0.75)
  • 2 = Moderate Hazard (H \(\le\) 1.25)
  • 3 = Significant Hazard (H \(\le\) 2.5)
  • 4 = Extreme Hazard (H \(\ge\) 2.5)
Formulae based on the DEFRA (2006a).
UK Hazard Land Use ==
 [ PASTURE  |  WOODLAND  |  URBAN  |  {CONSERVATIVE}  |  NOT SET ]
Classic and HPC

Sets the land use category for varying debris factors with depth and velocity as specified in DEFRA R&D Outputs: Flood Risks to People Phase Two Draft FD2321/ TR2, Table 3.1 as shown below. Use NOT SET to ignore the land use setting and allow use of UK Hazard Debris Factor and UK Hazard Formula commands. See Table 11.5.

If the UK Hazard Land Use is not specified, and the default UK Hazard Formula is used, the debris factors for the CONSERVATIVE land use are assumed.

In the table below, the V \(\rangle\) 2m/s criteria in the last row is applied at all depths greater than 0.1m. Occasionally, as a 2D cell wets, a high velocity may occur, hence the 0.1m cut-off for applying the V \(\rangle\)  2m/s criteria.

Guidance on debris factors (DF) for different flood depths, velocities and dominant land uses

Depths Pasture/Arable Woodland Urban Conservative
0 to 0.25 m 0 0 0 0.5
0.25 to 0.75 m 0 0.5 1 1
d\(\rangle\) 0.75 m and/or v\(\rangle\) 2 0.5 1 1 1
Ref: DEFRA (2006b) Table 3.1.
Units ==
 [ {METRIC}  |  ENGLISH  |  IMPERIAL  |  US Customary ]
Classic and HPC

By default, TUFLOW uses metric units. Full support for US Customary Units (English or Imperial – they are identical) is available by setting Units == US Customary, Units == English or Units == Imperial. The default settings for all inputs are the same as for metric, but converted to their US Customary units’ equivalent. Where the manual refers to a default value in metric, TUFLOW will use the equivalent value in US Customary Units. The input and output units are as follows:

  • Length: feet
  • Area: square feet
  • Rainfall, Initial Loss and Continuing Loss(/h): inches
  • Catchment Area: square miles
  • Constant eddy viscosity value: ft2/s
  • For determination of hazard categories (Z0 and ZUK0) the values are based on using feet and seconds.
Unused HX and SX Connections ==
 [ {ERROR}  |  WARNING ]
Classic and HPC If set to “ERROR” (the default), any unconnected or redundant CN objects in 2d_bc layers are treated as an ERROR. This error is typically due to a CN object not being snapped to a HX or SX object in the same 2d_bc layer, or the use of two CN objects at either end of a SX line (only one CN object is required to connect a SX line, thereby making the other one redundant). See Section 8.5. Setting to “WARNING” will issue a WARNING message but allow TUFLOW to continue to run. It is not recommended that the WARNING option be used other than for backward compatibility.
Use Forward Slash ==
 [ ON  |  {OFF} ]
Classic and HPC If set to ON, forward slash (/), rather than backslash (\, is used in the text output files contain file paths (e.g. .tlf, .qgis, .tpc, .wor). For LINUX systems forward slash must be used, while for Windows either can be used. See Section 4.2.2.
Verbose ==
 [ ON  |  OFF  |  {LOW}  |  HIGH ]
Classic and HPC

Controls the amount of information displayed on the DOS console window and written to the .tlf. The options are:

  • OFF: lowest level volume of content.

  • LOW: a medium level of reporting (the default).

  • ON: highest level volume of content.

  • HIGH: controls the amount of information displayed on the DOS console window. It is the highest level of reporting, in addition DOS consult window test associated with the ON option, all input commands will also be echoed. They will be prefixed with “<<”. When HIGH is used the .tlf write verbose setting is LOW.

VG Z Adjustment ==
 [ {MAX ZC}  |  ZC  |  ZH ]

Classic Only

When using the VG boundary (Section 8.5). Options are:

  • MAX ZC (the default setting): This forces the adjusted ZU/ZV and ZH points to be set to the maximum ZC value rather than an interpolated ZC value. This option provides significant enhancements in some situations to the stability of the flow over the breach.

  • The ZC option adjusts ZU/ZV and ZH points to be the average of the neighbouring ZC elevations.

  • The ZH option provides backward compatibility for models using the original VG adjustment of Zpts based on changing the ZH values.

  • Viscosity Approach ==
     [ Method A  | {Method B} ]

    HPC Only

    Sets the viscosity approach, from the 2020 release onwards “Method B” is the default (which is based on the approach developed for TUFLOW Classic). For backward compatibility, the previous approach “Method A” can be used. See Section 18.1.3.

    Viscosity Coefficient ==
     \(\langle\) value1, value2, … \(\rangle\) ]

    Classic and HPC

    Sets the viscosity coefficient(s) for the chosen Viscosity Formulation (see Sections 7.2.4, 7.4.2 and 7.5.1).

    Options are:

    • “CONSTANT”: reads one value for the constant viscosity. The default value is 0.05 m2/s for Metric Units and 0.5382 ft2/s for US Customary Units.
    • “SMAGORINSKY”: reads two values, the first being the Smagorinsky coefficient, and the second (optional) the constant eddy viscosity component. The default values are 0.5 and 0.05 m2/s respectively for Metric units and 0.5 and 0.5382 ft2/s for US customary units (note that the Smagorinsky coefficient is dimensionless).
    • “WU”: reads up to three values, the first being the Wu3D coefficient, the second being the Wu2D coefficient, and the third (optional) being the Manning’s upper limit for the 3D component of the calculation. The default values are 7.0, 0.0, and 0.1 respectively regardless of units.
    • “NON-NEWTONIAN”: reads 5 values (refer Section 7.4.6). These are k, n, \(\mu_{low}\), \(\mu_{high}\), and \(\tau_{0}\). There are no default values, the coefficients must be specified if the non-Newtonian viscosity formulation is selected. Note these values must be specified in the system of units selected.
    Viscosity Formulation ==
     [ CONSTANT  |  SMAGORINSKY  |  WU  |  NONNEWTONIAN ]
    Classic and HPC Sets the viscosity formulation (see Sections 7.2.4, 7.4.2 and 7.5.1).

    Options are:

    • “CONSTANT”: the viscosity coefficient remains constant
    • “SMAGORINSKY”: applies a hybrid approach that includes elements of both the Constant and Smagorinsky approaches
    • “WU”: applies the WU model with 3D and 2D coefficients
    • “NON-NEWTONIAN”: selects the non-Newtonian calculation

    TUFLOW Classic only supports CONSTANT and SMAGORINSKY, with the default being SMAGORINSKY

    TUFLOW HPC supports all, with the default being WU.
    Water Level Checks ==
     [ {ON}  |  OFF ]
    Classic Only The default ON option carries out checks on water levels to detect any significant instabilities. Instabilities are triggered when a water level exceeds the Instability Water Level or falls below the negative of the Instability Water Level. Switching this option off reduces the computation time very slightly. See Section 16.3.2.
    Wetting and Drying ==
     [ {ON METHOD B}  |  ON  |  ON NO SIDE CHECKS  |  OFF ]
    Classic Only
    Legacy command. Default value recommended. Expand to find out more about the legacy settings.

    Controls the wetting and drying method.

    The ON METHOD B approach (default) introduced an enhanced wetting algorithm in the 2012-05 release that provides significant improvement to inflows on steep areas (e.g. direct rainfall models), whilst maintaining low mass error, greater stability and often larger timesteps. Use of this approach does not require use of the Shallow Depth Stability Factor that was previously automatically invoked for direct rainfall models. This method makes an estimate of the likely velocity that will occur when a cell side first wets and feeds this information into the solution matrices. Previously, the velocity used was that from the previous timestep which was zero as the cell side was dry. The zero velocity essentially created a frictionless slope and would cause a surge of water, albeit very shallow, when the cell side first wets. This was not usually a major issue, however, with direct rainfall models all cell sides can become wet in one timestep and if the terrain is steep a significant surge and unacceptable mass errors would occur. This method largely overcomes this effect.

    The (pre 2012-05 default) ON approach dries cells once the cell water depth falls below the cell wet/dry depth (see Cell Wet/Dry Depth and Cell Side Wet/Dry Depth). A cell becomes wet once an adjoining cell’s water level is higher than the cell’s wet/dry depth. This method only considers adjoining wet cells that share a common cell side that is wet.

    The ON NO SIDE CHECKS option is as described above, except that drying at the cell sides is not considered. All four adjoining cells are always considered.

    The OFF option disables wetting and drying. This should only be used for models that have no cells likely to wet and/or dry.

    WIBU FIRM Code Search Order ==
     \(\langle\) list of firm codes \(\rangle\) ]
    Classic and HPC

    Used to control the search order in the TUFLOW_licence_settings.lcf (not the TCF) the command specified is “WIBU Firm Code Search Order == ”. See Section 13.5.1.1.

    With numerous licencing options available, setting the preferred licence type can speed simulation start-up. The licence search order can be set via a licence control file “TUFLOW_licence_settings.lcf”, this replaces the TUFLOW_Dongle_Settings.dcf. Note that this file can occur in several locations. When looking for a licence setting file TUFLOW searches in the following locations:

    • A “TUFLOW_licence_settings.lcf” in the same location as the TUFLOW > executable. This is given the highest priority.
    • C:_WBM_Licence_Settings.lcf
    • C:_WBM_Dongle_Settings.dcf

    The firm codes used below are unique identifiers used by Wibu.

    Vendor / Licence Description Wibu Firm Code
    BMT physical dongle 101139
    BMT software licence 6000224
    Aquaveo physical licence 101394
    Jacobs physical licence 101987
    Jacobs software licence 5000219

    If multiple firmcodes are to be used these are entered with a space between the values. For example, in the below, this sets the search order to BMT software lock licences, then BMT hardware lock (dongle) licences.

    WIBU Firm Code Search Order == 6000224 101139

    Any firm codes not listed are not used. For example to search for only an Aquaveo hardware lock licence, the .lcf command would be:

    WIBU Firm Code Search Order == 101394
    Wind/Wave Shallow Depths ==
     [ {0.2, 1.0}  |  \(\langle\) y1, y2 \(\rangle\) ]
    Classic Only Sets the depth of water when the wind and/or wave stress (Section 8.8) are reduced to zero. This command is necessary to avoid a divide by zero error in the numerical calculation, and model instabilities when high wind/wave stresses are applied to very shallow depths. Below y1, the stress is set to zero, above y2 the full stress is applied, and between y1 and y2 the stress is interpolated. y1 and y2 are in metres (or feet if using Units ==US Customary).
    Write Check Files [ {ALL} | NONE | INCLUDE | EXCLUDE ]  ==
     \(\langle\) prefix_list_or_file_prefix \(\rangle\) ]
    Classic and HPC

    Creates GIS check files in the format specified by the GIS Format command and text .csv files for quality control checking of model input data. Refer to Section 14.7 for further details on the check files produced. The options available for this command can be used to control which check layers are written.

    The EXCLUDE or INCLUDE options allow for a space delimited list of file prefixes to be specified to exclude or include GIS layers from being written. Prefixes must be the same as those used by TUFLOW. For example, “zpt” would apply to the zpt_check layer. To exclude/include more than one layer ensure there are spaces between the prefixes. If EXCLUDE or INCLUDE occurs more than once, the latter occurrence prevails.

    Examples:

    Write Check Files EXCLUDE == zpt uvpt ! excludes writing of the zpt_check and uvpt_check layer

    Write Check Files INCLUDE == DEM_Z ! will only write the Grid of the model’s ground elevations to the same location as the .tcf file.

    The ALL option requires no prefix list. All check files will be written to the same folder as the .tcf file. Specification of the ALL option will nullify any prior occurrence of an EXCLUDE or INCLUDE list; this is useful if you wish to write no or all check files for one particular run – simply add Write Check Files ALL to the end of the .tcf file.

    Alternatively, the Write Check Files command may be used without options to add a prefix to all check files or specify a location in which to write the files. If <file_prefix> is omitted or ends in a “\ to indicate a folder, the .tcf filename (without the .tcf extension) is prefixed to each check file. <prefix_list> can include a folder path that is normally set to the check folder. See the examples below for this subtle difference.

    Examples:

    Write Check Files ALL ! writes all check files with no prefix to the same location as the .tcf file.

    Write Check Files == C:\tuflow\check\2d ! writes all check files to the folder “C:\tuflow\check” and prefixes them with “2d”

    Write Check Files == C:\tuflow\check ! writes all check files to the folder “C:\tuflow\check” and prefixes with the .tcf filename

    Write Check Files == C:\tuflow\check ! writes all check files to the folder “C:\tuflow” and prefixes with “check”

    The NONE option is similar to the ALL option and requires no prefix list. No check files will be written and specification of the NO option will nullify any prior occurrence of an EXCLUDE or INCLUDE list.

    Examples:

    Write Check Files NONE ! will suppress the writing of all check files

    Specifying the Write Check Files command in the .tcf file will now automatically also write the 1D check files. There is no need to specify Write Check Files in the .ecf file unless a different folder path for the files is desired.

    This command can be used within an Output Zone definition block to change list of check files to exclude or include for the Output Zone. However, the output path of the check files cannot be specified for Output Zones.
    Write Empty GIS Files ==
     [ {}  |  \(\langle\) folder \(\rangle\)  |  \(\langle\) file_format \(\rangle\) ]
    Classic and HPC

    Creates empty (template) 1D and 2D GIS files in the format specified by the GIS Format command. If no GIS Format has been set, the empty files will be in MIF format by default. Each empty layer as described in Table 2.5 and Table 2.6 is produced with the required attribute definitions pre-defined, but containing no geographic objects. Provided the GPKG Projection, SHP Projection or MI Projection command has been previously specified, each layer has the correct GIS projection.

    The layers are prefixed using the prefixes defined in Table 2.5 and Table 2.6, and are given a suffix of “_empty”.

    If <folder> is specified, the GIS files are located in the folder. If the folder does not already exist, it will be created.

    It is possible to add a second argument after defining the folder, which can also be used to set the required format of the empty files, as shown in the second example below.

    Examples:

    Write Empty GIS Files == ..\model\gis\empty

    Write Empty GIS Files == ..\model\gis\empty | SHP

    After writing the files, TUFLOW stops executing.
    Write PO Online ==
     [ ON  |  {OFF} ]
    Classic and HPC If set to ON writes the 1D and 2D time-series data files as the simulation progresses (see Section 11.3). The _TS GIS file is only written if there is a 1D domain in the model. The files are closed off so that they can be opened in Excel or other software for viewing during a simulation, however, opening the files in some software (e.g. Excel) may cause TUFLOW to pause at the next output time until the files are closed. If set to OFF the files are not written until the simulation finishes.
    Write Restart File at Time ==
     \(\langle\) time_in_hours \(\rangle\) ]
    Classic and HPC

    Sets when to write the restart file (Section 8.9.3) in hours. The restart files are written to the results folder.

    The restart file is given the extension .trf. An .erf file is also written for the 1D components if there is 1D/2D dynamic linking. The .trf file is a binary file and not readable by a text editor. The .erf file is a text file and is readable by a text editor. The first line of the .erf file shows the time when the restart files were written. The time(s) when the restart files are written are displayed in the log file(s).

    If the time is before the simulation start, the start time is used. Only the last occurrence of this command is used.
    Write Restart File Interval ==
     [ {0}  |  \(\langle\) interval_in_hours \(\rangle\)  ]
    Classic and HPC

    Sets the interval in hours between writing the restart file (Section 8.9.3). The restart file is overwritten every <interval_in_hours> after the first restart file write. This is useful if a simulation is going unstable. A restart file is written prior to the instability, and is used to restart the simulation after modification of the topography to control the instability – thereby saving time in reaching the time of instability.

    If set to zero, the default, or is negative, the restart file is written only once at the write restart file time. Only the last occurrence of this command is used.

    The restart files are written in a result folder called “trf”.

    Refer also to the command Write Restart Filename.
    Write Restart File Version ==
     [ 2 ]
    Classic and HPC Uses a more detailed dump of the 2D domains that will result in a more precise restart (see Section 8.9.3).
    Write Restart Filename ==
     [ {INCLUDE TIME}  |  OVERWRITE ]
    Classic and HPC

    Command to control whether restart files (Section 8.9.3) are overwritten or are time-stamped.

    If INCLUDE TIME (the default) is specified, .trf and .erf filenames are time-stamped and written for each restart output time.

    OVERWRITE is the case for all prior versions of TUFLOW where the .trf and .erf files are overwritten each time restart files are written. If Defaults == PRE 2013 is set the default setting is OVERWRITE.

    To output restart files at regular intervals use the command Write Restart File Interval.
    Write X1D Check Files ==
     [ ON  |  {OFF} ]
    Classic and HPC

    If set to ON, writes out check_x1D_H_to_2D.csv and check_2D_Q_to_x1D.csv files that contain the water levels sent to the 2D and the flows sent by the 2D to/from an external 1D scheme such as Flood Modeller or XP-SWMM. See Section 10.5.1.

    Note that Write Check Files must be also be specified (and not set to NONE).
    XF Files ==
     [ {ON}  |  OFF ]
    Classic and HPC Sets the global default for whether or not to automatically generate XF files. See Section 4.6.
    XF Files Boundaries ==
     [ {ON}  |  OFF ]
    Classic and HPC XF files (Section 4.6) are used to speed up the reading of boundary data in both .csv and .ts1 file formats. This works for data referenced from the “BC Database” and “Pit Inlet Database”. As with other .xf files created by TUFLOW (for example using “Read Grid Zpts”), the save date of the .xf file is compared to the save date of the original data file (.csv or .ts1). If the original dataset has been modified since the .xf file was created the original dataset is re-read and the .xf file regenerated. XF files can be turned off globally with the .tcf command: XF Files, or just for the new boundary/pit database files using XF Files Boundaries == OFF.
    XF Files Include in Filename ==
     \(\langle\) text \(\rangle\) ]
    Classic and HPC Appends <text> to the end of XF filenames (see Section 4.6). This command prevents the reprocessing of the DEM each time a different model utilising the same DEM is run.
    XMDF Output Compression ==
     [ {ON}  |  OFF  |  \(\langle\) level \(\rangle\) ]
    Classic and HPC Sets the file compression level of XMDF map output files (Section 11.2.2.1). If set to ON, the default, compression level 1 is applied. A maximum compression level of 9 is allowed. The greater the compression the smaller the file sizes, but the slower the access speed when writing and reading the file. Testing has indicated that a compression level of 1 reduces file sizes by 70 to 80% with little change in access speeds.
    Zero Negative Depths ==
     [ {ON}  |  OFF ]
    Classic Only
    Legacy command. Default value recommended. Expand to find out more about the legacy settings.

    This is a legacy command provided for backward compatibility. Setting to ON zeroes depths at cell corners for map output if negative. The negative depth could arise in old builds of TUFLOW when interpolating the water level at the cell corners from the surrounding cell centres, due to the ZH Zpt being higher than the interpolated water level.

    Setting to OFF disables this command and should only be effective if the original cell interpolation method (Map Output Corner Interpolation == METHOD A) applies. Using the OFF option is not recommended.

    Zero Rainfall Check ==
     [ {ERROR}  |  WARNING ]
    Classic and HPC

    Introduced for the 2016-03 release to set the level for Message 2460 that reports whether the f1 and/or f2 attribute is set to zero for a 2d_rf layer (see Section 8.5.3.4). For the 2016-03 release the message is treated as an ERROR and the simulation will terminate, unless Defaults == PRE 2016 is set or this command is set to WARNING.

    Prior to the 2016-03 release this message was only issued as a WARNING. For further information see the Message 2460 Wiki Page.
    ZP Hazard Cutoff Depth ==
     [ {0.01}  |  \(\langle\) value \(\rangle\)  |  \(\langle\) value_ZPA \(\rangle\) \(\langle\) value \(\rangle\)_ZPC \(\langle\) value \(\rangle\)_ZPI ]
    Classic Only

    This command can be used when specifying the ZPA, ZPC, and ZPI hazard map outputs, based on the People Hazard categories within the Australian Rainfall and Runoff (ARR) Project 10 Stage One report (Cox et al., 2010). Refer to Table 11.5 for more information.

    If one value is specified, the cutoff depth to define when the Safe category applies is the same for ZPA, ZPC and ZPI. If three values are specified, these are the cutoff depths for ZPA, ZPC and ZPI respectively. The default is 0.01m (i.e. if the depth is below 0.01m (1cm), the hazard category is Safe for ZPA, ZPC and ZPI).
    Zpt Range Check ==
     [ {-9998, 99998}  |  \(\langle\) zmin \(\rangle\),\(\langle\) zmax \(\rangle\) ]
    Classic and HPC
    Legacy command. Expand to find out more about the legacy settings.

    Reports an ERROR 2444 (WARNING 2444 if Defaults == Pre 2012) if any final Zpt is less than zmin or greater than zmax. The defaults for zmin and zmax are -9998 and 99998 (-9998 is used for the minimum value as some 3D surface software use -9999 as the null value). Useful for checking there are no Zpts with inappropriate values. This check is only carried out once on the final Zpt values just before the simulation starts, and after writing the _zpt_check layer. In the unlikely event of an invalid or NaN Zpt occurring an ERROR 2445 (or WARNING 2445) is issued.

    SQLite On Open SQL [ {} | Read | Write ] ==
     \(\langle\) SQL Pragma Command \(\rangle\) | {} ]
    Classic and HPC

    Executes SQL command(s) when a GPKG database is initially opened. This command is intended to be used to change general SQLite database settings without the need for TUFLOW to provide custom commands for each setting. Typically these would be what SQLite calls ‘PRAGMA’ commands. Database settings can be changed outside of TUFLOW and by default TUFLOW won’t change these when reading from a GPKG, however some applications could be making changes without the user being aware (e.g. QGIS will change the journal mode depending on whether the user is viewing the data or making edits to it) so this command forces certain settings to be used when TUFLOW accesses the database.

    The addition of key words ‘Read’ or ‘Write’ can provide further context to the command to apply specifically when TUFLOW is reading or writing from a database. If neither ‘Read’ or ‘Write’ is provided, the command will be applied to both read and write contexts.

    Multiple SQL commands can be specified by separating the commands by a semicolon ‘;’. If this command is used multiple times, the last instance will be used and the command itself does not stack. The exception to this is separate commands can be used for ‘Read’ and ‘Write’ contexts.

    A typical example of using this command would to change the SQLite journal mode which can be helpful to stop database locks when multiple simulations are reading from the same database. This can happen when the journal mode is set to Write Ahead Log (WAL) and one simulation closes the database at the exact same instance another one is trying to open it. This occurs because the WAL method forces the creation of a new file (‘.WAL’) which is deleted when the database is closed (and no other processes are accessing the database). A temporary lock is placed on the database when the WAL is deleted and therefore stops any other process from opening it. In this example the user could force TUFLOW to change the journal mode to ‘delete’ which adopts a rollback journal and stops any database locks from being placed when simply reading from the database. The command to do this would be:

    SQLite On Open SQL Read == PRAGMA journal_mode = DELETE;
    GPKG Compression Predictor ==
     [ NONE | {Horizontal Differencing} ]
    Classic and HPC By default, TUFLOW will also use a compression predictor to improve the compression ratio, this can be turned off by setting this command to ‘NONE’. See Section 11.2.2.2.
    GPKG Compression ==
     [ NONE | {LZW} ]
    Classic and HPC The GPKG raster format supports LZW compression of the data. The data is compressed by default, however, can be turned off by setting this command to ‘NONE’. See Section 11.2.2.2.
    Read Hazard File ==
     \(\langle\)file_name\(\rangle\).csv ]
    Classic and HPC Reads in a hazard file with a defined hazard threshold. The csv file should contain three (3) columns defining the thresholds for depth, velocity, and depth \(\times\) velocity product respectively. See Section 11.2.3.1.
    Read GIS ISIS WLL ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only Reads the location of an external 1D scheme’s WLLs. See Section 11.2.4 for integrating 1D and 2D results. The GIS layer is identical to that used for Read GIS WLL.
    Read GIS XP WLL ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only Reads the location of an external 1D scheme’s WLLs. See Section 11.2.4 for integrating 1D and 2D results. The GIS layer is identical to that used for Read GIS WLL.
    Read GIS 12D WLL ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only Reads the location of an external 1D scheme’s WLLs. See Section 11.2.4 for integrating 1D and 2D results. The GIS layer is identical to that used for Read GIS WLL.
    Read GIS 12D WLL Points ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only Reads the location of an external 1D scheme’s WLL points for setting elevations and materials at points along WLLs. See Section 11.2.4 for integrating 1D and 2D results for more details. The GIS layer is identical to that used for Read GIS WLL Points.
    Read GIS ISIS WLL Points ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only Reads the location of an external 1D scheme’s WLL points for setting elevations and materials at points along WLLs. See Section 11.2.4 for integrating 1D and 2D results for more details. The GIS layer is identical to that used for Read GIS WLL Points.
    Read GIS XP WLL Points ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only Reads the location of an external 1D scheme’s WLL points for setting elevations and materials at points along WLLs. See Section 11.2.4 for integrating 1D and 2D results for more details. The GIS layer is identical to that used for Read GIS WLL Points.
    Read GIS ISIS Nodes ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only
    Legacy command. Expand to find out more about the legacy settings.

    This command is superseded by Read GIS X1D Network, but continues to be supported for legacy models. It is now redundant as the nodes can be placed in a Read GIS X1D Network layer (the Read GIS X1D Network layer can only contain the nodes, and no channels, if so desired).

    Read GIS XP Nodes ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only
    Legacy command. Expand to find out more about the legacy settings.

    This command is superseded by Read GIS X1D Network, but continues to be supported for legacy models. It is now redundant as the nodes can be placed in a Read GIS X1D Network layer (the Read GIS X1D Network layer can only contain the nodes, and no channels, if so desired).

    Read GIS 12D Nodes ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only
    Legacy command. Expand to find out more about the legacy settings.

    This command is superseded by Read GIS X1D Network, but continues to be supported for legacy models. It is now redundant as the nodes can be placed in a Read GIS X1D Network layer (the Read GIS X1D Network layer can only contain the nodes, and no channels, if so desired).

    Read GIS ISIS Network ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only

    Reads the location of external 1D scheme nodes and channels. Supported 1D schemes are Flood Modeller (formerly known as ISIS), XP-SWMM or 12D Solution’s DDA. 1D Nodes and Channels are referred to as Nodes and Units in Flood Modeller; Nodes and Links in XP-SWMM; and Pits and Pipes in 12D). The nodes in the GIS layer(s) are required for linking the external 1D scheme to TUFLOW. The channels are required only if using Read GIS X1D WLL to integrate 1D and 2D results in the map output. The only attribute required is the ID of the Flood Modeller node/unit, XP-SWMM node/link and 12D pit/pipe. See Section 10.5.1 for details on linking an external 1D scheme to TUFLOW, and Section 11.2.4 for integrating 1D and 2D results.

    For linking with TUFLOW, the linked nodes must occur in this layer or in a Read GIS X1D Nodes layer. The nodes and channels (links) can be placed in separate layers, and split over several layers if desired. If desired, and the WLL feature is not being used, the layer can solely contain linked nodes and no channels.
    Read GIS XP Network ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only

    Reads the location of external 1D scheme nodes and channels. Supported 1D schemes are Flood Modeller (formerly known as ISIS), XP-SWMM or 12D Solution’s DDA. 1D Nodes and Channels are referred to as Nodes and Units in Flood Modeller; Nodes and Links in XP-SWMM; and Pits and Pipes in 12D). The nodes in the GIS layer(s) are required for linking the external 1D scheme to TUFLOW. The channels are required only if using Read GIS X1D WLL to integrate 1D and 2D results in the map output. The only attribute required is the ID of the Flood Modeller node/unit, XP-SWMM node/link and 12D pit/pipe. See Section 10.5.1 for details on linking an external 1D scheme to TUFLOW, and Section 11.2.4 for integrating 1D and 2D results.

    For linking with TUFLOW, the linked nodes must occur in this layer or in a Read GIS X1D Nodes layer. The nodes and channels (links) can be placed in separate layers, and split over several layers if desired. If desired, and the WLL feature is not being used, the layer can solely contain linked nodes and no channels.
    Read GIS 12D Network ==
     \(\langle\) gis_layer \(\rangle\) ]
    Classic Only

    Reads the location of external 1D scheme nodes and channels. Supported 1D schemes are Flood Modeller (formerly known as ISIS), XP-SWMM or 12D Solution’s DDA. 1D Nodes and Channels are referred to as Nodes and Units in Flood Modeller; Nodes and Links in XP-SWMM; and Pits and Pipes in 12D). The nodes in the GIS layer(s) are required for linking the external 1D scheme to TUFLOW. The channels are required only if using Read GIS X1D WLL to integrate 1D and 2D results in the map output. The only attribute required is the ID of the Flood Modeller node/unit, XP-SWMM node/link and 12D pit/pipe. See Section 10.5.1 for details on linking an external 1D scheme to TUFLOW, and Section 11.2.4 for integrating 1D and 2D results.

    For linking with TUFLOW, the linked nodes must occur in this layer or in a Read GIS X1D Nodes layer. The nodes and channels (links) can be placed in separate layers, and split over several layers if desired. If desired, and the WLL feature is not being used, the layer can solely contain linked nodes and no channels.

    References

    Cox, R., Shard, T., & Blacka, M. (2010). Australian Rainfall and Runoff Revision Project 10: Appropriate Safety Criteria for People. Austalian Institute of Engineers. https://arr.ga.gov.au/__data/assets/pdf_file/0006/40578/ARR_Project_10_Stage1_report_Final.pdf
    DEFRA. (2006a). DEFRA r&d Outputs: Flood Risks to People Phase Two Draft FD2321/TR1 and TR2. DEFRA. https://assets.publishing.service.gov.uk/media/602bbc3de90e07055f646148/Flood_risks_to_people_-_Phase_2_Guidance_Document_Technical_report.pdf
    DEFRA. (2006b). Flood Risks to People Phase 2 FD2321/TR1 the Flood Risks to People Methodology. DEFRA. https://assets.publishing.service.gov.uk/media/602bbc768fa8f50383c41f80/Flood_risks_to_people_-_Phase_2_The_flood_risks_to_people_methodology_technical_report.pdf
    Stelling, G. (1984). On the Construction of Computational Methods for Shallow Water Flow Problems. Rijkswaterstaat Communications.
    Syme, W. (1991). Dynamically Linked Two Dimensional / One-Dimensional Hydrodynamic Modelling Program for Rivers, Estuaries and Coastal Waters (W. Syme, Ed.) [M.Eng.Sc(100% Research) Thesis]. Dept of Civil Engineering. https://tuflow.com/media/4982/1991-tuflow-dynamically-linked-2d-and-1d-hydrodynamic-modelling-syme-thesis.pdf
    Syme, W. (2001b). TUFLOW – Two & One-Dimensional Unsteady FLOW Software for Rivers, Estuaries and Coastal Waters. The Institution of Engineers, Australia 2D Seminar. https://tuflow.com/media/4985/2001-tuflow-two-and-one-dimensional-unsteady-flow-software-for-rivers-estuaries-and-coastal-waters-syme.pdf