<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.tuflow.com/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Pavlina+Monhartova</id>
	<title>Tuflow - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.tuflow.com/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Pavlina+Monhartova"/>
	<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/Special:Contributions/Pavlina_Monhartova"/>
	<updated>2026-05-25T06:54:03Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_Version_Backward_Compatibility&amp;diff=45751</id>
		<title>TUFLOW Version Backward Compatibility</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_Version_Backward_Compatibility&amp;diff=45751"/>
		<updated>2026-03-31T02:23:35Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* How can differences in model results between TUFLOW builds be investigated? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=Backward Compatibility Change Register=&lt;br /&gt;
&lt;br /&gt;
For backward compatibility and release notes, please see Chapter 18 of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest TUFLOW Manual] &amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Frequently Asked Questions (FAQ)=&lt;br /&gt;
== Why are model results developed in an older release different to a newer release? ==&lt;br /&gt;
If comparing a Classic model with HPC, also check the &amp;lt;u&amp;gt;[[HPC_FAQ#Will_TUFLOW_HPC_and_TUFLOW_Classic_results_match.3F | Will TUFLOW HPC and TUFLOW Classic results match?]]&amp;lt;/u&amp;gt; page in addition to this answer. &amp;lt;br&amp;gt;&lt;br /&gt;
In addition to the above, there are reasons why model results would be different between different TUFLOW releases, whether it is the Classic or HPC solver, as follows:&lt;br /&gt;
* General improvements and fine-tuning of the solution scheme, especially for the more complex hydraulic physical terms and situations such as: sub-grid turbulence representation; treatment of shocks (e.g. hydraulic jumps); and transitioning between sub-critical and super-critical flow on steep slopes.&lt;br /&gt;
* Some new functionality can cause a significant change in results.  For example:&lt;br /&gt;
** Sub-Grid Sampling (SGS) applied to an existing model that used a too coarse cell resolution in high flow areas of highly variable topography (relative to the 2D cell size).  SGS will greatly improve the model&#039;s ability to convey water accurately in these situations with vastly improved results.&lt;br /&gt;
** New default sub-grid turbulence scheme in the 2020 release of TUFLOW HPC that is cell size independent and allows modellers to use cell sizes much smaller than the flow depth across all scales from flume to large rivers. For more information on differences between Smagorinsky scheme (HPC releases up to 2020) and the Wu turbulence scheme (2020 onwards) see &amp;lt;u&amp;gt;[[HPC_FAQ#With_Wu_turbulence_scheme_being_the_new_default.2C_are_old_models_using_Smagorinsky_wrong.3F | here]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
* Changes to the default settings and values, e.g.:&lt;br /&gt;
**different default eddy viscosity formulation and/or coefficients,&lt;br /&gt;
**improved data pre-processing approaches such as sampling materials on cell mid-sides instead of cell centres,&lt;br /&gt;
** and many others.&lt;br /&gt;
** For backward compatibility the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is available to run old models on new releases to replicate past results (note, sometimes full backward compatibility cannot be catered for due to different code compiler and updates that can&#039;t be reverted, especially for several releases earlier).&lt;br /&gt;
* New features that use GIS attributes previously reserved (i.e. unused). If these attributes were not populated with the recommended “reserved” value (usually 0 or blank), then they can cause unpredictable results in later releases.&lt;br /&gt;
* Bug fixes noting that most bug fixes are input/output related and rarely affect the model&#039;s hydraulic calculations.&lt;br /&gt;
* Change in timestepping can also produce a small change in results. HPC uses the Runge-Kutta 4th order integrator, which is usually fairly insensitive to time step provided the model is running stably. However when a region is filled by flow that only just overtops an embankment, a 10 mm difference in water levels upstream of the embankment can create a much larger difference in levels downstream.  Hence, small differences in time-stepping (along with many other aspects of model setup) can trigger local differences in model results.&lt;br /&gt;
* Model orientation (if changed) could also mean slight change in results. This is mostly given by interpolating values from different calculation points. Every cell has nine calculation points. Based on the model origin, all or most of the calculation points would have different topography elevation sampled, which translates to slightly different results.&lt;br /&gt;
* If using 1D channel, possibly different cells have been selected as HX boundary and might have different elevations. This can be reviewed in &amp;lt;u&amp;gt;[[Check_Files_1d_to_2d_bc | 1d_to_2d check file]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Generally, there should not be substantial differences as the fundamental equations being solved are unchanged and TUFLOW Classic and HPC solvers have always solved all the physical terms using a 2nd order spatial approach. The one exception is the turbulence (eddy viscosity) representation, which is the most complex and challenging to solve of all the physical terms (many 2D schemes simply omit this term). If significant differences (&amp;gt;10% of depth change across the whole model) are observed then it’s most likely due to the first four dot points above. To identify in which release(s) the significant changes occurred, the model can be run with the latest build and for past releases. The changes for each release are documented in their release notes. Past releases and release notes are all available [https://www.tuflow.com/downloads/tuflow-classichpc-archive/. here]. Once the exact release where the changes occurred is tracked down, individual features can be turned off to narrow down the cause.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The recommendation is usually for new or reworked models to use the newest build to take advantage of the latest features and enhancements, some level of calibration might be required for reworked models. The new TUFLOW executable is not different from the previous ones in the meaning that any existing model should be re-calibrated if there are available calibration data. However, particularly if a model is already calibrated, using prior builds of TUFLOW or winding back default settings using &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is considered reasonable for established models that are to be used for minor tasks where an update of the model would not be cost effective.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How can differences in model results between TUFLOW builds be investigated? ==&lt;br /&gt;
Running TUFLOW on a later build from which it was originally calibrated will not necessarily produce the same results, as discussed in &amp;lt;u&amp;gt;[[TUFLOW_Version_Backward_Compatibility#Why_are_model_results_developed_in_an_older_release_different_to_a_newer_release.3F | Why are model results developed in an older release different to a newer release?]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The following is an example of steps that can be taken when upgrading a TUFLOW model’s executable build, checking for consistency to original results each time. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Confirm you are able to run the original model with the original build that would have been used to initially produce results.&lt;br /&gt;
* This may be particularly relevant when a model has been externally supplied, for example from a government body. &lt;br /&gt;
* Confirm if reproduced results are consistent with supplied results.&lt;br /&gt;
&amp;lt;li&amp;gt; Run the original model with the newer build, along with a relevant &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command (e.g. &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; Pre 2011 when the original build was 2010-10).&lt;br /&gt;
* Any differences in results compared to the original results may highlight if there are any changes over time where no backward compatibility had been provided for. &lt;br /&gt;
&amp;lt;li&amp;gt; Run the original model with the newer build, and without the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command.&lt;br /&gt;
* This is more likely to see changes in results compared to the original results, which may require justification to the client or resolution by investigating, isolating and remedying the causes, especially if recalibration is not intended as a subsequent step.&lt;br /&gt;
&amp;lt;li&amp;gt; Iteratively run the original model with the newer build, stepping through the different release version options for &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command.&lt;br /&gt;
* This will allow the modeller to investigate and isolate what changes to TUFLOW builds may be affecting results, and when changes appear.&lt;br /&gt;
* Then, individually reverting settings that make up a Default group (see Chapter 18 of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;).&lt;br /&gt;
* This can help isolate the primary drivers for any differences in results.&lt;br /&gt;
* The &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/changelog// TUFLOW Classic/HPC Changelog]&amp;lt;/u&amp;gt; accompanying build releases are also a key reference. &lt;br /&gt;
&amp;lt;li&amp;gt; Develop new improved or updated model version, with the newer build (and any grouped or individual defaults that are deemed necessary to retain from the iterative testing in the prior step).&lt;br /&gt;
*Continue to verify results against the original results as you then iteratively add in or update to any newer functionality or formats that may be available in the later build, a good quality assurance check that changes are behaving as expected.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_Modelling_Guidance | Back to TUFLOW Modelling Guidance]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_Version_Backward_Compatibility&amp;diff=45749</id>
		<title>TUFLOW Version Backward Compatibility</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_Version_Backward_Compatibility&amp;diff=45749"/>
		<updated>2026-03-31T02:19:23Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* How can differences in model results between TUFLOW builds be investigated? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=Backward Compatibility Change Register=&lt;br /&gt;
&lt;br /&gt;
For backward compatibility and release notes, please see Section 18 of the &amp;lt;u&amp;gt; TUFLOW Manual [https://docs.tuflow.com/classic-hpc/manual/2026.0/contents.html] &amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Frequently Asked Questions (FAQ)=&lt;br /&gt;
== Why are model results developed in an older release different to a newer release? ==&lt;br /&gt;
If comparing a Classic model with HPC, also check the &amp;lt;u&amp;gt;[[HPC_FAQ#Will_TUFLOW_HPC_and_TUFLOW_Classic_results_match.3F | Will TUFLOW HPC and TUFLOW Classic results match?]]&amp;lt;/u&amp;gt; page in addition to this answer. &amp;lt;br&amp;gt;&lt;br /&gt;
In addition to the above, there are reasons why model results would be different between different TUFLOW releases, whether it is the Classic or HPC solver, as follows:&lt;br /&gt;
* General improvements and fine-tuning of the solution scheme, especially for the more complex hydraulic physical terms and situations such as: sub-grid turbulence representation; treatment of shocks (e.g. hydraulic jumps); and transitioning between sub-critical and super-critical flow on steep slopes.&lt;br /&gt;
* Some new functionality can cause a significant change in results.  For example:&lt;br /&gt;
** Sub-Grid Sampling (SGS) applied to an existing model that used a too coarse cell resolution in high flow areas of highly variable topography (relative to the 2D cell size).  SGS will greatly improve the model&#039;s ability to convey water accurately in these situations with vastly improved results.&lt;br /&gt;
** New default sub-grid turbulence scheme in the 2020 release of TUFLOW HPC that is cell size independent and allows modellers to use cell sizes much smaller than the flow depth across all scales from flume to large rivers. For more information on differences between Smagorinsky scheme (HPC releases up to 2020) and the Wu turbulence scheme (2020 onwards) see &amp;lt;u&amp;gt;[[HPC_FAQ#With_Wu_turbulence_scheme_being_the_new_default.2C_are_old_models_using_Smagorinsky_wrong.3F | here]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
* Changes to the default settings and values, e.g.:&lt;br /&gt;
**different default eddy viscosity formulation and/or coefficients,&lt;br /&gt;
**improved data pre-processing approaches such as sampling materials on cell mid-sides instead of cell centres,&lt;br /&gt;
** and many others.&lt;br /&gt;
** For backward compatibility the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is available to run old models on new releases to replicate past results (note, sometimes full backward compatibility cannot be catered for due to different code compiler and updates that can&#039;t be reverted, especially for several releases earlier).&lt;br /&gt;
* New features that use GIS attributes previously reserved (i.e. unused). If these attributes were not populated with the recommended “reserved” value (usually 0 or blank), then they can cause unpredictable results in later releases.&lt;br /&gt;
* Bug fixes noting that most bug fixes are input/output related and rarely affect the model&#039;s hydraulic calculations.&lt;br /&gt;
* Change in timestepping can also produce a small change in results. HPC uses the Runge-Kutta 4th order integrator, which is usually fairly insensitive to time step provided the model is running stably. However when a region is filled by flow that only just overtops an embankment, a 10 mm difference in water levels upstream of the embankment can create a much larger difference in levels downstream.  Hence, small differences in time-stepping (along with many other aspects of model setup) can trigger local differences in model results.&lt;br /&gt;
* Model orientation (if changed) could also mean slight change in results. This is mostly given by interpolating values from different calculation points. Every cell has nine calculation points. Based on the model origin, all or most of the calculation points would have different topography elevation sampled, which translates to slightly different results.&lt;br /&gt;
* If using 1D channel, possibly different cells have been selected as HX boundary and might have different elevations. This can be reviewed in &amp;lt;u&amp;gt;[[Check_Files_1d_to_2d_bc | 1d_to_2d check file]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Generally, there should not be substantial differences as the fundamental equations being solved are unchanged and TUFLOW Classic and HPC solvers have always solved all the physical terms using a 2nd order spatial approach. The one exception is the turbulence (eddy viscosity) representation, which is the most complex and challenging to solve of all the physical terms (many 2D schemes simply omit this term). If significant differences (&amp;gt;10% of depth change across the whole model) are observed then it’s most likely due to the first four dot points above. To identify in which release(s) the significant changes occurred, the model can be run with the latest build and for past releases. The changes for each release are documented in their release notes. Past releases and release notes are all available [https://www.tuflow.com/downloads/tuflow-classichpc-archive/. here]. Once the exact release where the changes occurred is tracked down, individual features can be turned off to narrow down the cause.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The recommendation is usually for new or reworked models to use the newest build to take advantage of the latest features and enhancements, some level of calibration might be required for reworked models. The new TUFLOW executable is not different from the previous ones in the meaning that any existing model should be re-calibrated if there are available calibration data. However, particularly if a model is already calibrated, using prior builds of TUFLOW or winding back default settings using &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is considered reasonable for established models that are to be used for minor tasks where an update of the model would not be cost effective.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How can differences in model results between TUFLOW builds be investigated? ==&lt;br /&gt;
Running TUFLOW on a later build from which it was originally calibrated will not necessarily produce the same results, as discussed in &amp;lt;u&amp;gt;[[TUFLOW_Version_Backward_Compatibility#Why_are_model_results_developed_in_an_older_release_different_to_a_newer_release.3F | Why are model results developed in an older release different to a newer release?]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The following is an example of steps that can be taken when upgrading a TUFLOW model’s executable build, checking for consistency to original results each time. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Confirm you are able to run the original model with the original build that would have been used to initially produce results.&lt;br /&gt;
* This may be particularly relevant when a model has been externally supplied, for example from a government body. &lt;br /&gt;
* Confirm if reproduced results are consistent with supplied results.&lt;br /&gt;
&amp;lt;li&amp;gt; Run the original model with the newer build, along with a relevant &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command (e.g. &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; Pre 2011 when the original build was 2010-10).&lt;br /&gt;
* Any differences in results compared to the original results may highlight if there are any changes over time where no backward compatibility had been provided for. &lt;br /&gt;
&amp;lt;li&amp;gt; Run the original model with the newer build, and without the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command.&lt;br /&gt;
* This more likely to see changes in results compared to the original results, which may require justification to the client or resolution by investigating, isolating and remedying the causes, especially if recalibration is not intended as a subsequent step.&lt;br /&gt;
&amp;lt;li&amp;gt; Iteratively run the original model with the newer build, stepping through the different release version options for &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command.&lt;br /&gt;
* This will allow the modeller to investigate and isolate what changes to TUFLOW builds may be affecting results, and when changes appear.&lt;br /&gt;
* Then, individually reverting settings that make up a Default group (see Chapter 18 of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;).&lt;br /&gt;
* This can help isolate the primary drivers for any differences in results.&lt;br /&gt;
* The &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/changelog// TUFLOW Classic/HPC Changelog]&amp;lt;/u&amp;gt; that accompanying build releases are also a key reference. &lt;br /&gt;
&amp;lt;li&amp;gt; Develop new improved or updated model version, with the newer build (and any grouped or individual defaults that are deemed necessary to retain from the iterative testing in the prior step).&lt;br /&gt;
*Continue to verify results against the original results as you then iteratively add in or update to any newer functionality or formats that may be available in the later build, a good quality assurance check that changes are behaving as expected.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_Modelling_Guidance | Back to TUFLOW Modelling Guidance]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_Version_Backward_Compatibility&amp;diff=45748</id>
		<title>TUFLOW Version Backward Compatibility</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_Version_Backward_Compatibility&amp;diff=45748"/>
		<updated>2026-03-31T02:18:45Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* How can differences in model results between TUFLOW builds be investigated? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=Backward Compatibility Change Register=&lt;br /&gt;
&lt;br /&gt;
For backward compatibility and release notes, please see Section 18 of the &amp;lt;u&amp;gt; TUFLOW Manual [https://docs.tuflow.com/classic-hpc/manual/2026.0/contents.html] &amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Frequently Asked Questions (FAQ)=&lt;br /&gt;
== Why are model results developed in an older release different to a newer release? ==&lt;br /&gt;
If comparing a Classic model with HPC, also check the &amp;lt;u&amp;gt;[[HPC_FAQ#Will_TUFLOW_HPC_and_TUFLOW_Classic_results_match.3F | Will TUFLOW HPC and TUFLOW Classic results match?]]&amp;lt;/u&amp;gt; page in addition to this answer. &amp;lt;br&amp;gt;&lt;br /&gt;
In addition to the above, there are reasons why model results would be different between different TUFLOW releases, whether it is the Classic or HPC solver, as follows:&lt;br /&gt;
* General improvements and fine-tuning of the solution scheme, especially for the more complex hydraulic physical terms and situations such as: sub-grid turbulence representation; treatment of shocks (e.g. hydraulic jumps); and transitioning between sub-critical and super-critical flow on steep slopes.&lt;br /&gt;
* Some new functionality can cause a significant change in results.  For example:&lt;br /&gt;
** Sub-Grid Sampling (SGS) applied to an existing model that used a too coarse cell resolution in high flow areas of highly variable topography (relative to the 2D cell size).  SGS will greatly improve the model&#039;s ability to convey water accurately in these situations with vastly improved results.&lt;br /&gt;
** New default sub-grid turbulence scheme in the 2020 release of TUFLOW HPC that is cell size independent and allows modellers to use cell sizes much smaller than the flow depth across all scales from flume to large rivers. For more information on differences between Smagorinsky scheme (HPC releases up to 2020) and the Wu turbulence scheme (2020 onwards) see &amp;lt;u&amp;gt;[[HPC_FAQ#With_Wu_turbulence_scheme_being_the_new_default.2C_are_old_models_using_Smagorinsky_wrong.3F | here]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
* Changes to the default settings and values, e.g.:&lt;br /&gt;
**different default eddy viscosity formulation and/or coefficients,&lt;br /&gt;
**improved data pre-processing approaches such as sampling materials on cell mid-sides instead of cell centres,&lt;br /&gt;
** and many others.&lt;br /&gt;
** For backward compatibility the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is available to run old models on new releases to replicate past results (note, sometimes full backward compatibility cannot be catered for due to different code compiler and updates that can&#039;t be reverted, especially for several releases earlier).&lt;br /&gt;
* New features that use GIS attributes previously reserved (i.e. unused). If these attributes were not populated with the recommended “reserved” value (usually 0 or blank), then they can cause unpredictable results in later releases.&lt;br /&gt;
* Bug fixes noting that most bug fixes are input/output related and rarely affect the model&#039;s hydraulic calculations.&lt;br /&gt;
* Change in timestepping can also produce a small change in results. HPC uses the Runge-Kutta 4th order integrator, which is usually fairly insensitive to time step provided the model is running stably. However when a region is filled by flow that only just overtops an embankment, a 10 mm difference in water levels upstream of the embankment can create a much larger difference in levels downstream.  Hence, small differences in time-stepping (along with many other aspects of model setup) can trigger local differences in model results.&lt;br /&gt;
* Model orientation (if changed) could also mean slight change in results. This is mostly given by interpolating values from different calculation points. Every cell has nine calculation points. Based on the model origin, all or most of the calculation points would have different topography elevation sampled, which translates to slightly different results.&lt;br /&gt;
* If using 1D channel, possibly different cells have been selected as HX boundary and might have different elevations. This can be reviewed in &amp;lt;u&amp;gt;[[Check_Files_1d_to_2d_bc | 1d_to_2d check file]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Generally, there should not be substantial differences as the fundamental equations being solved are unchanged and TUFLOW Classic and HPC solvers have always solved all the physical terms using a 2nd order spatial approach. The one exception is the turbulence (eddy viscosity) representation, which is the most complex and challenging to solve of all the physical terms (many 2D schemes simply omit this term). If significant differences (&amp;gt;10% of depth change across the whole model) are observed then it’s most likely due to the first four dot points above. To identify in which release(s) the significant changes occurred, the model can be run with the latest build and for past releases. The changes for each release are documented in their release notes. Past releases and release notes are all available [https://www.tuflow.com/downloads/tuflow-classichpc-archive/. here]. Once the exact release where the changes occurred is tracked down, individual features can be turned off to narrow down the cause.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The recommendation is usually for new or reworked models to use the newest build to take advantage of the latest features and enhancements, some level of calibration might be required for reworked models. The new TUFLOW executable is not different from the previous ones in the meaning that any existing model should be re-calibrated if there are available calibration data. However, particularly if a model is already calibrated, using prior builds of TUFLOW or winding back default settings using &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is considered reasonable for established models that are to be used for minor tasks where an update of the model would not be cost effective.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How can differences in model results between TUFLOW builds be investigated? ==&lt;br /&gt;
Running TUFLOW on a later build from which it was originally calibrated will not necessarily produce the same results, as discussed in &amp;lt;u&amp;gt;[[TUFLOW_Version_Backward_Compatibility#Why_are_model_results_developed_in_an_older_release_different_to_a_newer_release.3F | Why are model results developed in an older release different to a newer release?]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The following is an example of steps that can be taken when upgrading a TUFLOW model’s executable Build, checking for consistency to original results each time. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Confirm you are able to run the original model with the original Build that would have been used to initially produce results.&lt;br /&gt;
* This may be particularly relevant when a model has been externally supplied, for example from a government body. &lt;br /&gt;
* Confirm if reproduced results are consistent with supplied results.&lt;br /&gt;
&amp;lt;li&amp;gt; Run the original model with the newer Build, along with a relevant &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command (e.g. &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; Pre 2011 when the original Build was 2010-10).&lt;br /&gt;
* Any differences in results compared to the original results may highlight if there are any changes over time where no backward compatibility had been provided for. &lt;br /&gt;
&amp;lt;li&amp;gt; Run the original model with the newer Build, and without the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command.&lt;br /&gt;
* This more likely to see changes in results compared to the original results, which may require justification to the client or resolution by investigating, isolating and remedying the causes, especially if recalibration is not intended as a subsequent step.&lt;br /&gt;
&amp;lt;li&amp;gt; Iteratively run the original model with the newer Build, stepping through the different release version options for &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command.&lt;br /&gt;
* This will allow the modeller to investigate and isolate what changes to TUFLOW Builds may be affecting results, and when changes appear.&lt;br /&gt;
* Then, individually reverting settings that make up a Default group (see Chapter 18 of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;).&lt;br /&gt;
* This can help isolate the primary drivers for any differences in results.&lt;br /&gt;
* The &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/changelog// TUFLOW Classic/HPC Changelog]&amp;lt;/u&amp;gt; that accompanying Build releases are also a key reference. &lt;br /&gt;
&amp;lt;li&amp;gt; Develop new improved or updated model version, with the newer Build (and any grouped or individual defaults that are deemed necessary to retain from the iterative testing in the prior step).&lt;br /&gt;
*Continue to verify results against the original results as you then iteratively add in or update to any newer functionality or formats that may be available in the later Build, a good quality assurance check that changes are behaving as expected.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_Modelling_Guidance | Back to TUFLOW Modelling Guidance]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_Version_Backward_Compatibility&amp;diff=45664</id>
		<title>TUFLOW Version Backward Compatibility</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_Version_Backward_Compatibility&amp;diff=45664"/>
		<updated>2026-03-27T02:33:12Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* How can differences in model results between TUFLOW Builds be investigated? */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=Backward Compatibility Change Register=&lt;br /&gt;
&lt;br /&gt;
==Default changes post 2017-09 Build==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;For changes in defaults post the 2017-09 build, see Chapter 18 of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;.&#039;&#039;&#039;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Default changes pre 2017-09 Build==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|&#039;&#039;&#039;2017-09-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=6|2017-09-AA&lt;br /&gt;
| New SX boundaries defaults.&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2017&amp;lt;/tt&amp;gt; if similar results are required to the 2016-03-AE release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| XF files are now being processed for boundaries.&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2017&amp;lt;/tt&amp;gt; or use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;XF Files Boundaries&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;OFF&amp;lt;/tt&amp;gt;  if similar results are required to the 2016-03-AE release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Regions in 2d_bc layers now applied as regions (previously only cell over region centroid selected). &lt;br /&gt;
|No backward compatible workaround provided.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Material IL and CL now applied to gridded rainfall (previously not applied).&lt;br /&gt;
|No backward compatible workaround provided.&lt;br /&gt;
|-&lt;br /&gt;
|SA regions now always select a 2D cell even if there are no cell centres falling within the region (previously a SA region would not select any cell if no cell centres fell within the region).&lt;br /&gt;
|No backward compatible workaround provided.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|If using “&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Reveal 1D Nodes&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ON&amp;lt;/tt&amp;gt;”, “&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Time Series Output Interval&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ” must be specified.&lt;br /&gt;
|No backward compatible workaround provided.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|&#039;&#039;&#039;2016-03-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=7|2016-03-AA&lt;br /&gt;
| New operational 1D structure defaults.    &lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Primary upstream and downstream 1D channels now correctly take into account bed slope. &lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| A new layered 2D FC calculation method has been implemented. &lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Layered FLC Default Approach  &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;CUMULATE&amp;lt;/tt&amp;gt; or use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| The &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;SX Flow Distribution Cutoff Depth&amp;lt;/font&amp;gt; has been raised to 0.005m from 0.0m. &lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt; or use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SX Flow Distribution Cutoff Depth &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;0.0&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|The &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;End After Maximum&amp;lt;/font&amp;gt; tolerance has been increased to 0.001m from 0.0m. &lt;br /&gt;
|Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|A new ERROR message has been added to cross-check the 1D timestep is a multiple of the timestep for all 2D domains.&lt;br /&gt;
|Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|WARNING 2460 has been escalated to an ERROR and stricter command line syntax rules have been introduced (&amp;quot;=&amp;quot; will now return an ERROR message if TUFLOW is expecting &amp;quot;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;quot;)&lt;br /&gt;
|Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=1|2016-03-AD &lt;br /&gt;
| The treatment of the eddy viscosity term in the GPU Solver has been enhanced with slightly improved results in areas of rapidly changing velocity patterns.  &lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;GPU Viscosity Method &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;Method A&amp;lt;/tt&amp;gt; or use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt; to achieve the same results as Build 2013-12-AC and prior.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|&#039;&#039;&#039;2013-12-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=1|2013-12-AA&lt;br /&gt;
| New default settings – see &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; PRE 2013-12&amp;lt;/tt&amp;gt; in the user manual for a list of the commands that have changed in their default setting.	&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2013-12&amp;lt;/tt&amp;gt; if similar results are required to the 2012-05 release.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=1|2013-12-AC &lt;br /&gt;
| The default setting for  &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Link 2D2D Approach&amp;lt;/font&amp;gt; has changed.	&lt;br /&gt;
| Set  &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Link 2D2D Approach &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;METHOD B&amp;lt;/tt&amp;gt; to achieve the same results as Builds 2013-12-AA and 2013-12-AB.  See Link 2D2D Approach for more information.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| &#039;&#039;&#039;2011-09-XX and 2012-05-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=2| 2012-05-AA&lt;br /&gt;
| New default settings – see &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2012-05&amp;lt;/tt&amp;gt;  for a list of the commands that have changed in their default setting.	&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2012-05&amp;lt;/tt&amp;gt; if similar results are required to the 2011-09 or 2010-10 releases. &lt;br /&gt;
|-  &lt;br /&gt;
| The approach to the sizing of automatic manholes and the application of losses has been enhanced.	&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Manhole Approach &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;Method A&amp;lt;/tt&amp;gt; to achieve the same results as Build 2011-09-AA.&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=1| 2011-09-AA&lt;br /&gt;
| The optimised compiler code is treated differently for Single Precision builds producing slightly different results (fractions of a mm) for some models.	&lt;br /&gt;
| No workaround.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| &#039;&#039;&#039;2010-10-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
	&lt;br /&gt;
| rowspan=4| 2010-10-AA	&lt;br /&gt;
| New Intel Fortran Compiler version produces slightly different results (usually fractions of a mm).	&lt;br /&gt;
| No workaround.&lt;br /&gt;
|-&lt;br /&gt;
| w32 and w64 versions will give slightly different results for the same simulation.	&lt;br /&gt;
| No workaround.  Use the same platform (w32 or w64) for all simulations.  Use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Model Platform&amp;lt;/font&amp;gt; to force which platform should be used.&lt;br /&gt;
|-&lt;br /&gt;
| New default settings – see &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; PRE 2010-10&amp;lt;/tt&amp;gt; for a list of the commands that have changed in their default setting.	&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2010-10&amp;lt;/tt&amp;gt; if similar results are required to the 2008-08 or 2009 07 releases.&lt;br /&gt;
|-&lt;br /&gt;
| Generation of TINs for polygons in Read GIS Shape layers is more robust and uses an improved approach.  In rare cases, the TIN would fail and TUFLOW would abort the start-up.	&lt;br /&gt;
| No workaround.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| &#039;&#039;&#039;2008-08-XX and 2009-07-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=1| 2008-08-AC	&lt;br /&gt;
| The default setting for &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;u&amp;gt;Shallow Depth Stability Factor&amp;lt;/u&amp;gt;&amp;lt;/font&amp;gt; has changed.&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Shallow Depth Stability Factor &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 3&amp;lt;/tt&amp;gt; for models without direct rainfall to achieve the same results as Builds 2008-08-AA and 2008-08-AB.  See &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Shallow Depth Stability Factor&amp;lt;/font&amp;gt; for more information.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=8| 2008-08-AA	&lt;br /&gt;
|- &lt;br /&gt;
| Uses a new set of defaults for a number of commands (see &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Defaults&amp;lt;/font&amp;gt; ). &lt;br /&gt;
| The new defaults produce slightly different results, and very slight differences also occur between the three versions offered. For established models run using the 2007-07-XX builds, use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2008-08&amp;lt;/tt&amp;gt; to use the default settings used by the 2007-07-XX builds.  Testing of a range of models has shown zero change in results if &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; PRE 2008-08&amp;lt;/tt&amp;gt; switch is set, and the Compaq Fortran compiled version (cSP) is used. Each of the new default settings and their effects are discussed in the rows below. &lt;br /&gt;
|-&lt;br /&gt;
| The method for interpolating n values where the 2D Manning’s n varies with depth has been enhanced from a linear interpolation of the M (1/n) value to a spline interpolation of the n value.  See &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;u&amp;gt;Bed Resistance Depth Interpolation&amp;lt;/u&amp;gt;&amp;lt;/font&amp;gt;. &lt;br /&gt;
| Generally has little effect other than when the flow is predominantly in the depth range that the n value is varying.  The new approach offers a smoother transition in n values from one depth to the other.&lt;br /&gt;
|- &lt;br /&gt;
| The default viscosity coefficient is now a combination of a 0.2 Smagorinsky and 0.1 constant coefficient, and there are some enhancements to the application of the viscosity term.  See &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;u&amp;gt;Viscosity Coefficient&amp;lt;/u&amp;gt;&amp;lt;/font&amp;gt;.&lt;br /&gt;
| This has slight effect for the majority of models.  For fine grid models (&amp;lt;2m cell size) with low bed resistance and significant variations in velocity vectors the effect is more pronounced but is still slight.&lt;br /&gt;
|- &lt;br /&gt;
| Inertia and viscosity terms are now not transferred across dry cell sides when constructing the coefficients for the solution arrays.  This was having the effect of generating a circulation on the other side of the wall (albeit a very weak one), which of course shouldn’t happen!	&lt;br /&gt;
| Generally little effect, but can have some minor influence for urban models where buildings and fences are modelled as solid thin Z lines.&lt;br /&gt;
|- &lt;br /&gt;
| 1D weir flow has been improved as the water level difference across the weir approaches zero.  The new method is more stable.  See &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;u&amp;gt;Weir Flow.&lt;br /&gt;
| Very little difference other than improved stability.&lt;br /&gt;
|- &lt;br /&gt;
| Incorporates minor improvements for transitioning between Regimes A and B, and between inlet and outlet controlled regimes, for circular culverts.	&lt;br /&gt;
| Very little difference other than improved stability.&lt;br /&gt;
|- &lt;br /&gt;
| The new automatic selection of cells for 2D SX connections using the 1d_nwk Conn_1D_2D attribute may choose more than one 2D cell.   &lt;br /&gt;
| Very little difference other than improved stability at the pit 2D connections.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| &#039;&#039;&#039;2007-07-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=12| 2007-07-AA	&lt;br /&gt;
|-&lt;br /&gt;
| Uses a new set of defaults for a number of commands (see &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Defaults&amp;lt;/font&amp;gt;). &lt;br /&gt;
| The new defaults may produce slightly different results. For established models run using the 2006-06-XX builds, use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2007-07-AA&amp;lt;/tt&amp;gt; to use the default settings used by the 2006-06-XX builds. Each of the new default settings and their affects are discussed in the rows below. &lt;br /&gt;
|-&lt;br /&gt;
| Change &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Zero Material Values to One &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; OFF&amp;lt;/tt&amp;gt; (previously ON)	&lt;br /&gt;
| Will not cause different results if a &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Set Mat &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 1&amp;lt;/tt&amp;gt; is specified before other material settings in the .tgc file, or if every cell has been assigned a material value.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Inside Region &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method B&amp;lt;/tt&amp;gt; (previously Method A)	&lt;br /&gt;
| Testing thus far has not shown any difference between the two methods (other than the substantial gains in processing time of polygons).&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Line Cell Selection &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method D&amp;lt;/tt&amp;gt;  (previously Method C)	&lt;br /&gt;
| May change results slightly, but improved stability and a smoother water levels along HX lines result.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;VG Z Adjustment &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; MAX ZC&amp;lt;/tt&amp;gt;  (previously ZC)	&lt;br /&gt;
| May change results slightly, but stability should be significantly enhanced in some situations.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Bed Resistance Cell Sides &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; INTERROGATE&amp;lt;/tt&amp;gt;  (previously AVERAGE M)	&lt;br /&gt;
| Will influence results, usually slightly, but more pronounced where there are sudden changes in Manning’s n values such as in the urban environment.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Culvert Flow &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method D&amp;lt;/tt&amp;gt;  (previously Method C)&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Culvert Critical H/D &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; OFF&amp;lt;/tt&amp;gt;  (previously &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Culvert Critical H/D &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 1.5&amp;lt;/tt&amp;gt;)&lt;br /&gt;
| The most significant influences are the selection of upstream or downstream controlled regimes depending on the H/D ratio, and the bug fix relating to Regime E if &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Structure Losses &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ADJUST&amp;lt;/tt&amp;gt;. Offers improved stability, better convergence for Regime C and smoother transitioning between some regimes.&lt;br /&gt;
|-&lt;br /&gt;
| Changed the setting of the default width (if eN1 &amp;lt; 0.001) of automatic weirs over R and C channels (i.e. RW and CW) to be the diameter/width multiplied by the number of culverts (previously, the width was not multiplied by the number of culverts).  	&lt;br /&gt;
| For backward compatibility, original weir width can be set by manually setting the eN1 attribute to the Diameter_or_Width attribute value of the culvert.&lt;br /&gt;
|-&lt;br /&gt;
| Bug fix that when using a restart file TUFLOW occasionally set the 2D FC bridge deck additional loss value incorrectly.	&lt;br /&gt;
| No backward compatible workaround provided.&lt;br /&gt;
|-&lt;br /&gt;
| Bug fix that incorrectly set the water levels on dried VG cells (only applies to simulations with source inflows, e.g. SA or RF, somewhere within in the model).  	&lt;br /&gt;
| May cause slight changes in results.  Backward compatibility provided if &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; PRE 2007-07-AA&amp;lt;/tt&amp;gt; is set (noting that setting this command reinstates the bug).  This bug also causes the mass error calculations to falsely give a mass error that is not occurring.&lt;br /&gt;
|-&lt;br /&gt;
| Fixed bug that did not correctly apply the reduction in conveyance for a FC BD (bridge deck) of FD (floating deck) cell using the 2d_fc Mannings_n attribute.&lt;br /&gt;
| Backward compatibility applied if &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2007-07-AA&amp;lt;/tt&amp;gt; is set, however, note that this reinstates the bug and the resistance to flow at FC BD and FD cells may need to be reviewed.  Indications are that only minor changes in results occur.  The flow area under 2D FC BD and FD cells is correctly calculated.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| &#039;&#039;&#039;2006-06-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=16| 2006-06-AA	&lt;br /&gt;
|-&lt;br /&gt;
| Uses a new set of defaults for a number of commands. &lt;br /&gt;
| The new defaults will produce different results.  For established models run using the 2005-05-XX builds, use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; PRE 2006-06-AA&amp;lt;/tt&amp;gt; to use the previous default settings. Each of the new default settings and their affects are discussed in the rows below. &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Cell Wet/Dry Depth &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 0.002&amp;lt;/tt&amp;gt; (previously 0.05) and &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Cell Side Wet/Dry Depth &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 0.001&amp;lt;/tt&amp;gt; (previously 0.03)	&lt;br /&gt;
| The most pronounced effect of the shallower wet/dry depths is likely to occur in areas that are still filling at the flood peak, such as behind a levee that is only just overtopped.  The shallower wet/dry depths provides a greater flow depth for a longer period over the levee.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Adjust Head at ESTRY Interface &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; OFF&amp;lt;/tt&amp;gt; (previously ON)	&lt;br /&gt;
| Usually does not have a major influence on results except where very high velocities occur.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Boundary Cell Selection &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method C&amp;lt;/tt&amp;gt; (previously Method A) and &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Line Cell Selection &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method C&amp;lt;/tt&amp;gt; (previously Method A)	&lt;br /&gt;
| May select slightly different cells along boundary/link lines.  This may cause a difference where the line is along the top of levee, possibly creating a “hole” in embankment.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Viscosity Formulation &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Smagorinsky&amp;lt;/tt&amp;gt; (previously Constant) and &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Viscosity Coefficient &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 0.2&amp;lt;/tt&amp;gt; (previously 1.0)	&lt;br /&gt;
| Can have a significant effect where the viscosity term is influential.  This occurs where the friction term is less dominant (i.e. low Manning’s n and/or deeper water such as the lower, tidal, reaches of rivers). &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Structure Losses &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ADJUST&amp;lt;/tt&amp;gt; (previously FIX)	&lt;br /&gt;
| Can have a significant affect in the vicinity of structures within a 1D network and for culvert networks.  Does not affect 1D structures linked to a 2D domain or at the structure ends not connected to another 1D channel. &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Storage Above Structure Obvert (%) &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 5&amp;lt;/tt&amp;gt; (previously CHANNEL WIDTH)&lt;br /&gt;
| Usually negligible effect unless the model storage is predominantly within 1D closed sections (i.e. B, C and R channels).  The 1D domain is likely to be more sensitive to instabilities due to the much smaller storage above the top of the closed sections, therefore, a smaller 1D timestep may be required and/or the Storage Above Structure Obvert (%) increased.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Depth Limit Factor &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 10&amp;lt;/tt&amp;gt; (previously 1)&lt;br /&gt;
| No effect as previously the model would have become “unstable” as the trigger for an instability was the top of the channel/node.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Culvert Flow &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method C&amp;lt;/tt&amp;gt; (previously Method B)	&lt;br /&gt;
| Usually only minor effects plus improved stability.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Culvert Add Dynamic Head &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ON&amp;lt;/tt&amp;gt; (previously OFF)	&lt;br /&gt;
| Minor influence.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Bridge Flow &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method B&amp;lt;/tt&amp;gt; (previously Method A)	&lt;br /&gt;
| Negligible influence plus improved stability.  However, note the different treatment of energy losses once the bridge deck obvert/soffit is submerged if a BG or LC table is specified.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;WLL Approach &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method B&amp;lt;/tt&amp;gt; (previously Method A)	&lt;br /&gt;
| Only affects the presentation of results.  Note, that Method A is no longer recommended or supported.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Apply All Inverts &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ON&amp;lt;/tt&amp;gt; (previously OFF)	&lt;br /&gt;
Does not affect hydraulic calculations, however, if a Blank, B or W channel is now lowered/raised because the inverts are now used, this will affect results/stability - see note at end of Apply All Inverts).  &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Conveyance Calculation &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ALL PARALLEL&amp;lt;/tt&amp;gt; (previously CHANGE IN RESISTANCE)	&lt;br /&gt;
| Will affect results as ALL PARALLEL can be around 10% more “slippery” than CHANGE IN RESISTANCE.  For calibrated or established models developed using build prior to Build 2006-06-AA , recommend setting to CHANGE IN RESISTANCE&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Flow Calculation &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method B&amp;lt;/tt&amp;gt; (previously Method A)	&lt;br /&gt;
| Negligible effect.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|&#039;&#039;&#039;Builds prior to 2006-06-XX&#039;&#039;&#039; &lt;br /&gt;
| Contact [mailto:support@tuflow.com support@tuflow.com]&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=Frequently Asked Questions (FAQ)=&lt;br /&gt;
== Why are model results developed in an older release different to a newer release? ==&lt;br /&gt;
If comparing a Classic model with HPC, also check the &amp;lt;u&amp;gt;[[HPC_FAQ#Will_TUFLOW_HPC_and_TUFLOW_Classic_results_match.3F | Will TUFLOW HPC and TUFLOW Classic results match?]]&amp;lt;/u&amp;gt; page in addition to this answer. &amp;lt;br&amp;gt;&lt;br /&gt;
In addition to the above, there are reasons why model results would be different between different TUFLOW releases, whether it is the Classic or HPC solver, as follows:&lt;br /&gt;
* General improvements and fine-tuning of the solution scheme, especially for the more complex hydraulic physical terms and situations such as: sub-grid turbulence representation; treatment of shocks (e.g. hydraulic jumps); and transitioning between sub-critical and super-critical flow on steep slopes.&lt;br /&gt;
* Some new functionality can cause a significant change in results.  For example:&lt;br /&gt;
** Sub-Grid Sampling (SGS) applied to an existing model that used a too coarse cell resolution in high flow areas of highly variable topography (relative to the 2D cell size).  SGS will greatly improve the model&#039;s ability to convey water accurately in these situations with vastly improved results.&lt;br /&gt;
** New default sub-grid turbulence scheme in the 2020 release of TUFLOW HPC that is cell size independent and allows modellers to use cell sizes much smaller than the flow depth across all scales from flume to large rivers. For more information on differences between Smagorinsky scheme (HPC releases up to 2020) and the Wu turbulence scheme (2020 onwards) see &amp;lt;u&amp;gt;[[HPC_FAQ#With_Wu_turbulence_scheme_being_the_new_default.2C_are_old_models_using_Smagorinsky_wrong.3F | here]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
* Changes to the default settings and values, e.g.:&lt;br /&gt;
**different default eddy viscosity formulation and/or coefficients,&lt;br /&gt;
**improved data pre-processing approaches such as sampling materials on cell mid-sides instead of cell centres,&lt;br /&gt;
** and many others.&lt;br /&gt;
** For backward compatibility the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is available to run old models on new releases to replicate past results (note, sometimes full backward compatibility cannot be catered for due to different code compiler and updates that can&#039;t be reverted, especially for several releases earlier).&lt;br /&gt;
* New features that use GIS attributes previously reserved (i.e. unused). If these attributes were not populated with the recommended “reserved” value (usually 0 or blank), then they can cause unpredictable results in later releases.&lt;br /&gt;
* Bug fixes noting that most bug fixes are input/output related and rarely affect the model&#039;s hydraulic calculations.&lt;br /&gt;
* Change in timestepping can also produce a small change in results. HPC uses the Runge-Kutta 4th order integrator, which is usually fairly insensitive to time step provided the model is running stably. However when a region is filled by flow that only just overtops an embankment, a 10 mm difference in water levels upstream of the embankment can create a much larger difference in levels downstream.  Hence, small differences in time-stepping (along with many other aspects of model setup) can trigger local differences in model results.&lt;br /&gt;
* Model orientation (if changed) could also mean slight change in results. This is mostly given by interpolating values from different calculation points. Every cell has nine calculation points. Based on the model origin, all or most of the calculation points would have different topography elevation sampled, which translates to slightly different results.&lt;br /&gt;
* If using 1D channel, possibly different cells have been selected as HX boundary and might have different elevations. This can be reviewed in &amp;lt;u&amp;gt;[[Check_Files_1d_to_2d_bc | 1d_to_2d check file]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Generally, there should not be substantial differences as the fundamental equations being solved are unchanged and TUFLOW Classic and HPC solvers have always solved all the physical terms using a 2nd order spatial approach. The one exception is the turbulence (eddy viscosity) representation, which is the most complex and challenging to solve of all the physical terms (many 2D schemes simply omit this term). If significant differences (&amp;gt;10% of depth change across the whole model) are observed then it’s most likely due to the first four dot points above. To identify in which release(s) the significant changes occurred, the model can be run with the latest build and for past releases. The changes for each release are documented in their release notes. Past releases and release notes are all available [https://www.tuflow.com/downloads/tuflow-classichpc-archive/. here]. Once the exact release where the changes occurred is tracked down, individual features can be turned off to narrow down the cause.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The recommendation is usually for new or reworked models to use the newest build to take advantage of the latest features and enhancements, some level of calibration might be required for reworked models. The new TUFLOW executable is not different from the previous ones in the meaning that any existing model should be re-calibrated if there are available calibration data. However, particularly if a model is already calibrated, using prior builds of TUFLOW or winding back default settings using &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is considered reasonable for established models that are to be used for minor tasks where an update of the model would not be cost effective.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How can differences in model results between TUFLOW builds be investigated? ==&lt;br /&gt;
Running TUFLOW on a later Build from which it was originally calibrated will not necessarily produce the same results, as discussed in &amp;lt;u&amp;gt;[[TUFLOW_Version_Backward_Compatibility#Why_are_model_results_developed_in_an_older_release_different_to_a_newer_release.3F | Why are model results developed in an older release different to a newer release?]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The following is an example of steps that can be taken when upgrading a TUFLOW model’s executable Build, checking for consistency to original results each time. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Confirm you are able to run the original model with the original Build that would have been used to initially produce results.&lt;br /&gt;
* This may be particularly relevant when a model has been externally supplied, for example from a government body. &lt;br /&gt;
* Confirm if reproduced results are consistent with supplied results.&lt;br /&gt;
&amp;lt;li&amp;gt; Run the original model with the newer Build, along with a relevant &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command (e.g. &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; Pre 2011 when the original Build was 2010-10).&lt;br /&gt;
* Any differences in results compared to the original results may highlight if there are any changes over time where no backward compatibility had been provided for. &lt;br /&gt;
&amp;lt;li&amp;gt; Run the original model with the newer Build, and without the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command.&lt;br /&gt;
* This more likely to see changes in results compared to the original results, which may require justification to the client or resolution by investigating, isolating and remedying the causes, especially if recalibration is not intended as a subsequent step.&lt;br /&gt;
&amp;lt;li&amp;gt; Iteratively run the original model with the newer Build, stepping through the different release version options for &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command.&lt;br /&gt;
* This will allow the modeller to investigate and isolate what changes to TUFLOW Builds may be affecting results, and when changes appear.&lt;br /&gt;
* Then, individually reverting settings that make up a Default group (see Chapter 18 of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;).&lt;br /&gt;
* This can help isolate the primary drivers for any differences in results.&lt;br /&gt;
* The &amp;lt;u&amp;gt;[https://www.tuflow.com/downloads/tuflow-classichpc-archive/| archived release notes/change logs]&amp;lt;/u&amp;gt; that accompanying Build releases are also a key reference. &lt;br /&gt;
&amp;lt;li&amp;gt; Develop new improved or updated model version, with the newer Build (and any grouped or individual defaults that are deemed necessary to retain from the iterative testing in the prior step).&lt;br /&gt;
*Continue to verify results against the original results as you then iteratively add in or update to any newer functionality or formats that may be available in the later Build, a good quality assurance check that changes are behaving as expected.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_Modelling_Guidance | Back to TUFLOW Modelling Guidance]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_Version_Backward_Compatibility&amp;diff=45663</id>
		<title>TUFLOW Version Backward Compatibility</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_Version_Backward_Compatibility&amp;diff=45663"/>
		<updated>2026-03-27T02:32:49Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Frequently Asked Questions (FAQ) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=Backward Compatibility Change Register=&lt;br /&gt;
&lt;br /&gt;
==Default changes post 2017-09 Build==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;For changes in defaults post the 2017-09 build, see Chapter 18 of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;.&#039;&#039;&#039;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Default changes pre 2017-09 Build==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|&#039;&#039;&#039;2017-09-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=6|2017-09-AA&lt;br /&gt;
| New SX boundaries defaults.&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2017&amp;lt;/tt&amp;gt; if similar results are required to the 2016-03-AE release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| XF files are now being processed for boundaries.&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2017&amp;lt;/tt&amp;gt; or use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;XF Files Boundaries&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;OFF&amp;lt;/tt&amp;gt;  if similar results are required to the 2016-03-AE release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Regions in 2d_bc layers now applied as regions (previously only cell over region centroid selected). &lt;br /&gt;
|No backward compatible workaround provided.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Material IL and CL now applied to gridded rainfall (previously not applied).&lt;br /&gt;
|No backward compatible workaround provided.&lt;br /&gt;
|-&lt;br /&gt;
|SA regions now always select a 2D cell even if there are no cell centres falling within the region (previously a SA region would not select any cell if no cell centres fell within the region).&lt;br /&gt;
|No backward compatible workaround provided.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|If using “&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Reveal 1D Nodes&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ON&amp;lt;/tt&amp;gt;”, “&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Time Series Output Interval&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ” must be specified.&lt;br /&gt;
|No backward compatible workaround provided.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|&#039;&#039;&#039;2016-03-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=7|2016-03-AA&lt;br /&gt;
| New operational 1D structure defaults.    &lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| Primary upstream and downstream 1D channels now correctly take into account bed slope. &lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| A new layered 2D FC calculation method has been implemented. &lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Layered FLC Default Approach  &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;CUMULATE&amp;lt;/tt&amp;gt; or use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| The &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;SX Flow Distribution Cutoff Depth&amp;lt;/font&amp;gt; has been raised to 0.005m from 0.0m. &lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt; or use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SX Flow Distribution Cutoff Depth &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;0.0&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|The &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;End After Maximum&amp;lt;/font&amp;gt; tolerance has been increased to 0.001m from 0.0m. &lt;br /&gt;
|Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|A new ERROR message has been added to cross-check the 1D timestep is a multiple of the timestep for all 2D domains.&lt;br /&gt;
|Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|WARNING 2460 has been escalated to an ERROR and stricter command line syntax rules have been introduced (&amp;quot;=&amp;quot; will now return an ERROR message if TUFLOW is expecting &amp;quot;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;quot;)&lt;br /&gt;
|Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt;  if similar results are required to the 2013-12-AC release.&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=1|2016-03-AD &lt;br /&gt;
| The treatment of the eddy viscosity term in the GPU Solver has been enhanced with slightly improved results in areas of rapidly changing velocity patterns.  &lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;GPU Viscosity Method &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;Method A&amp;lt;/tt&amp;gt; or use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2016&amp;lt;/tt&amp;gt; to achieve the same results as Build 2013-12-AC and prior.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;|&#039;&#039;&#039;2013-12-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=1|2013-12-AA&lt;br /&gt;
| New default settings – see &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; PRE 2013-12&amp;lt;/tt&amp;gt; in the user manual for a list of the commands that have changed in their default setting.	&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2013-12&amp;lt;/tt&amp;gt; if similar results are required to the 2012-05 release.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=1|2013-12-AC &lt;br /&gt;
| The default setting for  &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Link 2D2D Approach&amp;lt;/font&amp;gt; has changed.	&lt;br /&gt;
| Set  &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Link 2D2D Approach &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;METHOD B&amp;lt;/tt&amp;gt; to achieve the same results as Builds 2013-12-AA and 2013-12-AB.  See Link 2D2D Approach for more information.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| &#039;&#039;&#039;2011-09-XX and 2012-05-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=2| 2012-05-AA&lt;br /&gt;
| New default settings – see &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2012-05&amp;lt;/tt&amp;gt;  for a list of the commands that have changed in their default setting.	&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2012-05&amp;lt;/tt&amp;gt; if similar results are required to the 2011-09 or 2010-10 releases. &lt;br /&gt;
|-  &lt;br /&gt;
| The approach to the sizing of automatic manholes and the application of losses has been enhanced.	&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Manhole Approach &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;Method A&amp;lt;/tt&amp;gt; to achieve the same results as Build 2011-09-AA.&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=1| 2011-09-AA&lt;br /&gt;
| The optimised compiler code is treated differently for Single Precision builds producing slightly different results (fractions of a mm) for some models.	&lt;br /&gt;
| No workaround.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| &#039;&#039;&#039;2010-10-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|- &lt;br /&gt;
	&lt;br /&gt;
| rowspan=4| 2010-10-AA	&lt;br /&gt;
| New Intel Fortran Compiler version produces slightly different results (usually fractions of a mm).	&lt;br /&gt;
| No workaround.&lt;br /&gt;
|-&lt;br /&gt;
| w32 and w64 versions will give slightly different results for the same simulation.	&lt;br /&gt;
| No workaround.  Use the same platform (w32 or w64) for all simulations.  Use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Model Platform&amp;lt;/font&amp;gt; to force which platform should be used.&lt;br /&gt;
|-&lt;br /&gt;
| New default settings – see &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; PRE 2010-10&amp;lt;/tt&amp;gt; for a list of the commands that have changed in their default setting.	&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2010-10&amp;lt;/tt&amp;gt; if similar results are required to the 2008-08 or 2009 07 releases.&lt;br /&gt;
|-&lt;br /&gt;
| Generation of TINs for polygons in Read GIS Shape layers is more robust and uses an improved approach.  In rare cases, the TIN would fail and TUFLOW would abort the start-up.	&lt;br /&gt;
| No workaround.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| &#039;&#039;&#039;2008-08-XX and 2009-07-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=1| 2008-08-AC	&lt;br /&gt;
| The default setting for &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;u&amp;gt;Shallow Depth Stability Factor&amp;lt;/u&amp;gt;&amp;lt;/font&amp;gt; has changed.&lt;br /&gt;
| Set &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Shallow Depth Stability Factor &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 3&amp;lt;/tt&amp;gt; for models without direct rainfall to achieve the same results as Builds 2008-08-AA and 2008-08-AB.  See &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Shallow Depth Stability Factor&amp;lt;/font&amp;gt; for more information.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=8| 2008-08-AA	&lt;br /&gt;
|- &lt;br /&gt;
| Uses a new set of defaults for a number of commands (see &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Defaults&amp;lt;/font&amp;gt; ). &lt;br /&gt;
| The new defaults produce slightly different results, and very slight differences also occur between the three versions offered. For established models run using the 2007-07-XX builds, use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2008-08&amp;lt;/tt&amp;gt; to use the default settings used by the 2007-07-XX builds.  Testing of a range of models has shown zero change in results if &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; PRE 2008-08&amp;lt;/tt&amp;gt; switch is set, and the Compaq Fortran compiled version (cSP) is used. Each of the new default settings and their effects are discussed in the rows below. &lt;br /&gt;
|-&lt;br /&gt;
| The method for interpolating n values where the 2D Manning’s n varies with depth has been enhanced from a linear interpolation of the M (1/n) value to a spline interpolation of the n value.  See &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;u&amp;gt;Bed Resistance Depth Interpolation&amp;lt;/u&amp;gt;&amp;lt;/font&amp;gt;. &lt;br /&gt;
| Generally has little effect other than when the flow is predominantly in the depth range that the n value is varying.  The new approach offers a smoother transition in n values from one depth to the other.&lt;br /&gt;
|- &lt;br /&gt;
| The default viscosity coefficient is now a combination of a 0.2 Smagorinsky and 0.1 constant coefficient, and there are some enhancements to the application of the viscosity term.  See &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;u&amp;gt;Viscosity Coefficient&amp;lt;/u&amp;gt;&amp;lt;/font&amp;gt;.&lt;br /&gt;
| This has slight effect for the majority of models.  For fine grid models (&amp;lt;2m cell size) with low bed resistance and significant variations in velocity vectors the effect is more pronounced but is still slight.&lt;br /&gt;
|- &lt;br /&gt;
| Inertia and viscosity terms are now not transferred across dry cell sides when constructing the coefficients for the solution arrays.  This was having the effect of generating a circulation on the other side of the wall (albeit a very weak one), which of course shouldn’t happen!	&lt;br /&gt;
| Generally little effect, but can have some minor influence for urban models where buildings and fences are modelled as solid thin Z lines.&lt;br /&gt;
|- &lt;br /&gt;
| 1D weir flow has been improved as the water level difference across the weir approaches zero.  The new method is more stable.  See &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;u&amp;gt;Weir Flow.&lt;br /&gt;
| Very little difference other than improved stability.&lt;br /&gt;
|- &lt;br /&gt;
| Incorporates minor improvements for transitioning between Regimes A and B, and between inlet and outlet controlled regimes, for circular culverts.	&lt;br /&gt;
| Very little difference other than improved stability.&lt;br /&gt;
|- &lt;br /&gt;
| The new automatic selection of cells for 2D SX connections using the 1d_nwk Conn_1D_2D attribute may choose more than one 2D cell.   &lt;br /&gt;
| Very little difference other than improved stability at the pit 2D connections.&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| &#039;&#039;&#039;2007-07-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=12| 2007-07-AA	&lt;br /&gt;
|-&lt;br /&gt;
| Uses a new set of defaults for a number of commands (see &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Defaults&amp;lt;/font&amp;gt;). &lt;br /&gt;
| The new defaults may produce slightly different results. For established models run using the 2006-06-XX builds, use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2007-07-AA&amp;lt;/tt&amp;gt; to use the default settings used by the 2006-06-XX builds. Each of the new default settings and their affects are discussed in the rows below. &lt;br /&gt;
|-&lt;br /&gt;
| Change &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Zero Material Values to One &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; OFF&amp;lt;/tt&amp;gt; (previously ON)	&lt;br /&gt;
| Will not cause different results if a &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Set Mat &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 1&amp;lt;/tt&amp;gt; is specified before other material settings in the .tgc file, or if every cell has been assigned a material value.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Inside Region &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method B&amp;lt;/tt&amp;gt; (previously Method A)	&lt;br /&gt;
| Testing thus far has not shown any difference between the two methods (other than the substantial gains in processing time of polygons).&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Line Cell Selection &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method D&amp;lt;/tt&amp;gt;  (previously Method C)	&lt;br /&gt;
| May change results slightly, but improved stability and a smoother water levels along HX lines result.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;VG Z Adjustment &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; MAX ZC&amp;lt;/tt&amp;gt;  (previously ZC)	&lt;br /&gt;
| May change results slightly, but stability should be significantly enhanced in some situations.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Bed Resistance Cell Sides &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; INTERROGATE&amp;lt;/tt&amp;gt;  (previously AVERAGE M)	&lt;br /&gt;
| Will influence results, usually slightly, but more pronounced where there are sudden changes in Manning’s n values such as in the urban environment.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Culvert Flow &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method D&amp;lt;/tt&amp;gt;  (previously Method C)&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Culvert Critical H/D &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; OFF&amp;lt;/tt&amp;gt;  (previously &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Culvert Critical H/D &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 1.5&amp;lt;/tt&amp;gt;)&lt;br /&gt;
| The most significant influences are the selection of upstream or downstream controlled regimes depending on the H/D ratio, and the bug fix relating to Regime E if &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Structure Losses &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ADJUST&amp;lt;/tt&amp;gt;. Offers improved stability, better convergence for Regime C and smoother transitioning between some regimes.&lt;br /&gt;
|-&lt;br /&gt;
| Changed the setting of the default width (if eN1 &amp;lt; 0.001) of automatic weirs over R and C channels (i.e. RW and CW) to be the diameter/width multiplied by the number of culverts (previously, the width was not multiplied by the number of culverts).  	&lt;br /&gt;
| For backward compatibility, original weir width can be set by manually setting the eN1 attribute to the Diameter_or_Width attribute value of the culvert.&lt;br /&gt;
|-&lt;br /&gt;
| Bug fix that when using a restart file TUFLOW occasionally set the 2D FC bridge deck additional loss value incorrectly.	&lt;br /&gt;
| No backward compatible workaround provided.&lt;br /&gt;
|-&lt;br /&gt;
| Bug fix that incorrectly set the water levels on dried VG cells (only applies to simulations with source inflows, e.g. SA or RF, somewhere within in the model).  	&lt;br /&gt;
| May cause slight changes in results.  Backward compatibility provided if &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; PRE 2007-07-AA&amp;lt;/tt&amp;gt; is set (noting that setting this command reinstates the bug).  This bug also causes the mass error calculations to falsely give a mass error that is not occurring.&lt;br /&gt;
|-&lt;br /&gt;
| Fixed bug that did not correctly apply the reduction in conveyance for a FC BD (bridge deck) of FD (floating deck) cell using the 2d_fc Mannings_n attribute.&lt;br /&gt;
| Backward compatibility applied if &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;PRE 2007-07-AA&amp;lt;/tt&amp;gt; is set, however, note that this reinstates the bug and the resistance to flow at FC BD and FD cells may need to be reviewed.  Indications are that only minor changes in results occur.  The flow area under 2D FC BD and FD cells is correctly calculated.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|colspan=&amp;quot;3&amp;quot;| &#039;&#039;&#039;2006-06-XX Builds&#039;&#039;&#039;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=16| 2006-06-AA	&lt;br /&gt;
|-&lt;br /&gt;
| Uses a new set of defaults for a number of commands. &lt;br /&gt;
| The new defaults will produce different results.  For established models run using the 2005-05-XX builds, use &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; PRE 2006-06-AA&amp;lt;/tt&amp;gt; to use the previous default settings. Each of the new default settings and their affects are discussed in the rows below. &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Cell Wet/Dry Depth &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 0.002&amp;lt;/tt&amp;gt; (previously 0.05) and &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Cell Side Wet/Dry Depth &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 0.001&amp;lt;/tt&amp;gt; (previously 0.03)	&lt;br /&gt;
| The most pronounced effect of the shallower wet/dry depths is likely to occur in areas that are still filling at the flood peak, such as behind a levee that is only just overtopped.  The shallower wet/dry depths provides a greater flow depth for a longer period over the levee.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Adjust Head at ESTRY Interface &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; OFF&amp;lt;/tt&amp;gt; (previously ON)	&lt;br /&gt;
| Usually does not have a major influence on results except where very high velocities occur.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Boundary Cell Selection &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method C&amp;lt;/tt&amp;gt; (previously Method A) and &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Line Cell Selection &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method C&amp;lt;/tt&amp;gt; (previously Method A)	&lt;br /&gt;
| May select slightly different cells along boundary/link lines.  This may cause a difference where the line is along the top of levee, possibly creating a “hole” in embankment.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Viscosity Formulation &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Smagorinsky&amp;lt;/tt&amp;gt; (previously Constant) and &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Viscosity Coefficient &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 0.2&amp;lt;/tt&amp;gt; (previously 1.0)	&lt;br /&gt;
| Can have a significant effect where the viscosity term is influential.  This occurs where the friction term is less dominant (i.e. low Manning’s n and/or deeper water such as the lower, tidal, reaches of rivers). &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Structure Losses &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ADJUST&amp;lt;/tt&amp;gt; (previously FIX)	&lt;br /&gt;
| Can have a significant affect in the vicinity of structures within a 1D network and for culvert networks.  Does not affect 1D structures linked to a 2D domain or at the structure ends not connected to another 1D channel. &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Storage Above Structure Obvert (%) &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 5&amp;lt;/tt&amp;gt; (previously CHANNEL WIDTH)&lt;br /&gt;
| Usually negligible effect unless the model storage is predominantly within 1D closed sections (i.e. B, C and R channels).  The 1D domain is likely to be more sensitive to instabilities due to the much smaller storage above the top of the closed sections, therefore, a smaller 1D timestep may be required and/or the Storage Above Structure Obvert (%) increased.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Depth Limit Factor &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; 10&amp;lt;/tt&amp;gt; (previously 1)&lt;br /&gt;
| No effect as previously the model would have become “unstable” as the trigger for an instability was the top of the channel/node.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Culvert Flow &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method C&amp;lt;/tt&amp;gt; (previously Method B)	&lt;br /&gt;
| Usually only minor effects plus improved stability.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Culvert Add Dynamic Head &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ON&amp;lt;/tt&amp;gt; (previously OFF)	&lt;br /&gt;
| Minor influence.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Bridge Flow &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method B&amp;lt;/tt&amp;gt; (previously Method A)	&lt;br /&gt;
| Negligible influence plus improved stability.  However, note the different treatment of energy losses once the bridge deck obvert/soffit is submerged if a BG or LC table is specified.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;WLL Approach &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method B&amp;lt;/tt&amp;gt; (previously Method A)	&lt;br /&gt;
| Only affects the presentation of results.  Note, that Method A is no longer recommended or supported.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Apply All Inverts &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ON&amp;lt;/tt&amp;gt; (previously OFF)	&lt;br /&gt;
Does not affect hydraulic calculations, however, if a Blank, B or W channel is now lowered/raised because the inverts are now used, this will affect results/stability - see note at end of Apply All Inverts).  &lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Conveyance Calculation &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; ALL PARALLEL&amp;lt;/tt&amp;gt; (previously CHANGE IN RESISTANCE)	&lt;br /&gt;
| Will affect results as ALL PARALLEL can be around 10% more “slippery” than CHANGE IN RESISTANCE.  For calibrated or established models developed using build prior to Build 2006-06-AA , recommend setting to CHANGE IN RESISTANCE&lt;br /&gt;
|-&lt;br /&gt;
| &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Flow Calculation &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt; Method B&amp;lt;/tt&amp;gt; (previously Method A)	&lt;br /&gt;
| Negligible effect.&lt;br /&gt;
&lt;br /&gt;
|- &lt;br /&gt;
|&#039;&#039;&#039;Builds prior to 2006-06-XX&#039;&#039;&#039; &lt;br /&gt;
| Contact [mailto:support@tuflow.com support@tuflow.com]&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
=Frequently Asked Questions (FAQ)=&lt;br /&gt;
== Why are model results developed in an older release different to a newer release? ==&lt;br /&gt;
If comparing a Classic model with HPC, also check the &amp;lt;u&amp;gt;[[HPC_FAQ#Will_TUFLOW_HPC_and_TUFLOW_Classic_results_match.3F | Will TUFLOW HPC and TUFLOW Classic results match?]]&amp;lt;/u&amp;gt; page in addition to this answer. &amp;lt;br&amp;gt;&lt;br /&gt;
In addition to the above, there are reasons why model results would be different between different TUFLOW releases, whether it is the Classic or HPC solver, as follows:&lt;br /&gt;
* General improvements and fine-tuning of the solution scheme, especially for the more complex hydraulic physical terms and situations such as: sub-grid turbulence representation; treatment of shocks (e.g. hydraulic jumps); and transitioning between sub-critical and super-critical flow on steep slopes.&lt;br /&gt;
* Some new functionality can cause a significant change in results.  For example:&lt;br /&gt;
** Sub-Grid Sampling (SGS) applied to an existing model that used a too coarse cell resolution in high flow areas of highly variable topography (relative to the 2D cell size).  SGS will greatly improve the model&#039;s ability to convey water accurately in these situations with vastly improved results.&lt;br /&gt;
** New default sub-grid turbulence scheme in the 2020 release of TUFLOW HPC that is cell size independent and allows modellers to use cell sizes much smaller than the flow depth across all scales from flume to large rivers. For more information on differences between Smagorinsky scheme (HPC releases up to 2020) and the Wu turbulence scheme (2020 onwards) see &amp;lt;u&amp;gt;[[HPC_FAQ#With_Wu_turbulence_scheme_being_the_new_default.2C_are_old_models_using_Smagorinsky_wrong.3F | here]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
* Changes to the default settings and values, e.g.:&lt;br /&gt;
**different default eddy viscosity formulation and/or coefficients,&lt;br /&gt;
**improved data pre-processing approaches such as sampling materials on cell mid-sides instead of cell centres,&lt;br /&gt;
** and many others.&lt;br /&gt;
** For backward compatibility the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is available to run old models on new releases to replicate past results (note, sometimes full backward compatibility cannot be catered for due to different code compiler and updates that can&#039;t be reverted, especially for several releases earlier).&lt;br /&gt;
* New features that use GIS attributes previously reserved (i.e. unused). If these attributes were not populated with the recommended “reserved” value (usually 0 or blank), then they can cause unpredictable results in later releases.&lt;br /&gt;
* Bug fixes noting that most bug fixes are input/output related and rarely affect the model&#039;s hydraulic calculations.&lt;br /&gt;
* Change in timestepping can also produce a small change in results. HPC uses the Runge-Kutta 4th order integrator, which is usually fairly insensitive to time step provided the model is running stably. However when a region is filled by flow that only just overtops an embankment, a 10 mm difference in water levels upstream of the embankment can create a much larger difference in levels downstream.  Hence, small differences in time-stepping (along with many other aspects of model setup) can trigger local differences in model results.&lt;br /&gt;
* Model orientation (if changed) could also mean slight change in results. This is mostly given by interpolating values from different calculation points. Every cell has nine calculation points. Based on the model origin, all or most of the calculation points would have different topography elevation sampled, which translates to slightly different results.&lt;br /&gt;
* If using 1D channel, possibly different cells have been selected as HX boundary and might have different elevations. This can be reviewed in &amp;lt;u&amp;gt;[[Check_Files_1d_to_2d_bc | 1d_to_2d check file]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Generally, there should not be substantial differences as the fundamental equations being solved are unchanged and TUFLOW Classic and HPC solvers have always solved all the physical terms using a 2nd order spatial approach. The one exception is the turbulence (eddy viscosity) representation, which is the most complex and challenging to solve of all the physical terms (many 2D schemes simply omit this term). If significant differences (&amp;gt;10% of depth change across the whole model) are observed then it’s most likely due to the first four dot points above. To identify in which release(s) the significant changes occurred, the model can be run with the latest build and for past releases. The changes for each release are documented in their release notes. Past releases and release notes are all available [https://www.tuflow.com/downloads/tuflow-classichpc-archive/. here]. Once the exact release where the changes occurred is tracked down, individual features can be turned off to narrow down the cause.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The recommendation is usually for new or reworked models to use the newest build to take advantage of the latest features and enhancements, some level of calibration might be required for reworked models. The new TUFLOW executable is not different from the previous ones in the meaning that any existing model should be re-calibrated if there are available calibration data. However, particularly if a model is already calibrated, using prior builds of TUFLOW or winding back default settings using &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is considered reasonable for established models that are to be used for minor tasks where an update of the model would not be cost effective.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== How can differences in model results between TUFLOW Builds be investigated? ==&lt;br /&gt;
Running TUFLOW on a later Build from which it was originally calibrated will not necessarily produce the same results, as discussed in &amp;lt;u&amp;gt;[[TUFLOW_Version_Backward_Compatibility#Why_are_model_results_developed_in_an_older_release_different_to_a_newer_release.3F | Why are model results developed in an older release different to a newer release?]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The following is an example of steps that can be taken when upgrading a TUFLOW model’s executable Build, checking for consistency to original results each time. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Confirm you are able to run the original model with the original Build that would have been used to initially produce results.&lt;br /&gt;
* This may be particularly relevant when a model has been externally supplied, for example from a government body. &lt;br /&gt;
* Confirm if reproduced results are consistent with supplied results.&lt;br /&gt;
&amp;lt;li&amp;gt; Run the original model with the newer Build, along with a relevant &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command (e.g. &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; Pre 2011 when the original Build was 2010-10).&lt;br /&gt;
* Any differences in results compared to the original results may highlight if there are any changes over time where no backward compatibility had been provided for. &lt;br /&gt;
&amp;lt;li&amp;gt; Run the original model with the newer Build, and without the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command.&lt;br /&gt;
* This more likely to see changes in results compared to the original results, which may require justification to the client or resolution by investigating, isolating and remedying the causes, especially if recalibration is not intended as a subsequent step.&lt;br /&gt;
&amp;lt;li&amp;gt; Iteratively run the original model with the newer Build, stepping through the different release version options for &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Defaults&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command.&lt;br /&gt;
* This will allow the modeller to investigate and isolate what changes to TUFLOW Builds may be affecting results, and when changes appear.&lt;br /&gt;
* Then, individually reverting settings that make up a Default group (see Chapter 18 of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;).&lt;br /&gt;
* This can help isolate the primary drivers for any differences in results.&lt;br /&gt;
* The &amp;lt;u&amp;gt;[https://www.tuflow.com/downloads/tuflow-classichpc-archive/| archived release notes/change logs]&amp;lt;/u&amp;gt; that accompanying Build releases are also a key reference. &lt;br /&gt;
&amp;lt;li&amp;gt; Develop new improved or updated model version, with the newer Build (and any grouped or individual defaults that are deemed necessary to retain from the iterative testing in the prior step).&lt;br /&gt;
*Continue to verify results against the original results as you then iteratively add in or update to any newer functionality or formats that may be available in the later Build, a good quality assurance check that changes are behaving as expected.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_Modelling_Guidance | Back to TUFLOW Modelling Guidance]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Flood_Modeller_Tutorial_Model&amp;diff=45657</id>
		<title>Flood Modeller Tutorial Model</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Flood_Modeller_Tutorial_Model&amp;diff=45657"/>
		<updated>2026-03-26T05:15:53Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Requirements and Downloads */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The objective of the Flood Modeller - TUFLOW modules is to demonstrate how TUFLOW links to the external Flood Modeller 1D scheme and the methods available to create this link. They are designed to supplement existing documentation and assume prior knowledge of both Flood Modeller and TUFLOW software packages. &lt;br /&gt;
&lt;br /&gt;
These modules were developed by BMT in collaboration with Jacobs. Comments, requests and feedback can be sent to [mailto:support@tuflow.com support@tuflow.com].&lt;br /&gt;
&lt;br /&gt;
=Requirements and Downloads=&lt;br /&gt;
Both TUFLOW and Flood Modeller have modest system requirements for small models such as those used in these modules. Larger and more complex models, however, may require higher hardware specifications, particularly memory (RAM). The tutorial models are intentionally small to ensure quick simulation and load times, and should run on any modern PC or laptop capable of running Windows 10 or later. &lt;br /&gt;
&lt;br /&gt;
TUFLOW models typically require access to a GIS package, a text editor, Microsoft Excel and a results viewer to build, review and visualise a model. A list of compatible packages is available on the TUFLOW Wiki. Flood Modeller can also be used as a graphical user interface for creating and editing GIS layers in a TUFLOW model, as well as for visualising results.&lt;br /&gt;
&lt;br /&gt;
Instructions for Flood Modeller - TUFLOW modules are provided using the following GIS file formats:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;QGIS - SHP&amp;lt;/u&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;QGIS - GPKG&amp;lt;/u&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;75%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Requirement&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Brief Description&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Download&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| &#039;&#039;&#039;TUFLOW&#039;&#039;&#039; || TUFLOW is a computer program for simulating depth-averaged, one dimensional free-surface flows such as occurs from floods and tides, with the 2D solution occurring over a regular grid of square elements.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is commonly used in the UK and Ireland, Australia and the United States for the modelling of surface waters, river systems and pipe networks. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is recommended to always use the latest release version of TUFLOW.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial model does not require a TUFLOW licence.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial is set up to use a NVIDIA GPU card. If this is not available, CPU can be specified within the [https://docs.tuflow.com/classic-hpc/manual/2025.2/TCFCommands-1.html#tcfHardware Hardware] command. &amp;lt;br&amp;gt;&lt;br /&gt;
||The TUFLOW executable is provided within the &amp;lt;u&amp;gt;[[Flood_Modeller_Tutorial_Model#Module_Data | Tutorial Dataset]]&amp;lt;/u&amp;gt;.  &lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|&#039;&#039;&#039;Flood Modeller&#039;&#039;&#039;|| Flood Modeller (previously known as ISIS) is a commercial  flood modelling package developed by Jacobs for simulating depth-averaged one and two dimensional free surface flows. It is primarily used for the simulation of river channels and is widely used within the UK and Ireland. This tutorial model will only leverage Flood Modeller’s 1D Solver. &amp;lt;br&amp;gt;&lt;br /&gt;
TUFLOW 1D and 2D domains can be dynamically linked  to the 1D domain of Flood Modeller. Flood Modeller is not included within the TUFLOW executable and must be downloaded separately. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Unlike TUFLOW Flood Modeller has a standalone Graphical User Interface which can be used to build networks, run models, and visualise results.  &lt;br /&gt;
&lt;br /&gt;
It is recommended that TUFLOW 2023-03-AA or later is used in conjunction with Flood Modeller Version 5 or later. [https://docs.tuflow.com/classic-hpc/manual/2025.2/OneD2DLinkingFM-2.html#fig:fig-FMTUFLOWVersionCompatability Figure 10.15] of the [https://docs.tuflow.com/classic-hpc/manual/2025.2/ 2025 TUFLOW manual] provides a list of compatibility between recent Flood Modeller and TUFLOW versions. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For Flood Modeller Version 5 or later a Standard, Professional, or Unlimited Edition of Flood Modeller Pro is required to open and run the tutorial model. &lt;br /&gt;
||&amp;lt;u&amp;gt;[https://www.floodmodeller.com/downloads/ Latest 64-bit version of Flood Modeller]&amp;lt;u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;QGIS&#039;&#039;&#039; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;QGIS TUFLOW plugin || A Geographic Information System (GIS) used to build models and view results. This tutorial was developed with QGIS 3.20.  It is recommended to have QGIS 3.20 or later to ensure compatibility with TUFLOW plugin latest features. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The TUFLOW plugin includes numerous tools to increase workflow efficiency.  &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
||&amp;lt;u&amp;gt;[https://qgis.org/download/ Latest 64-bit version of QGIS]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_QGIS_Plugin| QGIS TUFLOW Plugin Installation]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NotePad++&#039;&#039;&#039; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Syntax Highlighting || A text editor is required for creation of the TUFLOW input files. This tutorial was developed with NotePad++. Ideally a text editor should be able to:&amp;lt;br&amp;gt;&lt;br /&gt;
*Colour code the TUFLOW control files;&lt;br /&gt;
*Open other files from the active control file; and&lt;br /&gt;
*Launch a TUFLOW simulation. &amp;lt;br&amp;gt;&lt;br /&gt;
TUFLOW colour coding can be enabled using syntax highlighting. &lt;br /&gt;
|| &amp;lt;u&amp;gt;[https://notepad-plus-plus.org/downloads/ Latest 64-bit version of Notepad++]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[https://downloads.tuflow.com/_archive/Miscellaneous/NPP_TUFLOW_Syntax_Highlighting.zip TUFLOW syntax highlighting for Notepad++]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;For instructions on configuring Notepad++ for TUFLOW modelling, see &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips |Notepad++ tips]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Microsoft Excel&#039;&#039;&#039; || A spreadsheet software is required for working with tabular data and .csv files. This tutorial has been created in Excel. ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Module Data=&lt;br /&gt;
To build the tutorial model, download one of the datasets below. This includes a digital elevation model (DEM), aerial photography, background model data for the tutorial model and a working version of the model. There are two formats available, Shapefile and GeoPackage. The GeoPackage format has been supported since the TUFLOW 2023-03 Release, for tips on its use see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/GeoPackage_Tips GeoPackage Tips]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
*[https://downloads.tuflow.com/TUFLOW/Wiki_Tute_Models/QGIS_SHP_FMP_Tut_Model.zip QGIS SHP Download]&lt;br /&gt;
*[https://downloads.tuflow.com/TUFLOW/Wiki_Tute_Models/QGIS_GPKG_FMP_Tut_Model.zip QGIS GPKG Download]&lt;br /&gt;
&lt;br /&gt;
If would you like to download the tutorial model datasets for ArcGIS or MapInfo, these can be found on the [[Flood_Modeller_Tutorial_Model_Archive | Archive Page]].&lt;br /&gt;
&lt;br /&gt;
=Recommended Reading=&lt;br /&gt;
The aim of this tutorial is to demonstrate the steps undertaken to build, review and visualise the results of a linked Flood Modeller – TUFLOW model. It assumes that the user has a good understanding of both the 1D component of Flood Modeller and the 1D and 2D components of TUFLOW. The following resources may be of use:&lt;br /&gt;
*[[Tutorial_Introduction |TUFLOW Tutorial Model]]&lt;br /&gt;
*[https://docs.tuflow.com/classic-hpc/manual/2025.2/ TUFLOW Classic / HPC User Manual]&lt;br /&gt;
*[https://help.floodmodeller.com/docs/getting-started-with-1d-river-modelling Flood Modeller 1D Quick Start Guide]&lt;br /&gt;
*[https://help.floodmodeller.com/docs/technical-reference Flood Modeller Technical Reference]&lt;br /&gt;
&lt;br /&gt;
=Modules=&lt;br /&gt;
The tutorial is presented over a series of modules, with each module offering the opportunity to run the model and review the results. Each of the modules builds upon the previous iteration with models developed in the previous module made available. &lt;br /&gt;
&lt;br /&gt;
New users are advised to undertake the modules in sequence, whilst more experienced users can skip to modules containing specific features of interest. Results and check files are not included to keep the size of the download file manageable, but can be generated through the running of the simulations. The folder should be placed in a location with write permissions.  The first tutorial module introduces the user to the linking of a TUFLOW 2D domain to a 1D Flood Modeller model. From this tutorial you will learn how to link an existing Flood Modeller 1D model to a TUFLOW 2D domain. This tutorial is ideal for those starting to learn how to link Flood Modeller and TUFLOW.&lt;br /&gt;
&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[ Flood_Modeller_Tutorial_Module01 | Flood Modeller Module 1]]&amp;lt;/u&amp;gt;  - Linking Flood Modeller to TUFLOW&lt;br /&gt;
&lt;br /&gt;
The second tutorial demonstrates the linking of an ESTRY pipe network to an existing Flood Modeller – TUFLOW linked model. From this tutorial you will learn how to add a 1D pipe network and connect it to the representation of the watercourse created in Flood Modeller and link it to the TUFLOW representation of the floodplain created as part of the first tutorial.  The second tutorial is ideal for those who would like to learn more about the interaction of TUFLOW with Flood Modeller including the simulation of fully integrated drainage systems. &lt;br /&gt;
:*&amp;lt;u&amp;gt;[[ Flood_Modeller_Tutorial_Module02 | Flood Modeller Module 2]]&amp;lt;/u&amp;gt;  - Linking Flood Modeller to ESTRY&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Flood_Modeller_Tutorial_Model&amp;diff=45656</id>
		<title>Flood Modeller Tutorial Model</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Flood_Modeller_Tutorial_Model&amp;diff=45656"/>
		<updated>2026-03-26T05:15:25Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Requirements and Downloads */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The objective of the Flood Modeller - TUFLOW modules is to demonstrate how TUFLOW links to the external Flood Modeller 1D scheme and the methods available to create this link. They are designed to supplement existing documentation and assume prior knowledge of both Flood Modeller and TUFLOW software packages. &lt;br /&gt;
&lt;br /&gt;
These modules were developed by BMT in collaboration with Jacobs. Comments, requests and feedback can be sent to [mailto:support@tuflow.com support@tuflow.com].&lt;br /&gt;
&lt;br /&gt;
=Requirements and Downloads=&lt;br /&gt;
Both TUFLOW and Flood Modeller have modest system requirements for small models such as those used in these modules. Larger and more complex models, however, may require higher hardware specifications, particularly memory (RAM). The tutorial models are intentionally small to ensure quick simulation and load times, and should run on any modern PC or laptop capable of running Windows 10 or later. &lt;br /&gt;
&lt;br /&gt;
TUFLOW models typically require access to a GIS package, a text editor, Microsoft Excel and a results viewer to build, review and visualise a model. A list of compatible packages is available on the TUFLOW Wiki. Flood Modeller can also be used as a graphical user interface for creating and editing GIS layers in a TUFLOW model, as well as for visualising results.&lt;br /&gt;
&lt;br /&gt;
Instructions for Flood Modeller - TUFLOW modules are provided using the following GIS file formats:&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;QGIS - SHP&amp;lt;/u&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
* &#039;&#039;&#039;&amp;lt;u&amp;gt;QGIS - GPKG&amp;lt;/u&amp;gt;&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;75%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Requirement&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Brief Description&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Download&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| &#039;&#039;&#039;TUFLOW&#039;&#039;&#039; || TUFLOW is a computer program for simulating depth-averaged, one dimensional free-surface flows such as occurs from floods and tides, with the 2D solution occurring over a regular grid of square elements.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is commonly used in the UK and Ireland, Australia and the United States for the modelling of surface waters, river systems and pipe networks. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
It is recommended to always use the latest release version of TUFLOW.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial model does not require a TUFLOW licence.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial is set up to use a NVIDIA GPU card. If this is not available, CPU can be specified within the [https://docs.tuflow.com/classic-hpc/manual/2025.2/TCFCommands-1.html#tcfHardware Hardware] command. &amp;lt;br&amp;gt;&lt;br /&gt;
||The TUFLOW executable is provided within the &amp;lt;u&amp;gt;[[Flood_Modeller_Tutorial_Model#Module_Data Tutorial Dataset]]&amp;lt;/u&amp;gt;.  &lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|&#039;&#039;&#039;Flood Modeller&#039;&#039;&#039;|| Flood Modeller (previously known as ISIS) is a commercial  flood modelling package developed by Jacobs for simulating depth-averaged one and two dimensional free surface flows. It is primarily used for the simulation of river channels and is widely used within the UK and Ireland. This tutorial model will only leverage Flood Modeller’s 1D Solver. &amp;lt;br&amp;gt;&lt;br /&gt;
TUFLOW 1D and 2D domains can be dynamically linked  to the 1D domain of Flood Modeller. Flood Modeller is not included within the TUFLOW executable and must be downloaded separately. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Unlike TUFLOW Flood Modeller has a standalone Graphical User Interface which can be used to build networks, run models, and visualise results.  &lt;br /&gt;
&lt;br /&gt;
It is recommended that TUFLOW 2023-03-AA or later is used in conjunction with Flood Modeller Version 5 or later. [https://docs.tuflow.com/classic-hpc/manual/2025.2/OneD2DLinkingFM-2.html#fig:fig-FMTUFLOWVersionCompatability Figure 10.15] of the [https://docs.tuflow.com/classic-hpc/manual/2025.2/ 2025 TUFLOW manual] provides a list of compatibility between recent Flood Modeller and TUFLOW versions. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For Flood Modeller Version 5 or later a Standard, Professional, or Unlimited Edition of Flood Modeller Pro is required to open and run the tutorial model. &lt;br /&gt;
||&amp;lt;u&amp;gt;[https://www.floodmodeller.com/downloads/ Latest 64-bit version of Flood Modeller]&amp;lt;u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;QGIS&#039;&#039;&#039; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;QGIS TUFLOW plugin || A Geographic Information System (GIS) used to build models and view results. This tutorial was developed with QGIS 3.20.  It is recommended to have QGIS 3.20 or later to ensure compatibility with TUFLOW plugin latest features. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The TUFLOW plugin includes numerous tools to increase workflow efficiency.  &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
||&amp;lt;u&amp;gt;[https://qgis.org/download/ Latest 64-bit version of QGIS]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_QGIS_Plugin| QGIS TUFLOW Plugin Installation]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NotePad++&#039;&#039;&#039; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Syntax Highlighting || A text editor is required for creation of the TUFLOW input files. This tutorial was developed with NotePad++. Ideally a text editor should be able to:&amp;lt;br&amp;gt;&lt;br /&gt;
*Colour code the TUFLOW control files;&lt;br /&gt;
*Open other files from the active control file; and&lt;br /&gt;
*Launch a TUFLOW simulation. &amp;lt;br&amp;gt;&lt;br /&gt;
TUFLOW colour coding can be enabled using syntax highlighting. &lt;br /&gt;
|| &amp;lt;u&amp;gt;[https://notepad-plus-plus.org/downloads/ Latest 64-bit version of Notepad++]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[https://downloads.tuflow.com/_archive/Miscellaneous/NPP_TUFLOW_Syntax_Highlighting.zip TUFLOW syntax highlighting for Notepad++]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;For instructions on configuring Notepad++ for TUFLOW modelling, see &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips |Notepad++ tips]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Microsoft Excel&#039;&#039;&#039; || A spreadsheet software is required for working with tabular data and .csv files. This tutorial has been created in Excel. ||&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Module Data=&lt;br /&gt;
To build the tutorial model, download one of the datasets below. This includes a digital elevation model (DEM), aerial photography, background model data for the tutorial model and a working version of the model. There are two formats available, Shapefile and GeoPackage. The GeoPackage format has been supported since the TUFLOW 2023-03 Release, for tips on its use see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/GeoPackage_Tips GeoPackage Tips]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
*[https://downloads.tuflow.com/TUFLOW/Wiki_Tute_Models/QGIS_SHP_FMP_Tut_Model.zip QGIS SHP Download]&lt;br /&gt;
*[https://downloads.tuflow.com/TUFLOW/Wiki_Tute_Models/QGIS_GPKG_FMP_Tut_Model.zip QGIS GPKG Download]&lt;br /&gt;
&lt;br /&gt;
If would you like to download the tutorial model datasets for ArcGIS or MapInfo, these can be found on the [[Flood_Modeller_Tutorial_Model_Archive | Archive Page]].&lt;br /&gt;
&lt;br /&gt;
=Recommended Reading=&lt;br /&gt;
The aim of this tutorial is to demonstrate the steps undertaken to build, review and visualise the results of a linked Flood Modeller – TUFLOW model. It assumes that the user has a good understanding of both the 1D component of Flood Modeller and the 1D and 2D components of TUFLOW. The following resources may be of use:&lt;br /&gt;
*[[Tutorial_Introduction |TUFLOW Tutorial Model]]&lt;br /&gt;
*[https://docs.tuflow.com/classic-hpc/manual/2025.2/ TUFLOW Classic / HPC User Manual]&lt;br /&gt;
*[https://help.floodmodeller.com/docs/getting-started-with-1d-river-modelling Flood Modeller 1D Quick Start Guide]&lt;br /&gt;
*[https://help.floodmodeller.com/docs/technical-reference Flood Modeller Technical Reference]&lt;br /&gt;
&lt;br /&gt;
=Modules=&lt;br /&gt;
The tutorial is presented over a series of modules, with each module offering the opportunity to run the model and review the results. Each of the modules builds upon the previous iteration with models developed in the previous module made available. &lt;br /&gt;
&lt;br /&gt;
New users are advised to undertake the modules in sequence, whilst more experienced users can skip to modules containing specific features of interest. Results and check files are not included to keep the size of the download file manageable, but can be generated through the running of the simulations. The folder should be placed in a location with write permissions.  The first tutorial module introduces the user to the linking of a TUFLOW 2D domain to a 1D Flood Modeller model. From this tutorial you will learn how to link an existing Flood Modeller 1D model to a TUFLOW 2D domain. This tutorial is ideal for those starting to learn how to link Flood Modeller and TUFLOW.&lt;br /&gt;
&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[ Flood_Modeller_Tutorial_Module01 | Flood Modeller Module 1]]&amp;lt;/u&amp;gt;  - Linking Flood Modeller to TUFLOW&lt;br /&gt;
&lt;br /&gt;
The second tutorial demonstrates the linking of an ESTRY pipe network to an existing Flood Modeller – TUFLOW linked model. From this tutorial you will learn how to add a 1D pipe network and connect it to the representation of the watercourse created in Flood Modeller and link it to the TUFLOW representation of the floodplain created as part of the first tutorial.  The second tutorial is ideal for those who would like to learn more about the interaction of TUFLOW with Flood Modeller including the simulation of fully integrated drainage systems. &lt;br /&gt;
:*&amp;lt;u&amp;gt;[[ Flood_Modeller_Tutorial_Module02 | Flood Modeller Module 2]]&amp;lt;/u&amp;gt;  - Linking Flood Modeller to ESTRY&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=HPC_Introduction&amp;diff=45605</id>
		<title>HPC Introduction</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=HPC_Introduction&amp;diff=45605"/>
		<updated>2026-03-06T00:39:12Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Benefits of HPC */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;br /&gt;
=Introduction=&lt;br /&gt;
As of TUFLOW build 2017-09-AA, TUFLOW offers HPC (Heavily Parallelised Compute) as an alternate 2D Shallow Water Equation (SWE) solver to TUFLOW Classic. Whereas TUFLOW Classic is limited to running a simulation on a single CPU core, HPC provides parallelisation of the TUFLOW model allowing modellers to run a single TUFLOW model across multiple CPU cores or GPU graphics cards (which utilise thousands of smaller CUDA* cores). Simulations using GPU hardware has shown to provide significantly quicker model run times for TUFLOW users.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In general, most of the functionality and features of TUFLOW Classic are available in HPC. Additionally, HPC offers several advanced features not supported in Classic, including:&lt;br /&gt;
* Quadtree and sub-grid sampling&lt;br /&gt;
* High resolution map output grids &lt;br /&gt;
* Groundwater infiltration and sub-surface flows&lt;br /&gt;
* Wu turbulence formulation &lt;br /&gt;
* TMR bridge inputs (2d_bg)  &lt;br /&gt;
&lt;br /&gt;
===Solution Scheme, Cell Discretisation and Parallelisation===&lt;br /&gt;
TUFLOW HPC is an explicit solver for the full 2D Shallow Water Equations (SWE), including a sub-grid scale eddy viscosity model.  The scheme is both volume and momentum conserving, is 2nd order in space and 4th order in time, with adaptive or fixed timestepping. It is unconditionally stable. TUFLOW HPC&#039;s computational approach differs from TUFLOW Classic, which is a 2nd order (space) implicit finite difference solver. Both TUFLOW HPC and Classic solve the 2D SWE on the same uniform Cartesian grid configuration. Computationally each 2D cell includes 9 sub-grid points.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File: HPC Cell Design.PNG |300px]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The ZC point:&lt;br /&gt;
* Defines the volume of active water (cell volume is based on a flat square cell that wets and dries at a height of ZC plus the Cell Wet/Dry Depth); &lt;br /&gt;
* Controls when a cell becomes wet and dry (note that cell sides can also wet and dry); and&lt;br /&gt;
* Determines the bed slope when testing for the upstream controlled flow regime.&lt;br /&gt;
The ZU and ZV points:&lt;br /&gt;
* Control how water is conveyed from one cell to another;&lt;br /&gt;
* Represent where the momentum equation terms are centred and where upstream controlled flow regimes are applied;&lt;br /&gt;
* Deactivate if the cell has dried (based on the ZC point) and cannot flow; and&lt;br /&gt;
* Wet and dry independently of the cell wetting or drying (see Cell Wet/Dry Depth).  This allows for the modelling of “thin” obstructions such as fences and thin embankments relative to the cell size (eg. a concrete levee).&lt;br /&gt;
ZH points:&lt;br /&gt;
* Play no role hydraulically. This point location is used for output processing;&lt;br /&gt;
* The only elevations written to the SMS .2dm mesh file (by default, binary output is interpolated/extrapolated to the cell corners).&lt;br /&gt;
&lt;br /&gt;
Within the above sub-grid framework, using TUFLOW HPC time derivatives of cell averaged water depth, u-velocity and v-velocity are computed on a cell-by-cell basis and the model evolved using an explicit ODE solver. Calculation of the cell based derivatives are highly independent of each other making it possible to run this solution scheme across multiple processors or GPU cards. Parallelisation is done by breaking up the model into vertical ribbons. Each ribbon of the model is run on a different processor (or GPU card) with boundary information shared between processors at each timestep.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[File: Mesh_Ribbon_Splitting.png |360px]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Mass Conservation and Timestep===&lt;br /&gt;
&lt;br /&gt;
The explicit finite volume solution scheme utilised in HPC is mass conserving by construction (0% mass error). This differs to TUFLOW Classic, which can continue to simulate a model with some volume error due to it being an implicit finite difference scheme. The stability of the explicit finite volume scheme used in TUFLOW HPC is linked to the timestep, flow velocities, water depth, and eddy viscosity. The maximum timestep that can be used while maintaining model stability changes as the model evolves. While it is possible to choose a fixed timestep ahead of time (similarly to TUFLOW Classic), shorter run times and guaranteed model stability from start to finish may be achieved through the use of adaptive timestepping where the solver continually modifies the timestep based on various stability criteria. This is explained in more detail in our &amp;lt;u&amp;gt;[[HPC_Adaptive_Timestepping |  Adaptive Timestepping]]&amp;lt;/u&amp;gt; page.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Compatible Graphic Cards (GPU) ===&lt;br /&gt;
TUFLOW HPC’s GPU hardware module is only compatible with NVIDIA architecture CUDA enabled GPU cards. AMD GPU cards are NOT compatible.  A list of CUDA enabled GPUs can be found on the following website: &amp;lt;u&amp;gt;http://developer.nvidia.com/cuda-gpus &amp;lt;/u&amp;gt;.  &lt;br /&gt;
To check if your computer has an NVIDA GPU and if it is CUDA enabled:&lt;br /&gt;
* Right click on the Windows desktop;&lt;br /&gt;
* If you see “NVIDIA Control Panel” or “NVIDIA Display” in the pop up dialogue, the computer has an NVIDIA GPU;&lt;br /&gt;
* Click on “NVIDIA Control Panel” or “NVIDIA Display” in the pop up dialogue;&lt;br /&gt;
* The GPU model should be displayed in the graphics card information;&lt;br /&gt;
* Check to see if the graphics card is listed on the following website: &amp;lt;u&amp;gt;http://developer.nvidia.com/cuda-gpus&amp;lt;/u&amp;gt;&lt;br /&gt;
On the NVIDA website each CUDA enabled graphics card has a “Compute Capability” listed.  For cards with a compute capability of 1.2 or less, only the single precision version of the GPU Module can be utilised.  However, benchmarking has indicated that the double precision version is NOT required and that the TUFLOW_iSP exe should be used for all TUFLOW HPC GPU simulations. Extensive GPU hardware benchmarking has been undertaken to assist users who are upgrading hardware for TUFLOW modelling. Over 50 different hardware options have been tested for their speed performance. The results are provided on the &amp;lt;u&amp;gt;[[Hardware_Benchmarking | Hardware Benchmarking]]&amp;lt;/u&amp;gt; page.&lt;br /&gt;
&lt;br /&gt;
===Benefits of HPC===&lt;br /&gt;
So what does this mean for modellers? &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
By providing the ability to run models on Graphics Cards, we can achieve significantly shorter model run times, increasing our modelling capabilities to be able to run continuous hydraulic models, with higher cell resolution, across larger extents and more scenarios. Common TUFLOW HPC applications include:&lt;br /&gt;
* Monte Carlo design assessments&lt;br /&gt;
* Rainfall ensemble design assessments&lt;br /&gt;
* High resolution 1D underground / 2D above ground integrated urban drainage&lt;br /&gt;
* High resolution floodplain lumped hydrology / hydraulic modelling (either fully 2D or including nested 1D open channels and pipes)  &lt;br /&gt;
* Whole of catchment direct rainfall&lt;br /&gt;
* Flood forecast modelling&lt;br /&gt;
* Long-term water resource management modelling&lt;br /&gt;
&lt;br /&gt;
The unconditional stability and higher order accuracy of TUFLOW HPC also lends itself well to highly transient situations, such as dam break assessments, where other solvers would either become unstable, lose accuracy or experience impractical simulation slow-down due to the need to solve at an extremely small timestep.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[ HPC_Modelling_Guidance | Back to HPC Modelling Guidance]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=User_Guide_Free_Demo&amp;diff=45538</id>
		<title>User Guide Free Demo</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=User_Guide_Free_Demo&amp;diff=45538"/>
		<updated>2026-02-23T23:01:51Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section is relevant for people who are trialing  TUFLOW without a licence. Please refer to &amp;lt;u&amp;gt;[[User_Guide_Local_Licences|Local Licence User Guide]]&amp;lt;/u&amp;gt; or &amp;lt;u&amp;gt;[[New_User_Guide_Network_Software_Licences|Network Licence New User Guide]]&amp;lt;/u&amp;gt; if you have a licence.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Download the latest TUFLOW executable from the TUFLOW website: &amp;lt;u&amp;gt;[http://www.tuflow.com/Tuflow%20Latest%20Release.aspx Tuflow Release Download]&amp;lt;/u&amp;gt;. TUFLOW is a standalone console application. As such, it doesn&#039;t require installation to run. &lt;br /&gt;
&amp;lt;li&amp;gt; Download the TUFLOW Tutorial Dataset: &amp;lt;u&amp;gt;[https://downloads.tuflow.com/Training/Wiki/Wiki_Tutorial_Models_QGIS.zip Tutorial Dataset]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; User documentation is available from the &amp;lt;u&amp;gt;[[Tutorial_Introduction | Tutorial Model Introduction]]&amp;lt;/u&amp;gt; section of the Wiki. Learn how to use TUFLOW by following the user documentation.&lt;br /&gt;
&amp;lt;li&amp;gt; Run TUFLOW using any of the options listed in the &amp;lt;u&amp;gt;[[Running_TUFLOW | Running TUFLOW ]]&amp;lt;/u&amp;gt; section of the Wiki.&lt;br /&gt;
&amp;lt;li&amp;gt; After gaining an understanding of TUFLOW through the tutorial model dataset you may be interested in developing some of your own models for testing. A free Demo option is included within the standard TUFLOW executable. The free Demo version is fully enabled, though has the following limits:&lt;br /&gt;
:*100,000 total cells and 30,000 active (potentially flooded) cells &lt;br /&gt;
:*100 1D channels&lt;br /&gt;
:*There can on be is only one 2D domain (multiple 2D domains are not supported) &lt;br /&gt;
:*A simulation time of 10 minutes.  &lt;br /&gt;
The free Demo mode is called using the TUFLOW Control File (TCF) command: &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Demo Model &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;tt&amp;gt;ON&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Over 60 example models demonstrating the most commonly used TUFLOW features are available from the &amp;lt;u&amp;gt;[[TUFLOW_Example_Models | Example Models]]&amp;lt;/u&amp;gt; section of the Wiki. These models call the Demo mode mentioned above, and as such don&#039;t require a licence to run. Use these models to learn how to implement features not included in the TUFLOW Tutorials. Refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt; for further supporting information.&lt;br /&gt;
&amp;lt;li&amp;gt; Other useful information is contained in the Wiki. In particular new users often find the &amp;lt;u&amp;gt;[[Main_Page | Tips and Tricks]]&amp;lt;/u&amp;gt; section on the right-hand side of the home page and the &amp;lt;u&amp;gt;[[TUFLOW_Modelling_Guidance | Modelling Guidance]]&amp;lt;/u&amp;gt; sections particularly useful.&lt;br /&gt;
&amp;lt;li&amp;gt; If you&#039;re interested in becoming a part of the TUFLOW User Community please join the &amp;lt;u&amp;gt;[http://www.linkedin.com/groups/1908583  LinkedIn User Group]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt; Please email &amp;lt;u&amp;gt;[mailto:support@tuflow.com support@tuflow.com]&amp;lt;/u&amp;gt; if you have any technical questions or &amp;lt;u&amp;gt;[mailto:sales@tuflow.com sales@tuflow.com]&amp;lt;/u&amp;gt; if you would like to purchase a licence. Price information is available from the &amp;lt;u&amp;gt;[https://www.tuflow.com/Prices.aspx TUFLOW Website]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=User_Guide_Local_Licences&amp;diff=45537</id>
		<title>User Guide Local Licences</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=User_Guide_Local_Licences&amp;diff=45537"/>
		<updated>2026-02-23T23:01:33Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This section is relevant for people with a Local TUFLOW licence. Please refer to &amp;lt;u&amp;gt;[[User_Guide_Free_Demo|Free DEMO Version New User Guide]]&amp;lt;/u&amp;gt; if you don&#039;t have a licence or &amp;lt;u&amp;gt;[[New_User_Guide_Network_Software_Licences|Network Licence New User Guide]]&amp;lt;/u&amp;gt; if you have a Network licence.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Download the latest TUFLOW executable from the TUFLOW website: &amp;lt;u&amp;gt;[http://www.tuflow.com/Tuflow%20Latest%20Release.aspx Tuflow Release Download]&amp;lt;/u&amp;gt;. TUFLOW is a standalone console application. As such, it doesn&#039;t require installation to run. &lt;br /&gt;
&amp;lt;li&amp;gt; Plug your new Local licence dongle into your computer. &lt;br /&gt;
&amp;lt;li&amp;gt; Download and install the Licencing Dongle Drivers (CodeMeter RunTime Kit): &amp;lt;u&amp;gt;[[Wibu_Dongles|Installing Licensing Software]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Follow the steps listed in the &amp;lt;u&amp;gt;[[WIBU_Licence_Update_Request | Licence Update Request]]&amp;lt;/u&amp;gt; section of the Wiki. You will need to email the licence file to &amp;lt;u&amp;gt;[mailto:sales@tuflow.com sales@tuflow.com]&amp;lt;/u&amp;gt;. The sales team with email you an updated licence file containing your specific licence configuration. &lt;br /&gt;
&amp;lt;li&amp;gt; Import the updated licence file to accept the licence update (&amp;lt;u&amp;gt;[[WIBU_Licence_Update_Import|Licence Update Import]]&amp;lt;/u&amp;gt;).&lt;br /&gt;
&amp;lt;li&amp;gt; After activating your licence, insert your Local licence dongle into your computer (if it isn&#039;t already). Double click the TUFLOW Executable (for example TUFLOW_iSP_w64.exe). A console window should open. Review the licence information listed. Check the licence types and numbers.&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:TUFLOW_DOS_Test1.JPG|600px]] &amp;lt;br&amp;gt;&lt;br /&gt;
Press enter to close the console window. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;Note: Local TUFLOW licences are associated with the USB dongle. All computers running TUFLOW must have Licencing Dongle Drivers (CodeMeter RunTime Kit) installed and the USB dongle plugged in for a simulation to initialise. The Licence Update Request should only be required once annually to update the USB dongle licence and provide access to new updated versions of TUFLOW.&#039;&#039;&lt;br /&gt;
&amp;lt;li&amp;gt; You are now ready to start TUFLOW modelling.&lt;br /&gt;
&amp;lt;li&amp;gt; Download the TUFLOW Tutorial Dataset: &amp;lt;u&amp;gt;[https://downloads.tuflow.com/Training/Wiki/Wiki_Tutorial_Models_QGIS.zip Tutorial Dataset]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; User documentation is available from the &amp;lt;u&amp;gt;[[Tutorial_Introduction | Tutorial Model Introduction]]&amp;lt;/u&amp;gt; section of the Wiki. Learn how to use TUFLOW by following the user documentation.&lt;br /&gt;
&amp;lt;li&amp;gt; Run TUFLOW using any of the options listed in the &amp;lt;u&amp;gt;[[Running_TUFLOW | Running TUFLOW ]]&amp;lt;/u&amp;gt; section of the Wiki.&lt;br /&gt;
&amp;lt;li&amp;gt; Over 60 example models demonstrating the most commonly used TUFLOW features are available from the &amp;lt;u&amp;gt;[[TUFLOW_Example_Models | Example Models]]&amp;lt;/u&amp;gt; section of the Wiki. Use these models to learn how to implement features not included in the TUFLOW Tutorials. Refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt; for further supporting information.&lt;br /&gt;
&amp;lt;li&amp;gt; Other useful information is contained in the Wiki. In particular new users often find the &amp;lt;u&amp;gt;[[Main_Page | Tips and Tricks]]&amp;lt;/u&amp;gt; section on the right-hand side of the home page and the &amp;lt;u&amp;gt;[[TUFLOW_Modelling_Guidance | Modelling Guidance]]&amp;lt;/u&amp;gt; sections particularly useful.&lt;br /&gt;
&amp;lt;li&amp;gt; If you&#039;re interested in becoming a part of the TUFLOW User Community please join the &amp;lt;u&amp;gt;[http://www.linkedin.com/groups/1908583  LinkedIn User Group]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt; Please email &amp;lt;u&amp;gt;[mailto:support@tuflow.com support@tuflow.com]&amp;lt;/u&amp;gt; if you have any technical questions or &amp;lt;u&amp;gt;[mailto:sales@tuflow.com sales@tuflow.com]&amp;lt;/u&amp;gt; if you would like to purchase additional licences or add-on modules. Price information is available from the &amp;lt;u&amp;gt;[https://www.tuflow.com/Prices.aspx TUFLOW Website]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;br&amp;gt;&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Check_Files_2d_bcc_check&amp;diff=45474</id>
		<title>Check Files 2d bcc check</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Check_Files_2d_bcc_check&amp;diff=45474"/>
		<updated>2026-02-04T01:44:35Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This GIS layer contains more information on the 2D boundaries in the TUFLOW simulation.&amp;lt;br&amp;gt;&lt;br /&gt;
This includes both external 2D boundaries (for example HT or QT boundaries) as well as 1D/2D boundaries (HX or SX).&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The SA (source area) boundaries are not included in this check file.  See the &amp;lt;u&amp;gt;[[Check_Files_2d_sac | 2d_sac check file]]&amp;lt;/u&amp;gt; for these boundaries.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Attributes of bcc_check&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot; width=&amp;quot;75%&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Attribute Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=75%| Attribute Description&lt;br /&gt;
|-&lt;br /&gt;
| Type||The boundary type as described in the 2D Boundaries section of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| Flags||The boundary flags as described in the 2D Boundaries section of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| Domain_Name||The model domain, this is useful for multiple domain models.  For single domain models this will be set to &amp;quot;Domain_001&amp;quot;.&lt;br /&gt;
|-&lt;br /&gt;
| Source||The boundary number and GIS file.  For example:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;BC000018: HX BC in &amp;quot;D:\Tutorial\TUFLOW\model\gis\2d_bc_M04_001_L.shp&amp;quot;&amp;lt;/tt&amp;gt;&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
In the image below, a 2d _bcc_check file is shown with different boundary types styled with different colours.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Check files bcc check.JPG]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_Check_Files | TUFLOW Check Files]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_crashing&amp;diff=45424</id>
		<title>TUFLOW crashing</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_crashing&amp;diff=45424"/>
		<updated>2026-01-21T23:25:58Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Console window lists all licences and model doesn&amp;#039;t run */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
From time to time TUFLOW simulations can crash. There are multiple reasons why it could happen. This page can be used as a guide to find and rectify the cause of the crash.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Troubleshooting Tips=&lt;br /&gt;
* Use the latest TUFLOW release available at the [https://www.tuflow.com/downloads/ TUFLOW website].&lt;br /&gt;
* If using GPU, update the graphics card driver to the latest version from the [https://www.nvidia.com/Download/index.aspx Nvidia website].&lt;br /&gt;
* Restart the modelling machine.&lt;br /&gt;
* Check the end of .tlf file for an error message.&lt;br /&gt;
* Test running the model on a different machine.&lt;br /&gt;
* Save all outputs (checks, results and logs) to a local drive and use TUFLOW executable saved on a local drive to determine if network is causing the issue.&lt;br /&gt;
* Monitor if the issue is happening to a single model only or every model, at specific time during the simulation or randomly.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=How to keep simulation console window open=&lt;br /&gt;
The simulation console window can display errors not written to the .tlf file and often provides additional information useful for troubleshooting:&lt;br /&gt;
&lt;br /&gt;
* To ensure the console window remains open, add pause at the end of the batch file and remove any Start &amp;quot;TUFLOW&amp;quot;, -b, or -t switches. If the console window still closes, use a simplified batch file like the example below.&lt;br /&gt;
&lt;br /&gt;
 &amp;quot;C:\TUFLOW\Releases\2020-10-AD\TUFLOW_iSP_w64.exe&amp;quot; &amp;quot;M01_5m_001.tcf&amp;quot;&lt;br /&gt;
 pause&lt;br /&gt;
&lt;br /&gt;
:The simulation console window is the one that displays the TUFLOW build (e.g. &amp;quot;TUFLOW Build: 2025.0.3-iSP-w64&amp;quot;) in the top-left corner of the window header, as shown in the image below.&lt;br /&gt;
:[[File:TUFLOW Simulation Console with Build Info Displayed.png|frameless|600x600px]]&lt;br /&gt;
&lt;br /&gt;
:If start &amp;quot;TUFLOW&amp;quot; is included in the batch file, the console window will instead show &amp;quot;C:\WINDOWS\system32\cmd.exe&amp;quot; in the window header and will not display the desired simulation output, as shown below.&lt;br /&gt;
:[[File:Batch File Console Showing CMD Header Only.png|frameless|600x600px]]&lt;br /&gt;
&lt;br /&gt;
* Or, let the console window be written to a text file. This will redirect console output messages as well as the standard error stream to the “dump.txt” file, and it will likely record more error information than the usual .tlf file.&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;C:\TUFLOW\Releases\2020-10-AD\TUFLOW_iSP_w64.exe&amp;quot; &amp;quot;M01_5m_001.tcf&amp;quot; &amp;gt; dump.txt&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Simulation console window flashes and disappears=&lt;br /&gt;
When batch file is double clicked and the simulation DOW window flashes and disappears the problem might be in the filepath of the TUFLOW executable or incorrect syntax.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Suggestions&#039;&#039;&#039;:&lt;br /&gt;
* Check the TUFLOW executable can be found with the specified filepath (absolute or relative).&lt;br /&gt;
* Double click the executable, this performs a licence check and console window appears. If it doesn&#039;t, move the executable to a location where it is permitted to run. Some locations on C drive might be restricted for some users preventing to execute the simulation.&lt;br /&gt;
* TUFLOW doesn&#039;t run from a batch file if the filepaths are specified as UNC paths. The folder with both, the executable and the model, must be opened with a mapped drive. Type &amp;quot;net use &amp;lt;drive&amp;gt;: \\server_name\share_name&amp;quot; in the command line to map the drives.&lt;br /&gt;
* If using environment variable &#039;set exe&#039;, confirm there are no spaces surrounding the equals sign (e.g. set exe=&amp;quot;..\..\..\..\exe\2020-10-AD\TUFLOW_iSP_w64.exe&amp;quot;).&lt;br /&gt;
* Write &#039;pause&#039; at the end of the script, rerun the batch file and the console window should remain open providing more information&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=TCF does not exist=&lt;br /&gt;
The .tcf name or the filepath is incorrect or not supported.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Suggestions:&#039;&#039;&#039;&lt;br /&gt;
* Check the name of the .tcf file and filepath (absolute or relative) is correct.&lt;br /&gt;
* TUFLOW doesn&#039;t run from a batch file if the filepaths are specified as UNC paths. The folder with both, the executable and the model, must be opened with a mapped drive. Type &amp;quot;net use &amp;lt;drive&amp;gt;: \\server_name\share_name&amp;quot; in the command line to map the drives.&lt;br /&gt;
* If your TCF file reference contains any special characters (e.g. é, ë, ä, ö… etc) you may find that TUFLOW does not find the TCF path. The best way to fix this is to make sure the batch file content (the text) and the console are using the same encoding so that the correct characters are being passed to TUFLOW. This can be achieved by using a text editor like Notepad++ to make sure the text is encoded in a chosen format (e.g. UTF-8), then using the &amp;lt;code&amp;gt;chcp [code]&amp;lt;/code&amp;gt; command in the batch file to set the encoding to be identical. An example using UTF-8 is shown below. In Windows, UTF-8 has the code page code = 65001, so at the top of the batch file, set the code page to 65001 to tell the console window what encoding to expect.&lt;br /&gt;
&amp;lt;ol&amp;gt;&amp;lt;pre&amp;gt;&lt;br /&gt;
chcp 65001&lt;br /&gt;
TUFLOW.exe -b spëcial.tcf&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=TUFLOW crashes during model initialisation=&lt;br /&gt;
&#039;&#039;&#039;Causes&#039;&#039;&#039;:&lt;br /&gt;
*Erroneous input data or an error in the control files. It might be captured as standard TUFLOW error or as a Fortran compiler error leaving more information only in the console window.&lt;br /&gt;
*If multiple large models are initialising at the same time, this could cause a memory overload and stop the simulations.&lt;br /&gt;
&#039;&#039;&#039;Suggestions:&#039;&#039;&#039;&lt;br /&gt;
* Model input errors:&lt;br /&gt;
** Open the .tlf. The control file/GIS layer written just above the error should be the cause of the issue. Check the file/GIS layer for any unusual setup.&lt;br /&gt;
* Memory overload:&lt;br /&gt;
** Display &amp;quot;Peak working set (memory)&amp;quot; in the Task Manager to confirm memory overload, it is not displayed by default.&lt;br /&gt;
** Insert &amp;quot;timeout xxx&amp;quot; in the batch file between the runs to space out the model most memory demanding initialisation parts, where xxx is a number of seconds to wait for the next run to start.&lt;br /&gt;
* If you need further help, send the .tlf, .hpc.tlf and &amp;lt;u&amp;gt;[[TUFLOW_crashing#How_to_keep_simulation_console_window_open | snapshot of the console window]]&amp;lt;/u&amp;gt; to [mailto:support@tuflow.com support@tuflow.com].&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=TUFLOW crashes randomly at any time during simulation=&lt;br /&gt;
&#039;&#039;&#039;Causes&#039;&#039;&#039;:&lt;br /&gt;
* The modelling machine loses connection to the network when writing any outputs to a network drive and/or using TUFLOW executable located on a network drive. There could be no message box when this happens or a message box stating that TUFLOW.exe has stopped working. Nothing error related will be written to the .tlf file. If multiple models were running simultaneously, all unfinished models would crash. This applies to Windows 10, 8, 7 operating system. With Windows XP, the simulation would only pause and restart itself when the access to the network drive is back on. The difference in the behaviour is unfortunately based on the operating system and as far as we are aware we are unable to do anything within the TUFLOW code to handle this situation.&lt;br /&gt;
* The output drive might not have enough free space seemingly crashing at random time (at any map output interval).&lt;br /&gt;
* Something might be preventing the simulation from writing to network drive such as scheduled backup, updates, restart, deduplication or other scheduled processes. This would often happen at the similar time during the day or week seemingly stopping TUFLOW simulations at random simulation time. TUFLOW is not releasing the licence at the end of the simulation, rather CodeMeter system is determining that the TUFLOW application is no longer running and is therefore releasing the licence. This would show as “Handle xxx automatically released. The application is no longer available.” in the &amp;lt;u&amp;gt;[[WIBU_create_cmDust | cmDust file]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&#039;&#039;&#039;Suggestions&#039;&#039;&#039;:&lt;br /&gt;
* Unstable network:&lt;br /&gt;
** Use TUFLOW executable saved on a local drive.&lt;br /&gt;
** Set a local drive as the output drive for all checks, results and logs. This can be done using &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Output Drive&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command in the .tcf. All outputs can be copied back to the network drive at the simulation end if required. Robocopy can be added to the end of the .bat file, example &amp;lt;u&amp;gt;[[TUFLOW_crashing#Robocopy_example_to_automatically_copy_outputs_on_network_drive_after_model_runs | here]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
* Insufficient storage:&lt;br /&gt;
** Ensure storage locations that outputs are written to have enough free space. Depending on the infrastructure, reported free space may not be accurate, or performance of storage may substantially degrade as it nears being full.&lt;br /&gt;
&lt;br /&gt;
*Other processes:&lt;br /&gt;
** Check with IT whether such processes are occurring and if reasonable limits/preferences/priorities can be set to reduce resource use (disk/network), to allow other processes to run in parallel.&lt;br /&gt;
** Run models locally if it is known the runs will coincide with such processes.&lt;br /&gt;
* If you need further help, send the .tlf, .hpc.tlf and &amp;lt;u&amp;gt;[[TUFLOW_crashing#How_to_keep_simulation_console_window_open | snapshot of the console window]]&amp;lt;/u&amp;gt; to [mailto:support@tuflow.com support@tuflow.com].&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=TUFLOW crashes at the end of the simulation before writing out maximum results=&lt;br /&gt;
The output drive might not have enough free space to write out the full results. If multiple TUFLOW simulations run in parallel, the free space might be filling up faster than expected. There can also be other processes filling up the drive, e.g. other software, backups, other users copying data. The target drive should never be filled to the brim, as performance will suffer for all processes.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Suggestions:&#039;&#039;&#039;&lt;br /&gt;
* Ensure storage locations that outputs are written to have enough free space. Depending on the infrastructure, reported free space may not be accurate, or performance of storage may substantially degrade as it nears being full.&lt;br /&gt;
* If you need further help, send the .tlf, .hpc.tlf and &amp;lt;u&amp;gt;[[TUFLOW_crashing#How_to_keep_simulation_console_window_open | snapshot of the console window]]&amp;lt;/u&amp;gt; to [mailto:support@tuflow.com support@tuflow.com].&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=TUFLOW crashes trying to open _ All TUFLOW Simulations.log file=&lt;br /&gt;
This crash is often incorrectly believed to be caused by a licence issue as the .tlf file ends soon after listing the licences. If the last line in the .tlf is as below, the simulation has stopped because the user doesn&#039;t have write permissions to the _ All TUFLOW Simulations.log file or the directory hasn&#039;t been created yet.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&amp;quot;Trying to open (A) file C:\&amp;lt;&amp;lt;log_directory&amp;gt;&amp;gt;\_ All TUFLOW Simulations.log...OK.  File Unit: 904&amp;quot;&amp;lt;/pre&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Suggestions&#039;&#039;&#039;:&lt;br /&gt;
* Gain write permission to write to the folder from your IT staff.&lt;br /&gt;
* Change the default log location to somewhere where you already have write permissions with TCF command &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Simulations Log Folder &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;tt&amp;gt;&amp;lt;&amp;lt;folder&amp;gt;&amp;gt;&amp;lt;/tt&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=TUFLOW can&#039;t find a valid licence=&lt;br /&gt;
Confirmation that licence is the issue can be mostly found in the .tlf.&lt;br /&gt;
&lt;br /&gt;
==Unmaintained dongle==&lt;br /&gt;
Once a year (usually after mid-year) a new TUFLOW release will need the licence to be updated. This will show in the .tlf file as &amp;quot;Unmaintained since &amp;lt;year&amp;gt;&amp;quot;. Follow &amp;lt;u&amp;gt;[[WIBU_Licence_Update_Request | WIBU Licence Update Request]]&amp;lt;/u&amp;gt; to get the licence updated.&lt;br /&gt;
&lt;br /&gt;
==Console window lists all licences and model doesn&#039;t run==&lt;br /&gt;
If the console window appears as shown below and ends with the line &amp;quot;Press ENTER to Release WIBU Licences&amp;quot;, this indicates a licence check was performed. When a licence check is run, the TUFLOW model does not execute, and a .tlf file is not produced.&lt;br /&gt;
&lt;br /&gt;
During the licence check, one licence from each available module is temporarily reserved. These are released either immediately by pressing Enter, or automatically after a few minutes when the console window is closed.&lt;br /&gt;
&lt;br /&gt;
Once the licences are released by pressing Enter, the console window displays &amp;quot;Not licenced or no local licence free&amp;quot;. This confirms that the licences are no longer reserved by the licence check and are available for running TUFLOW models.&amp;lt;ol&amp;gt; [[File: Licence_Check_2.png | 600px]]&amp;lt;/ol&amp;gt;&lt;br /&gt;
The licence check is performed in the following situations:&lt;br /&gt;
* Double clicking a TUFLOW executable.&lt;br /&gt;
* Running a batch file that only specifies the TUFLOW executable.&lt;br /&gt;
* Running TUFLOW from Notepad++ with only the TUFLOW executable inserted into the Run function text box.&lt;br /&gt;
Suggestions to run a TUFLOW model:&lt;br /&gt;
* Include the model .tcf name in the batch file. See &amp;lt;u&amp;gt;[[Running_TUFLOW | Running TUFLOW model]]&amp;lt;/u&amp;gt; for further guidance.&lt;br /&gt;
* Insert the full required text (example line below) into Notepad++ Run function text box. See &amp;lt;u&amp;gt;[[NotepadPlusPlus_Run_TUFLOW | Running TUFLOW from Notepad++]]&amp;lt;/u&amp;gt; for further guidance.&lt;br /&gt;
&amp;lt;ol&amp;gt; &amp;quot;C:\TUFLOW\2025.0.3\TUFLOW_iSP_w64.exe&amp;quot; &amp;quot;$(FULL_CURRENT_PATH)&amp;quot; &amp;lt;/ol&amp;gt;&lt;br /&gt;
* See detailed steps on how to run a TUFLOW model in the &amp;lt;u&amp;gt;[[Tutorial_M01#Running_the_Simulation | Tutorial model]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
==Running very old TUFLOW releases==&lt;br /&gt;
When using an old legacy model with the original TUFLOW release there might be an error &amp;quot;Could not find standalone or network dongle server&amp;quot;. Such version of TUFLOW can only run with the old blue softlok licence dongle. If only the metal Wibu dongle is available, DB version of the same year release can be used. We do have some of the old dongles still in possession and can rent it out if required.&amp;lt;br&amp;gt;&lt;br /&gt;
More information on TUFLOW licence dongles and which releases are affected: &amp;lt;u&amp;gt;[[TUFLOW_Licensing | TUFLOW Licensing]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==No TUFLOW dongle and licence settings files found (.lcf and .dcf)==&lt;br /&gt;
Some users might mistake this sentence in the .tlf file as there is an issue with the licence. The &amp;quot;No TUFLOW licence settings files found&amp;quot; sentence is followed by &amp;quot;Default settings applied&amp;quot; and the default settings are listed on the next three lines, e.g. WIBU Retry Time, WIBU Retry Count, WIBU Dongles Only. Only if these settings are required to be different, the licence control file (.lcf) or dongle control file (.dcf) would be required. Not having these licence files doesn&#039;t prevent TUFLOW from running, it would automatically use the default licence settings. The .tlf should continue past these lines and if there is an error, it would be written as the bottom of the .tlf.&lt;br /&gt;
&lt;br /&gt;
==Technical licence issues==&lt;br /&gt;
&amp;lt;u&amp;gt;[[Wibu_Dongles#Troubleshooting | Wibu Dongles Troubleshooting]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Robocopy example to automatically copy outputs on network drive after model runs=&lt;br /&gt;
&amp;lt;pre&amp;gt;@echo off&lt;br /&gt;
&lt;br /&gt;
set TUFLOWEXE_iSP=O:\TUFLOW\Releases\2020-01\2020-10-AA\TUFLOW_iSP_w64.exe&lt;br /&gt;
set RUN_iSP=start &amp;quot;TUFLOW&amp;quot; /wait &amp;quot;%TUFLOWEXE_iSP%&amp;quot; -b&lt;br /&gt;
&lt;br /&gt;
set A=5m 2.5m&lt;br /&gt;
set B=EXG DEV&lt;br /&gt;
set source_results=D:\TUFLOW\results&lt;br /&gt;
set source_log=D:\TUFLOW\runs&lt;br /&gt;
set destination_results=O:\TUFLOW\support\results&lt;br /&gt;
set destination_log=O:\TUFLOW\support\runs&lt;br /&gt;
&lt;br /&gt;
FOR %%a in (%A%) do (&lt;br /&gt;
	FOR %%b in (%B%) do (&lt;br /&gt;
		:: Run model&lt;br /&gt;
		echo Running Cell Size %%a Model Scenario %%b&lt;br /&gt;
		%RUN_iSP% -s1 %%a -s2 %%b M10_~s1~_~s2~_003.tcf&lt;br /&gt;
		&lt;br /&gt;
	:: Move results folder to different location&lt;br /&gt;
        robocopy &amp;quot;%source_results%&amp;quot; &amp;quot;%destination_results%&amp;quot; /e /move&lt;br /&gt;
        &lt;br /&gt;
        :: Move log folder to different location&lt;br /&gt;
        robocopy &amp;quot;%source_log%&amp;quot; &amp;quot;%destination_log%&amp;quot; /e /move&lt;br /&gt;
        timeout 5&lt;br /&gt;
	)&lt;br /&gt;
)&lt;br /&gt;
pause&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_Modelling_Guidance | Back to TUFLOW Modelling Guidance]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Tutorial_M09&amp;diff=45399</id>
		<title>Tutorial M09</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Tutorial_M09&amp;diff=45399"/>
		<updated>2026-01-09T04:52:28Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Variables (Optional) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In this module, event management is introduced. This is a powerful functionality running multiple event combinations (e.g. magnitude, duration, temporal patterns, climate change) using a single set of control files rather than creating a new set of control files for every simulation. This makes the management of the model easier, ensures consistency between the simulations and better quality control. Without implementing event management, six TCFs and six bc_dbase files are required to run this module, using event management, only one each is needed:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:M09 EventManagement 01a.png]]&amp;lt;br&amp;gt;Events are set up using a define event block in TUFLOW Event File (TEF) - &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Define Event&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command terminated by &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;End Define&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Note: If Event logic can be added into most of TUFLOW’s control files where model inputs or parameters may vary between events. The only control files not supporting event logic are the TUFLOW Rainfall Control File (.trcf), TUFLOW External Stress File (.tesf), Advection Control File (.adcf) and within a Define Control command inside a TUFLOW Operational Control (.toc) file.&lt;br /&gt;
&lt;br /&gt;
The TUFLOW control files are:&lt;br /&gt;
:*TUFLOW Events File (TEF): A database of TCF and ECF commands for different events.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Module 9 builds from the model created in &amp;lt;u&amp;gt;[[Tutorial_M02 | Module 2]]&amp;lt;/u&amp;gt;. The completed Module 2 model is provided in the Module_09\TUFLOW folder.&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
=== TUFLOW Event File (TEF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;Module_09\Tutorial_Data&#039;&#039;&#039; folder. Copy the &#039;&#039;&#039;Event_File.tef&#039;&#039;&#039; in to the &#039;&#039;&#039; Module_09\TUFLOW\runs&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt;Open the TEF in a text editor. There are three event magnitudes and two event durations listed:&lt;br /&gt;
:*Event Magnitudes: 5% AEP, 2% AEP and 1% AEP&lt;br /&gt;
:*Event Durations: 1hr and 2hr &lt;br /&gt;
&amp;lt;li&amp;gt;The event specific commands are contained between the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Define Event&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; and &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;End Define&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; commands. &lt;br /&gt;
&amp;lt;li&amp;gt;The &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Event Source&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is linked to the bc_dbase file. In the below examples, any occurrence of &#039;~AEP~&#039; in the bc_dbase is replaced with &#039;05p&#039; and any occurrence of &#039;~DUR~&#039; in the bc_dbase is replaced with &#039;1hr&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! EVENT MAGNITUDES&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Define Event&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;05p&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;   BC Event Source &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ~AEP~ | 05p&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;End Define&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! EVENT DURATIONS&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Define Event&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;1hr&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;   BC Event Source &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ~DUR~ | 1hr&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;End Define&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
Note: The &#039;AEP&#039; and &#039;DUR&#039; are user defined variables. The &#039;AEP&#039; refers to an event magnitude (Annual Exceedance Probability) and &#039;DUR&#039; refers to an event duration.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;TUFLOW reads all of the defined events in the TEF and selects the ones specified in the batch file. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Boundary Condition Database (bc_dbase) ===&lt;br /&gt;
Update the bc_dbase with event magnitude and event duration placeholders:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;Module_09\Tutorial_Data&#039;&#039;&#039; folder. Copy and paste the following files to the &#039;&#039;&#039; Module_09\TUFLOW\bc_dbase&#039;&#039;&#039; folder. These files contains the inflows for each event magnitude and duration. &lt;br /&gt;
:*05p1hr.csv&lt;br /&gt;
:*05p2hr.csv&lt;br /&gt;
:*02p1hr.csv&lt;br /&gt;
:*02p2hr.csv&lt;br /&gt;
:*01p1hr.csv&lt;br /&gt;
:*01p2hr.csv&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of the &#039;&#039;&#039;bc_dbase.csv&#039;&#039;&#039; as &#039;&#039;&#039;bc_dbase_M09_001.csv&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file and make the following updates to the &#039;Source&#039; column:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:M09 bc dbase 02.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the bc_dbase.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Control File (TCF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;M02_5m_001.tcf&#039;&#039;&#039; as &#039;&#039;&#039;M09_5m_~e1~_~e2~_001.tcf&#039;&#039;&#039; in the &#039;&#039;&#039;Module_09\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file &#039;&#039;&#039;M09_5m_~e1~_~e2~_001.tcf&#039;&#039;&#039; in a text editor.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the reference to the bc_dbase:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\bc_dbase\bc_dbase_M09_001.csv	 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the Boundary Conditions Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command to reference the TEF at the end of the TCF:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! EVENTS&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Event File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; Event_File.tef	 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Event File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TCF.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Running the Simulation =&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;_run_M02_HPC.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_M09_HPC.bat&#039;&#039;&#039; in the &#039;&#039;&#039;Module_09\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the &#039;&#039;&#039;M09_5m_~e1~_~e2~_001.tcf&#039;&#039;&#039; and include event switches (-e1, -e2) defining event magnitude and event duration:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;exe&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2025.1.0\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; %exe%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 05p -e2 1hr M09_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 05p -e2 2hr M09_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 02p -e2 1hr M09_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 02p -e2 2hr M09_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 01p -e2 1hr M09_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 01p -e2 2hr M09_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in file explorer to run the simulation.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting = &lt;br /&gt;
See tips on common mistakes and troubleshooting steps if the model doesn&#039;t run:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_Troubleshooting_QGIS | QGIS]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Check Files =&lt;br /&gt;
While the model is running, review the added features are specified correctly:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;&#039;&#039;M09_5m_05p_1hr_001.tlf&#039;&#039;&#039; from the &#039;&#039;&#039;Module_09\TUFLOW\runs\log&#039;&#039;&#039; folder in a text editor. &lt;br /&gt;
&amp;lt;li&amp;gt;The name of the events replaced the placeholders in the TCF name.&lt;br /&gt;
&amp;lt;li&amp;gt;Confirm the specified events and event sources:&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_M09_Check_01c.mp4|width=928}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Results=&lt;br /&gt;
When the model is finished, review the results:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M09_Results_QGIS | QGIS]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion =&lt;br /&gt;
&lt;br /&gt;
* Multiple events were set up in the TUFLOW Event File (TEF) with define event blocks.&lt;br /&gt;
&lt;br /&gt;
*TUFLOW Log Files (TLF) were reviewed.&lt;br /&gt;
*Multiple event results were inspected using the TUFLOW Viewer.&lt;br /&gt;
*For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &lt;br /&gt;
*Alternatively, see the &amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Example_Model_Catalogue | TUFLOW Example Models]]&amp;lt;/u&amp;gt; to explore the full list of TUFLOW features.&lt;br /&gt;
=Looping Batch File (Optional)=&lt;br /&gt;
Looping batch file is a powerful tool running large number of simulations with the least amount of batch file text:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;_run_M09_HPC.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_M09_HPC_loop.bat&#039;&#039;&#039; in the &#039;&#039;&#039;Module_09\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following commands. Indentation is important in batch files, insert tabs to match the below spacing:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;echo &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;set &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;exe&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2025.1.0\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;set &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%exe%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;set&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; AEP&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;05p 02p 01p&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;set&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; DUR&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;1hr 2hr&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;for &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%%a&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; in &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;(&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%AEP%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;)&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; do &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;(&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;	for &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%%b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; in &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;(&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%DUR%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;)&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; do &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;( &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&amp;lt;ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;		echo &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Running &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%%a %%b &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
	&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;	%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;-e1 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%%a&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e2 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%%b &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;M09_5m_~e1~_~e2~_001.tcf&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;/ol&amp;gt;	)&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;)&amp;lt;br&amp;gt;&lt;br /&gt;
Note: The &#039;AEP&#039; and &#039;DUR&#039; are user defined batch file variables. The &#039;AEP&#039; refers to an event magnitude (Annual Exceedance Probability) and &#039;DUR&#039; refers to an event duration.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in file explorer to run the simulation.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Variables (Optional) =&lt;br /&gt;
Variables provide a way to define values once and reuse them across control files, which helps manage models with multiple scenarios and events.&lt;br /&gt;
&lt;br /&gt;
Scenarios and events are automatically available as variables. Variables can also be defined using the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Set Variable &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;command as described in Section 13.2.3 Variables of the TUFLOW manual. They are referenced by enclosing the variable name within &amp;lt;&amp;lt; and &amp;gt;&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
Note: The &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Set Variable &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;command can only be specified in the .tcf or within a read file (.trd) referenced from the .tcf. The variables can then be used in all control files (.tcf, .tgc, .tbc, .ecf, etc).&lt;br /&gt;
&lt;br /&gt;
Example models using variables are provided in the &amp;lt;u&amp;gt;[[TUFLOW Example Models#Bulk Simulation Management|Bulk Simulation Management Example Model Dataset]]&amp;lt;/u&amp;gt; on the TUFLOW Wiki.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Tutorial_Introduction| Back to Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking_-_Results&amp;diff=45268</id>
		<title>Hardware Benchmarking - Results</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking_-_Results&amp;diff=45268"/>
		<updated>2025-12-23T03:57:55Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* High End GPU Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=CPU Results=&lt;br /&gt;
The following table summarises the runtimes for a range of computers.  More will be added when additional results are obtained.  The table is ordered based on the combined 20m Classic and HPC CPU runtimes, with the fastest computers at the top of the table.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Runtimes for CPU benchmarks&#039;&#039;&#039;&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Processor Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | Processor Frequency (GHz)**&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | RAM size (GB)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | RAM frequency (MHz)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | Classic 20m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | HPC CPU 20m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | Runtime Combined (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#C5C5C5; font-weight:bold; color:white;&amp;quot; width=12% | System Name&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz||3.2||128||5200||32.7||108.6||141.3||JB1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz||3.2||64||5600||36.7||114.2||150.9||TM1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900F (32 CPUs) @ 2.0GHz ||2.0||128||4000||41.2||124.1||165.3||AW1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K (24 CPUs)||3.2||128||4800||38.5||127.0||165.5||SB1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 7950X 16-Core Processor (32 CPUs) @ 4.5GHz||4.5||64||4800||33.4||136.0||169.4||PSM&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K||3.2||128||3200||40.7||129.9||170.6||DD2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i7-12700 (20 CPUs) @ ~2.1GHz||2.1||64||4800||41||137.2||178.2||RB1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 7 7800X3D 8-Core Processor (16 CPUs) @ ~4.2GHz||4.2||32||4800||35.5||162.8||198.3||LC1&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz (16 CPUs)||2.5||16||3200||48.4||170.5||218.9||TS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) w5-2455X (24 CPUs) @ ~3.2GHz||3.2||64||4800||53.3||169.1||222.4||CHR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-10900K CPU @ 3.70GHz||3.7||128||3200||56.9||173.8||230.7||CH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ (5.10GHz)||(5.1)||16||4000||58.2||179.9||238.1||RRB&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 5 7600X 6-Core Processor||4.7||32||4800||39.0||175.7||214.7||HP1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz||3.7||64||3000||55.7||186.2||241.9||RH1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor||3.8||64||3200||45.9||203.1||249.0||CH3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900 CPU @ 3.10GHz||3.1||32||2666||61.7||190.0||251.7||CB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz||3.6||32||2133||61.4||190.4||251.8||RH2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 CPUs), ~3.6GHz||3.6||64||2133||62.7||191.1||253.8||PA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz||3.7||32||2933||62.1||192.8||254.9||DS2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz||3.6||32||2666||71.2||184.3||255.5||ABA&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz||3.6||32||2666||62.1||193.7||255.8||MA2&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs), ~3.2GHz&lt;br /&gt;
|3.2&lt;br /&gt;
|450&lt;br /&gt;
|&lt;br /&gt;
|50.0&lt;br /&gt;
|211.6&lt;br /&gt;
|261.6&lt;br /&gt;
|YW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 3970X 32-Core Processor||3.7||256||2400||49.5||212.1||261.6||CH2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3950X 16-Core Processor||3.5||128||2800||55.9||210.0||265.9||TRO&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (6 CPUs) @ 3.2GHz||3.2||56||N/A||49.1||218.9||268||RBR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz||3.7||64||2133||67.0||202.5||269.5||RL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900X CPU @ 3.50GHz||3.5||128||2133||72.7||202.1||274.8||MBL&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||64||2133||67.5||208.6||276.1||SKI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||64||2133||68.5||208.8||277.3||PM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz||3.6||32||2666||66.8||211.6||278.1||MA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz||3.2||16||2667||68.2||211.8||280.0||CR2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz||2.7||32||2667||68.0||216.0||284.0||RL3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||32||2113||68.2||217.9||286.1||HP2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz||2.7||32||2667||67.7||219.1||286.8||RL2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||64||2133||70.5||218.8||289.3||PM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz||2.9||16||2667||77.5||212.6||290.1||KTC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz||3.7||32||2933||75.2||219.8||295||BL-DT01001&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor||3.5||128||2666||67.9||230.8||298.7||JGR&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor  (32 CPUs) @ 3.5GHz||3.5||128||2666||66.3||234.7||301||JG3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz||3.3||32||2400||80.5||221.9||302.4||JM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz||3.6||16||2400||72.8||230.6||303.4||RSH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz||3.6||64||2666||85.4||218.8||304.2||JPI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz||3.6||64||2666||83.7||225.2||308.9||HNM&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i9-11950H @ 2.60GHz (16 CPUs), ~2.6GHz&lt;br /&gt;
|2.6&lt;br /&gt;
|32&lt;br /&gt;
|3200&lt;br /&gt;
|66.6&lt;br /&gt;
|243.3&lt;br /&gt;
|309.9&lt;br /&gt;
|SK1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz||4.0||32||2400||91.2||223.3||314.5||BRD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1630 v4 @ 3.70GHz||3.7||64||2400||84.5||236.6||321.2||DS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6900K CPU @ 3.20GHz||3.2||128||2133||83.4||243.1||326.5||BLK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) Ultra 7 155H (22 CPUs) @ 1.4GHz||1.4||16||7467||173.8||152.8||326.6||AL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz (20 CPUs)||3.7||64||2933||95.4||231.3||326.7||JB2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz||3.4||128||2400||85.3||247.7||332.9||615&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz||3.0||64||2400||106.3||226.7||333.0||MRT&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz||3.4||16||2133||80.7||253.4||334.1||VHD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 6130 CPU @ 2.10GHz||2.1||64||2666||83.9||251.2||335.1||AR2&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 7V12 64-Core Processor (16 CPUs) ||2.4||57||NA||63.5||277.6||341.1||CS2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 1950X 16-Core Processor||3.4||16||2666||81.9||277.3||359.2||CEV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1505M v6 @ 3.00GHz||3.0||32||2400||84.9||278.4||363.3||GHY&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz||3.4||64||2133||82.3||289.8||372.1||JIW&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz||3.4||32||1666||108.9||270.0||378.9||AR1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2235 CPU @ 3.80GHz (12 CPUs)||3.8||64||3200||87.8||294.2||382||HDR-A2000&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5950X 16-Core Processor||3.4||32||3400||39.7||343.0||382.7||JG2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4810MQ CPU @ 2.80GHz||2.8||32||1600||119.7||280.8||400.5||SBC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5820K CPU @ 3.30GHz||3.3||64||2133||118.2||287.8||406.0||ZDO&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz||2.7||16||2133||90.4||321.7||412.1||EAS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz||3.3||16||2133||84.8||336.9||421.7||JM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz||3.0||64||2133||100.3||323||423.3||MON&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1240 V2 @ 3.40GHz||3.4||32||1600||126.4||299.7||426.1||MAV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-1185G7 @ 3.00GHz ||3.0||4||986||84.0||351.4||435.4||TJS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz ||3.5||16||1333||125.9||320.5||446.4||EFC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz||1.9||16||1800||100.1||347.0||447.1||SM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700F CPU @ 2.90GHz ||2.9||16||2900||63.3||385.0||448.3||NCV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i5-10600K CPU @ 4.10GHz ||4.1||16||4104||62.7||386.6||449.3||GZH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz ||2.4||128||2394||130.5||331.5||462||VDI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz||2.6||24||1600||100.5||378.6||479.1||CDH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1650 0 @ 3.20GHz||3.2||32||1600||143.2||343.1||486.3||MPR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz||3.2||8||1600||142.0||349.4||491.4||CR1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-2667 v2 @ 3.30GHz||3.3||16||N/A||196.8||331.5||528.3||Private Cloud&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4712HQ CPU @ 2.30GHz (Laptop)||2.3||8||1600||145.2||414.4||559.6||MNG&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU X5680  @ 3.33GHz||3.33||72||1333||165.7||400.6||566.3||WTM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz (Laptop)||2.4||8||1600||137.8||795.0||932.8||HMM&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
=GPU Results=&lt;br /&gt;
The following table summarises the runtimes for a range of computers.  More will be added when additional results are obtained.  The table is ordered based on the combined 20m and 10m runtimes with the fastest computers at the top of the table.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The HPC GPU benchmark only uses a single GPU card.  TUFLOW HPC GPU can be run across multiple NVIDIA GPU devices.  However, the benefits of these are typically more noticeable for larger models with more than 1 million cells.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Runtimes for GPU benchmarks&#039;&#039;&#039;&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Processor Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=24% | Graphics Card**&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | GPU RAM (GB)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Number of CUDA Cores*&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 20m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 10m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Combined Runtime (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#C5C5C5; font-weight:bold; color:white;&amp;quot; width=12% | System Name&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 9950X3D 16-Core Processor (32 CPUs), ~4.3GHz&lt;br /&gt;
|NVIDIA GeForce RTX 5090&lt;br /&gt;
|32&lt;br /&gt;
|21760&lt;br /&gt;
|2.5&lt;br /&gt;
|9.5&lt;br /&gt;
|12.0&lt;br /&gt;
|JW3&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i7-13700KF (24 CPUs), @ 3.4GHz ||NVIDIA GeForce RTX 4090||24||16384||2.4||11.6||14.0||JW1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz ||NVIDIA GeForce RTX 4090||24||16384||2.5||12.1||14.6||JB1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900K (32 CPUs) @ 3.0GHz ||NVIDIA GeForce RTX 4090||24||16384||2.7||12.7||15.4||TA1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 7950X 16-Core Processor (32 CPUs) @ 4.5GHz ||NVIDIA GeForce RTX 4090||24||16384||2.9||12.7||15.6||PSM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor (24 CPUs) @ 3.8GHz ||NVIDIA GeForce RTX 4090||24||16384||3.1||13.3||16.4||CR4&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-14900K (32 CPUs) @ ~3.2GHz||NVIDIA GeForce RTX 4080 Super||16||10240||2.8||14.5||17.3||DF2&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz ||NVIDIA GeForce RTX 4080||16||9728||2.8||14.7||17.5||TM1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900 (24 CPUs) @ 2.4GHz ||NVIDIA GeForce RTX 4080||16||9728||2.8||14.7||17.5||JM3&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900F (32 CPUs) @ 2.0GHz ||NVIDIA GeForce RTX 4080||16||9728||3.2||15.0||18.2||AW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 7 7800X3D 8-Core Processor (16 CPUs)@ ~4.2GHz||NVIDIA GeForce RTX 4080 SUPER||16||10240||3.2||15.7||18.9||LC1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor  (32 CPUs) @ 3.5GHz||NVIDIA RTX 6000 Ada Generation||48||18176||4.9||14.2||19.1||JG3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-2697 v4 @ 2.30GHz (72 CPUs)||NVIDIA GeForce RTX 4090||24||16384||3.9||16.2||20.1||CS3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla V100||16||5120||3.4||18.5||21.9||FM-NODE: Tesla V100&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 5 7600X 6-Core Processor ||NVIDIA GeForce RTX 4070 Ti||12||7680||3.4||19.2||22.6||HP1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3080 Ti||12||10240||3.8||19.2||23.0||RS1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K ||NVIDIA GeForce RTX 3090||24||10496||3.7||19.4||23.1||DD2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R)  Core(TM) i7-12700F&lt;br /&gt;
|NVIDIA GeForce RTX  3080 Ti&lt;br /&gt;
|12&lt;br /&gt;
|10240&lt;br /&gt;
|3.75&lt;br /&gt;
|19.57&lt;br /&gt;
|23.32&lt;br /&gt;
|AUBNE1PC6602&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3080 Ti||12||10240||4.0||19.6||23.6||GP1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 5317 CPU @ 3.00GHz (48 CPUs) ||NVIDIA A40||48||10752||3.5||20.3||23.8||Lenovo SR650 V2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||4.1||20.1||24.2||JMM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||4.4||20.4||24.8||CH3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-10980XE CPU @ 3.00GHz (36 CPUs), ~3.0GHz&lt;br /&gt;
|NVIDIA RTX A6000&lt;br /&gt;
|48&lt;br /&gt;
|10752&lt;br /&gt;
|4.7&lt;br /&gt;
|22.7&lt;br /&gt;
|27.4&lt;br /&gt;
|CB2&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i5-13600HX (20 CPUs) @ ~2.6GHz ||NVIDIA GeForce RTX 4090 Laptop GPU||16||9728||5.3||22.2||27.5||LC2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i7-12700 (20 CPUs) @ ~2.1GHz ||NVIDIA GeForce RTX 3080||10||8704||4.3||23.7||28||RB1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3080||10||8704||4.6||23.5||28.1||KW2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K (24 CPUs) ||NVIDIA RTX A5000||24||8192||4.4||24.1||28.5||SB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce RTX 3080||10||8704||4.7||24.0||28.7||CPM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2223 CPU @ 3.60GHz ||NVIDIA GeForce RTX 3090||24||10496||5.3||24.3||29.6||SSM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||4.7||25.7||30.4||ACH&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor ||NVIDIA TITAN RTX||24||4608||5.7||25.2||30.9||JGR&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2920X 12-Core Processor (24 CPUs) @ 3.5GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.1||25.9||31||CR5&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2145 CPU @ 3.70GHz (16 CPUs), ~3.7GHz&lt;br /&gt;
|NVIDIA RTX A5000&lt;br /&gt;
|24&lt;br /&gt;
|8192&lt;br /&gt;
|5.2&lt;br /&gt;
|26.3&lt;br /&gt;
|31.5&lt;br /&gt;
|CB3&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3950X 16-Core Processor ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.3||26.4||31.7||TRO&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.4||27.4||32.8||PY2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700k @ 4.00GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.7||27.7||33.4||VLD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700F CPU @ 2.90GHz ||NVIDIA GeForce RTX 3070||8||5888||5.0||28.8||33.8||NCV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.5||28.4||33.9||RL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ (5.10GHz) ||NVIDIA GeForce RTX 2080 (core 2100MHz, mem 8000MHz)||8||2944||5.5||28.7||34.2||RRB&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.9||28.4||34.3||HP2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.8||28.8||34.6||MA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.7||29.2||34.9||MA2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5950X 16-Core Processor ||NVIDIA GeForce RTX 3070||8||5888||5.5||29.7||35.2||JG2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900X CPU @ 3.50GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.6||29.9||35.5||MBL&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||6.4||29.5||35.9||JPI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla P100||16||3584||6.1||30.8||36.9||Google Cloud: Tesla P100&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 SUPER||8||3072||5.7||31.9||37.6||RH2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 6230R CPU @ 2.10GHz ||NVIDIA GRID RTX8000P-48Q||48||4608||6.8||31.0||37.8||VJ1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz (16 CPUs) ||NVIDIA RTX A4000||16||6144||5.8||32.0||37.8||JS2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700k @ 4.00GHz ||NVIDIA GeForce RTX 2080||8||2944||6.0||31.9||37.9||ANK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz ||NVIDIA GeForce RTX 2080 SUPER||8||3072||6.0||32.0||38.0||EFC&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs), ~3.2GHz&lt;br /&gt;
|NVIDIA A10-24Q&lt;br /&gt;
|22&lt;br /&gt;
|9216&lt;br /&gt;
|7.2&lt;br /&gt;
|31.4&lt;br /&gt;
|38.6&lt;br /&gt;
|YW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs) @ 3.2GHz ||NVIDIA A10-24Q||24||8192||7.2||31.4||38.6||CS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 CPUs), ~3.6GHz||NVIDIA GeForce RTX 2080 Ti||11||4352||5.4||33.3||38.7||PA1&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz (16 CPUs) ||NVIDIA GeForce RTX 3060 Ti (LHR) ||8||4864||5.7||33.3||39.0||DF1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i5-10600K CPU @ 4.10GHz ||NVIDIA GeForce RTX 2060 SUPER (core 1647MHz, mem 1750MHz)||8||2176||5.6||33.4||39.1||GZH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce RTX 2080||8||2944||5.6||34.3||40.7||PM2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2990WX 32-Core Processor ||NVIDIA TITAN Xp||12||3840||6.9||34.6||41.6||FLC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz (20 CPUs)||NVIDIA GeForce GTX 1080 Ti||11||3584||6.5||35.1||41.6||JB2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1620 v3 @ 3.50GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||6.4||35.8||42.2||JS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080||8||2944||6.5||36.0||42.5||ABA&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) w5-2455X (24 CPUs) @ ~3.2GHz ||NVIDIA RTX A4000||16||6144||7.2||35.3||42.5||CHR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||6.1||37.1||43.2||RH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||6.5||37.4||43.8||PM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz ||NVIDIA GeForce GTX 2070||8||2304||7.4||38.8||46.2||MMR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900 CPU @ 3.10GHz ||NVIDIA Quadro RTX 4000||8||2304||6.6||39.8||46.4||CB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||7.8||39.1||46.9||615&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||8.0||39.3||47.3||RCD&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 7 7840HS ||NVIDIA GeForce RTX 4060 Laptop GPU||8||3072||7.0||40.6||47.6||CH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||7.6||41.1||48.7||HNM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz ||NVIDIA GRID RTX6000P-4Q||24||4608||10.5||39.3||49.8||VDI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz (Laptop) ||NVIDIA GeForce RTX 2070||8||2304||7.7||42.8||50.5||ERX&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 5317 CPU @ 3.00GHz (48 CPUs) ||NVIDIA Tesla T4||16||2560||6.8||45.2||52.0||RJ1&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R)  Core(TM) i7-11700 @ 2.50GHz&lt;br /&gt;
|NVIDIA GeForce RTX  3060&lt;br /&gt;
|8&lt;br /&gt;
|3584&lt;br /&gt;
|7.68&lt;br /&gt;
|45.92&lt;br /&gt;
|53.6&lt;br /&gt;
|AUBNEW1DQ54G3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6900K CPU @ 3.20GHz ||NVIDIA GeForce GTX 1080||8||2560||8.0||47.4||55.3||BLK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla T4||16||2560||7.3||48.3||55.6||FM-NODE: Tesla T4&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz ||NVIDIA GeForce GTX 1080||8||2560||8.5||48.9||57.3||JM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1070||8||1920||8.2||51.9||60.0||SKI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 6130 CPU @ 2.10GHz ||NVIDIA Quadro P5000||16||2560||9.6||51.8||61.4||AR2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2235 CPU @ 3.80GHz (12 CPUs)||NVIDIA RTX A2000||6||3328||9.1||54.4||63.5||HDR-A2000&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz ||NVIDIA GeForce GTX 1070||8||1920||8.9||54.9||63.8||PY1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) Ultra 7 155H (22 CPUs) @ 1.4GHz ||NVIDIA GeForce RTX 4050 Laptop GPU||6||2560||7.9||59.4||67.3||AL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1630 v4 @ 3.70GHz ||NVIDIA GeForce GTX 1070||8||1920||10.3||59.3||69.5||DS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz ||NVIDIA GeForce GTX 1660||6||1408||9.4||61.0||70.4||JFP&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA Quadro P4000||8||1792||10.0||62.3||72.3||DS2&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz (16 CPUs) ||NVIDIA GeForce GTX 1650 SUPER||4||1280||10.3||64.6||74.9||TS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla P4||8||2560||10.4||69.0||79.4||Google Cloud: Tesla P4&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5820K CPU @ 3.30GHz ||NVIDIA GeForce GTX 980||4||2048||11.8||70.6||82.3||ZDO&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i9-11950H @ 2.60GHz (16 CPUs), ~2.6GHz&lt;br /&gt;
|NVIDIA RTX A2000 Laptop GPU&lt;br /&gt;
|4&lt;br /&gt;
|2560&lt;br /&gt;
|11.4&lt;br /&gt;
|72.6&lt;br /&gt;
|84.0&lt;br /&gt;
|SK1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz ||NVIDIA GeForce GTX TITAN Black||6||2880||13.1||76.1||89.2||AR1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz ||NVIDIA GeForce GTX 1060||6||1280||13.0||77.1||90.1||RSH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-2686 v4 @ 2.30GHz (64 CPUs), ~2.3GHz||NVIDIA Tesla M60||16||4096||12||82.7||94.7||SM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla K80||12||2496||11.3||83.5||94.8||Google Cloud: Tesla K80&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i3-8100 CPU @ 3.60GHz ||NVIDIA Tesla K40c||12||2880||12.3||83.1||95.3||NWE&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz ||NVIDIA Quadro T2000||4||1024||13.3||85.2||95.5||SSM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz (Laptop) ||NVIDIA GeForce GTX 980||4||2048||17.5||84.2||101.7||MRT&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz (16 CPUs), ~3.8GHz&lt;br /&gt;
|NVIDIA Quadro T1000&lt;br /&gt;
|4&lt;br /&gt;
|896&lt;br /&gt;
|13.6&lt;br /&gt;
|91.3&lt;br /&gt;
|104.9&lt;br /&gt;
|CB4&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i7-13800H (20 CPUs), ~2.5GHz&lt;br /&gt;
|NVIDIA RTX A500 Laptop GPU&lt;br /&gt;
|4&lt;br /&gt;
|2048&lt;br /&gt;
|14.8&lt;br /&gt;
|93.9&lt;br /&gt;
|108.7&lt;br /&gt;
|YB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz||NVIDIA Quadro P2000||5||1024||14.2||96||110.2||BL-DT01001&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz ||NVIDIA Quadro P2000||5||1024||15.8||100.1||115.9||CR2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1240 V2 @ 3.40GHz ||NVIDIA GeForce GTX 690||2||3072||18.4||114.4||132.8||MAV&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 1950X 16-Core Processor ||NVIDIA GeForce GTX 960||4||1024||18.6||123.3||141.6||CEV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz ||NVIDIA GeForce GTX 960||4||1024||19.9||127.2||147.1||VHD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz||NVIDIA GeForce GTX 1050 Ti||4||768||21.1||133.8||154.9||MJS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz||NVIDIA GeForce GTX 1050||2||640||20.6||139.1||159.7||JM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz||NVIDIA Quadro P2000||5||1024||22.1||142.5||164.6||KTC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz||NVIDIA Quadro P2000||5||1024||23.0||149.3||172.3||RL2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz||NVIDIA Quadro M2200||4||1024||23.2||198.7||222.0||GYB&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-1185G7 @ 3.00GHz||NVIDIA T500||4||986||29.3||197.5||226.8||TJS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz ||NVIDIA Quadro P1000||4||640||30.3||203.7||234.0||RL3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz ||NVIDIA Quadro K2200||4||640||32.5||211.3||243.8||JIW&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (6 CPUs) @ 3.2GHz||NVIDIA A10-4Q||24||8192||44.5||212.6||257.1||RBR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1505M v6 @ 3.00GHz ||NVIDIA Quadro M1200||4||640||84.9||278.4||363.3||GHY&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz ||NVIDIA GeForce GTX 940MX||2||384||65.6||479.0||544.6||EAS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz||NVIDIA GeForce 840M||2||384||70.6||526.3||595.9||CDH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz (Laptop)||NVIDIA GeForce GT 740M||2||384||102.3||694.0||796.3||HMM&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=High End GPU Results=&lt;br /&gt;
A number of additional benchmarking tests have been completed on a 5m and 2.5m model on a single GPU card. &lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Processor Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=24% | Graphics Card**&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | GPU RAM (GB)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Number of CUDA Cores*&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 5m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 2.5m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Combined Runtime (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#C5C5C5; font-weight:bold; color:white;&amp;quot; width=12% | System Name&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 9950X3D 16-Core Processor (32 CPUs), ~4.3GHz&lt;br /&gt;
|NVIDIA GeForce RTX 5090&lt;br /&gt;
|32&lt;br /&gt;
|21760&lt;br /&gt;
|73.3&lt;br /&gt;
|568.7&lt;br /&gt;
|642.0&lt;br /&gt;
|JW3&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz||NVIDIA GeForce RTX 4090||24||16384||103.3||811.2||914.5||JB1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900K (32 CPUs) @ 3.0GHz||NVIDIA GeForce RTX 4090||24||16384||105.9||813.7||919.6||TA1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i7-13700KF (24 CPUs), @ 3.4GHz||NVIDIA GeForce RTX 4090||24||16384||103.7||824.3||928.0||JW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 7950X 16-Core Processor (32 CPUs) @ 4.5GHz ||NVIDIA GeForce RTX 4090||24||16384||108.2||821.5||929.7||PSM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor (24 CPUs) @ 3.8GHz ||NVIDIA GeForce RTX 4090||24||16384||106.8||875.5||982.3||CR4&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor  (32 CPUs) @ 3.5GHz ||NVIDIA RTX 6000 Ada Generation||48||18176||119.6||877.8||997.4||JG3&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900 (24 CPUs) @ 2.4GHz ||NVIDIA GeForce RTX 4080||16||9728||139.5||1115.1||1254.6||JM3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla V100||16||5120||155.2||1172.9||1328.1||FM-NODE: Tesla V100&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||155.5||1176.2||1331.7||JMM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||158||1192.2||1350.2||CH3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-10900F CPU @ 3.70GHz  ||NVIDIA GeForce RTX 3090||24||10496||162.3||1192.4||1354.7||LJA&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3080 Ti||12||10240||159.7||1216.2||1375.9||GP1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K ||NVIDIA GeForce RTX 3090||24||10496||160.9||1240||1400.9||DD2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Silver 4114 CPU @ 2.20GHz  ||NVIDIA GeForce RTX 3090||24||10496||172.9||1249.8||1422.7||SIP&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3080||10||8704||178.9||1363.9||1542.8||KW2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||203.8||1523.9||1727.7||ACH&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 5 7600X 6-Core Processor ||NVIDIA GeForce RTX 2080 Ti||12||7680||190.2||1493.2||1683.4||HP1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor ||NVIDIA TITAN RTX||24||4608||201.2||1548.1||1749.3||JGR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||220.0||1634.5||1854.5||MA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||222.2||1648.7||1870.9||JPI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 CPUs), ~3.6GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||215.9||1678.7||1894.6||PA2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||255.4||1691.7||1947.1||HP2&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs), ~3.2GHz&lt;br /&gt;
|NVIDIA A10-24Q&lt;br /&gt;
|22&lt;br /&gt;
|9216&lt;br /&gt;
|242.3&lt;br /&gt;
|1856.5&lt;br /&gt;
|2098.8&lt;br /&gt;
|YW1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ (5.10GHz) ||NVIDIA GeForce RTX 2080 (core 2100MHz, mem 8000MHz)||8||2944||241.2||1863.5||2104.7||RRB&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5950X 16-Core Processor ||NVIDIA GeForce RTX 3070||8||5888||248.7||1928.6||2177.3||JG2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 SUPER||8||3072||257.3||1957.7||2215.0||RH2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce RTX 2080||8||2944||275.1||2147.4||2422.5||PM2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2990WX 32-Core Processor ||NVIDIA TITAN Xp||12||3840||296.0||2218.4||2514.4||FLC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1620 v3 @ 3.50GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||298.9||2290.1||2589.0||JS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||311.3||2345.1||2656.4||615&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||310.3||2377.2||2687.5||RCD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||308.7||2384.7||2693.4||RH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||311.9||2404.9||2716.7||PM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||324.8||2475.3||2800.1||HNM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6900K CPU @ 3.20GHz ||NVIDIA GeForce GTX 1080||8||2560||439.0||3379.3||3818.2||BLK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1070||8||1920||475.5||3788.2||4263.7||SKI&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;pre&amp;gt; * it is noted that the number of CUDA cores is not provided as an output from the &#039;&#039;&#039;dxdiag&#039;&#039;&#039; command and this information has been sourced from the nvidia website.&lt;br /&gt;
** The output cpu.txt only provides the &#039;out of the box&#039; processor speed. If you have overclocked your cpu and/or gpu, please send these details to TUFLOW Support so we can add the overclocked data in brackets.  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Hardware_Benchmarking | Back to TUFLOW Benchmarking]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking_-_Results&amp;diff=45267</id>
		<title>Hardware Benchmarking - Results</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking_-_Results&amp;diff=45267"/>
		<updated>2025-12-23T03:54:51Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* GPU Results */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=CPU Results=&lt;br /&gt;
The following table summarises the runtimes for a range of computers.  More will be added when additional results are obtained.  The table is ordered based on the combined 20m Classic and HPC CPU runtimes, with the fastest computers at the top of the table.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Runtimes for CPU benchmarks&#039;&#039;&#039;&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Processor Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | Processor Frequency (GHz)**&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | RAM size (GB)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | RAM frequency (MHz)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | Classic 20m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | HPC CPU 20m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | Runtime Combined (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#C5C5C5; font-weight:bold; color:white;&amp;quot; width=12% | System Name&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz||3.2||128||5200||32.7||108.6||141.3||JB1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz||3.2||64||5600||36.7||114.2||150.9||TM1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900F (32 CPUs) @ 2.0GHz ||2.0||128||4000||41.2||124.1||165.3||AW1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K (24 CPUs)||3.2||128||4800||38.5||127.0||165.5||SB1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 7950X 16-Core Processor (32 CPUs) @ 4.5GHz||4.5||64||4800||33.4||136.0||169.4||PSM&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K||3.2||128||3200||40.7||129.9||170.6||DD2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i7-12700 (20 CPUs) @ ~2.1GHz||2.1||64||4800||41||137.2||178.2||RB1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 7 7800X3D 8-Core Processor (16 CPUs) @ ~4.2GHz||4.2||32||4800||35.5||162.8||198.3||LC1&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz (16 CPUs)||2.5||16||3200||48.4||170.5||218.9||TS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) w5-2455X (24 CPUs) @ ~3.2GHz||3.2||64||4800||53.3||169.1||222.4||CHR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-10900K CPU @ 3.70GHz||3.7||128||3200||56.9||173.8||230.7||CH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ (5.10GHz)||(5.1)||16||4000||58.2||179.9||238.1||RRB&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 5 7600X 6-Core Processor||4.7||32||4800||39.0||175.7||214.7||HP1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz||3.7||64||3000||55.7||186.2||241.9||RH1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor||3.8||64||3200||45.9||203.1||249.0||CH3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900 CPU @ 3.10GHz||3.1||32||2666||61.7||190.0||251.7||CB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz||3.6||32||2133||61.4||190.4||251.8||RH2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 CPUs), ~3.6GHz||3.6||64||2133||62.7||191.1||253.8||PA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz||3.7||32||2933||62.1||192.8||254.9||DS2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz||3.6||32||2666||71.2||184.3||255.5||ABA&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz||3.6||32||2666||62.1||193.7||255.8||MA2&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs), ~3.2GHz&lt;br /&gt;
|3.2&lt;br /&gt;
|450&lt;br /&gt;
|&lt;br /&gt;
|50.0&lt;br /&gt;
|211.6&lt;br /&gt;
|261.6&lt;br /&gt;
|YW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 3970X 32-Core Processor||3.7||256||2400||49.5||212.1||261.6||CH2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3950X 16-Core Processor||3.5||128||2800||55.9||210.0||265.9||TRO&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (6 CPUs) @ 3.2GHz||3.2||56||N/A||49.1||218.9||268||RBR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz||3.7||64||2133||67.0||202.5||269.5||RL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900X CPU @ 3.50GHz||3.5||128||2133||72.7||202.1||274.8||MBL&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||64||2133||67.5||208.6||276.1||SKI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||64||2133||68.5||208.8||277.3||PM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz||3.6||32||2666||66.8||211.6||278.1||MA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz||3.2||16||2667||68.2||211.8||280.0||CR2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz||2.7||32||2667||68.0||216.0||284.0||RL3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||32||2113||68.2||217.9||286.1||HP2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz||2.7||32||2667||67.7||219.1||286.8||RL2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||64||2133||70.5||218.8||289.3||PM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz||2.9||16||2667||77.5||212.6||290.1||KTC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz||3.7||32||2933||75.2||219.8||295||BL-DT01001&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor||3.5||128||2666||67.9||230.8||298.7||JGR&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor  (32 CPUs) @ 3.5GHz||3.5||128||2666||66.3||234.7||301||JG3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz||3.3||32||2400||80.5||221.9||302.4||JM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz||3.6||16||2400||72.8||230.6||303.4||RSH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz||3.6||64||2666||85.4||218.8||304.2||JPI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz||3.6||64||2666||83.7||225.2||308.9||HNM&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i9-11950H @ 2.60GHz (16 CPUs), ~2.6GHz&lt;br /&gt;
|2.6&lt;br /&gt;
|32&lt;br /&gt;
|3200&lt;br /&gt;
|66.6&lt;br /&gt;
|243.3&lt;br /&gt;
|309.9&lt;br /&gt;
|SK1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz||4.0||32||2400||91.2||223.3||314.5||BRD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1630 v4 @ 3.70GHz||3.7||64||2400||84.5||236.6||321.2||DS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6900K CPU @ 3.20GHz||3.2||128||2133||83.4||243.1||326.5||BLK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) Ultra 7 155H (22 CPUs) @ 1.4GHz||1.4||16||7467||173.8||152.8||326.6||AL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz (20 CPUs)||3.7||64||2933||95.4||231.3||326.7||JB2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz||3.4||128||2400||85.3||247.7||332.9||615&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz||3.0||64||2400||106.3||226.7||333.0||MRT&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz||3.4||16||2133||80.7||253.4||334.1||VHD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 6130 CPU @ 2.10GHz||2.1||64||2666||83.9||251.2||335.1||AR2&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 7V12 64-Core Processor (16 CPUs) ||2.4||57||NA||63.5||277.6||341.1||CS2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 1950X 16-Core Processor||3.4||16||2666||81.9||277.3||359.2||CEV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1505M v6 @ 3.00GHz||3.0||32||2400||84.9||278.4||363.3||GHY&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz||3.4||64||2133||82.3||289.8||372.1||JIW&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz||3.4||32||1666||108.9||270.0||378.9||AR1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2235 CPU @ 3.80GHz (12 CPUs)||3.8||64||3200||87.8||294.2||382||HDR-A2000&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5950X 16-Core Processor||3.4||32||3400||39.7||343.0||382.7||JG2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4810MQ CPU @ 2.80GHz||2.8||32||1600||119.7||280.8||400.5||SBC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5820K CPU @ 3.30GHz||3.3||64||2133||118.2||287.8||406.0||ZDO&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz||2.7||16||2133||90.4||321.7||412.1||EAS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz||3.3||16||2133||84.8||336.9||421.7||JM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz||3.0||64||2133||100.3||323||423.3||MON&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1240 V2 @ 3.40GHz||3.4||32||1600||126.4||299.7||426.1||MAV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-1185G7 @ 3.00GHz ||3.0||4||986||84.0||351.4||435.4||TJS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz ||3.5||16||1333||125.9||320.5||446.4||EFC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz||1.9||16||1800||100.1||347.0||447.1||SM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700F CPU @ 2.90GHz ||2.9||16||2900||63.3||385.0||448.3||NCV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i5-10600K CPU @ 4.10GHz ||4.1||16||4104||62.7||386.6||449.3||GZH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz ||2.4||128||2394||130.5||331.5||462||VDI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz||2.6||24||1600||100.5||378.6||479.1||CDH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1650 0 @ 3.20GHz||3.2||32||1600||143.2||343.1||486.3||MPR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz||3.2||8||1600||142.0||349.4||491.4||CR1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-2667 v2 @ 3.30GHz||3.3||16||N/A||196.8||331.5||528.3||Private Cloud&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4712HQ CPU @ 2.30GHz (Laptop)||2.3||8||1600||145.2||414.4||559.6||MNG&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU X5680  @ 3.33GHz||3.33||72||1333||165.7||400.6||566.3||WTM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz (Laptop)||2.4||8||1600||137.8||795.0||932.8||HMM&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
=GPU Results=&lt;br /&gt;
The following table summarises the runtimes for a range of computers.  More will be added when additional results are obtained.  The table is ordered based on the combined 20m and 10m runtimes with the fastest computers at the top of the table.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The HPC GPU benchmark only uses a single GPU card.  TUFLOW HPC GPU can be run across multiple NVIDIA GPU devices.  However, the benefits of these are typically more noticeable for larger models with more than 1 million cells.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Runtimes for GPU benchmarks&#039;&#039;&#039;&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Processor Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=24% | Graphics Card**&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | GPU RAM (GB)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Number of CUDA Cores*&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 20m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 10m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Combined Runtime (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#C5C5C5; font-weight:bold; color:white;&amp;quot; width=12% | System Name&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 9950X3D 16-Core Processor (32 CPUs), ~4.3GHz&lt;br /&gt;
|NVIDIA GeForce RTX 5090&lt;br /&gt;
|32&lt;br /&gt;
|21760&lt;br /&gt;
|2.5&lt;br /&gt;
|9.5&lt;br /&gt;
|12.0&lt;br /&gt;
|JW3&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i7-13700KF (24 CPUs), @ 3.4GHz ||NVIDIA GeForce RTX 4090||24||16384||2.4||11.6||14.0||JW1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz ||NVIDIA GeForce RTX 4090||24||16384||2.5||12.1||14.6||JB1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900K (32 CPUs) @ 3.0GHz ||NVIDIA GeForce RTX 4090||24||16384||2.7||12.7||15.4||TA1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 7950X 16-Core Processor (32 CPUs) @ 4.5GHz ||NVIDIA GeForce RTX 4090||24||16384||2.9||12.7||15.6||PSM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor (24 CPUs) @ 3.8GHz ||NVIDIA GeForce RTX 4090||24||16384||3.1||13.3||16.4||CR4&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-14900K (32 CPUs) @ ~3.2GHz||NVIDIA GeForce RTX 4080 Super||16||10240||2.8||14.5||17.3||DF2&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz ||NVIDIA GeForce RTX 4080||16||9728||2.8||14.7||17.5||TM1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900 (24 CPUs) @ 2.4GHz ||NVIDIA GeForce RTX 4080||16||9728||2.8||14.7||17.5||JM3&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900F (32 CPUs) @ 2.0GHz ||NVIDIA GeForce RTX 4080||16||9728||3.2||15.0||18.2||AW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 7 7800X3D 8-Core Processor (16 CPUs)@ ~4.2GHz||NVIDIA GeForce RTX 4080 SUPER||16||10240||3.2||15.7||18.9||LC1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor  (32 CPUs) @ 3.5GHz||NVIDIA RTX 6000 Ada Generation||48||18176||4.9||14.2||19.1||JG3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-2697 v4 @ 2.30GHz (72 CPUs)||NVIDIA GeForce RTX 4090||24||16384||3.9||16.2||20.1||CS3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla V100||16||5120||3.4||18.5||21.9||FM-NODE: Tesla V100&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 5 7600X 6-Core Processor ||NVIDIA GeForce RTX 4070 Ti||12||7680||3.4||19.2||22.6||HP1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3080 Ti||12||10240||3.8||19.2||23.0||RS1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K ||NVIDIA GeForce RTX 3090||24||10496||3.7||19.4||23.1||DD2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R)  Core(TM) i7-12700F&lt;br /&gt;
|NVIDIA GeForce RTX  3080 Ti&lt;br /&gt;
|12&lt;br /&gt;
|10240&lt;br /&gt;
|3.75&lt;br /&gt;
|19.57&lt;br /&gt;
|23.32&lt;br /&gt;
|AUBNE1PC6602&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3080 Ti||12||10240||4.0||19.6||23.6||GP1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 5317 CPU @ 3.00GHz (48 CPUs) ||NVIDIA A40||48||10752||3.5||20.3||23.8||Lenovo SR650 V2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||4.1||20.1||24.2||JMM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||4.4||20.4||24.8||CH3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-10980XE CPU @ 3.00GHz (36 CPUs), ~3.0GHz&lt;br /&gt;
|NVIDIA RTX A6000&lt;br /&gt;
|48&lt;br /&gt;
|10752&lt;br /&gt;
|4.7&lt;br /&gt;
|22.7&lt;br /&gt;
|27.4&lt;br /&gt;
|CB2&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i5-13600HX (20 CPUs) @ ~2.6GHz ||NVIDIA GeForce RTX 4090 Laptop GPU||16||9728||5.3||22.2||27.5||LC2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i7-12700 (20 CPUs) @ ~2.1GHz ||NVIDIA GeForce RTX 3080||10||8704||4.3||23.7||28||RB1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3080||10||8704||4.6||23.5||28.1||KW2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K (24 CPUs) ||NVIDIA RTX A5000||24||8192||4.4||24.1||28.5||SB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce RTX 3080||10||8704||4.7||24.0||28.7||CPM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2223 CPU @ 3.60GHz ||NVIDIA GeForce RTX 3090||24||10496||5.3||24.3||29.6||SSM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||4.7||25.7||30.4||ACH&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor ||NVIDIA TITAN RTX||24||4608||5.7||25.2||30.9||JGR&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2920X 12-Core Processor (24 CPUs) @ 3.5GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.1||25.9||31||CR5&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2145 CPU @ 3.70GHz (16 CPUs), ~3.7GHz&lt;br /&gt;
|NVIDIA RTX A5000&lt;br /&gt;
|24&lt;br /&gt;
|8192&lt;br /&gt;
|5.2&lt;br /&gt;
|26.3&lt;br /&gt;
|31.5&lt;br /&gt;
|CB3&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3950X 16-Core Processor ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.3||26.4||31.7||TRO&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.4||27.4||32.8||PY2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700k @ 4.00GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.7||27.7||33.4||VLD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700F CPU @ 2.90GHz ||NVIDIA GeForce RTX 3070||8||5888||5.0||28.8||33.8||NCV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.5||28.4||33.9||RL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ (5.10GHz) ||NVIDIA GeForce RTX 2080 (core 2100MHz, mem 8000MHz)||8||2944||5.5||28.7||34.2||RRB&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.9||28.4||34.3||HP2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.8||28.8||34.6||MA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.7||29.2||34.9||MA2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5950X 16-Core Processor ||NVIDIA GeForce RTX 3070||8||5888||5.5||29.7||35.2||JG2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900X CPU @ 3.50GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.6||29.9||35.5||MBL&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||6.4||29.5||35.9||JPI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla P100||16||3584||6.1||30.8||36.9||Google Cloud: Tesla P100&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 SUPER||8||3072||5.7||31.9||37.6||RH2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 6230R CPU @ 2.10GHz ||NVIDIA GRID RTX8000P-48Q||48||4608||6.8||31.0||37.8||VJ1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz (16 CPUs) ||NVIDIA RTX A4000||16||6144||5.8||32.0||37.8||JS2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700k @ 4.00GHz ||NVIDIA GeForce RTX 2080||8||2944||6.0||31.9||37.9||ANK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz ||NVIDIA GeForce RTX 2080 SUPER||8||3072||6.0||32.0||38.0||EFC&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs), ~3.2GHz&lt;br /&gt;
|NVIDIA A10-24Q&lt;br /&gt;
|22&lt;br /&gt;
|9216&lt;br /&gt;
|7.2&lt;br /&gt;
|31.4&lt;br /&gt;
|38.6&lt;br /&gt;
|YW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs) @ 3.2GHz ||NVIDIA A10-24Q||24||8192||7.2||31.4||38.6||CS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 CPUs), ~3.6GHz||NVIDIA GeForce RTX 2080 Ti||11||4352||5.4||33.3||38.7||PA1&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz (16 CPUs) ||NVIDIA GeForce RTX 3060 Ti (LHR) ||8||4864||5.7||33.3||39.0||DF1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i5-10600K CPU @ 4.10GHz ||NVIDIA GeForce RTX 2060 SUPER (core 1647MHz, mem 1750MHz)||8||2176||5.6||33.4||39.1||GZH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce RTX 2080||8||2944||5.6||34.3||40.7||PM2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2990WX 32-Core Processor ||NVIDIA TITAN Xp||12||3840||6.9||34.6||41.6||FLC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz (20 CPUs)||NVIDIA GeForce GTX 1080 Ti||11||3584||6.5||35.1||41.6||JB2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1620 v3 @ 3.50GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||6.4||35.8||42.2||JS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080||8||2944||6.5||36.0||42.5||ABA&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) w5-2455X (24 CPUs) @ ~3.2GHz ||NVIDIA RTX A4000||16||6144||7.2||35.3||42.5||CHR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||6.1||37.1||43.2||RH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||6.5||37.4||43.8||PM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz ||NVIDIA GeForce GTX 2070||8||2304||7.4||38.8||46.2||MMR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900 CPU @ 3.10GHz ||NVIDIA Quadro RTX 4000||8||2304||6.6||39.8||46.4||CB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||7.8||39.1||46.9||615&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||8.0||39.3||47.3||RCD&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 7 7840HS ||NVIDIA GeForce RTX 4060 Laptop GPU||8||3072||7.0||40.6||47.6||CH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||7.6||41.1||48.7||HNM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz ||NVIDIA GRID RTX6000P-4Q||24||4608||10.5||39.3||49.8||VDI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz (Laptop) ||NVIDIA GeForce RTX 2070||8||2304||7.7||42.8||50.5||ERX&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 5317 CPU @ 3.00GHz (48 CPUs) ||NVIDIA Tesla T4||16||2560||6.8||45.2||52.0||RJ1&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R)  Core(TM) i7-11700 @ 2.50GHz&lt;br /&gt;
|NVIDIA GeForce RTX  3060&lt;br /&gt;
|8&lt;br /&gt;
|3584&lt;br /&gt;
|7.68&lt;br /&gt;
|45.92&lt;br /&gt;
|53.6&lt;br /&gt;
|AUBNEW1DQ54G3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6900K CPU @ 3.20GHz ||NVIDIA GeForce GTX 1080||8||2560||8.0||47.4||55.3||BLK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla T4||16||2560||7.3||48.3||55.6||FM-NODE: Tesla T4&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz ||NVIDIA GeForce GTX 1080||8||2560||8.5||48.9||57.3||JM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1070||8||1920||8.2||51.9||60.0||SKI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 6130 CPU @ 2.10GHz ||NVIDIA Quadro P5000||16||2560||9.6||51.8||61.4||AR2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2235 CPU @ 3.80GHz (12 CPUs)||NVIDIA RTX A2000||6||3328||9.1||54.4||63.5||HDR-A2000&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz ||NVIDIA GeForce GTX 1070||8||1920||8.9||54.9||63.8||PY1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) Ultra 7 155H (22 CPUs) @ 1.4GHz ||NVIDIA GeForce RTX 4050 Laptop GPU||6||2560||7.9||59.4||67.3||AL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1630 v4 @ 3.70GHz ||NVIDIA GeForce GTX 1070||8||1920||10.3||59.3||69.5||DS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz ||NVIDIA GeForce GTX 1660||6||1408||9.4||61.0||70.4||JFP&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA Quadro P4000||8||1792||10.0||62.3||72.3||DS2&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz (16 CPUs) ||NVIDIA GeForce GTX 1650 SUPER||4||1280||10.3||64.6||74.9||TS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla P4||8||2560||10.4||69.0||79.4||Google Cloud: Tesla P4&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5820K CPU @ 3.30GHz ||NVIDIA GeForce GTX 980||4||2048||11.8||70.6||82.3||ZDO&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i9-11950H @ 2.60GHz (16 CPUs), ~2.6GHz&lt;br /&gt;
|NVIDIA RTX A2000 Laptop GPU&lt;br /&gt;
|4&lt;br /&gt;
|2560&lt;br /&gt;
|11.4&lt;br /&gt;
|72.6&lt;br /&gt;
|84.0&lt;br /&gt;
|SK1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz ||NVIDIA GeForce GTX TITAN Black||6||2880||13.1||76.1||89.2||AR1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz ||NVIDIA GeForce GTX 1060||6||1280||13.0||77.1||90.1||RSH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-2686 v4 @ 2.30GHz (64 CPUs), ~2.3GHz||NVIDIA Tesla M60||16||4096||12||82.7||94.7||SM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla K80||12||2496||11.3||83.5||94.8||Google Cloud: Tesla K80&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i3-8100 CPU @ 3.60GHz ||NVIDIA Tesla K40c||12||2880||12.3||83.1||95.3||NWE&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz ||NVIDIA Quadro T2000||4||1024||13.3||85.2||95.5||SSM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz (Laptop) ||NVIDIA GeForce GTX 980||4||2048||17.5||84.2||101.7||MRT&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz (16 CPUs), ~3.8GHz&lt;br /&gt;
|NVIDIA Quadro T1000&lt;br /&gt;
|4&lt;br /&gt;
|896&lt;br /&gt;
|13.6&lt;br /&gt;
|91.3&lt;br /&gt;
|104.9&lt;br /&gt;
|CB4&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i7-13800H (20 CPUs), ~2.5GHz&lt;br /&gt;
|NVIDIA RTX A500 Laptop GPU&lt;br /&gt;
|4&lt;br /&gt;
|2048&lt;br /&gt;
|14.8&lt;br /&gt;
|93.9&lt;br /&gt;
|108.7&lt;br /&gt;
|YB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz||NVIDIA Quadro P2000||5||1024||14.2||96||110.2||BL-DT01001&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz ||NVIDIA Quadro P2000||5||1024||15.8||100.1||115.9||CR2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1240 V2 @ 3.40GHz ||NVIDIA GeForce GTX 690||2||3072||18.4||114.4||132.8||MAV&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 1950X 16-Core Processor ||NVIDIA GeForce GTX 960||4||1024||18.6||123.3||141.6||CEV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz ||NVIDIA GeForce GTX 960||4||1024||19.9||127.2||147.1||VHD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz||NVIDIA GeForce GTX 1050 Ti||4||768||21.1||133.8||154.9||MJS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz||NVIDIA GeForce GTX 1050||2||640||20.6||139.1||159.7||JM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz||NVIDIA Quadro P2000||5||1024||22.1||142.5||164.6||KTC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz||NVIDIA Quadro P2000||5||1024||23.0||149.3||172.3||RL2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz||NVIDIA Quadro M2200||4||1024||23.2||198.7||222.0||GYB&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-1185G7 @ 3.00GHz||NVIDIA T500||4||986||29.3||197.5||226.8||TJS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz ||NVIDIA Quadro P1000||4||640||30.3||203.7||234.0||RL3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz ||NVIDIA Quadro K2200||4||640||32.5||211.3||243.8||JIW&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (6 CPUs) @ 3.2GHz||NVIDIA A10-4Q||24||8192||44.5||212.6||257.1||RBR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1505M v6 @ 3.00GHz ||NVIDIA Quadro M1200||4||640||84.9||278.4||363.3||GHY&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz ||NVIDIA GeForce GTX 940MX||2||384||65.6||479.0||544.6||EAS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz||NVIDIA GeForce 840M||2||384||70.6||526.3||595.9||CDH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz (Laptop)||NVIDIA GeForce GT 740M||2||384||102.3||694.0||796.3||HMM&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=High End GPU Results=&lt;br /&gt;
A number of additional benchmarking tests have been completed on a 5m and 2.5m model on a single GPU card. &lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Processor Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=24% | Graphics Card**&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | GPU RAM (GB)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Number of CUDA Cores*&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 5m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 2.5m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Combined Runtime (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#C5C5C5; font-weight:bold; color:white;&amp;quot; width=12% | System Name&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 9950X3D 16-Core Processor (32 CPUs), ~4.3GHz&lt;br /&gt;
|NVIDIA GeForce RTX 5090&lt;br /&gt;
|32&lt;br /&gt;
|21760&lt;br /&gt;
|73.3&lt;br /&gt;
|568.7&lt;br /&gt;
|642.0&lt;br /&gt;
|JW3&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz||NVIDIA GeForce RTX 4090||24||16384||103.3||811.2||914.5||JB1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900K (32 CPUs) @ 3.0GHz||NVIDIA GeForce RTX 4090||24||16384||105.9||813.7||919.6||TA1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i7-13700KF (24 CPUs), @ 3.4GHz||NVIDIA GeForce RTX 4090||24||16384||103.7||824.3||928.0||JW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 7950X 16-Core Processor (32 CPUs) @ 4.5GHz ||NVIDIA GeForce RTX 4090||24||16384||108.2||821.5||929.7||PSM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor (24 CPUs) @ 3.8GHz ||NVIDIA GeForce RTX 4090||24||16384||106.8||875.5||982.3||CR4&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor  (32 CPUs) @ 3.5GHz ||NVIDIA RTX 6000 Ada Generation||48||18176||119.6||877.8||997.4||JG3&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900 (24 CPUs) @ 2.4GHz ||NVIDIA GeForce RTX 4080||16||9728||139.5||1115.1||1254.6||JM3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla V100||16||5120||155.2||1172.9||1328.1||FM-NODE: Tesla V100&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||155.5||1176.2||1331.7||JMM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||158||1192.2||1350.2||CH3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-10900F CPU @ 3.70GHz  ||NVIDIA GeForce RTX 3090||24||10496||162.3||1192.4||1354.7||LJA&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3080 Ti||12||10240||159.7||1216.2||1375.9||GP1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K ||NVIDIA GeForce RTX 3090||24||10496||160.9||1240||1400.9||DD2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Silver 4114 CPU @ 2.20GHz  ||NVIDIA GeForce RTX 3090||24||10496||172.9||1249.8||1422.7||SIP&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3080||10||8704||178.9||1363.9||1542.8||KW2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||203.8||1523.9||1727.7||ACH&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor ||NVIDIA TITAN RTX||24||4608||201.2||1548.1||1749.3||JGR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||220.0||1634.5||1854.5||MA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||222.2||1648.7||1870.9||JPI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 CPUs), ~3.6GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||215.9||1678.7||1894.6||PA2&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs), ~3.2GHz&lt;br /&gt;
|NVIDIA A10-24Q&lt;br /&gt;
|22&lt;br /&gt;
|9216&lt;br /&gt;
|242.3&lt;br /&gt;
|1856.5&lt;br /&gt;
|2098.8&lt;br /&gt;
|YW1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ (5.10GHz) ||NVIDIA GeForce RTX 2080 (core 2100MHz, mem 8000MHz)||8||2944||241.2||1863.5||2104.7||RRB&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5950X 16-Core Processor ||NVIDIA GeForce RTX 3070||8||5888||248.7||1928.6||2177.3||JG2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 SUPER||8||3072||257.3||1957.7||2215.0||RH2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce RTX 2080||8||2944||275.1||2147.4||2422.5||PM2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2990WX 32-Core Processor ||NVIDIA TITAN Xp||12||3840||296.0||2218.4||2514.4||FLC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1620 v3 @ 3.50GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||298.9||2290.1||2589.0||JS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||311.3||2345.1||2656.4||615&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||310.3||2377.2||2687.5||RCD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||308.7||2384.7||2693.4||RH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||311.9||2404.9||2716.7||PM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||324.8||2475.3||2800.1||HNM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6900K CPU @ 3.20GHz ||NVIDIA GeForce GTX 1080||8||2560||439.0||3379.3||3818.2||BLK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1070||8||1920||475.5||3788.2||4263.7||SKI&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;pre&amp;gt; * it is noted that the number of CUDA cores is not provided as an output from the &#039;&#039;&#039;dxdiag&#039;&#039;&#039; command and this information has been sourced from the nvidia website.&lt;br /&gt;
** The output cpu.txt only provides the &#039;out of the box&#039; processor speed. If you have overclocked your cpu and/or gpu, please send these details to TUFLOW Support so we can add the overclocked data in brackets.  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Hardware_Benchmarking | Back to TUFLOW Benchmarking]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking_-_Results&amp;diff=45266</id>
		<title>Hardware Benchmarking - Results</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking_-_Results&amp;diff=45266"/>
		<updated>2025-12-23T03:50:07Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=CPU Results=&lt;br /&gt;
The following table summarises the runtimes for a range of computers.  More will be added when additional results are obtained.  The table is ordered based on the combined 20m Classic and HPC CPU runtimes, with the fastest computers at the top of the table.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Runtimes for CPU benchmarks&#039;&#039;&#039;&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Processor Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | Processor Frequency (GHz)**&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | RAM size (GB)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | RAM frequency (MHz)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | Classic 20m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | HPC CPU 20m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10% | Runtime Combined (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#C5C5C5; font-weight:bold; color:white;&amp;quot; width=12% | System Name&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz||3.2||128||5200||32.7||108.6||141.3||JB1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz||3.2||64||5600||36.7||114.2||150.9||TM1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900F (32 CPUs) @ 2.0GHz ||2.0||128||4000||41.2||124.1||165.3||AW1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K (24 CPUs)||3.2||128||4800||38.5||127.0||165.5||SB1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 7950X 16-Core Processor (32 CPUs) @ 4.5GHz||4.5||64||4800||33.4||136.0||169.4||PSM&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K||3.2||128||3200||40.7||129.9||170.6||DD2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i7-12700 (20 CPUs) @ ~2.1GHz||2.1||64||4800||41||137.2||178.2||RB1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 7 7800X3D 8-Core Processor (16 CPUs) @ ~4.2GHz||4.2||32||4800||35.5||162.8||198.3||LC1&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz (16 CPUs)||2.5||16||3200||48.4||170.5||218.9||TS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) w5-2455X (24 CPUs) @ ~3.2GHz||3.2||64||4800||53.3||169.1||222.4||CHR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-10900K CPU @ 3.70GHz||3.7||128||3200||56.9||173.8||230.7||CH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ (5.10GHz)||(5.1)||16||4000||58.2||179.9||238.1||RRB&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 5 7600X 6-Core Processor||4.7||32||4800||39.0||175.7||214.7||HP1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz||3.7||64||3000||55.7||186.2||241.9||RH1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor||3.8||64||3200||45.9||203.1||249.0||CH3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900 CPU @ 3.10GHz||3.1||32||2666||61.7||190.0||251.7||CB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz||3.6||32||2133||61.4||190.4||251.8||RH2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 CPUs), ~3.6GHz||3.6||64||2133||62.7||191.1||253.8||PA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz||3.7||32||2933||62.1||192.8||254.9||DS2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz||3.6||32||2666||71.2||184.3||255.5||ABA&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz||3.6||32||2666||62.1||193.7||255.8||MA2&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs), ~3.2GHz&lt;br /&gt;
|3.2&lt;br /&gt;
|450&lt;br /&gt;
|&lt;br /&gt;
|50.0&lt;br /&gt;
|211.6&lt;br /&gt;
|261.6&lt;br /&gt;
|YW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 3970X 32-Core Processor||3.7||256||2400||49.5||212.1||261.6||CH2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3950X 16-Core Processor||3.5||128||2800||55.9||210.0||265.9||TRO&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (6 CPUs) @ 3.2GHz||3.2||56||N/A||49.1||218.9||268||RBR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz||3.7||64||2133||67.0||202.5||269.5||RL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900X CPU @ 3.50GHz||3.5||128||2133||72.7||202.1||274.8||MBL&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||64||2133||67.5||208.6||276.1||SKI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||64||2133||68.5||208.8||277.3||PM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz||3.6||32||2666||66.8||211.6||278.1||MA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz||3.2||16||2667||68.2||211.8||280.0||CR2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz||2.7||32||2667||68.0||216.0||284.0||RL3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||32||2113||68.2||217.9||286.1||HP2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz||2.7||32||2667||67.7||219.1||286.8||RL2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz||4.2||64||2133||70.5||218.8||289.3||PM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz||2.9||16||2667||77.5||212.6||290.1||KTC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz||3.7||32||2933||75.2||219.8||295||BL-DT01001&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor||3.5||128||2666||67.9||230.8||298.7||JGR&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor  (32 CPUs) @ 3.5GHz||3.5||128||2666||66.3||234.7||301||JG3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz||3.3||32||2400||80.5||221.9||302.4||JM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz||3.6||16||2400||72.8||230.6||303.4||RSH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz||3.6||64||2666||85.4||218.8||304.2||JPI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz||3.6||64||2666||83.7||225.2||308.9||HNM&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i9-11950H @ 2.60GHz (16 CPUs), ~2.6GHz&lt;br /&gt;
|2.6&lt;br /&gt;
|32&lt;br /&gt;
|3200&lt;br /&gt;
|66.6&lt;br /&gt;
|243.3&lt;br /&gt;
|309.9&lt;br /&gt;
|SK1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4790K CPU @ 4.00GHz||4.0||32||2400||91.2||223.3||314.5||BRD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1630 v4 @ 3.70GHz||3.7||64||2400||84.5||236.6||321.2||DS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6900K CPU @ 3.20GHz||3.2||128||2133||83.4||243.1||326.5||BLK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) Ultra 7 155H (22 CPUs) @ 1.4GHz||1.4||16||7467||173.8||152.8||326.6||AL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz (20 CPUs)||3.7||64||2933||95.4||231.3||326.7||JB2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz||3.4||128||2400||85.3||247.7||332.9||615&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz||3.0||64||2400||106.3||226.7||333.0||MRT&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz||3.4||16||2133||80.7||253.4||334.1||VHD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 6130 CPU @ 2.10GHz||2.1||64||2666||83.9||251.2||335.1||AR2&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 7V12 64-Core Processor (16 CPUs) ||2.4||57||NA||63.5||277.6||341.1||CS2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 1950X 16-Core Processor||3.4||16||2666||81.9||277.3||359.2||CEV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1505M v6 @ 3.00GHz||3.0||32||2400||84.9||278.4||363.3||GHY&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz||3.4||64||2133||82.3||289.8||372.1||JIW&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz||3.4||32||1666||108.9||270.0||378.9||AR1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2235 CPU @ 3.80GHz (12 CPUs)||3.8||64||3200||87.8||294.2||382||HDR-A2000&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5950X 16-Core Processor||3.4||32||3400||39.7||343.0||382.7||JG2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4810MQ CPU @ 2.80GHz||2.8||32||1600||119.7||280.8||400.5||SBC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5820K CPU @ 3.30GHz||3.3||64||2133||118.2||287.8||406.0||ZDO&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz||2.7||16||2133||90.4||321.7||412.1||EAS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz||3.3||16||2133||84.8||336.9||421.7||JM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz||3.0||64||2133||100.3||323||423.3||MON&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1240 V2 @ 3.40GHz||3.4||32||1600||126.4||299.7||426.1||MAV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-1185G7 @ 3.00GHz ||3.0||4||986||84.0||351.4||435.4||TJS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz ||3.5||16||1333||125.9||320.5||446.4||EFC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz||1.9||16||1800||100.1||347.0||447.1||SM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700F CPU @ 2.90GHz ||2.9||16||2900||63.3||385.0||448.3||NCV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i5-10600K CPU @ 4.10GHz ||4.1||16||4104||62.7||386.6||449.3||GZH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz ||2.4||128||2394||130.5||331.5||462||VDI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz||2.6||24||1600||100.5||378.6||479.1||CDH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1650 0 @ 3.20GHz||3.2||32||1600||143.2||343.1||486.3||MPR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i5-3470 CPU @ 3.20GHz||3.2||8||1600||142.0||349.4||491.4||CR1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-2667 v2 @ 3.30GHz||3.3||16||N/A||196.8||331.5||528.3||Private Cloud&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4712HQ CPU @ 2.30GHz (Laptop)||2.3||8||1600||145.2||414.4||559.6||MNG&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU X5680  @ 3.33GHz||3.33||72||1333||165.7||400.6||566.3||WTM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz (Laptop)||2.4||8||1600||137.8||795.0||932.8||HMM&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
=GPU Results=&lt;br /&gt;
The following table summarises the runtimes for a range of computers.  More will be added when additional results are obtained.  The table is ordered based on the combined 20m and 10m runtimes with the fastest computers at the top of the table.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The HPC GPU benchmark only uses a single GPU card.  TUFLOW HPC GPU can be run across multiple NVIDIA GPU devices.  However, the benefits of these are typically more noticeable for larger models with more than 1 million cells.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Runtimes for GPU benchmarks&#039;&#039;&#039;&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Processor Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=24% | Graphics Card**&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | GPU RAM (GB)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Number of CUDA Cores*&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 20m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 10m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Combined Runtime (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#C5C5C5; font-weight:bold; color:white;&amp;quot; width=12% | System Name&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 9950X3D 16-Core Processor (32 CPUs), ~4.3GHz&lt;br /&gt;
|NVIDIA GeForce RTX 5090&lt;br /&gt;
|32&lt;br /&gt;
|21760&lt;br /&gt;
|2.5&lt;br /&gt;
|9.5&lt;br /&gt;
|12.0&lt;br /&gt;
|JW3&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i7-13700KF (24 CPUs), @ 3.4GHz ||NVIDIA GeForce RTX 4090||24||16384||2.4||11.6||14.0||JW1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz ||NVIDIA GeForce RTX 4090||24||16384||2.5||12.1||14.6||JB1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900K (32 CPUs) @ 3.0GHz ||NVIDIA GeForce RTX 4090||24||16384||2.7||12.7||15.4||TA1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 7950X 16-Core Processor (32 CPUs) @ 4.5GHz ||NVIDIA GeForce RTX 4090||24||16384||2.9||12.7||15.6||PSM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor (24 CPUs) @ 3.8GHz ||NVIDIA GeForce RTX 4090||24||16384||3.1||13.3||16.4||CR4&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-14900K (32 CPUs) @ ~3.2GHz||NVIDIA GeForce RTX 4080 Super||16||10240||2.8||14.5||17.3||DF2&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz ||NVIDIA GeForce RTX 4080||16||9728||2.8||14.7||17.5||TM1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900 (24 CPUs) @ 2.4GHz ||NVIDIA GeForce RTX 4080||16||9728||2.8||14.7||17.5||JM3&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900F (32 CPUs) @ 2.0GHz ||NVIDIA GeForce RTX 4080||16||9728||3.2||15.0||18.2||AW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 7 7800X3D 8-Core Processor (16 CPUs)@ ~4.2GHz||NVIDIA GeForce RTX 4080 SUPER||16||10240||3.2||15.7||18.9||LC1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor  (32 CPUs) @ 3.5GHz||NVIDIA RTX 6000 Ada Generation||48||18176||4.9||14.2||19.1||JG3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-2697 v4 @ 2.30GHz (72 CPUs)||NVIDIA GeForce RTX 4090||24||16384||3.9||16.2||20.1||CS3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla V100||16||5120||3.4||18.5||21.9||FM-NODE: Tesla V100&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3080 Ti||12||10240||3.8||19.2||23.0||RS1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K ||NVIDIA GeForce RTX 3090||24||10496||3.7||19.4||23.1||DD2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R)  Core(TM) i7-12700F&lt;br /&gt;
|NVIDIA GeForce RTX  3080 Ti&lt;br /&gt;
|12&lt;br /&gt;
|10240&lt;br /&gt;
|3.75&lt;br /&gt;
|19.57&lt;br /&gt;
|23.32&lt;br /&gt;
|AUBNE1PC6602&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3080 Ti||12||10240||4.0||19.6||23.6||GP1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 5317 CPU @ 3.00GHz (48 CPUs) ||NVIDIA A40||48||10752||3.5||20.3||23.8||Lenovo SR650 V2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||4.1||20.1||24.2||JMM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||4.4||20.4||24.8||CH3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-10980XE CPU @ 3.00GHz (36 CPUs), ~3.0GHz&lt;br /&gt;
|NVIDIA RTX A6000&lt;br /&gt;
|48&lt;br /&gt;
|10752&lt;br /&gt;
|4.7&lt;br /&gt;
|22.7&lt;br /&gt;
|27.4&lt;br /&gt;
|CB2&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i5-13600HX (20 CPUs) @ ~2.6GHz ||NVIDIA GeForce RTX 4090 Laptop GPU||16||9728||5.3||22.2||27.5||LC2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i7-12700 (20 CPUs) @ ~2.1GHz ||NVIDIA GeForce RTX 3080||10||8704||4.3||23.7||28||RB1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3080||10||8704||4.6||23.5||28.1||KW2&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K (24 CPUs) ||NVIDIA RTX A5000||24||8192||4.4||24.1||28.5||SB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce RTX 3080||10||8704||4.7||24.0||28.7||CPM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2223 CPU @ 3.60GHz ||NVIDIA GeForce RTX 3090||24||10496||5.3||24.3||29.6||SSM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||4.7||25.7||30.4||ACH&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor ||NVIDIA TITAN RTX||24||4608||5.7||25.2||30.9||JGR&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2920X 12-Core Processor (24 CPUs) @ 3.5GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.1||25.9||31||CR5&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2145 CPU @ 3.70GHz (16 CPUs), ~3.7GHz&lt;br /&gt;
|NVIDIA RTX A5000&lt;br /&gt;
|24&lt;br /&gt;
|8192&lt;br /&gt;
|5.2&lt;br /&gt;
|26.3&lt;br /&gt;
|31.5&lt;br /&gt;
|CB3&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3950X 16-Core Processor ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.3||26.4||31.7||TRO&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.4||27.4||32.8||PY2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700k @ 4.00GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.7||27.7||33.4||VLD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700F CPU @ 2.90GHz ||NVIDIA GeForce RTX 3070||8||5888||5.0||28.8||33.8||NCV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.5||28.4||33.9||RL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ (5.10GHz) ||NVIDIA GeForce RTX 2080 (core 2100MHz, mem 8000MHz)||8||2944||5.5||28.7||34.2||RRB&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.8||28.8||34.6||MA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.7||29.2||34.9||MA2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5950X 16-Core Processor ||NVIDIA GeForce RTX 3070||8||5888||5.5||29.7||35.2||JG2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900X CPU @ 3.50GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||5.6||29.9||35.5||MBL&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||6.4||29.5||35.9||JPI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla P100||16||3584||6.1||30.8||36.9||Google Cloud: Tesla P100&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 SUPER||8||3072||5.7||31.9||37.6||RH2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 6230R CPU @ 2.10GHz ||NVIDIA GRID RTX8000P-48Q||48||4608||6.8||31.0||37.8||VJ1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz (16 CPUs) ||NVIDIA RTX A4000||16||6144||5.8||32.0||37.8||JS2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700k @ 4.00GHz ||NVIDIA GeForce RTX 2080||8||2944||6.0||31.9||37.9||ANK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-3770K CPU @ 3.50GHz ||NVIDIA GeForce RTX 2080 SUPER||8||3072||6.0||32.0||38.0||EFC&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs), ~3.2GHz&lt;br /&gt;
|NVIDIA A10-24Q&lt;br /&gt;
|22&lt;br /&gt;
|9216&lt;br /&gt;
|7.2&lt;br /&gt;
|31.4&lt;br /&gt;
|38.6&lt;br /&gt;
|YW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs) @ 3.2GHz ||NVIDIA A10-24Q||24||8192||7.2||31.4||38.6||CS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 CPUs), ~3.6GHz||NVIDIA GeForce RTX 2080 Ti||11||4352||5.4||33.3||38.7||PA1&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz (16 CPUs) ||NVIDIA GeForce RTX 3060 Ti (LHR) ||8||4864||5.7||33.3||39.0||DF1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i5-10600K CPU @ 4.10GHz ||NVIDIA GeForce RTX 2060 SUPER (core 1647MHz, mem 1750MHz)||8||2176||5.6||33.4||39.1||GZH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce RTX 2080||8||2944||5.6||34.3||40.7||PM2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2990WX 32-Core Processor ||NVIDIA TITAN Xp||12||3840||6.9||34.6||41.6||FLC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz (20 CPUs)||NVIDIA GeForce GTX 1080 Ti||11||3584||6.5||35.1||41.6||JB2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1620 v3 @ 3.50GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||6.4||35.8||42.2||JS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080||8||2944||6.5||36.0||42.5||ABA&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) w5-2455X (24 CPUs) @ ~3.2GHz ||NVIDIA RTX A4000||16||6144||7.2||35.3||42.5||CHR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||6.1||37.1||43.2||RH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||6.5||37.4||43.8||PM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz ||NVIDIA GeForce GTX 2070||8||2304||7.4||38.8||46.2||MMR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900 CPU @ 3.10GHz ||NVIDIA Quadro RTX 4000||8||2304||6.6||39.8||46.4||CB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||7.8||39.1||46.9||615&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||8.0||39.3||47.3||RCD&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 7 7840HS ||NVIDIA GeForce RTX 4060 Laptop GPU||8||3072||7.0||40.6||47.6||CH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||7.6||41.1||48.7||HNM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Silver 4214R CPU @ 2.40GHz ||NVIDIA GRID RTX6000P-4Q||24||4608||10.5||39.3||49.8||VDI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz (Laptop) ||NVIDIA GeForce RTX 2070||8||2304||7.7||42.8||50.5||ERX&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 5317 CPU @ 3.00GHz (48 CPUs) ||NVIDIA Tesla T4||16||2560||6.8||45.2||52.0||RJ1&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R)  Core(TM) i7-11700 @ 2.50GHz&lt;br /&gt;
|NVIDIA GeForce RTX  3060&lt;br /&gt;
|8&lt;br /&gt;
|3584&lt;br /&gt;
|7.68&lt;br /&gt;
|45.92&lt;br /&gt;
|53.6&lt;br /&gt;
|AUBNEW1DQ54G3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6900K CPU @ 3.20GHz ||NVIDIA GeForce GTX 1080||8||2560||8.0||47.4||55.3||BLK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla T4||16||2560||7.3||48.3||55.6||FM-NODE: Tesla T4&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz ||NVIDIA GeForce GTX 1080||8||2560||8.5||48.9||57.3||JM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1070||8||1920||8.2||51.9||60.0||SKI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Gold 6130 CPU @ 2.10GHz ||NVIDIA Quadro P5000||16||2560||9.6||51.8||61.4||AR2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2235 CPU @ 3.80GHz (12 CPUs)||NVIDIA RTX A2000||6||3328||9.1||54.4||63.5||HDR-A2000&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz ||NVIDIA GeForce GTX 1070||8||1920||8.9||54.9||63.8||PY1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) Ultra 7 155H (22 CPUs) @ 1.4GHz ||NVIDIA GeForce RTX 4050 Laptop GPU||6||2560||7.9||59.4||67.3||AL1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1630 v4 @ 3.70GHz ||NVIDIA GeForce GTX 1070||8||1920||10.3||59.3||69.5||DS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz ||NVIDIA GeForce GTX 1660||6||1408||9.4||61.0||70.4||JFP&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA Quadro P4000||8||1792||10.0||62.3||72.3||DS2&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i7-11700 @ 2.50GHz (16 CPUs) ||NVIDIA GeForce GTX 1650 SUPER||4||1280||10.3||64.6||74.9||TS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla P4||8||2560||10.4||69.0||79.4||Google Cloud: Tesla P4&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5820K CPU @ 3.30GHz ||NVIDIA GeForce GTX 980||4||2048||11.8||70.6||82.3||ZDO&lt;br /&gt;
|-&lt;br /&gt;
|11th Gen Intel(R) Core(TM) i9-11950H @ 2.60GHz (16 CPUs), ~2.6GHz&lt;br /&gt;
|NVIDIA RTX A2000 Laptop GPU&lt;br /&gt;
|4&lt;br /&gt;
|2560&lt;br /&gt;
|11.4&lt;br /&gt;
|72.6&lt;br /&gt;
|84.0&lt;br /&gt;
|SK1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz ||NVIDIA GeForce GTX TITAN Black||6||2880||13.1||76.1||89.2||AR1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700 CPU @ 3.60GHz ||NVIDIA GeForce GTX 1060||6||1280||13.0||77.1||90.1||RSH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-2686 v4 @ 2.30GHz (64 CPUs), ~2.3GHz||NVIDIA Tesla M60||16||4096||12||82.7||94.7||SM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla K80||12||2496||11.3||83.5||94.8||Google Cloud: Tesla K80&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i3-8100 CPU @ 3.60GHz ||NVIDIA Tesla K40c||12||2880||12.3||83.1||95.3||NWE&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5960X CPU @ 3.00GHz ||NVIDIA Quadro T2000||4||1024||13.3||85.2||95.5||SSM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9880H CPU @ 2.30GHz (Laptop) ||NVIDIA GeForce GTX 980||4||2048||17.5||84.2||101.7||MRT&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-10700K CPU @ 3.80GHz (16 CPUs), ~3.8GHz&lt;br /&gt;
|NVIDIA Quadro T1000&lt;br /&gt;
|4&lt;br /&gt;
|896&lt;br /&gt;
|13.6&lt;br /&gt;
|91.3&lt;br /&gt;
|104.9&lt;br /&gt;
|CB4&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i7-13800H (20 CPUs), ~2.5GHz&lt;br /&gt;
|NVIDIA RTX A500 Laptop GPU&lt;br /&gt;
|4&lt;br /&gt;
|2048&lt;br /&gt;
|14.8&lt;br /&gt;
|93.9&lt;br /&gt;
|108.7&lt;br /&gt;
|YB1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) W-2255 CPU @ 3.70GHz||NVIDIA Quadro P2000||5||1024||14.2||96||110.2||BL-DT01001&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz ||NVIDIA Quadro P2000||5||1024||15.8||100.1||115.9||CR2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1240 V2 @ 3.40GHz ||NVIDIA GeForce GTX 690||2||3072||18.4||114.4||132.8||MAV&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 1950X 16-Core Processor ||NVIDIA GeForce GTX 960||4||1024||18.6||123.3||141.6||CEV&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz ||NVIDIA GeForce GTX 960||4||1024||19.9||127.2||147.1||VHD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8750H CPU @ 2.20GHz||NVIDIA GeForce GTX 1050 Ti||4||768||21.1||133.8||154.9||MJS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-7900X CPU @ 3.30GHz||NVIDIA GeForce GTX 1050||2||640||20.6||139.1||159.7||JM2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-8950HK CPU @ 2.90GHz||NVIDIA Quadro P2000||5||1024||22.1||142.5||164.6||KTC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz||NVIDIA Quadro P2000||5||1024||23.0||149.3||172.3||RL2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz||NVIDIA Quadro M2200||4||1024||23.2||198.7||222.0||GYB&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-1185G7 @ 3.00GHz||NVIDIA T500||4||986||29.3||197.5||226.8||TJS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) E-2176M  CPU @ 2.70GHz ||NVIDIA Quadro P1000||4||640||30.3||203.7||234.0||RL3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz ||NVIDIA Quadro K2200||4||640||32.5||211.3||243.8||JIW&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (6 CPUs) @ 3.2GHz||NVIDIA A10-4Q||24||8192||44.5||212.6||257.1||RBR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E3-1505M v6 @ 3.00GHz ||NVIDIA Quadro M1200||4||640||84.9||278.4||363.3||GHY&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7500U CPU @ 2.70GHz ||NVIDIA GeForce GTX 940MX||2||384||65.6||479.0||544.6||EAS&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-5600U CPU @ 2.60GHz||NVIDIA GeForce 840M||2||384||70.6||526.3||595.9||CDH&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-4700MQ CPU @ 2.40GHz (Laptop)||NVIDIA GeForce GT 740M||2||384||102.3||694.0||796.3||HMM&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=High End GPU Results=&lt;br /&gt;
A number of additional benchmarking tests have been completed on a 5m and 2.5m model on a single GPU card. &lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Processor Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=24% | Graphics Card**&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | GPU RAM (GB)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Number of CUDA Cores*&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 5m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Runtime 2.5m (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=8% | Combined Runtime (mins)&lt;br /&gt;
! style=&amp;quot;background-color:#C5C5C5; font-weight:bold; color:white;&amp;quot; width=12% | System Name&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 9950X3D 16-Core Processor (32 CPUs), ~4.3GHz&lt;br /&gt;
|NVIDIA GeForce RTX 5090&lt;br /&gt;
|32&lt;br /&gt;
|21760&lt;br /&gt;
|73.3&lt;br /&gt;
|568.7&lt;br /&gt;
|642.0&lt;br /&gt;
|JW3&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900KS (32 CPUs) @ 3.2GHz||NVIDIA GeForce RTX 4090||24||16384||103.3||811.2||914.5||JB1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i9-13900K (32 CPUs) @ 3.0GHz||NVIDIA GeForce RTX 4090||24||16384||105.9||813.7||919.6||TA1&lt;br /&gt;
|-&lt;br /&gt;
|13th Gen Intel(R) Core(TM) i7-13700KF (24 CPUs), @ 3.4GHz||NVIDIA GeForce RTX 4090||24||16384||103.7||824.3||928.0||JW1&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 7950X 16-Core Processor (32 CPUs) @ 4.5GHz ||NVIDIA GeForce RTX 4090||24||16384||108.2||821.5||929.7||PSM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor (24 CPUs) @ 3.8GHz ||NVIDIA GeForce RTX 4090||24||16384||106.8||875.5||982.3||CR4&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor  (32 CPUs) @ 3.5GHz ||NVIDIA RTX 6000 Ada Generation||48||18176||119.6||877.8||997.4||JG3&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900 (24 CPUs) @ 2.4GHz ||NVIDIA GeForce RTX 4080||16||9728||139.5||1115.1||1254.6||JM3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU @ 2.30GHz ||NVIDIA Tesla V100||16||5120||155.2||1172.9||1328.1||FM-NODE: Tesla V100&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||155.5||1176.2||1331.7||JMM&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3090||24||10496||158||1192.2||1350.2||CH3&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-10900F CPU @ 3.70GHz  ||NVIDIA GeForce RTX 3090||24||10496||162.3||1192.4||1354.7||LJA&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5900X 12-Core Processor ||NVIDIA GeForce RTX 3080 Ti||12||10240||159.7||1216.2||1375.9||GP1&lt;br /&gt;
|-&lt;br /&gt;
|12th Gen Intel(R) Core(TM) i9-12900K ||NVIDIA GeForce RTX 3090||24||10496||160.9||1240||1400.9||DD2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) Silver 4114 CPU @ 2.20GHz  ||NVIDIA GeForce RTX 3090||24||10496||172.9||1249.8||1422.7||SIP&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 3900X 12-Core Processor ||NVIDIA GeForce RTX 3080||10||8704||178.9||1363.9||1542.8||KW2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||203.8||1523.9||1727.7||ACH&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2950X 16-Core Processor ||NVIDIA TITAN RTX||24||4608||201.2||1548.1||1749.3||JGR&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||220.0||1634.5||1854.5||MA1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||222.2||1648.7||1870.9||JPI&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-9700K CPU @ 3.60GHz (8 CPUs), ~3.6GHz ||NVIDIA GeForce RTX 2080 Ti||11||4352||215.9||1678.7||1894.6||PA2&lt;br /&gt;
|-&lt;br /&gt;
|AMD EPYC 74F3 24-Core Processor (36 CPUs), ~3.2GHz&lt;br /&gt;
|NVIDIA A10-24Q&lt;br /&gt;
|22&lt;br /&gt;
|9216&lt;br /&gt;
|242.3&lt;br /&gt;
|1856.5&lt;br /&gt;
|2098.8&lt;br /&gt;
|YW1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900K CPU @ (5.10GHz) ||NVIDIA GeForce RTX 2080 (core 2100MHz, mem 8000MHz)||8||2944||241.2||1863.5||2104.7||RRB&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen 9 5950X 16-Core Processor ||NVIDIA GeForce RTX 3070||8||5888||248.7||1928.6||2177.3||JG2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i9-9900KF CPU @ 3.60GHz ||NVIDIA GeForce RTX 2080 SUPER||8||3072||257.3||1957.7||2215.0||RH2&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce RTX 2080||8||2944||275.1||2147.4||2422.5||PM2&lt;br /&gt;
|-&lt;br /&gt;
|AMD Ryzen Threadripper 2990WX 32-Core Processor ||NVIDIA TITAN Xp||12||3840||296.0||2218.4||2514.4||FLC&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Xeon(R) CPU E5-1620 v3 @ 3.50GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||298.9||2290.1||2589.0||JS1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6800K CPU @ 3.40GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||311.3||2345.1||2656.4||615&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6850K CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||310.3||2377.2||2687.5||RCD&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||308.7||2384.7||2693.4||RH1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||311.9||2404.9||2716.7||PM1&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7820X CPU @ 3.60GHz ||NVIDIA GeForce GTX 1080 Ti||11||3584||324.8||2475.3||2800.1||HNM&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-6900K CPU @ 3.20GHz ||NVIDIA GeForce GTX 1080||8||2560||439.0||3379.3||3818.2||BLK&lt;br /&gt;
|-&lt;br /&gt;
|Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz ||NVIDIA GeForce GTX 1070||8||1920||475.5||3788.2||4263.7||SKI&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;pre&amp;gt; * it is noted that the number of CUDA cores is not provided as an output from the &#039;&#039;&#039;dxdiag&#039;&#039;&#039; command and this information has been sourced from the nvidia website.&lt;br /&gt;
** The output cpu.txt only provides the &#039;out of the box&#039; processor speed. If you have overclocked your cpu and/or gpu, please send these details to TUFLOW Support so we can add the overclocked data in brackets.  &amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Hardware_Benchmarking | Back to TUFLOW Benchmarking]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=PyTuflow&amp;diff=45265</id>
		<title>PyTuflow</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=PyTuflow&amp;diff=45265"/>
		<updated>2025-12-19T02:55:42Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Latest Documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
PyTUFLOW is a library that acts as an API for your TUFLOW model. It allows easy interaction with the model results, contains a number of useful utilities for building TUFLOW models, and contains some useful parsers for files within the TUFLOW eco-system.&lt;br /&gt;
&lt;br /&gt;
==Latest Documentation==&lt;br /&gt;
The PyTUFLOW documentation has moved to a new location: &amp;lt;u&amp;gt;[https://docs.tuflow.com/pytuflow/ PyTUFLOW Documentation]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The previous PyTUFLOW API has been deprecated and the wiki documentation has been archived. However, if needed, the archived documentation can still be accessed via the link in the section below.&lt;br /&gt;
&lt;br /&gt;
==Archive Documentation==&lt;br /&gt;
Guidance for earlier version of PyTuflow can be accessed via the following link: &amp;lt;u&amp;gt;[[PyTuflow_Archive| PyTuflow_Archive]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Wiki Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Tutorial_M01&amp;diff=45263</id>
		<title>Tutorial M01</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Tutorial_M01&amp;diff=45263"/>
		<updated>2025-12-18T23:50:27Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* TUFLOW Control File (TCF) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction = &lt;br /&gt;
Read the &amp;lt;u&amp;gt;[[Tutorial_Introduction | Tutorial Model Introduction]]&amp;lt;/u&amp;gt; before starting this tutorial. It outlines programs requiring installation and provides the tutorial dataset download link.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this module, a fully two-dimensional (2D) model is built with a number of TUFLOW control files and Geographic Information System (GIS) layers.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The TUFLOW control files are:&amp;lt;br&amp;gt;&lt;br /&gt;
:* TUFLOW Simulation Control File (TCF)&lt;br /&gt;
:* TUFLOW Geometry Control File (TGC)&lt;br /&gt;
:* TUFLOW Boundary Control File (TBC)&lt;br /&gt;
:* TUFLOW Boundary Condition Database (bc_dbase)&lt;br /&gt;
:* TUFLOW Materials File (materials)&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The GIS layers are:&amp;lt;br&amp;gt;&lt;br /&gt;
:*TGC layers:&lt;br /&gt;
&amp;lt;ol&amp;gt;&amp;lt;ol&amp;gt;&amp;lt;li&amp;gt; 2d_loc: A layer defining the origin and orientation of the 2D grid. &lt;br /&gt;
&amp;lt;li&amp;gt; 2d_code: A layer containing polygons that define the cell codes (active or inactive status).&lt;br /&gt;
&amp;lt;li&amp;gt; *.tif: A DEM dataset defining the ground elevations within the 2D study area.&lt;br /&gt;
&amp;lt;li&amp;gt; 2d_mat: A layer defining the land-use (material) types within the 2D study area.&amp;lt;/ol&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
:*TBC layers:&lt;br /&gt;
&amp;lt;ol&amp;gt;&amp;lt;ol&amp;gt;&amp;lt;li&amp;gt; 2d_bc: A layer defining the locations of external 2D boundaries.&lt;br /&gt;
&amp;lt;li&amp;gt; 2d_sa: A layer to define internal 2D flow boundaries.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
:*TCF layers:&lt;br /&gt;
&amp;lt;ol&amp;gt;&amp;lt;ol&amp;gt;&amp;lt;li&amp;gt;2d_po: A time series data output from 2D domains, for a range of hydraulic parameters.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
This tutorial is setup with shapefiles (SHP) and geopackage (GPKG) layers. For more information on these formats, see &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Project Initialisation = &lt;br /&gt;
TUFLOW models are separated into a series of folders which contain the input and output files. The recommended set up for the model directory and sub-folders is shown below. For a more detailed description, refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
[[File:Tute M01 Directory Structure v3.png|left]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Sub-Folder&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10%| Input / Output&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=75%| Description&lt;br /&gt;
|-&lt;br /&gt;
| bc_dbase|| Input || Boundary condition database(s) and input time-series data.&lt;br /&gt;
|-&lt;br /&gt;
| check|| Output || GIS and other check files to carry out quality control checks (use Write Check Files).&lt;br /&gt;
|-&lt;br /&gt;
| model|| Input ||Geometry (TGC), Boundary (TBC) and other model control text files (i.e. no GIS files).&lt;br /&gt;
|-&lt;br /&gt;
| model\gis|| Input || GIS layers that are inputs to the 2D and 1D model domains are contained within this folder, model\gis is typically used for all QGIS and ArcGIS files.&lt;br /&gt;
|-&lt;br /&gt;
| model\mi|| Input || GIS layers that are inputs to the 2D and 1D model domains are contained within this folder, model\mi is typically used for MapInfo formatted GIS files.&lt;br /&gt;
|-&lt;br /&gt;
| results|| Output|| TUFLOW outputs the results to this folder in specified formats.&lt;br /&gt;
|-&lt;br /&gt;
| runs|| Input|| TUFLOW Control Files (TCF).&lt;br /&gt;
|-&lt;br /&gt;
| runs\log|| Output || TUFLOW log files (TLF) and messages layers.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
The TUFLOW folders can be set up manually, automatically running TUFLOW model with &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; Write Empty GIS Files &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command or automatically through GIS programs:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Configure_TUFLOW_Project_QGIS | QGIS - SHP]]&amp;lt;/u&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Configure_TUFLOW_Project_QGIS_GPKG | QGIS - GPKG]]&amp;lt;/u&amp;gt;&lt;br /&gt;
:*SMS - the folder structure listed above is automatically created before running the model using the &#039;Export TUFLOW files&#039; command (see &amp;lt;u&amp;gt; [[Run TUFLOW from within SMS | Run TUFLOW from within SMS]])&amp;lt;/u&amp;gt;.&lt;br /&gt;
:*ArcMap (10.1 and newer) - the ArcTUFLOW Toolbox can be used to automatically create the model folders, model projection, TUFLOW control files and run TUFLOW to create the template files.&lt;br /&gt;
&lt;br /&gt;
The following points on TUFLOW folders and filenames are worth noting: &lt;br /&gt;
:*TUFLOW accepts any folder structure, though the above listed format is most commonly used and is recommended. &amp;lt;br&amp;gt;&lt;br /&gt;
:*TUFLOW accepts spaces and special characters (such as ! or #) in filenames and paths, but other software may not. It is recommended that spaces and other special characters are not used in the simulation path and filenames. &amp;lt;br&amp;gt;&lt;br /&gt;
:*Folder paths, filenames, file extensions and TUFLOW commands are not case sensitive in any TUFLOW control files. &amp;lt;br&amp;gt;&lt;br /&gt;
:*Any directories that don&#039;t apply can be omitted, for example, if using QGIS or ArcMap the model\mi directory is not required. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Model Familiarisation=&lt;br /&gt;
Become familiar with the model location, using an aerial image and DEM:&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_Site_Familiarisation_QGIS | QGIS]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= TUFLOW Geometry Control File (TGC) =&lt;br /&gt;
The TGC file is a series of commands that build the geometry model. At its minimum, the TGC contains:&lt;br /&gt;
:*Information on the size and orientation of the grid;&lt;br /&gt;
:*Grid cell codes (whether cells are active or inactive);&lt;br /&gt;
:*Bed / ground elevations; and&lt;br /&gt;
:*Bed material type or flow resistance value.&lt;br /&gt;
&lt;br /&gt;
Commands in the TGC file are applied in sequential order; the order (layering) of these commands is critical. The last occurrence of a command prevails, it is possible to override previous information with new data to modify the model in selected areas. This is useful but is also something to be aware of as to not override commands by mistake. &lt;br /&gt;
&lt;br /&gt;
=== 2D Domain ===&lt;br /&gt;
Grid formats currently supported by TUFLOW include the ESRI ASCII grid format (.asc), binary grids (.flt) and geodetic grids (.tif). The Digital Elevation Model (DEM) is provided in .tif format. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Defining the location and orientation of the TUFLOW 2D domain can be undertaken using four different methods: &amp;lt;br&amp;gt;&lt;br /&gt;
:*Specifying origin coordinates and a second set of coordinates for a point along the X-axis of the domain; &amp;lt;br&amp;gt;&lt;br /&gt;
:*Specifying the origin coordinate and domain orientation angle; &amp;lt;br&amp;gt;&lt;br /&gt;
:*Digitising a line (2d_loc) to represent the bottom edge of the 2D domain (with the line starting at the origin and finishing at a secondary location along the X-axis); or &amp;lt;br&amp;gt;&lt;br /&gt;
:*Digitising location polygon. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The first method is covered in this tutorial as it is required to use a licence-free version of TUFLOW. The third method is the most commonly used. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new text file called &#039;&#039;&#039;M01_001.tgc&#039;&#039;&#039; and save it in &#039;&#039;&#039;Module_01\TUFLOW\model&#039;&#039;&#039; folder. Notice the use of ‘001’ for numbering. This is part of a naming convention, allowing for the iteration of both GIS and TUFLOW control files. This way allows files to be recognised from a specific run and also reverted back to a working iteration in model development. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the created &#039;&#039;&#039;M01_001.tgc&#039;&#039;&#039; in a text editor and specify the location and dimensions of the TUFLOW domain (rectangular computational area) and the cell size: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Origin &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;292725, 6177615&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Bottom left corner (origin) of the 2D grid&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Orientation &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;293580, 6177415&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Point along the X-axis determining the orientation of the 2D grid &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Cell Size &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;5&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! 2D cell size in metres&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Grid Size (X,Y) &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;850, 1000&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! 2D grid extent dimensions in metres&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Active and Inactive Areas of the 2D Domain ===&lt;br /&gt;
By default, every grid cell in a TUFLOW model is set as active and TUFLOW allows water to flow anywhere within the extents of the 2D domain. It is rare for a catchment to be a perfect rectangle. To reduce output file sizes and run times, permanently dry areas can be removed from the model. This can be an iterative process (i.e. run the model initially and refine). For the purpose of the tutorial a polygon is provided to define the active area. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Set all 2D cells within the model domain rectangle to inactive by adding the following command to the TGC file:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Set Code &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;0&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets all cells to inactive&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Define active areas: &amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Define_Active_Area_QGIS | QGIS - SHP]]&amp;lt;/u&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Define_Active_Area_QGIS_GPKG | QGIS - GPKG]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Set all cells within the code polygon to active. The command needs to be written after the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; Set Code &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;0 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command to overwrite the inactive cells within the polygon: &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;u&amp;gt;&#039;&#039;&#039;QGIS - SHP&#039;&#039;&#039;&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Code &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;gis\2d_code_M01_001_R.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets cell codes according to attributes in the GIS layer&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&#039;&#039;&#039;QGIS - GPKG&#039;&#039;&#039;&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Code &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_code_M01_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets cell codes according to attributes in the GIS layer&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
Note: As mentioned, the order of commands in the TGC is critical. The final cell value (such as for code, elevation or material) is specified by the file lowest in the TGC. Consider the above two commands to set active and inactive cells, if the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Code &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; was written before the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Set Code &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command, all the cells within the code polygon would be first set to active and then overwritten to be all inactive, no hydraulic simulation could occur.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Topography ===&lt;br /&gt;
The points that assign elevations at each 2D cell centre, mid-side and corner are called Zpts. For a description on the computational function of each of the Zpts in a TUFLOW cell, see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/Zpt_Description Zpt Description]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
A DEM is used to assign elevations to the Zpts: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Copy the DEM (&#039;&#039;&#039;DEM.tif&#039;&#039;&#039;) from the &#039;&#039;&#039;DEM&#039;&#039;&#039; folder into a new &#039;&#039;&#039;Module_01\TUFLOW\model\grid&#039;&#039;&#039; folder.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Set a global elevation for the Zpts by adding the following line to the TGC file:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Set Zpts &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 100&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets every 2D elevation zpt to 100 metres&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Assign elevations to the Zpts from the DEM. The command needs to be written after the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; Set Zpts &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;100 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command to overwrite global Zpts where the DEM data are available: &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GRID Zpts &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; grid\DEM.tif&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Assigns the elevation of zpts from the grid&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
Note: The above data layering technique is common. After the first simulation, it is a good modelling practice to review the check files to confirm the topography in the model is as expected. Searching for a value of &#039;100&#039; is an easy way to identify if there are any gaps in the DEM dataset that were not expected (these should be fixed). &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Materials ===&lt;br /&gt;
Surface roughness or bed resistance values (e.g. Manning’s n) are assigned to material IDs. In order for TUFLOW to associate the Manning’s n to the Material ID, a TUFLOW materials file is required.  This can be either a text file format .tmf, or a .csv file. This tutorial model utilises the csv format.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Copy the &#039;&#039;&#039;materials.csv&#039;&#039;&#039; file from the &#039;&#039;&#039;Module_01\Tutorial_Data&#039;&#039;&#039; folder into the &#039;&#039;&#039;Module_01\TUFLOW\model&#039;&#039;&#039; folder. As a minimum this file must contain two columns; the first being the Material ID (as specified in the GIS layer), and the second being the Manning’s n.  Additional data such as loss parameters and depth varying Manning&#039;s n values (applicable for direct rainfall modelling) are covered in later modules. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Materials 02.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Set a global material ID for all cells by adding the following line to the TGC file:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Set Mat &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;1&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets all cells to a material ID of 1&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Define spatial material definition:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Materials_QGIS | QGIS - SHP]]&amp;lt;/u&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Materials_QGIS_GPKG | QGIS - GPKG]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Assign materials from the GIS layer to overwrite the global material at all cells that fall within the material polygons: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&#039;&#039;&#039;QGIS - SHP&#039;&#039;&#039;&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Mat &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;gis\2d_mat_M01_001_R.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets material values according to attributes in the GIS layer&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&#039;&#039;&#039;QGIS - GPKG&#039;&#039;&#039;&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Mat &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_mat_M01_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets material values according to attributes in the GIS layer&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TGC file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
Note: As discussed in the previous sections, the order (layering) of these commands is important.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= TUFLOW Boundary Control File (TBC) =&lt;br /&gt;
In this step the TBC and Boundary Condition Database (bc_dbase) are introduced. The TBC file contains information regarding the location of boundary conditions and internal links within the model. These include, but are not limited to: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:*Upstream and downstream flow boundaries &amp;lt;br&amp;gt;&lt;br /&gt;
:*Downstream water level boundaries &amp;lt;br&amp;gt;&lt;br /&gt;
:*Water sources &amp;lt;br&amp;gt;&lt;br /&gt;
:*Direct rainfall&lt;br /&gt;
:*Infiltration &amp;lt;br&amp;gt;&lt;br /&gt;
:*1D/2D links &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Spatial Definition of Boundary Conditions ===&lt;br /&gt;
The following upstream and downstream boundaries are used in this tutorial: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:*A flow vs time (QT) boundary and a source-area (SA) boundary is used for the inflows. &amp;lt;br&amp;gt;&lt;br /&gt;
:*A stage vs discharge (HQ) boundary is used for the outflow. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set up boundary condition layers: &amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Boundary_Conditions_QGIS | QGIS - SHP]]&amp;lt;/u&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Boundary_Conditions_QGIS_GPKG | QGIS - GPKG]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Boundary Control File (TBC) ===&lt;br /&gt;
The boundary condition layers are read into TUFLOW in a new text file, the TBC. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new text file and save as &#039;&#039;&#039;M01_001.tbc&#039;&#039;&#039; in the &#039;&#039;&#039;Module_01\TUFLOW\model&#039;&#039;&#039; folder. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file in a text editor and add the boundary conditions: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&#039;&#039;&#039;QGIS - SHP&#039;&#039;&#039;&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;gis\2d_bc_M01_001_L.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reads in 2D boundaries&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SA &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;gis\2d_sa_M01_001_R.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reads in 2D source area boundaries&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&#039;&#039;&#039;QGIS - GPKG&#039;&#039;&#039;&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_bc_M01_001_L&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reads in 2D boundaries&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SA &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_sa_M01_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reads in 2D source area boundaries&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TBC.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= TUFLOW Boundary Condition Database (bc_dbase) =&lt;br /&gt;
The bc_dbase is a comma delimited file with .csv extension. It can be opened in any spreadsheet software or a text editor.&amp;lt;br&amp;gt;&lt;br /&gt;
A hydrograph is associated with all of the upstream boundaries:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the template bc database &#039;&#039;&#039;TUFLOW Tutorial Model BC Database.xlsx&#039;&#039;&#039; from the &#039;&#039;&#039;Module_01\Tutorial_Data&#039;&#039;&#039; folder. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;There are two sheets in the file, &#039;bc_dbase&#039; and &#039;01p2hr&#039;. Complete the bc_dbase worksheet: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Enter the name of the first upstream boundary condition under the &#039;Name&#039; heading. The name must appear exactly as it does in the boundary condition layer, (i.e. FC01). &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Enter the text &#039;01p2hr.csv&#039; under the &#039;Source&#039; heading. It is a source file for TUFLOW to extract the timeseries data. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Enter the text &#039;time&#039; and &#039;inflow_FC01&#039; under the &#039;Column 1&#039; and &#039;Column 2&#039; heading. These correspond to the data headers in the source timeseries file. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Repeat the above process for all of the boundary conditions (i.e. FC02, FC04, FC05, FC06 and FC07). Note, FC02 is used in a later tutorial and Columns E to I are to remain black. The final bc_dbase should show as below: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:M01 bc dbase 003.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Switch to the &#039;01p2hr&#039; sheet, and review the provided hydrographs. Note: the &#039;Inflow_FC02&#039; hydrograph is not used in this tutorial. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:M01 100y2hr 002.png]] &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save both of the sheets in a csv format that TUFLOW can read. In the &#039;&#039;&#039;Module_01\TUFLOW\bc_dbase&#039;&#039;&#039; directory, there should be two new files, &#039;&#039;&#039;bc_dbase.csv&#039;&#039;&#039; and &#039;&#039;&#039;01p2hr.csv&#039;&#039;&#039;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= 2D Time Series Plot Output =&lt;br /&gt;
The 2D plot output (2d_po) objects allow for a wide range of hydraulic parameters to be output from the 2D domain as time series data at predefined locations. &amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Time_Series_Plot_Output_QGIS | QGIS - SHP]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Time_Series_Plot_Output_QGIS_GPKG | QGIS - GPKG]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= TUFLOW Control File (TCF) =&lt;br /&gt;
The TCF file references all the control files, specifies time and output controls. This is the last step before running the simulation.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new text file and save as &#039;&#039;&#039;M01_5m_001.tcf&#039;&#039;&#039; in the &#039;&#039;&#039;Module_01\TUFLOW\runs&#039;&#039;&#039; folder. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file in a text editor and add the following commands: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&#039;&#039;&#039;QGIS - SHP&#039;&#039;&#039;&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! MODEL INITIALISATION&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Tutorial Model &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ON&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Required command to run this tutorial model licence free &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;GIS Format &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; SHP&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specify SHP as the output format for all GIS files&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SHP Projection &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\gis\projection.prj &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets the GIS projection for the TUFLOW Model&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TIF Projection &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\grid\DEM.tif &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets the GIS projection for the output grid files&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Write Empty GIS Files == ..\model\gis\empty  ! Creates template GIS layers, commented out as files were already created&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&#039;&#039;&#039;QGIS - GPKG&#039;&#039;&#039;&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! MODEL INITIALISATION&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Spatial Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\gis\M01_001.gpkg   &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ! Specify the location of the GeoPackage Spatial Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Tutorial Model &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ON&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Required command to run this tutorial model licence free &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;GIS Format &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; GPKG&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specify GPKG as the output format for all GIS files&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;GPKG Projection &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\gis\projection.gpkg &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets the GIS projection for the TUFLOW Model&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TIF Projection &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\grid\DEM.tif &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets the GIS projection for the output grid files&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Write Empty GIS Files == ..\model\gis\empty  ! Creates template GIS layers, commented out as files were already created&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Define the solution scheme and specify Sub-Grid Sampling (SGS) commands: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! SOLUTION SCHEME&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Solution Scheme &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; HPC&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Heavily Parallelised Compute, uses adaptive timestepping&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Hardware &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; GPU&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Comment out if GPU card is not available or replace with &amp;quot;Hardware == CPU&amp;quot; &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SGS &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ON&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Switches on Sub-Grid Sampling&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SGS Sample Target Distance&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 0.5&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Sets SGS Sample Target Distance to 0.5m&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
For information on SGS, see Section 3.2 of the latest &amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOW/Releases/2020-10/TUFLOW%20Release%20Notes.2020-10-AD.pdf Release Notes])&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Update the model inputs section. These commands reference the TGC, TBC, bc_dbase and materials file created in the above steps:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! MODEL INPUTS&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Geometry Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\M01_001.tgc&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Geometry Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\M01_001.tbc&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Boundary Conditions Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\bc_dbase\bc_dbase.csv&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the Boundary Conditions Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read Materials File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\materials.csv&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the Materials Definition File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following time control commands: &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! TIME CONTROL&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Timestep &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 1&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specifies the first 2D computational timestep of 1 second&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Start Time &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 0&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specifies a simulation start time of 0 hours&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;End Time &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 3&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specifies a simulation end time of 3 hours&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following output folder commands: &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! OUTPUT FOLDERS&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Log Folder &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; log&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Location of the log output files (e.g. .tlf and _messages files)&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Output Folder &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\results\&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Location of the 2D output files and prefixes them with the .tcf filename&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Write Check Files &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\check\&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Location of the 2D check files and prefixes them with the .tcf filename&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following output settings commands: &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! OUTPUT SETTINGS&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Map Output Format &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; XMDF TIF&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Result file types&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Map Output Data Types &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; h V d dt&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Outputs water levels, velocities, depths, minimum timestep&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Map Output Interval &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 300&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Outputs map data every 300 seconds (5 minutes)&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TIF Map Output Interval &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 0&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Outputs only maximums for grids&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Reference the 2d_po layers. When reading in time-series layers, such as 2d_po files, its necessary to use a &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Time Series Output Interval &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command. This command specifies the output interval in seconds for the time-series based output: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&#039;&#039;&#039;QGIS - SHP&#039;&#039;&#039;&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! TIME SERIES PLOT OUTPUT&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS PO &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\gis\2d_po_M01_001_L.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reads in plot output line&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS PO &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\gis\2d_po_M01_001_P.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reads in plot output point&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Time Series Output Interval &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 60&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Outputs time series data every 60 seconds&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;&#039;&#039;&#039;QGIS - GPKG&#039;&#039;&#039;&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! TIME SERIES PLOT OUTPUT&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS PO &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 2d_po_M01_001_L&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reads in plot output line&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS PO &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 2d_po_M01_001_P&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reads in plot output point&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Time Series Output Interval &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 60&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Outputs time series data every 60 seconds&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TCF file. The TUFLOW simulation is ready to be run for the first time.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
The comments (following the exclamation marks) are not required and these commands are generally self explanatory. For this tutorial model they are included to clarify the purpose of each line. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Running the Simulation =&lt;br /&gt;
Set up a simple batch file (.bat) to run TUFLOW. This approach calls the TUFLOW executable file (.exe) and runs the TCF file.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new text file in the &#039;&#039;&#039;Module_01\TUFLOW\runs&#039;&#039;&#039; folder and save as &#039;&#039;&#039;_run_M01_HPC.bat&#039;&#039;&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;&#039;&#039;_run_M01_HPC.bat&#039;&#039;&#039; in a text editor and include a file path to the executable from the &#039;&#039;&#039;exe\2025.1.0&#039;&#039;&#039; folder and the TCF name: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2025.1.0\TUFLOW_iSP_w64.exe&amp;quot; M01_5m_001.tcf&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
Note: A relative path is used for the executable and the TCF, a full file path can also be used.&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in file explorer to run the simulation. &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
This opens the TUFLOW console window and the simulation begins running. The simulation usually takes a few minutes to process (depending on the computer hardware). While the model is running, it is a good practise to fill out a modelling log. It includes developer notes keeping a record of TUFLOW simulations and changes from one version to the next, for more information see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/TUFLOW_Modelling_Log here]&amp;lt;/u&amp;gt;. A template is included in the &#039;&#039;&#039;Module_01\Tutorial_Data&#039;&#039;&#039; folder.&amp;lt;br&amp;gt;&lt;br /&gt;
If the simulation is successful, the console window should look like the image below.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Simulation_Finished_a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting = &lt;br /&gt;
See tips on common mistakes and troubleshooting steps if the model doesn&#039;t run:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_Troubleshooting_QGIS | QGIS]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Check Files =&lt;br /&gt;
TUFLOW writes a series of check files during the model initialisation process when the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Write Check Files &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is specified in the TCF. The files are either in a tabular form (.csv), GIS Vector format (.gpkg, .shp, .mif) or GIS Raster format (.tif, .flt, .asc) and contain information on the input data processed by TUFLOW.&amp;lt;br&amp;gt;&lt;br /&gt;
While the model is running, review the added features are specified correctly: &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Check_Files_QGIS | QGIS - SHP]]&amp;lt;/u&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Check_Files_QGIS_GPKG | QGIS - GPKG]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Results=&lt;br /&gt;
Two map output formats specified for this tutorial:&lt;br /&gt;
:*TIF - Grid based output format writing map output data types separately&lt;br /&gt;
:*XMDF - Mesh based output format containing all map output data types in a single file&lt;br /&gt;
When the model is finished, review the results: &amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01_Results_QGIS | QGIS]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Reviewing Model Performance =&lt;br /&gt;
There are a number of useful outputs from TUFLOW for reviewing the model performance.&amp;lt;br&amp;gt;&lt;br /&gt;
=== TUFLOW Log File ===&lt;br /&gt;
The first place to look is in the TUFLOW Log File (TLF). The &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Log Folder &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; log&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command in the TCF controls where the log file is written. &amp;lt;br&amp;gt;&lt;br /&gt;
Navigate to the &#039;&#039;&#039;Module_01\TUFLOW\runs\log&#039;&#039;&#039; folder and open the &#039;&#039;&#039;M01_5m_001.tlf&#039;&#039;&#039; file in a text editor. Scroll down to the bottom to &#039;Simulation Summary&#039;. This includes information about the computation time, messages, volume calculations and mass error. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:Simulation_Summary_02a.PNG]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== HPC TUFLOW Log File ===&lt;br /&gt;
As the model is using the HPC solution scheme, there is a second log file automatically written from the same command. Navigate to the &#039;&#039;&#039;Module_01\TUFLOW\runs\log&#039;&#039;&#039; folder and open the &#039;&#039;&#039;M01_5m_001.hpc.tlf&#039;&#039;&#039; file. The HPC solution scheme, by default, uses adaptive timestepping to progress through the simulation. The timestep is adjusted so it complies with the mathematical stability criteria of a 2D SWE explicit solution. This is controlled by three control numbers, further information is provided &amp;lt;u&amp;gt;[https://wiki.tuflow.com/HPC_Adaptive_Timestepping here]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
Scroll down the &#039;&#039;&#039;hpc.tlf&#039;&#039;&#039; to &#039;iStep&#039;. This is the point at which the model successfully compiled and began running. The three HPC control numbers are listed in the columns after time. Then the number of wet cells, the volume of water, the dt (minimum timestep) and the efficiency of the solver. As the model starts to gain wet cells dt drops, but should eventually stabilise. Similarly, model efficiency should increase as the model progresses.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
[[File:Simulation HPC.PNG]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Other Model Performance Indicators ===&lt;br /&gt;
For more information on how to review HPC models, see &amp;lt;u&amp;gt;[[HPC_Model_Review | HPC Model Review]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion = &lt;br /&gt;
:*Simple 2D TUFLOW model was created with required GIS and text based inputs.&lt;br /&gt;
:*Check files were used to review the model setup.&lt;br /&gt;
:*Results were visualised and the performance of the model reviewed. &amp;lt;br&amp;gt; &lt;br /&gt;
:*For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
:*Alternatively, see the &amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Example_Model_Catalogue | TUFLOW Example Models]]&amp;lt;/u&amp;gt; to explore the full list of TUFLOW features.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Increasing Model Resolution (Optional) =&lt;br /&gt;
This section includes an optional exercise to reduce the cell size from 5m to 2.5m. Consider the impact this has on the model results and the runtime.&amp;lt;br&amp;gt;&lt;br /&gt;
To reduce the cell size in the model: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TUFLOW control file &#039;&#039;&#039;M01_5m_001.tcf&#039;&#039;&#039; as &#039;&#039;&#039;M01_2.5m_001.tcf&#039;&#039;&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;Save the geometry control file &#039;&#039;&#039;M01_001.tgc&#039;&#039;&#039; as &#039;&#039;&#039;M01_2.5m_001.tgc&#039;&#039;&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;Modify the cell size in the geometry control file to &#039;2.5&#039; meters.&lt;br /&gt;
&amp;lt;li&amp;gt;In the TCF, update the reference to the new TGC.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file with the updated TCF file and run the simulation. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Tutorial_Introduction| Back to Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=PyTuflow&amp;diff=45240</id>
		<title>PyTuflow</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=PyTuflow&amp;diff=45240"/>
		<updated>2025-12-16T23:40:33Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Latest Documentation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
PyTUFLOW is a package of Python tools for extracting TUFLOW Classic and HPC time series results. It can be used to automate output tasks such as checking model health, goodness-of-fit for model calibration,  viewing on-the-fly model output (used in conjunction with &amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Write PO Online&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; ON&amp;lt;/tt&amp;gt;), and high-volume output plotting from production runs.&amp;lt;br&amp;gt;&amp;lt;Br&amp;gt;&lt;br /&gt;
For worked examples demonstrating the use of PyTUFLOW, register for the free &amp;lt;u&amp;gt;[https://www.tuflow.com/training/training-catalogue/tt004e-introduction-to-python-for-tuflow-elearning/ Introduction to Python for TUFLOW]&amp;lt;/u&amp;gt; eLearning Course.&lt;br /&gt;
&lt;br /&gt;
=Latest Documentation=&lt;br /&gt;
Follow the link for the latest documentation &amp;lt;u&amp;gt;[https://docs.tuflow.com/pytuflow/ pyTUFLOW]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Archive Documentation=&lt;br /&gt;
Guidance for earlier version of pyTuflow can be accessed via the following link: &amp;lt;u&amp;gt;[[PyTuflow_Archive| PyTuflow_Archive]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Wiki Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=PyTuflow&amp;diff=45239</id>
		<title>PyTuflow</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=PyTuflow&amp;diff=45239"/>
		<updated>2025-12-16T23:40:22Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: Replaced content with &amp;quot;=Introduction= PyTUFLOW is a package of Python tools for extracting TUFLOW Classic and HPC time series results. It can be used to automate output tasks such as checking model health, goodness-of-fit for model calibration,  viewing on-the-fly model output (used in conjunction with &amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Write PO Online&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; ON&amp;lt;/tt&amp;gt;), and high-volume output plotting from production runs.&amp;lt;br&amp;gt;&amp;lt;Br&amp;gt; For worked examples demonstrating the use of...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
PyTUFLOW is a package of Python tools for extracting TUFLOW Classic and HPC time series results. It can be used to automate output tasks such as checking model health, goodness-of-fit for model calibration,  viewing on-the-fly model output (used in conjunction with &amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Write PO Online&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; ON&amp;lt;/tt&amp;gt;), and high-volume output plotting from production runs.&amp;lt;br&amp;gt;&amp;lt;Br&amp;gt;&lt;br /&gt;
For worked examples demonstrating the use of PyTUFLOW, register for the free &amp;lt;u&amp;gt;[https://www.tuflow.com/training/training-catalogue/tt004e-introduction-to-python-for-tuflow-elearning/ Introduction to Python for TUFLOW]&amp;lt;/u&amp;gt; eLearning Course.&lt;br /&gt;
&lt;br /&gt;
=Latest Documentation=&lt;br /&gt;
Follow the link for the latest documentation &amp;lt;u&amp;gt;[https://docs.tuflow.com/pytuflow/ | pyTUFLOW]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=Archive Documentation=&lt;br /&gt;
Guidance for earlier version of pyTuflow can be accessed via the following link: &amp;lt;u&amp;gt;[[PyTuflow_Archive| PyTuflow_Archive]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Wiki Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=PyTuflow&amp;diff=45238</id>
		<title>PyTuflow</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=PyTuflow&amp;diff=45238"/>
		<updated>2025-12-16T23:36:21Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Archive Guidance */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
PyTUFLOW is a package of Python tools for extracting TUFLOW Classic and HPC time series results. It can be used to automate output tasks such as checking model health, goodness-of-fit for model calibration,  viewing on-the-fly model output (used in conjunction with &amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Write PO Online&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; ON&amp;lt;/tt&amp;gt;), and high-volume output plotting from production runs.&amp;lt;br&amp;gt;&amp;lt;Br&amp;gt;&lt;br /&gt;
For worked examples demonstrating the use of PyTUFLOW, please register for the free &amp;lt;u&amp;gt;[https://www.tuflow.com/training/training-catalogue/tt004e-introduction-to-python-for-tuflow-elearning/ Introduction to Python for TUFLOW]&amp;lt;/u&amp;gt; eLearning Course.&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The PyTuflow library can be installed via Python&#039;s packaging manager (pip).&amp;lt;br&amp;gt;&lt;br /&gt;
Open up the command prompt and enter the following:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
python -m pip install pytuflow&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If python is not on your system path, you can navigate to the folder containing the &amp;lt;tt&amp;gt;python.exe&amp;lt;/tt&amp;gt; before trying to install PyTuflow&amp;lt;br&amp;gt;&lt;br /&gt;
e.g.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd c:\Python39&lt;br /&gt;
python -m pip install pytuflow&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Class: ResData=&lt;br /&gt;
&lt;br /&gt;
Class for TUFLOW time series results.&lt;br /&gt;
&lt;br /&gt;
Initialised as an empty object, or with results with a *.tpc in TUFLOW 2016 release and later or *.info in TUFLOW 2013 release.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
res = pytuflow.ResData()  # initialising as an empty object&lt;br /&gt;
# or&lt;br /&gt;
res = pytuflow.ResData(&#039;M01_5m_001.tpc&#039;)  # initialising with results&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Methods==&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left;&amp;quot;&lt;br /&gt;
|! style=&amp;quot;background-color:#005581; font-weight:bold; color:white&amp;quot; width=30%| Method&lt;br /&gt;
|! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=20%|Description&lt;br /&gt;
|! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=25%|Returns&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039; style=&#039;text-align: left&#039;|&amp;lt;b&amp;gt;[[#channelConnectionCount|channelConnectionCount]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the number of channels connected to a given node&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelConnections|channelConnections]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of the channels connected to a given node&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelCount|channelCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of channels in results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelResultTypes|channelResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available result types for channels&lt;br /&gt;
|list of Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channels|channels]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the channels IDs in the results&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelsDownstream|channelsDownstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the channels downstream of a given node&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelsUpstream|channelsUpstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the channels upstream of a given node&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#format|format]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the result format i.e. &#039;2013&#039; or &#039;2016&#039;&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Format&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;2&#039;|&amp;lt;b&amp;gt;[[#getAdverseGradients|getAdverseGradients]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;2&#039;|Returns locations of any adverse water level or energy level (if result type available) gradients in long profile. Note getLongProfileData method must be called prior to calling this method&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; Adverse Water Level Gradient Locations ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data )&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; Adverse Energy Level Gradient Locations ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data )&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#getLongProfileData|getLongProfileData]] (&amp;lt;/b&amp;gt; &#039;&#039;float&#039;&#039; Timestep, &#039;&#039;str&#039;&#039; Result Type, &#039;&#039;str&#039;&#039; Channel ID, [optional] &#039;&#039;str&#039;&#039; 2nd Channel ID  &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns long profile data from a given channel to another channel. If no second channel is specified will continue until no further channels downstream&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; Profile Data ( &#039;&#039;list&#039;&#039; x values, &#039;&#039;list&#039;&#039; y values )&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;2&#039;|&amp;lt;b&amp;gt;[[#getLongProfileTimeOfMaximum|getLongProfileTimeOfMaximum]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;2&#039;|Returns the time of maximum water level along the current profile. Note getLongProfileData method must be called prior to calling this method&lt;br /&gt;
|&#039;&#039;list&#039;&#039; x values&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;list&#039;&#039; y values&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#getPipes|getPipes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns any pipe or culvert data in the current profile. Note getLongProfileData method must be called prior to calling this method&lt;br /&gt;
|&#039;&#039;list&#039;&#039; pipes [ &#039;&#039;list&#039;&#039; pipe vertexes [ &#039;&#039;tuple&#039;&#039; vertex ( x point, y point ) ] ]&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#getTimeSeriesData|getTimeSeriesData]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns time series data for the given element (1D node, 1D channel, 2D PO, RL) for a the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; time series data ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data )&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;2&#039;|&amp;lt;b&amp;gt;[[#load|load]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Filepath &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;2&#039;|Loads result file. File formats are *.tpc for TUFLOW release 2016 and later, or *.info for TUFLOW release 2013&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#longProfileResultTypes|longProfileResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#maximum|maximum]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the maximum result value for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Maximum Value&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#maximumTimestepChange|maximumTimestepChange]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the maximum change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Maximum Value&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#name|name]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the name of the result&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Name&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeCount|nodeCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of nodes in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeDownstream|nodeDownstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the name of the downstream node of a given channel&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Node ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeResultTypes|nodeResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available result types for nodes&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodes|nodes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the node IDs in the results&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Node IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeUpstream|nodeUpstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the name of the upstream node of a given channel&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Node ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#poNames|poNames]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available Plot Output names &lt;br /&gt;
|&#039;&#039;list&#039;&#039; PO ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#poResultTypes|poResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available Plot Output result types &lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlCount|rlCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of Reporting Locations (of all geometry type) in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlLineCount|rlLineCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of line Reporting Locations in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlNames|rlNames]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the Reporting Location names&lt;br /&gt;
|&#039;&#039;list&#039;&#039; RL ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlPointCount|rlPointCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of point Reporting Locations in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlRegionCount|rlRegionCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of region Reporting Locations in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlResultTypes|rlResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available Reporting Location result types &lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#source|source]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the full file path to the source result file (*.tpc or *.info)&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Path&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#timeOfMaximum|timeOfMaximum]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the time of maximum for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Time (hrs)&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#timeOfMaximumTimestepChange|timeOfMaximumTimestepChange]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the time of maximum for change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Time (hrs)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==channelConnectionCount==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelConnectionCount (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the number of channels connected to a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of connected channels&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    conn_count = res.channelConnectionCount(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} channels connected to {1}&#039;.format(conn_count, node))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelConnections==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelConnections (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of the channels connected to a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of connected channels e.g. [&#039;Chan_A&#039;, &#039;Chan_B&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    conn_chans = res.channelConnections(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels connected to {0}:&#039;.format(node))&lt;br /&gt;
    for chan in conn_chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelCount==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of channels in results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of channels&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    chan_count = res.channelCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} channels in results&#039;.format(chan_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelResultTypes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available result types for channels&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of result types e.g. [&#039;Q&#039;, &#039;V&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    chan_rt = res.channelResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available channel result types:&#039;)&lt;br /&gt;
    for rt in chan_rt:&lt;br /&gt;
        print(rt)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channels==&lt;br /&gt;
&amp;lt;b&amp;gt;channels ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the channels IDs in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of channels e.g. [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    chans = res.channels()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels:&#039;)&lt;br /&gt;
    for chan in chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelsDownstream==&lt;br /&gt;
&amp;lt;b&amp;gt;channelsDownstream (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the channels downstream of a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of channels e.g. [&#039;Chan_B&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    dns_chans = res.channelsDownstream(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels downstream of {0}:&#039;.format(node))&lt;br /&gt;
    for chan in dns_chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelsUpstream==&lt;br /&gt;
&amp;lt;b&amp;gt;channelsUpstream (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the channels upstream of a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of channels e.g. [&#039;Chan_A&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    ups_chans = res.channelsUpstream(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels upstream of {0}:&#039;.format(node))&lt;br /&gt;
    for chan in ups_chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==format==&lt;br /&gt;
&amp;lt;b&amp;gt;format ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the result format i.e. &#039;2013&#039; or &#039;2016&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Format:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Format of results e.g. &#039;2016&#039;&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    format = res.format()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Results format: {0}&#039;.format(format)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getAdverseGradients==&lt;br /&gt;
&amp;lt;b&amp;gt;getAdverseGradients ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns locations of any adverse water level or energy level (if result type available) gradients in long profile. Note getLongProfileData method must be called prior to calling this method&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Adverse water level gradients:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data ) e.g. ([0, 5], [10, 12])&lt;br /&gt;
: &#039;&#039;&#039;Adverse energy level gradients:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data ) e.g. ([0, 5], [11, 14])&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = 1.0&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # check for adverse gradients&lt;br /&gt;
    adv = res.getAdverseGradients()&lt;br /&gt;
    for i, data in enumerate(adv):&lt;br /&gt;
        x, y = data&lt;br /&gt;
&lt;br /&gt;
        # get appropriate label&lt;br /&gt;
        # getAdverseGradients() returns 2 datasets:&lt;br /&gt;
        # first dataset adverse water level&lt;br /&gt;
        # second dataset adverse energy level&lt;br /&gt;
        if i == 0:  # first dataset&lt;br /&gt;
            label = &#039;Adverse Water Levels&#039;&lt;br /&gt;
        else:  # second dataset&lt;br /&gt;
            label = &#039;Adverse Energy Levels&#039; &lt;br /&gt;
&lt;br /&gt;
        # add to plot as points&lt;br /&gt;
        ax.plot(x, y, label=label, marker=&#039;o&#039;, linestyle=&#039;None&#039;)&lt;br /&gt;
    &lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    ax.legend(lines, labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getLongProfileData==&lt;br /&gt;
&amp;lt;b&amp;gt;getLongProfileData (&amp;lt;/b&amp;gt; Timestep, Result Type, Channel ID, [optional] 2nd Channel ID  &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns long profile data from a given channel to another channel. If no second channel is specified will continue until no further channels downstream&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Timestep:&#039;&#039;&#039; &#039;&#039;float&#039;&#039; or &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Output timestep to plot. Can be a value e.g. 1.5 or string e.g. &#039;max&#039;&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Starting channel for long profile e.g. &#039;Chan_A&#039;&lt;br /&gt;
: &#039;&#039;&#039;2nd Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional downstream channel ID to stop the long profile at e.g. &#039;Chan_D&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Data:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;x data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: &#039;&#039;&#039;data point:&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;y data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: &#039;&#039;&#039;data point:&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:::: e.g. ([0, 1, 2, 3, 4, 5], [10, 20, 30, 20, 10, 0]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = 1.0&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    ax.legend(lines, labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getLongProfileTimeOfMaximum==&lt;br /&gt;
&amp;lt;b&amp;gt;getLongProfileTimeOfMaximum ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the time of maximum water level along the current profile. Note getLongProfileData method must be called prior to calling this method&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;x data:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: x points for plotting time of max along long profile e.g. [0, 1, 2, 3, 4, 5]&lt;br /&gt;
: &#039;&#039;&#039;y data:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: y points for plotting time of max along long profile e.g. [10, 11, 12, 13, 14, 15]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = &#039;max&#039;  # maximum result along profile&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # also plot time of max water level on secondary axis&lt;br /&gt;
    tom_x, tom_y = res.getLongProfileTimeOfMaximum()&lt;br /&gt;
    ax2 = ax.twinx()  # initialise secondary axis&lt;br /&gt;
&lt;br /&gt;
    # add to plot on secondary axis&lt;br /&gt;
    ax2.plot(tom_x, tom_y, label=&#039;Time of Maximum&#039;, linestyle=&#039;--&#039;)&lt;br /&gt;
    &lt;br /&gt;
    # combine axis legends and add to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    lines2, labs2 = ax2.get_legend_handles_labels()&lt;br /&gt;
    comb_lines = lines + lines2&lt;br /&gt;
    comb_labs = labs + labs2&lt;br /&gt;
    ax.legend(comb_lines, comb_labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getPipes==&lt;br /&gt;
&amp;lt;b&amp;gt;getPipes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns any pipe or culvert data in the current profile. Note getLongProfileData method must be called prior to calling this method&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Pipe list:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;Vertex list:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: &#039;&#039;&#039;Vertex coords:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:::: e.g. [[(0, 0), (0, 1), (1, 1), (1, 0)], [(1, 1), (1, 2), (2, 2), (2, 1)]]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
from matplotlib.patches import Polygon  # will add pipes and culverts as polygon&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = 1.0&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # get pipes and culverts and add to plot&lt;br /&gt;
    pipes = res.getPipes()&lt;br /&gt;
    for pipe in pipes:  # loop through all pipes&lt;br /&gt;
        polygon = Polygon(pipe, facecolor=&#039;0.9&#039;, edgecolor=&#039;0.5&#039;, label=&#039;Culverts and Pipes&#039;)&lt;br /&gt;
        ax.add_patch(polygon)&lt;br /&gt;
    &lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
&lt;br /&gt;
    # filter duplicate legend items &lt;br /&gt;
    # for example if there is more than one pipe or culvert we only want that to appear once in the legend&lt;br /&gt;
    unique_lines = []&lt;br /&gt;
    unique_labels = []&lt;br /&gt;
    for i, label in enumerate(labs):&lt;br /&gt;
        if label not in unique_labels:&lt;br /&gt;
            unique_labels.append(label)&lt;br /&gt;
            unique_lines.append(lines[i])&lt;br /&gt;
    ax.legend(unique_lines, unique_labels)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getTimeSeriesData==&lt;br /&gt;
&amp;lt;b&amp;gt;getTimeSeriesData (&amp;lt;/b&amp;gt; Element, Result Type, [optional] domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns time series data for the given element (1D node, 1D channel, 2D PO, RL) for a the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Channel, Node, PO, or RL element to get time series data for&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Data:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;x data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;y data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: e.g. ([0, 1, 2, 3, 4, 5], [10, 20, 30, 20, 10, 0]&lt;br /&gt;
&#039;&#039;&#039;Examples&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Plotting results for multiple elements on the same graph&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get time series data and add to plot&lt;br /&gt;
    elements = [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
    result_type = &#039;Q&#039;&lt;br /&gt;
    for element in elements:&lt;br /&gt;
        err_ts, mess_ts, data = res.getTimeSeriesData(element, result_type)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_ts:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=element)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting time series data, print error message to console&lt;br /&gt;
            print(mess_ts)&lt;br /&gt;
    &lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    ax.legend(lines, labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    plt.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Plotting water level and velocity on the same plot using a secondary axis&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
    # initialise secondary axis&lt;br /&gt;
    ax2 = ax.twinx()&lt;br /&gt;
&lt;br /&gt;
    # get time series data and add to plot&lt;br /&gt;
    elements = [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
    result_types = [&#039;Q&#039;, &#039;V&#039;]&lt;br /&gt;
    for element in elements:&lt;br /&gt;
        for result_type in result_types:&lt;br /&gt;
            err_ts, mess_ts, data = res.getTimeSeriesData(element, result_type)&lt;br /&gt;
    &lt;br /&gt;
            # check for error before plotting&lt;br /&gt;
            if not err_ts:&lt;br /&gt;
                x, y = data&lt;br /&gt;
                label = &#039;{0}: {1}&#039;.format(result_type, element)&lt;br /&gt;
&lt;br /&gt;
                # plot Q on first axis, V on secondary axis&lt;br /&gt;
                if result_type == &#039;Q&#039;:&lt;br /&gt;
                    # first axis&lt;br /&gt;
                    ax.plot(x, y, label=label)&lt;br /&gt;
                else:  # must be &#039;V&#039;&lt;br /&gt;
                    # secondary axis&lt;br /&gt;
                    ax2.plot(x, y, label=label, linestyle=&#039;--&#039;)&lt;br /&gt;
            else:&lt;br /&gt;
                # error occurred getting time series data, print error message to console&lt;br /&gt;
                print(mess_ts)&lt;br /&gt;
    &lt;br /&gt;
    # combine primary and secondary axis items and add to legend&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    lines2, labs2 = ax2.get_legend_handles_labels()&lt;br /&gt;
    lines_comb = lines + lines2&lt;br /&gt;
    labs_comb = labs + labs2&lt;br /&gt;
    ax.legend(lines_comb, labs_comb)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Saving a separate plot for each element as a *.png&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import os  # library for operating system file and directory manipulation&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# save directory for figures&lt;br /&gt;
save_dir = r&#039;C:TUFLOW\results\figures&#039;&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # get time series data and add to plot&lt;br /&gt;
    elements = [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
    result_type = &#039;Q&#039;&lt;br /&gt;
    for element in elements:&lt;br /&gt;
        err_ts, mess_ts, data = res.getTimeSeriesData(element, result_type)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_ts:&lt;br /&gt;
            # initialise plot&lt;br /&gt;
            fig, ax = plt.subplots()&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=element)&lt;br /&gt;
            &lt;br /&gt;
            # add legend to plot&lt;br /&gt;
            lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
            ax.legend(lines, labs)&lt;br /&gt;
&lt;br /&gt;
            # add axis labels&lt;br /&gt;
            ax.set_xlabel(&#039;Time (hrs)&#039;)&lt;br /&gt;
            ax.set_ylabel(&#039;Flow (m3/s)&#039;)&lt;br /&gt;
&lt;br /&gt;
            # save fig&lt;br /&gt;
            save_name = &#039;Figure_{0}_{1}.png&#039;.format(element, result_type)&lt;br /&gt;
            save_path = os.path.join(save_dir, save_name)&lt;br /&gt;
            fig.savefig(save_path)&lt;br /&gt;
&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting time series data, print error message to console&lt;br /&gt;
            print(mess_ts)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==load==&lt;br /&gt;
&amp;lt;b&amp;gt;load (&amp;lt;/b&amp;gt; Filepath &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Loads result file. File formats are *.tpc for TUFLOW release 2016 and later, or *.info for TUFLOW release 2013&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Filepath:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Full path to *.tpc or *.info&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, returns True if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurs&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check if an error occurred&lt;br /&gt;
if err:&lt;br /&gt;
    # print message&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==longProfileResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;longProfileResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns list of available long profile result types&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for long profile plotting&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    lp_rt = res.longProfileResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available long profile result types:&#039;)&lt;br /&gt;
    for rt in lp_rt:&lt;br /&gt;
        print(rt)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==maximum==&lt;br /&gt;
&amp;lt;b&amp;gt;maximum (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the maximum result value for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Channel, Node, or RL element to get maximum result for. PO results do not currently support getting maximum value.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Maximum&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Maximum result&lt;br /&gt;
&#039;&#039;&#039;Examples&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Maximum flow in a channel&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    channel = &#039;Chan_A&#039;&lt;br /&gt;
    maximum = res.maximum(channel, &#039;Q&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Max flow at {0} is {1} m3/s&#039;.format(channel, maximum)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Maximum water level at a node&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    maximum = res.maximum(channel, &#039;H&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Max water level at {0} is {1} mRL&#039;.format(node, maximum)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==maximumTimestepChange==&lt;br /&gt;
&amp;lt;b&amp;gt;maximumTimestepChange (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the maximum change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: RL element to get maximum change in a single timestep for. Currently RL elements are the only supported type.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Maximum&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Maximum value change in any given timestep&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    loc = &#039;Reporting Location 1&#039;&lt;br /&gt;
    tsMaximum = res.maximumTimestepChange(channel, &#039;Q&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Max flow change in any given timestep at {0} is {1} m3/s&#039;.format(loc, tsMaximum)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==name==&lt;br /&gt;
&amp;lt;b&amp;gt;name ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the name of the result&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Name:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name of results&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    name = res.name()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Results from {0} loaded successfully.format(name))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeCount==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of nodes in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of nodes&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node_count = res.nodeCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} nodes in results.format(node_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeDownstream==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeDownstream (&amp;lt;/b&amp;gt; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the name of the downstream node of a given channel&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of channel&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of downstream node&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    channel = &#039;Chan_A&#039;&lt;br /&gt;
    dns_node = res.nodeDownstream(channel)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Downstream node of channel {0} is {1}&#039;.format(channel, dns_node))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available result types for nodes&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for nodes e.g. [&#039;H&#039;, &#039;E&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    result_types = res.nodeResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available result types for nodes are:)&lt;br /&gt;
    for result_type in result_types:&lt;br /&gt;
        print(result_type)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodes==&lt;br /&gt;
&amp;lt;b&amp;gt;nodes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the node IDs in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of all nodes names in results e.g. [&#039;Chan_A.1&#039;, &#039;Chan_A.2&#039;, &#039;Chan_B.2&#039;, &#039;Chan_C.2&#039;...]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    nodes = res.nodes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Nodes:)&lt;br /&gt;
    for node in nodes:&lt;br /&gt;
        print(node)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeUpstream==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeUpstream (&amp;lt;/b&amp;gt; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the name of the upstream node of a given channel&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of channel&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of upstream node&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    channel = &#039;Chan_A&#039;&lt;br /&gt;
    ups_node = res.nodeUpstream(channel)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Upstream node of channel {0} is {1}&#039;.format(channel, ups_node))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==poNames==&lt;br /&gt;
&amp;lt;b&amp;gt;poNames ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available Plot Output names &amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of all PO names in results e.g. [&#039;Loc_1&#039;, &#039;Loc_2&#039;, &#039;Loc_3&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    po_names = res.poNames()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;PO Names:)&lt;br /&gt;
    for po_name in po_names:&lt;br /&gt;
        print(po_name)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==poResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;poResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available Plot Output result types&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for Plot Outputs e.g. [&#039;Q&#039;, &#039;H&#039;, &#039;V&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    result_types = res.poResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available result types for Plot Outputs are:)&lt;br /&gt;
    for result_type in result_types:&lt;br /&gt;
        print(result_type)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of Reporting Locations (of all geometry type) in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_count = res.rlCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL objects in results.format(node_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlLineCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlLineCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of line Reporting Locations in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL Line objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_line_count = res.rlLineCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL Line objects in results.format(node_line_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlNames==&lt;br /&gt;
&amp;lt;b&amp;gt;rlNames ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the Reporting Location names&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of all RL names in results e.g. [&#039;Reporting_Loc_1&#039;, &#039;Reporting_Loc_2&#039;, &#039;Reporting_Loc_3&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_names = res.rlNames()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;RL Names:)&lt;br /&gt;
    for rl_name in rl_names:&lt;br /&gt;
        print(rl_name)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlPointCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlPointCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of point Reporting Locations in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL Point objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_point_count = res.rlPointCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL Point objects in results.format(node_point_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlRegionCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlRegionCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of region Reporting Locations in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL Region objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_region_count = res.rlRegionCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL Region objects in results.format(node_region_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;rlResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available Reporting Location result types&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for Reporting Locations e.g. [&#039;Q&#039;, &#039;H&#039;, &#039;Vol&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    result_types = res.rlResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available result types for Reporting Locations are:)&lt;br /&gt;
    for result_type in result_types:&lt;br /&gt;
        print(result_type)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==source==&lt;br /&gt;
&amp;lt;b&amp;gt;source ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the full file path to the source result file (*.tpc or *.info)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Source:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Full path to result file&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    source = res.source()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Successfully loaded result from {0}.format(source))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==timeOfMaximum==&lt;br /&gt;
&amp;lt;b&amp;gt;timeOfMaximum (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the time of maximum for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Channel, Node, or RL element to get maximum result for. PO results do not currently support getting time of maximum.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Time of Maximum:&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Time of maximum&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    tom = res.timeOfMaximum(channel, &#039;H&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Time of max water level at {0} is {1} hrs&#039;.format(channel, tom)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==timeOfMaximumTimestepChange==&lt;br /&gt;
&amp;lt;b&amp;gt;timeOfMaximumTimestepChange (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the time of maximum for change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: RL element to get time of maximum change in a single timestep for. Currently RL elements are the only supported type.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Maximum&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Time of maximum value change&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    loc = &#039;Reporting Location 1&#039;&lt;br /&gt;
    tom_ts = res.timeOfMaximumTimestepChange(channel, &#039;Q&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Time of max flow change in any given timestep at {0} is {1} hrs&#039;.format(loc, tom_ts)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Archive Guidance=&lt;br /&gt;
Guidance for earlier version of pyTuflow can be accessed via the following link: &amp;lt;u&amp;gt;[[PyTuflow_Archive| PyTuflow_Archive]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Wiki Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=PyTuflow&amp;diff=45237</id>
		<title>PyTuflow</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=PyTuflow&amp;diff=45237"/>
		<updated>2025-12-16T23:36:05Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
PyTUFLOW is a package of Python tools for extracting TUFLOW Classic and HPC time series results. It can be used to automate output tasks such as checking model health, goodness-of-fit for model calibration,  viewing on-the-fly model output (used in conjunction with &amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Write PO Online&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; ON&amp;lt;/tt&amp;gt;), and high-volume output plotting from production runs.&amp;lt;br&amp;gt;&amp;lt;Br&amp;gt;&lt;br /&gt;
For worked examples demonstrating the use of PyTUFLOW, please register for the free &amp;lt;u&amp;gt;[https://www.tuflow.com/training/training-catalogue/tt004e-introduction-to-python-for-tuflow-elearning/ Introduction to Python for TUFLOW]&amp;lt;/u&amp;gt; eLearning Course.&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The PyTuflow library can be installed via Python&#039;s packaging manager (pip).&amp;lt;br&amp;gt;&lt;br /&gt;
Open up the command prompt and enter the following:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
python -m pip install pytuflow&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If python is not on your system path, you can navigate to the folder containing the &amp;lt;tt&amp;gt;python.exe&amp;lt;/tt&amp;gt; before trying to install PyTuflow&amp;lt;br&amp;gt;&lt;br /&gt;
e.g.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd c:\Python39&lt;br /&gt;
python -m pip install pytuflow&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Class: ResData=&lt;br /&gt;
&lt;br /&gt;
Class for TUFLOW time series results.&lt;br /&gt;
&lt;br /&gt;
Initialised as an empty object, or with results with a *.tpc in TUFLOW 2016 release and later or *.info in TUFLOW 2013 release.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
res = pytuflow.ResData()  # initialising as an empty object&lt;br /&gt;
# or&lt;br /&gt;
res = pytuflow.ResData(&#039;M01_5m_001.tpc&#039;)  # initialising with results&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Methods==&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left;&amp;quot;&lt;br /&gt;
|! style=&amp;quot;background-color:#005581; font-weight:bold; color:white&amp;quot; width=30%| Method&lt;br /&gt;
|! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=20%|Description&lt;br /&gt;
|! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=25%|Returns&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039; style=&#039;text-align: left&#039;|&amp;lt;b&amp;gt;[[#channelConnectionCount|channelConnectionCount]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the number of channels connected to a given node&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelConnections|channelConnections]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of the channels connected to a given node&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelCount|channelCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of channels in results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelResultTypes|channelResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available result types for channels&lt;br /&gt;
|list of Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channels|channels]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the channels IDs in the results&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelsDownstream|channelsDownstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the channels downstream of a given node&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelsUpstream|channelsUpstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the channels upstream of a given node&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#format|format]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the result format i.e. &#039;2013&#039; or &#039;2016&#039;&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Format&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;2&#039;|&amp;lt;b&amp;gt;[[#getAdverseGradients|getAdverseGradients]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;2&#039;|Returns locations of any adverse water level or energy level (if result type available) gradients in long profile. Note getLongProfileData method must be called prior to calling this method&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; Adverse Water Level Gradient Locations ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data )&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; Adverse Energy Level Gradient Locations ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data )&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#getLongProfileData|getLongProfileData]] (&amp;lt;/b&amp;gt; &#039;&#039;float&#039;&#039; Timestep, &#039;&#039;str&#039;&#039; Result Type, &#039;&#039;str&#039;&#039; Channel ID, [optional] &#039;&#039;str&#039;&#039; 2nd Channel ID  &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns long profile data from a given channel to another channel. If no second channel is specified will continue until no further channels downstream&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; Profile Data ( &#039;&#039;list&#039;&#039; x values, &#039;&#039;list&#039;&#039; y values )&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;2&#039;|&amp;lt;b&amp;gt;[[#getLongProfileTimeOfMaximum|getLongProfileTimeOfMaximum]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;2&#039;|Returns the time of maximum water level along the current profile. Note getLongProfileData method must be called prior to calling this method&lt;br /&gt;
|&#039;&#039;list&#039;&#039; x values&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;list&#039;&#039; y values&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#getPipes|getPipes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns any pipe or culvert data in the current profile. Note getLongProfileData method must be called prior to calling this method&lt;br /&gt;
|&#039;&#039;list&#039;&#039; pipes [ &#039;&#039;list&#039;&#039; pipe vertexes [ &#039;&#039;tuple&#039;&#039; vertex ( x point, y point ) ] ]&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#getTimeSeriesData|getTimeSeriesData]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns time series data for the given element (1D node, 1D channel, 2D PO, RL) for a the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; time series data ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data )&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;2&#039;|&amp;lt;b&amp;gt;[[#load|load]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Filepath &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;2&#039;|Loads result file. File formats are *.tpc for TUFLOW release 2016 and later, or *.info for TUFLOW release 2013&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#longProfileResultTypes|longProfileResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#maximum|maximum]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the maximum result value for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Maximum Value&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#maximumTimestepChange|maximumTimestepChange]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the maximum change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Maximum Value&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#name|name]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the name of the result&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Name&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeCount|nodeCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of nodes in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeDownstream|nodeDownstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the name of the downstream node of a given channel&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Node ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeResultTypes|nodeResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available result types for nodes&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodes|nodes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the node IDs in the results&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Node IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeUpstream|nodeUpstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the name of the upstream node of a given channel&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Node ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#poNames|poNames]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available Plot Output names &lt;br /&gt;
|&#039;&#039;list&#039;&#039; PO ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#poResultTypes|poResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available Plot Output result types &lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlCount|rlCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of Reporting Locations (of all geometry type) in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlLineCount|rlLineCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of line Reporting Locations in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlNames|rlNames]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the Reporting Location names&lt;br /&gt;
|&#039;&#039;list&#039;&#039; RL ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlPointCount|rlPointCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of point Reporting Locations in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlRegionCount|rlRegionCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of region Reporting Locations in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlResultTypes|rlResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available Reporting Location result types &lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#source|source]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the full file path to the source result file (*.tpc or *.info)&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Path&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#timeOfMaximum|timeOfMaximum]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the time of maximum for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Time (hrs)&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#timeOfMaximumTimestepChange|timeOfMaximumTimestepChange]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the time of maximum for change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Time (hrs)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==channelConnectionCount==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelConnectionCount (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the number of channels connected to a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of connected channels&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    conn_count = res.channelConnectionCount(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} channels connected to {1}&#039;.format(conn_count, node))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelConnections==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelConnections (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of the channels connected to a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of connected channels e.g. [&#039;Chan_A&#039;, &#039;Chan_B&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    conn_chans = res.channelConnections(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels connected to {0}:&#039;.format(node))&lt;br /&gt;
    for chan in conn_chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelCount==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of channels in results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of channels&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    chan_count = res.channelCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} channels in results&#039;.format(chan_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelResultTypes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available result types for channels&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of result types e.g. [&#039;Q&#039;, &#039;V&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    chan_rt = res.channelResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available channel result types:&#039;)&lt;br /&gt;
    for rt in chan_rt:&lt;br /&gt;
        print(rt)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channels==&lt;br /&gt;
&amp;lt;b&amp;gt;channels ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the channels IDs in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of channels e.g. [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    chans = res.channels()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels:&#039;)&lt;br /&gt;
    for chan in chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelsDownstream==&lt;br /&gt;
&amp;lt;b&amp;gt;channelsDownstream (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the channels downstream of a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of channels e.g. [&#039;Chan_B&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    dns_chans = res.channelsDownstream(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels downstream of {0}:&#039;.format(node))&lt;br /&gt;
    for chan in dns_chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelsUpstream==&lt;br /&gt;
&amp;lt;b&amp;gt;channelsUpstream (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the channels upstream of a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of channels e.g. [&#039;Chan_A&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    ups_chans = res.channelsUpstream(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels upstream of {0}:&#039;.format(node))&lt;br /&gt;
    for chan in ups_chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==format==&lt;br /&gt;
&amp;lt;b&amp;gt;format ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the result format i.e. &#039;2013&#039; or &#039;2016&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Format:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Format of results e.g. &#039;2016&#039;&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    format = res.format()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Results format: {0}&#039;.format(format)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getAdverseGradients==&lt;br /&gt;
&amp;lt;b&amp;gt;getAdverseGradients ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns locations of any adverse water level or energy level (if result type available) gradients in long profile. Note getLongProfileData method must be called prior to calling this method&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Adverse water level gradients:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data ) e.g. ([0, 5], [10, 12])&lt;br /&gt;
: &#039;&#039;&#039;Adverse energy level gradients:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data ) e.g. ([0, 5], [11, 14])&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = 1.0&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # check for adverse gradients&lt;br /&gt;
    adv = res.getAdverseGradients()&lt;br /&gt;
    for i, data in enumerate(adv):&lt;br /&gt;
        x, y = data&lt;br /&gt;
&lt;br /&gt;
        # get appropriate label&lt;br /&gt;
        # getAdverseGradients() returns 2 datasets:&lt;br /&gt;
        # first dataset adverse water level&lt;br /&gt;
        # second dataset adverse energy level&lt;br /&gt;
        if i == 0:  # first dataset&lt;br /&gt;
            label = &#039;Adverse Water Levels&#039;&lt;br /&gt;
        else:  # second dataset&lt;br /&gt;
            label = &#039;Adverse Energy Levels&#039; &lt;br /&gt;
&lt;br /&gt;
        # add to plot as points&lt;br /&gt;
        ax.plot(x, y, label=label, marker=&#039;o&#039;, linestyle=&#039;None&#039;)&lt;br /&gt;
    &lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    ax.legend(lines, labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getLongProfileData==&lt;br /&gt;
&amp;lt;b&amp;gt;getLongProfileData (&amp;lt;/b&amp;gt; Timestep, Result Type, Channel ID, [optional] 2nd Channel ID  &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns long profile data from a given channel to another channel. If no second channel is specified will continue until no further channels downstream&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Timestep:&#039;&#039;&#039; &#039;&#039;float&#039;&#039; or &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Output timestep to plot. Can be a value e.g. 1.5 or string e.g. &#039;max&#039;&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Starting channel for long profile e.g. &#039;Chan_A&#039;&lt;br /&gt;
: &#039;&#039;&#039;2nd Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional downstream channel ID to stop the long profile at e.g. &#039;Chan_D&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Data:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;x data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: &#039;&#039;&#039;data point:&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;y data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: &#039;&#039;&#039;data point:&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:::: e.g. ([0, 1, 2, 3, 4, 5], [10, 20, 30, 20, 10, 0]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = 1.0&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    ax.legend(lines, labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getLongProfileTimeOfMaximum==&lt;br /&gt;
&amp;lt;b&amp;gt;getLongProfileTimeOfMaximum ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the time of maximum water level along the current profile. Note getLongProfileData method must be called prior to calling this method&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;x data:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: x points for plotting time of max along long profile e.g. [0, 1, 2, 3, 4, 5]&lt;br /&gt;
: &#039;&#039;&#039;y data:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: y points for plotting time of max along long profile e.g. [10, 11, 12, 13, 14, 15]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = &#039;max&#039;  # maximum result along profile&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # also plot time of max water level on secondary axis&lt;br /&gt;
    tom_x, tom_y = res.getLongProfileTimeOfMaximum()&lt;br /&gt;
    ax2 = ax.twinx()  # initialise secondary axis&lt;br /&gt;
&lt;br /&gt;
    # add to plot on secondary axis&lt;br /&gt;
    ax2.plot(tom_x, tom_y, label=&#039;Time of Maximum&#039;, linestyle=&#039;--&#039;)&lt;br /&gt;
    &lt;br /&gt;
    # combine axis legends and add to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    lines2, labs2 = ax2.get_legend_handles_labels()&lt;br /&gt;
    comb_lines = lines + lines2&lt;br /&gt;
    comb_labs = labs + labs2&lt;br /&gt;
    ax.legend(comb_lines, comb_labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getPipes==&lt;br /&gt;
&amp;lt;b&amp;gt;getPipes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns any pipe or culvert data in the current profile. Note getLongProfileData method must be called prior to calling this method&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Pipe list:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;Vertex list:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: &#039;&#039;&#039;Vertex coords:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:::: e.g. [[(0, 0), (0, 1), (1, 1), (1, 0)], [(1, 1), (1, 2), (2, 2), (2, 1)]]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
from matplotlib.patches import Polygon  # will add pipes and culverts as polygon&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = 1.0&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # get pipes and culverts and add to plot&lt;br /&gt;
    pipes = res.getPipes()&lt;br /&gt;
    for pipe in pipes:  # loop through all pipes&lt;br /&gt;
        polygon = Polygon(pipe, facecolor=&#039;0.9&#039;, edgecolor=&#039;0.5&#039;, label=&#039;Culverts and Pipes&#039;)&lt;br /&gt;
        ax.add_patch(polygon)&lt;br /&gt;
    &lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
&lt;br /&gt;
    # filter duplicate legend items &lt;br /&gt;
    # for example if there is more than one pipe or culvert we only want that to appear once in the legend&lt;br /&gt;
    unique_lines = []&lt;br /&gt;
    unique_labels = []&lt;br /&gt;
    for i, label in enumerate(labs):&lt;br /&gt;
        if label not in unique_labels:&lt;br /&gt;
            unique_labels.append(label)&lt;br /&gt;
            unique_lines.append(lines[i])&lt;br /&gt;
    ax.legend(unique_lines, unique_labels)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getTimeSeriesData==&lt;br /&gt;
&amp;lt;b&amp;gt;getTimeSeriesData (&amp;lt;/b&amp;gt; Element, Result Type, [optional] domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns time series data for the given element (1D node, 1D channel, 2D PO, RL) for a the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Channel, Node, PO, or RL element to get time series data for&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Data:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;x data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;y data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: e.g. ([0, 1, 2, 3, 4, 5], [10, 20, 30, 20, 10, 0]&lt;br /&gt;
&#039;&#039;&#039;Examples&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Plotting results for multiple elements on the same graph&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get time series data and add to plot&lt;br /&gt;
    elements = [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
    result_type = &#039;Q&#039;&lt;br /&gt;
    for element in elements:&lt;br /&gt;
        err_ts, mess_ts, data = res.getTimeSeriesData(element, result_type)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_ts:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=element)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting time series data, print error message to console&lt;br /&gt;
            print(mess_ts)&lt;br /&gt;
    &lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    ax.legend(lines, labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    plt.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Plotting water level and velocity on the same plot using a secondary axis&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
    # initialise secondary axis&lt;br /&gt;
    ax2 = ax.twinx()&lt;br /&gt;
&lt;br /&gt;
    # get time series data and add to plot&lt;br /&gt;
    elements = [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
    result_types = [&#039;Q&#039;, &#039;V&#039;]&lt;br /&gt;
    for element in elements:&lt;br /&gt;
        for result_type in result_types:&lt;br /&gt;
            err_ts, mess_ts, data = res.getTimeSeriesData(element, result_type)&lt;br /&gt;
    &lt;br /&gt;
            # check for error before plotting&lt;br /&gt;
            if not err_ts:&lt;br /&gt;
                x, y = data&lt;br /&gt;
                label = &#039;{0}: {1}&#039;.format(result_type, element)&lt;br /&gt;
&lt;br /&gt;
                # plot Q on first axis, V on secondary axis&lt;br /&gt;
                if result_type == &#039;Q&#039;:&lt;br /&gt;
                    # first axis&lt;br /&gt;
                    ax.plot(x, y, label=label)&lt;br /&gt;
                else:  # must be &#039;V&#039;&lt;br /&gt;
                    # secondary axis&lt;br /&gt;
                    ax2.plot(x, y, label=label, linestyle=&#039;--&#039;)&lt;br /&gt;
            else:&lt;br /&gt;
                # error occurred getting time series data, print error message to console&lt;br /&gt;
                print(mess_ts)&lt;br /&gt;
    &lt;br /&gt;
    # combine primary and secondary axis items and add to legend&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    lines2, labs2 = ax2.get_legend_handles_labels()&lt;br /&gt;
    lines_comb = lines + lines2&lt;br /&gt;
    labs_comb = labs + labs2&lt;br /&gt;
    ax.legend(lines_comb, labs_comb)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Saving a separate plot for each element as a *.png&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import os  # library for operating system file and directory manipulation&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# save directory for figures&lt;br /&gt;
save_dir = r&#039;C:TUFLOW\results\figures&#039;&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # get time series data and add to plot&lt;br /&gt;
    elements = [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
    result_type = &#039;Q&#039;&lt;br /&gt;
    for element in elements:&lt;br /&gt;
        err_ts, mess_ts, data = res.getTimeSeriesData(element, result_type)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_ts:&lt;br /&gt;
            # initialise plot&lt;br /&gt;
            fig, ax = plt.subplots()&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=element)&lt;br /&gt;
            &lt;br /&gt;
            # add legend to plot&lt;br /&gt;
            lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
            ax.legend(lines, labs)&lt;br /&gt;
&lt;br /&gt;
            # add axis labels&lt;br /&gt;
            ax.set_xlabel(&#039;Time (hrs)&#039;)&lt;br /&gt;
            ax.set_ylabel(&#039;Flow (m3/s)&#039;)&lt;br /&gt;
&lt;br /&gt;
            # save fig&lt;br /&gt;
            save_name = &#039;Figure_{0}_{1}.png&#039;.format(element, result_type)&lt;br /&gt;
            save_path = os.path.join(save_dir, save_name)&lt;br /&gt;
            fig.savefig(save_path)&lt;br /&gt;
&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting time series data, print error message to console&lt;br /&gt;
            print(mess_ts)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==load==&lt;br /&gt;
&amp;lt;b&amp;gt;load (&amp;lt;/b&amp;gt; Filepath &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Loads result file. File formats are *.tpc for TUFLOW release 2016 and later, or *.info for TUFLOW release 2013&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Filepath:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Full path to *.tpc or *.info&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, returns True if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurs&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check if an error occurred&lt;br /&gt;
if err:&lt;br /&gt;
    # print message&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==longProfileResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;longProfileResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns list of available long profile result types&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for long profile plotting&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    lp_rt = res.longProfileResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available long profile result types:&#039;)&lt;br /&gt;
    for rt in lp_rt:&lt;br /&gt;
        print(rt)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==maximum==&lt;br /&gt;
&amp;lt;b&amp;gt;maximum (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the maximum result value for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Channel, Node, or RL element to get maximum result for. PO results do not currently support getting maximum value.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Maximum&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Maximum result&lt;br /&gt;
&#039;&#039;&#039;Examples&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Maximum flow in a channel&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    channel = &#039;Chan_A&#039;&lt;br /&gt;
    maximum = res.maximum(channel, &#039;Q&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Max flow at {0} is {1} m3/s&#039;.format(channel, maximum)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Maximum water level at a node&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    maximum = res.maximum(channel, &#039;H&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Max water level at {0} is {1} mRL&#039;.format(node, maximum)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==maximumTimestepChange==&lt;br /&gt;
&amp;lt;b&amp;gt;maximumTimestepChange (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the maximum change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: RL element to get maximum change in a single timestep for. Currently RL elements are the only supported type.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Maximum&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Maximum value change in any given timestep&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    loc = &#039;Reporting Location 1&#039;&lt;br /&gt;
    tsMaximum = res.maximumTimestepChange(channel, &#039;Q&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Max flow change in any given timestep at {0} is {1} m3/s&#039;.format(loc, tsMaximum)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==name==&lt;br /&gt;
&amp;lt;b&amp;gt;name ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the name of the result&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Name:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name of results&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    name = res.name()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Results from {0} loaded successfully.format(name))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeCount==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of nodes in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of nodes&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node_count = res.nodeCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} nodes in results.format(node_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeDownstream==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeDownstream (&amp;lt;/b&amp;gt; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the name of the downstream node of a given channel&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of channel&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of downstream node&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    channel = &#039;Chan_A&#039;&lt;br /&gt;
    dns_node = res.nodeDownstream(channel)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Downstream node of channel {0} is {1}&#039;.format(channel, dns_node))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available result types for nodes&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for nodes e.g. [&#039;H&#039;, &#039;E&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    result_types = res.nodeResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available result types for nodes are:)&lt;br /&gt;
    for result_type in result_types:&lt;br /&gt;
        print(result_type)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodes==&lt;br /&gt;
&amp;lt;b&amp;gt;nodes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the node IDs in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of all nodes names in results e.g. [&#039;Chan_A.1&#039;, &#039;Chan_A.2&#039;, &#039;Chan_B.2&#039;, &#039;Chan_C.2&#039;...]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    nodes = res.nodes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Nodes:)&lt;br /&gt;
    for node in nodes:&lt;br /&gt;
        print(node)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeUpstream==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeUpstream (&amp;lt;/b&amp;gt; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the name of the upstream node of a given channel&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of channel&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of upstream node&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    channel = &#039;Chan_A&#039;&lt;br /&gt;
    ups_node = res.nodeUpstream(channel)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Upstream node of channel {0} is {1}&#039;.format(channel, ups_node))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==poNames==&lt;br /&gt;
&amp;lt;b&amp;gt;poNames ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available Plot Output names &amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of all PO names in results e.g. [&#039;Loc_1&#039;, &#039;Loc_2&#039;, &#039;Loc_3&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    po_names = res.poNames()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;PO Names:)&lt;br /&gt;
    for po_name in po_names:&lt;br /&gt;
        print(po_name)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==poResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;poResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available Plot Output result types&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for Plot Outputs e.g. [&#039;Q&#039;, &#039;H&#039;, &#039;V&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    result_types = res.poResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available result types for Plot Outputs are:)&lt;br /&gt;
    for result_type in result_types:&lt;br /&gt;
        print(result_type)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of Reporting Locations (of all geometry type) in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_count = res.rlCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL objects in results.format(node_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlLineCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlLineCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of line Reporting Locations in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL Line objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_line_count = res.rlLineCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL Line objects in results.format(node_line_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlNames==&lt;br /&gt;
&amp;lt;b&amp;gt;rlNames ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the Reporting Location names&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of all RL names in results e.g. [&#039;Reporting_Loc_1&#039;, &#039;Reporting_Loc_2&#039;, &#039;Reporting_Loc_3&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_names = res.rlNames()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;RL Names:)&lt;br /&gt;
    for rl_name in rl_names:&lt;br /&gt;
        print(rl_name)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlPointCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlPointCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of point Reporting Locations in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL Point objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_point_count = res.rlPointCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL Point objects in results.format(node_point_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlRegionCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlRegionCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of region Reporting Locations in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL Region objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_region_count = res.rlRegionCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL Region objects in results.format(node_region_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;rlResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available Reporting Location result types&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for Reporting Locations e.g. [&#039;Q&#039;, &#039;H&#039;, &#039;Vol&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    result_types = res.rlResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available result types for Reporting Locations are:)&lt;br /&gt;
    for result_type in result_types:&lt;br /&gt;
        print(result_type)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==source==&lt;br /&gt;
&amp;lt;b&amp;gt;source ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the full file path to the source result file (*.tpc or *.info)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Source:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Full path to result file&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    source = res.source()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Successfully loaded result from {0}.format(source))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==timeOfMaximum==&lt;br /&gt;
&amp;lt;b&amp;gt;timeOfMaximum (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the time of maximum for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Channel, Node, or RL element to get maximum result for. PO results do not currently support getting time of maximum.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Time of Maximum:&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Time of maximum&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    tom = res.timeOfMaximum(channel, &#039;H&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Time of max water level at {0} is {1} hrs&#039;.format(channel, tom)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==timeOfMaximumTimestepChange==&lt;br /&gt;
&amp;lt;b&amp;gt;timeOfMaximumTimestepChange (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the time of maximum for change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: RL element to get time of maximum change in a single timestep for. Currently RL elements are the only supported type.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Maximum&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Time of maximum value change&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    loc = &#039;Reporting Location 1&#039;&lt;br /&gt;
    tom_ts = res.timeOfMaximumTimestepChange(channel, &#039;Q&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Time of max flow change in any given timestep at {0} is {1} hrs&#039;.format(loc, tom_ts)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Archive Guidance=&lt;br /&gt;
Guidance for earlier version of pyTuflow can be accessed via the following link: &amp;lt;u&amp;gt;[[PyTuflow_Archive| PyTuflow_Archive]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Wiki Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=PyTuflow_Archive&amp;diff=45236</id>
		<title>PyTuflow Archive</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=PyTuflow_Archive&amp;diff=45236"/>
		<updated>2025-12-16T23:32:50Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: Created page with &amp;quot;=Introduction= PyTUFLOW is a package of Python tools for extracting TUFLOW Classic and HPC time series results. It can be used to automate output tasks such as checking model health, goodness-of-fit for model calibration,  viewing on-the-fly model output (used in conjunction with &amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Write PO Online&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; ON&amp;lt;/tt&amp;gt;), and high-volume output plotting from production runs.&amp;lt;br&amp;gt;&amp;lt;Br&amp;gt; For worked examples demonstrating the use of PyT...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
PyTUFLOW is a package of Python tools for extracting TUFLOW Classic and HPC time series results. It can be used to automate output tasks such as checking model health, goodness-of-fit for model calibration,  viewing on-the-fly model output (used in conjunction with &amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Write PO Online&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; ON&amp;lt;/tt&amp;gt;), and high-volume output plotting from production runs.&amp;lt;br&amp;gt;&amp;lt;Br&amp;gt;&lt;br /&gt;
For worked examples demonstrating the use of PyTUFLOW, please register for the free &amp;lt;u&amp;gt;[https://www.tuflow.com/training/training-catalogue/tt004e-introduction-to-python-for-tuflow-elearning/ Introduction to Python for TUFLOW]&amp;lt;/u&amp;gt; eLearning Course.&lt;br /&gt;
&lt;br /&gt;
=Installation=&lt;br /&gt;
The PyTuflow library can be installed via Python&#039;s packaging manager (pip).&amp;lt;br&amp;gt;&lt;br /&gt;
Open up the command prompt and enter the following:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
python -m pip install pytuflow&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If python is not on your system path, you can navigate to the folder containing the &amp;lt;tt&amp;gt;python.exe&amp;lt;/tt&amp;gt; before trying to install PyTuflow&amp;lt;br&amp;gt;&lt;br /&gt;
e.g.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd c:\Python39&lt;br /&gt;
python -m pip install pytuflow&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Class: ResData=&lt;br /&gt;
&lt;br /&gt;
Class for TUFLOW time series results.&lt;br /&gt;
&lt;br /&gt;
Initialised as an empty object, or with results with a *.tpc in TUFLOW 2016 release and later or *.info in TUFLOW 2013 release.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
res = pytuflow.ResData()  # initialising as an empty object&lt;br /&gt;
# or&lt;br /&gt;
res = pytuflow.ResData(&#039;M01_5m_001.tpc&#039;)  # initialising with results&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Methods==&lt;br /&gt;
{|class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align: left;&amp;quot;&lt;br /&gt;
|! style=&amp;quot;background-color:#005581; font-weight:bold; color:white&amp;quot; width=30%| Method&lt;br /&gt;
|! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=20%|Description&lt;br /&gt;
|! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=25%|Returns&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039; style=&#039;text-align: left&#039;|&amp;lt;b&amp;gt;[[#channelConnectionCount|channelConnectionCount]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the number of channels connected to a given node&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelConnections|channelConnections]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of the channels connected to a given node&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelCount|channelCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of channels in results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelResultTypes|channelResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available result types for channels&lt;br /&gt;
|list of Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channels|channels]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the channels IDs in the results&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelsDownstream|channelsDownstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the channels downstream of a given node&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#channelsUpstream|channelsUpstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the channels upstream of a given node&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Channel IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#format|format]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the result format i.e. &#039;2013&#039; or &#039;2016&#039;&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Format&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;2&#039;|&amp;lt;b&amp;gt;[[#getAdverseGradients|getAdverseGradients]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;2&#039;|Returns locations of any adverse water level or energy level (if result type available) gradients in long profile. Note getLongProfileData method must be called prior to calling this method&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; Adverse Water Level Gradient Locations ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data )&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; Adverse Energy Level Gradient Locations ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data )&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#getLongProfileData|getLongProfileData]] (&amp;lt;/b&amp;gt; &#039;&#039;float&#039;&#039; Timestep, &#039;&#039;str&#039;&#039; Result Type, &#039;&#039;str&#039;&#039; Channel ID, [optional] &#039;&#039;str&#039;&#039; 2nd Channel ID  &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns long profile data from a given channel to another channel. If no second channel is specified will continue until no further channels downstream&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; Profile Data ( &#039;&#039;list&#039;&#039; x values, &#039;&#039;list&#039;&#039; y values )&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;2&#039;|&amp;lt;b&amp;gt;[[#getLongProfileTimeOfMaximum|getLongProfileTimeOfMaximum]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;2&#039;|Returns the time of maximum water level along the current profile. Note getLongProfileData method must be called prior to calling this method&lt;br /&gt;
|&#039;&#039;list&#039;&#039; x values&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;list&#039;&#039; y values&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#getPipes|getPipes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns any pipe or culvert data in the current profile. Note getLongProfileData method must be called prior to calling this method&lt;br /&gt;
|&#039;&#039;list&#039;&#039; pipes [ &#039;&#039;list&#039;&#039; pipe vertexes [ &#039;&#039;tuple&#039;&#039; vertex ( x point, y point ) ] ]&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#getTimeSeriesData|getTimeSeriesData]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns time series data for the given element (1D node, 1D channel, 2D PO, RL) for a the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;tuple&#039;&#039; time series data ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data )&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;2&#039;|&amp;lt;b&amp;gt;[[#load|load]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Filepath &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;2&#039;|Loads result file. File formats are *.tpc for TUFLOW release 2016 and later, or *.info for TUFLOW release 2013&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#longProfileResultTypes|longProfileResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#maximum|maximum]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the maximum result value for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Maximum Value&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#maximumTimestepChange|maximumTimestepChange]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the maximum change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Maximum Value&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#name|name]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the name of the result&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Name&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeCount|nodeCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of nodes in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeDownstream|nodeDownstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the name of the downstream node of a given channel&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Node ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeResultTypes|nodeResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available result types for nodes&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodes|nodes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the node IDs in the results&lt;br /&gt;
|&#039;&#039;list&#039;&#039; Node IDs&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#nodeUpstream|nodeUpstream]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the name of the upstream node of a given channel&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Node ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#poNames|poNames]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available Plot Output names &lt;br /&gt;
|&#039;&#039;list&#039;&#039; PO ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#poResultTypes|poResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available Plot Output result types &lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlCount|rlCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of Reporting Locations (of all geometry type) in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlLineCount|rlLineCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of line Reporting Locations in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlNames|rlNames]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the Reporting Location names&lt;br /&gt;
|&#039;&#039;list&#039;&#039; RL ID&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlPointCount|rlPointCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of point Reporting Locations in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlRegionCount|rlRegionCount]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the total number of region Reporting Locations in the results&lt;br /&gt;
|&#039;&#039;int&#039;&#039; Count&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#rlResultTypes|rlResultTypes]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns a list of all the available Reporting Location result types &lt;br /&gt;
|&#039;&#039;list&#039;&#039; Result Types&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;1&#039;|&amp;lt;b&amp;gt;[[#source|source]] ()&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;1&#039;|Returns the full file path to the source result file (*.tpc or *.info)&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Path&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#timeOfMaximum|timeOfMaximum]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the time of maximum for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Time (hrs)&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&#039;3&#039;|&amp;lt;b&amp;gt;[[#timeOfMaximumTimestepChange|timeOfMaximumTimestepChange]] (&amp;lt;/b&amp;gt; &#039;&#039;str&#039;&#039; Element, &#039;&#039;str&#039;&#039; Result Type, [optional] &#039;&#039;str&#039;&#039; Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&lt;br /&gt;
|rowspan=&#039;3&#039;|Returns the time of maximum for change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&lt;br /&gt;
|&#039;&#039;bool&#039;&#039; Error&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;str&#039;&#039; Message&lt;br /&gt;
|-&lt;br /&gt;
|&#039;&#039;float&#039;&#039; Time (hrs)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==channelConnectionCount==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelConnectionCount (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the number of channels connected to a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of connected channels&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    conn_count = res.channelConnectionCount(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} channels connected to {1}&#039;.format(conn_count, node))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelConnections==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelConnections (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of the channels connected to a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of connected channels e.g. [&#039;Chan_A&#039;, &#039;Chan_B&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    conn_chans = res.channelConnections(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels connected to {0}:&#039;.format(node))&lt;br /&gt;
    for chan in conn_chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelCount==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of channels in results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of channels&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    chan_count = res.channelCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} channels in results&#039;.format(chan_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelResultTypes==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt;channelResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available result types for channels&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of result types e.g. [&#039;Q&#039;, &#039;V&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    chan_rt = res.channelResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available channel result types:&#039;)&lt;br /&gt;
    for rt in chan_rt:&lt;br /&gt;
        print(rt)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channels==&lt;br /&gt;
&amp;lt;b&amp;gt;channels ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the channels IDs in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of channels e.g. [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    chans = res.channels()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels:&#039;)&lt;br /&gt;
    for chan in chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelsDownstream==&lt;br /&gt;
&amp;lt;b&amp;gt;channelsDownstream (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the channels downstream of a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of channels e.g. [&#039;Chan_B&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    dns_chans = res.channelsDownstream(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels downstream of {0}:&#039;.format(node))&lt;br /&gt;
    for chan in dns_chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==channelsUpstream==&lt;br /&gt;
&amp;lt;b&amp;gt;channelsUpstream (&amp;lt;/b&amp;gt; Node ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the channels upstream of a given node&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of node e.g. &#039;Chan_A.1&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of channels e.g. [&#039;Chan_A&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    ups_chans = res.channelsUpstream(node)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Channels upstream of {0}:&#039;.format(node))&lt;br /&gt;
    for chan in ups_chans:&lt;br /&gt;
        print(chan)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==format==&lt;br /&gt;
&amp;lt;b&amp;gt;format ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the result format i.e. &#039;2013&#039; or &#039;2016&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Format:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Format of results e.g. &#039;2016&#039;&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    format = res.format()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Results format: {0}&#039;.format(format)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getAdverseGradients==&lt;br /&gt;
&amp;lt;b&amp;gt;getAdverseGradients ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns locations of any adverse water level or energy level (if result type available) gradients in long profile. Note getLongProfileData method must be called prior to calling this method&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Adverse water level gradients:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data ) e.g. ([0, 5], [10, 12])&lt;br /&gt;
: &#039;&#039;&#039;Adverse energy level gradients:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: ( &#039;&#039;list&#039;&#039; x data, &#039;&#039;list&#039;&#039; y data ) e.g. ([0, 5], [11, 14])&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = 1.0&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # check for adverse gradients&lt;br /&gt;
    adv = res.getAdverseGradients()&lt;br /&gt;
    for i, data in enumerate(adv):&lt;br /&gt;
        x, y = data&lt;br /&gt;
&lt;br /&gt;
        # get appropriate label&lt;br /&gt;
        # getAdverseGradients() returns 2 datasets:&lt;br /&gt;
        # first dataset adverse water level&lt;br /&gt;
        # second dataset adverse energy level&lt;br /&gt;
        if i == 0:  # first dataset&lt;br /&gt;
            label = &#039;Adverse Water Levels&#039;&lt;br /&gt;
        else:  # second dataset&lt;br /&gt;
            label = &#039;Adverse Energy Levels&#039; &lt;br /&gt;
&lt;br /&gt;
        # add to plot as points&lt;br /&gt;
        ax.plot(x, y, label=label, marker=&#039;o&#039;, linestyle=&#039;None&#039;)&lt;br /&gt;
    &lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    ax.legend(lines, labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getLongProfileData==&lt;br /&gt;
&amp;lt;b&amp;gt;getLongProfileData (&amp;lt;/b&amp;gt; Timestep, Result Type, Channel ID, [optional] 2nd Channel ID  &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns long profile data from a given channel to another channel. If no second channel is specified will continue until no further channels downstream&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Timestep:&#039;&#039;&#039; &#039;&#039;float&#039;&#039; or &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Output timestep to plot. Can be a value e.g. 1.5 or string e.g. &#039;max&#039;&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Starting channel for long profile e.g. &#039;Chan_A&#039;&lt;br /&gt;
: &#039;&#039;&#039;2nd Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional downstream channel ID to stop the long profile at e.g. &#039;Chan_D&#039;&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Data:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;x data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: &#039;&#039;&#039;data point:&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;y data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: &#039;&#039;&#039;data point:&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:::: e.g. ([0, 1, 2, 3, 4, 5], [10, 20, 30, 20, 10, 0]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = 1.0&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    ax.legend(lines, labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getLongProfileTimeOfMaximum==&lt;br /&gt;
&amp;lt;b&amp;gt;getLongProfileTimeOfMaximum ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the time of maximum water level along the current profile. Note getLongProfileData method must be called prior to calling this method&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;x data:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: x points for plotting time of max along long profile e.g. [0, 1, 2, 3, 4, 5]&lt;br /&gt;
: &#039;&#039;&#039;y data:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: y points for plotting time of max along long profile e.g. [10, 11, 12, 13, 14, 15]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = &#039;max&#039;  # maximum result along profile&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # also plot time of max water level on secondary axis&lt;br /&gt;
    tom_x, tom_y = res.getLongProfileTimeOfMaximum()&lt;br /&gt;
    ax2 = ax.twinx()  # initialise secondary axis&lt;br /&gt;
&lt;br /&gt;
    # add to plot on secondary axis&lt;br /&gt;
    ax2.plot(tom_x, tom_y, label=&#039;Time of Maximum&#039;, linestyle=&#039;--&#039;)&lt;br /&gt;
    &lt;br /&gt;
    # combine axis legends and add to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    lines2, labs2 = ax2.get_legend_handles_labels()&lt;br /&gt;
    comb_lines = lines + lines2&lt;br /&gt;
    comb_labs = labs + labs2&lt;br /&gt;
    ax.legend(comb_lines, comb_labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getPipes==&lt;br /&gt;
&amp;lt;b&amp;gt;getPipes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns any pipe or culvert data in the current profile. Note getLongProfileData method must be called prior to calling this method&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Pipe list:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;Vertex list:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: &#039;&#039;&#039;Vertex coords:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:::: e.g. [[(0, 0), (0, 1), (1, 1), (1, 0)], [(1, 1), (1, 2), (2, 2), (2, 1)]]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
from matplotlib.patches import Polygon  # will add pipes and culverts as polygon&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get long profiles and add to plot&lt;br /&gt;
    chan = &#039;Chan_A&#039;&lt;br /&gt;
    timestep = 1.0&lt;br /&gt;
    result_types = [&#039;Bed Level&#039;, &#039;H&#039;]  # get both water level and bed level&lt;br /&gt;
    for rt in result_types:&lt;br /&gt;
        err_lp, mess_lp, data = res.getLongProfileData(timestep, rt, chan)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_lp:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=rt)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting long profile data, print error message to console&lt;br /&gt;
            print(mess_lp)&lt;br /&gt;
&lt;br /&gt;
    # get pipes and culverts and add to plot&lt;br /&gt;
    pipes = res.getPipes()&lt;br /&gt;
    for pipe in pipes:  # loop through all pipes&lt;br /&gt;
        polygon = Polygon(pipe, facecolor=&#039;0.9&#039;, edgecolor=&#039;0.5&#039;, label=&#039;Culverts and Pipes&#039;)&lt;br /&gt;
        ax.add_patch(polygon)&lt;br /&gt;
    &lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
&lt;br /&gt;
    # filter duplicate legend items &lt;br /&gt;
    # for example if there is more than one pipe or culvert we only want that to appear once in the legend&lt;br /&gt;
    unique_lines = []&lt;br /&gt;
    unique_labels = []&lt;br /&gt;
    for i, label in enumerate(labs):&lt;br /&gt;
        if label not in unique_labels:&lt;br /&gt;
            unique_labels.append(label)&lt;br /&gt;
            unique_lines.append(lines[i])&lt;br /&gt;
    ax.legend(unique_lines, unique_labels)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==getTimeSeriesData==&lt;br /&gt;
&amp;lt;b&amp;gt;getTimeSeriesData (&amp;lt;/b&amp;gt; Element, Result Type, [optional] domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns time series data for the given element (1D node, 1D channel, 2D PO, RL) for a the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Channel, Node, PO, or RL element to get time series data for&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Data:&#039;&#039;&#039; &#039;&#039;tuple&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;x data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: &#039;&#039;&#039;y data points:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
::: e.g. ([0, 1, 2, 3, 4, 5], [10, 20, 30, 20, 10, 0]&lt;br /&gt;
&#039;&#039;&#039;Examples&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Plotting results for multiple elements on the same graph&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
&lt;br /&gt;
    # get time series data and add to plot&lt;br /&gt;
    elements = [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
    result_type = &#039;Q&#039;&lt;br /&gt;
    for element in elements:&lt;br /&gt;
        err_ts, mess_ts, data = res.getTimeSeriesData(element, result_type)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_ts:&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=element)&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting time series data, print error message to console&lt;br /&gt;
            print(mess_ts)&lt;br /&gt;
    &lt;br /&gt;
    # add legend to plot&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    ax.legend(lines, labs)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    plt.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Plotting water level and velocity on the same plot using a secondary axis&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # initialise plot&lt;br /&gt;
    fig, ax = plt.subplots()&lt;br /&gt;
    # initialise secondary axis&lt;br /&gt;
    ax2 = ax.twinx()&lt;br /&gt;
&lt;br /&gt;
    # get time series data and add to plot&lt;br /&gt;
    elements = [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
    result_types = [&#039;Q&#039;, &#039;V&#039;]&lt;br /&gt;
    for element in elements:&lt;br /&gt;
        for result_type in result_types:&lt;br /&gt;
            err_ts, mess_ts, data = res.getTimeSeriesData(element, result_type)&lt;br /&gt;
    &lt;br /&gt;
            # check for error before plotting&lt;br /&gt;
            if not err_ts:&lt;br /&gt;
                x, y = data&lt;br /&gt;
                label = &#039;{0}: {1}&#039;.format(result_type, element)&lt;br /&gt;
&lt;br /&gt;
                # plot Q on first axis, V on secondary axis&lt;br /&gt;
                if result_type == &#039;Q&#039;:&lt;br /&gt;
                    # first axis&lt;br /&gt;
                    ax.plot(x, y, label=label)&lt;br /&gt;
                else:  # must be &#039;V&#039;&lt;br /&gt;
                    # secondary axis&lt;br /&gt;
                    ax2.plot(x, y, label=label, linestyle=&#039;--&#039;)&lt;br /&gt;
            else:&lt;br /&gt;
                # error occurred getting time series data, print error message to console&lt;br /&gt;
                print(mess_ts)&lt;br /&gt;
    &lt;br /&gt;
    # combine primary and secondary axis items and add to legend&lt;br /&gt;
    lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
    lines2, labs2 = ax2.get_legend_handles_labels()&lt;br /&gt;
    lines_comb = lines + lines2&lt;br /&gt;
    labs_comb = labs + labs2&lt;br /&gt;
    ax.legend(lines_comb, labs_comb)&lt;br /&gt;
      &lt;br /&gt;
    # show plot   &lt;br /&gt;
    fig.show()&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Saving a separate plot for each element as a *.png&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import os  # library for operating system file and directory manipulation&lt;br /&gt;
import matplotlib.pyplot as plt  # plotting library&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# save directory for figures&lt;br /&gt;
save_dir = r&#039;C:TUFLOW\results\figures&#039;&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before continuing&lt;br /&gt;
if not err:&lt;br /&gt;
    # get time series data and add to plot&lt;br /&gt;
    elements = [&#039;Chan_A&#039;, &#039;Chan_B&#039;, &#039;Chan_C&#039;]&lt;br /&gt;
    result_type = &#039;Q&#039;&lt;br /&gt;
    for element in elements:&lt;br /&gt;
        err_ts, mess_ts, data = res.getTimeSeriesData(element, result_type)&lt;br /&gt;
    &lt;br /&gt;
        # check for error before plotting&lt;br /&gt;
        if not err_ts:&lt;br /&gt;
            # initialise plot&lt;br /&gt;
            fig, ax = plt.subplots()&lt;br /&gt;
            x, y = data&lt;br /&gt;
            ax.plot(x, y, label=element)&lt;br /&gt;
            &lt;br /&gt;
            # add legend to plot&lt;br /&gt;
            lines, labs = ax.get_legend_handles_labels()&lt;br /&gt;
            ax.legend(lines, labs)&lt;br /&gt;
&lt;br /&gt;
            # add axis labels&lt;br /&gt;
            ax.set_xlabel(&#039;Time (hrs)&#039;)&lt;br /&gt;
            ax.set_ylabel(&#039;Flow (m3/s)&#039;)&lt;br /&gt;
&lt;br /&gt;
            # save fig&lt;br /&gt;
            save_name = &#039;Figure_{0}_{1}.png&#039;.format(element, result_type)&lt;br /&gt;
            save_path = os.path.join(save_dir, save_name)&lt;br /&gt;
            fig.savefig(save_path)&lt;br /&gt;
&lt;br /&gt;
        else:&lt;br /&gt;
            # error occurred getting time series data, print error message to console&lt;br /&gt;
            print(mess_ts)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==load==&lt;br /&gt;
&amp;lt;b&amp;gt;load (&amp;lt;/b&amp;gt; Filepath &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Loads result file. File formats are *.tpc for TUFLOW release 2016 and later, or *.info for TUFLOW release 2013&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Filepath:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Full path to *.tpc or *.info&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, returns True if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurs&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check if an error occurred&lt;br /&gt;
if err:&lt;br /&gt;
    # print message&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==longProfileResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;longProfileResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns list of available long profile result types&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for long profile plotting&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    lp_rt = res.longProfileResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available long profile result types:&#039;)&lt;br /&gt;
    for rt in lp_rt:&lt;br /&gt;
        print(rt)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==maximum==&lt;br /&gt;
&amp;lt;b&amp;gt;maximum (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the maximum result value for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Channel, Node, or RL element to get maximum result for. PO results do not currently support getting maximum value.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Maximum&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Maximum result&lt;br /&gt;
&#039;&#039;&#039;Examples&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Maximum flow in a channel&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    channel = &#039;Chan_A&#039;&lt;br /&gt;
    maximum = res.maximum(channel, &#039;Q&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Max flow at {0} is {1} m3/s&#039;.format(channel, maximum)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Maximum water level at a node&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    maximum = res.maximum(channel, &#039;H&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Max water level at {0} is {1} mRL&#039;.format(node, maximum)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==maximumTimestepChange==&lt;br /&gt;
&amp;lt;b&amp;gt;maximumTimestepChange (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the maximum change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: RL element to get maximum change in a single timestep for. Currently RL elements are the only supported type.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Maximum&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Maximum value change in any given timestep&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    loc = &#039;Reporting Location 1&#039;&lt;br /&gt;
    tsMaximum = res.maximumTimestepChange(channel, &#039;Q&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Max flow change in any given timestep at {0} is {1} m3/s&#039;.format(loc, tsMaximum)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==name==&lt;br /&gt;
&amp;lt;b&amp;gt;name ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the name of the result&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Name:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name of results&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    name = res.name()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Results from {0} loaded successfully.format(name))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeCount==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of nodes in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of nodes&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node_count = res.nodeCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} nodes in results.format(node_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeDownstream==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeDownstream (&amp;lt;/b&amp;gt; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the name of the downstream node of a given channel&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of channel&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of downstream node&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    channel = &#039;Chan_A&#039;&lt;br /&gt;
    dns_node = res.nodeDownstream(channel)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Downstream node of channel {0} is {1}&#039;.format(channel, dns_node))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available result types for nodes&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for nodes e.g. [&#039;H&#039;, &#039;E&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    result_types = res.nodeResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available result types for nodes are:)&lt;br /&gt;
    for result_type in result_types:&lt;br /&gt;
        print(result_type)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodes==&lt;br /&gt;
&amp;lt;b&amp;gt;nodes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the node IDs in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of all nodes names in results e.g. [&#039;Chan_A.1&#039;, &#039;Chan_A.2&#039;, &#039;Chan_B.2&#039;, &#039;Chan_C.2&#039;...]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    nodes = res.nodes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Nodes:)&lt;br /&gt;
    for node in nodes:&lt;br /&gt;
        print(node)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==nodeUpstream==&lt;br /&gt;
&amp;lt;b&amp;gt;nodeUpstream (&amp;lt;/b&amp;gt; Channel ID &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the name of the upstream node of a given channel&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Channel ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of channel&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Node ID:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Name or ID of upstream node&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    channel = &#039;Chan_A&#039;&lt;br /&gt;
    ups_node = res.nodeUpstream(channel)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Upstream node of channel {0} is {1}&#039;.format(channel, ups_node))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==poNames==&lt;br /&gt;
&amp;lt;b&amp;gt;poNames ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available Plot Output names &amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of all PO names in results e.g. [&#039;Loc_1&#039;, &#039;Loc_2&#039;, &#039;Loc_3&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    po_names = res.poNames()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;PO Names:)&lt;br /&gt;
    for po_name in po_names:&lt;br /&gt;
        print(po_name)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==poResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;poResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available Plot Output result types&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for Plot Outputs e.g. [&#039;Q&#039;, &#039;H&#039;, &#039;V&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    result_types = res.poResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available result types for Plot Outputs are:)&lt;br /&gt;
    for result_type in result_types:&lt;br /&gt;
        print(result_type)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of Reporting Locations (of all geometry type) in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_count = res.rlCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL objects in results.format(node_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlLineCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlLineCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of line Reporting Locations in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL Line objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_line_count = res.rlLineCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL Line objects in results.format(node_line_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlNames==&lt;br /&gt;
&amp;lt;b&amp;gt;rlNames ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the Reporting Location names&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of all RL names in results e.g. [&#039;Reporting_Loc_1&#039;, &#039;Reporting_Loc_2&#039;, &#039;Reporting_Loc_3&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_names = res.rlNames()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;RL Names:)&lt;br /&gt;
    for rl_name in rl_names:&lt;br /&gt;
        print(rl_name)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlPointCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlPointCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of point Reporting Locations in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL Point objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_point_count = res.rlPointCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL Point objects in results.format(node_point_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlRegionCount==&lt;br /&gt;
&amp;lt;b&amp;gt;rlRegionCount ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the total number of region Reporting Locations in the results&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Count:&#039;&#039;&#039; &#039;&#039;int&#039;&#039;&lt;br /&gt;
:: Number of RL Region objects&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    rl_region_count = res.rlRegionCount()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;{0} RL Region objects in results.format(node_region_count))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==rlResultTypes==&lt;br /&gt;
&amp;lt;b&amp;gt;rlResultTypes ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns a list of all the available Reporting Location result types&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Out:&#039;&#039;&#039; &#039;&#039;list&#039;&#039;&lt;br /&gt;
:: List of available result types for Reporting Locations e.g. [&#039;Q&#039;, &#039;H&#039;, &#039;Vol&#039;]&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    result_types = res.rlResultTypes()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Available result types for Reporting Locations are:)&lt;br /&gt;
    for result_type in result_types:&lt;br /&gt;
        print(result_type)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==source==&lt;br /&gt;
&amp;lt;b&amp;gt;source ()&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the full file path to the source result file (*.tpc or *.info)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: -&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Source:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Full path to result file&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    source = res.source()&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Successfully loaded result from {0}.format(source))&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==timeOfMaximum==&lt;br /&gt;
&amp;lt;b&amp;gt;timeOfMaximum (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the time of maximum for the given element (1D node, 1D channel, 2D PO, RL) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Channel, Node, or RL element to get maximum result for. PO results do not currently support getting time of maximum.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Time of Maximum:&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Time of maximum&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    node = &#039;Chan_A.1&#039;&lt;br /&gt;
    tom = res.timeOfMaximum(channel, &#039;H&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Time of max water level at {0} is {1} hrs&#039;.format(channel, tom)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==timeOfMaximumTimestepChange==&lt;br /&gt;
&amp;lt;b&amp;gt;timeOfMaximumTimestepChange (&amp;lt;/b&amp;gt; Element, Result Type, [optional] Domain &amp;lt;b&amp;gt;)&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
Returns the time of maximum for change in result value in one timestep for the given element (RL elements supported only) for the given result type. If there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements unless &#039;domain&#039; variable is explicitly specified (domain options: &#039;1D&#039;, &#039;2D&#039;, &#039;RL&#039;)&amp;lt;br&amp;gt;&lt;br /&gt;
;Parameters:&lt;br /&gt;
: &#039;&#039;&#039;Element:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: RL element to get time of maximum change in a single timestep for. Currently RL elements are the only supported type.&lt;br /&gt;
: &#039;&#039;&#039;Result Type:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Result type e.g. &#039;H&#039;&lt;br /&gt;
: &#039;&#039;&#039;Domain:&#039;&#039;&#039; &#039;&#039;str&#039;&#039; &lt;br /&gt;
:: Optional input to specify which domain the Element belongs in. If left as default (None) and there are duplicate names between 1D, PO, or RL elements it will give priority return to 1D elements first, PO elements second, and lastly RL elements.&lt;br /&gt;
;Returns:&lt;br /&gt;
: &#039;&#039;&#039;Error:&#039;&#039;&#039; &#039;&#039;bool&#039;&#039;&lt;br /&gt;
:: Returns False on success, True when an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Message:&#039;&#039;&#039; &#039;&#039;str&#039;&#039;&lt;br /&gt;
:: Accompanying error message if an error occurred&lt;br /&gt;
: &#039;&#039;&#039;Maximum&#039;&#039;&#039; &#039;&#039;float&#039;&#039;&lt;br /&gt;
:: Time of maximum value change&lt;br /&gt;
&#039;&#039;&#039;Example&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
import pytuflow&lt;br /&gt;
&lt;br /&gt;
# Initialise result class&lt;br /&gt;
res = pytuflow.ResData()&lt;br /&gt;
&lt;br /&gt;
# load .tpc result file&lt;br /&gt;
path = r&#039;C:\TUFLOW\results\M04_5m_001.tpc&#039;&lt;br /&gt;
err, message = res.load(path)&lt;br /&gt;
&lt;br /&gt;
# check results were loaded successfully before calling function&lt;br /&gt;
if not err:&lt;br /&gt;
    loc = &#039;Reporting Location 1&#039;&lt;br /&gt;
    tom_ts = res.timeOfMaximumTimestepChange(channel, &#039;Q&#039;)&lt;br /&gt;
    # print to console    &lt;br /&gt;
    print(&#039;Time of max flow change in any given timestep at {0} is {1} hrs&#039;.format(loc, tom_ts)&lt;br /&gt;
else:&lt;br /&gt;
    # did not load correctly, print error message to console&lt;br /&gt;
    print(message)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_Message_2912&amp;diff=45233</id>
		<title>TUFLOW Message 2912</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_Message_2912&amp;diff=45233"/>
		<updated>2025-12-12T00:58:56Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TUFLOW_Message&lt;br /&gt;
|tuflow_message=ERROR 2912 - Residual soil water contents not defined for soil moisture dependent function. &amp;lt;br&amp;gt; &lt;br /&gt;
ERROR 2912 - Saturated soil water contents not defined for soil moisture dependent function.&lt;br /&gt;
|alt_msg=ERROR 2912 - Saturated soil water contents must be greater than residual soil water contents in soil moisture dependent function.&lt;br /&gt;
|type=[[ERROR]]&lt;br /&gt;
|message_desc= The residual and saturated water contents (θr and θs) must be specified for each soil type in .tsoilf file when adjusting the groundwater flux using based on soil moisture. Refer to section 7.4.5.2.3 of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/2025.1/TwoD-Domains-1.html#AdjustKvh-5 TUFLOW Manual]&amp;lt;/u&amp;gt; for more details. &lt;br /&gt;
|suggestions= Include residual and saturated water contents (θr and θs) in .tsoilf file, as detailed in Table 7.21 of the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/2025.1/TwoD-Domains-1.html#tab:tab-tsoilf-hpc TUFLOW Manual]&amp;lt;/u&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
|uplink=[[2xxx_TUFLOW_Messages|2xxx Messages]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking&amp;diff=45231</id>
		<title>Hardware Benchmarking</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking&amp;diff=45231"/>
		<updated>2025-12-10T04:59:28Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Introduction */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
We frequently get asked, &amp;quot;What is the minimum or recommended hardware to use for TUFLOW modelling&amp;quot;. This is always a tricky question, as the answer depends on the type and size of the models you are going to run. For a small model, TUFLOW should run on any modern PC or laptop that is capable of running Windows XP or later. However, for large models there may be requirements for a hefty computer.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The tables below showing computer specifications and model run-time should help you compare systems. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this page we outline a hardware benchmark model which can be simulated without a TUFLOW dongle (license). This makes it easy to benchmark on a range of computers and the results are compiled below.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We have typically found that for TUFLOW Classic, the CPU speed is the largest influence on TUFLOW runtimes, with the RAM speed also having an influence for large models. When using GPU hardware (available for TUFLOW HPC), the Graphics Card has the largest influence, specifically the number and speed of the CUDA cores. In order to quantify this we are compiling the computational times required for a range of different machines.&lt;br /&gt;
&lt;br /&gt;
=Benchmark Model=&lt;br /&gt;
==Background==&lt;br /&gt;
The benchmark model is based on a “challenge” issued prior to the 2012 Flood Managers Association (FMA) Conference in Sacramento, USA.  There is more information on the model setup and purpose  in the &amp;lt;u&amp;gt;[[FMA_Challenge_Models_Introduction | FMA challenge model introduction]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
This hardware benchmark is based on the second challenge which involves a coastal river in flood with two ocean outlets.  The model has been modified slightly (mainly in terms of the outputs).  It is setup to use both the TUFLOW Classic (CPU) and TUFLOW HPC (on both CPU and GPU hardware) for a range of cell sizes.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Cell Size (m)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=50% | Number of cells&lt;br /&gt;
|-&lt;br /&gt;
|20.0|| 181,981&lt;br /&gt;
|-&lt;br /&gt;
|10.0|| 727,865&lt;br /&gt;
|-&lt;br /&gt;
|5.0 || 2,911,472&lt;br /&gt;
|-&lt;br /&gt;
|2.5 || 11,645,341&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The model runs for three days of simulation time (72 hours).  The approximate run time for the 30m model on the CPU is likely to be ~20min and for the 15m version approximately 4 hours.  Given the runtime for the CPU model at 10m resolution is likely to be &amp;gt; 12 hours, this is skipped in the benchmark (this can also be run without a licence).&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Models==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The simulated models are:&lt;br /&gt;
*20m model - TUFLOW Classic&lt;br /&gt;
*20m model - TUFLOW HPC CPU - 2 Cores (default)&lt;br /&gt;
*20m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
*10m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
&lt;br /&gt;
The user also has an option to run a couple of bigger models on GPU hardware as part of the High End GPU Benchmarking. To run these models, please follow the steps outlined in the below section.&amp;lt;br&amp;gt;&lt;br /&gt;
HIGH END GPU BENCHMARKING MODELS&lt;br /&gt;
*5m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
*2.5m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
&lt;br /&gt;
==To Participate==&lt;br /&gt;
To participate in the benchmark, please follow the steps below:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Download the model from &amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOW/Wiki_Benchmark_Model/FMA2_GPU_CPU_Benchmark.zip FMA2_GPU_CPU_Benchmark.zip]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt; Extract the model on a local drive of the computer you would like to benchmark.&lt;br /&gt;
&amp;lt;li&amp;gt; Navigate to the &#039;&#039;&#039;TUFLOW\runs\&#039;&#039;&#039; folder and run the &#039;&#039;&#039;Run_Benchmark.bat&#039;&#039;&#039; file.  This checks if you are running a 32 or 64 bit system and then runs the benchmark.  This also generates some output files that contain more information on the processor, memory and GPU card that you are using.&lt;br /&gt;
&amp;lt;li&amp;gt; If you have a high performance GPU Card you can also run the &#039;&#039;&#039;Run_Benchmark_HighPerformance_GPU.bat&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Email the _ TUFLOW Simulations.log, cpu.txt, ram.txt and GPU.txt files to [mailto:support@tuflow.com support@tuflow.com] and we will includes these in the results tables below.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: An NVIDIA graphics card that is CUDA compatible is required to run the GPU model. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=List of Benchmarking Runtimes and Discussions=&lt;br /&gt;
==Benchmarking Runtimes (2018-03-AA Release)==&lt;br /&gt;
*[[Hardware_Benchmarking_-_Results#CPU_Results | CPU results]]&lt;br /&gt;
*[[Hardware_Benchmarking_-_Results#GPU_Results | GPU results]]&lt;br /&gt;
&lt;br /&gt;
==Discussion Topics==&lt;br /&gt;
*[[Hardware_Benchmarking_Topic_HPC_on_CPU_vs_GPU | HPC (CPU) vs. HPC (GPU)]] &lt;br /&gt;
*[[Hardware_Benchmarking_Topic_Single_Precision_VS_Double_Precision | Single Precision Vs Double Precision]]&lt;br /&gt;
*[[ Hardware Selection Advice]]&lt;br /&gt;
&lt;br /&gt;
==Hardware Selection Advice==&lt;br /&gt;
* [[Hardware_Selection_Advice | Hardware Selection Advice]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| TUFLOW Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking&amp;diff=45230</id>
		<title>Hardware Benchmarking</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking&amp;diff=45230"/>
		<updated>2025-12-10T04:57:47Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* To Participate */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
We frequently get asked, &amp;quot;What is the minimum or recommended hardware to use for TUFLOW modelling&amp;quot;.  This is always a tricky question, as the answer depends on the type and size of the models you are going to run. For a small model, TUFLOW should run on any modern PC or laptop that is capable of running Windows XP or later.  However, for large models there may be requirements for a hefty computer.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The tables below showing computer specifications and model run-time should help you compare systems. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this page we outline a hardware benchmark model which is available to download from &amp;lt;u&amp;gt;[https://downloads.tuflow.com/_archive/TUFLOW/Benchmark_Models/FMA2_GPU_CPU_Benchmark.zip FMA2_GPU_CPU_Benchmark.zip]&amp;lt;/u&amp;gt; the model can be simulated without a TUFLOW dongle (license).  This makes it easy to benchmark on a range of computers and the results are compiled below.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We have typically found that for TUFLOW Classic, the CPU speed is the largest influence on TUFLOW runtimes, with the RAM speed also having an influence for large models. When using GPU hardware (available for TUFLOW HPC), the Graphics Card has the largest influence, specifically the number and speed of the CUDA cores. In order to quantify this we are compiling the computational times required for a range of different machines.&lt;br /&gt;
&lt;br /&gt;
=Benchmark Model=&lt;br /&gt;
==Background==&lt;br /&gt;
The benchmark model is based on a “challenge” issued prior to the 2012 Flood Managers Association (FMA) Conference in Sacramento, USA.  There is more information on the model setup and purpose  in the &amp;lt;u&amp;gt;[[FMA_Challenge_Models_Introduction | FMA challenge model introduction]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
This hardware benchmark is based on the second challenge which involves a coastal river in flood with two ocean outlets.  The model has been modified slightly (mainly in terms of the outputs).  It is setup to use both the TUFLOW Classic (CPU) and TUFLOW HPC (on both CPU and GPU hardware) for a range of cell sizes.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Cell Size (m)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=50% | Number of cells&lt;br /&gt;
|-&lt;br /&gt;
|20.0|| 181,981&lt;br /&gt;
|-&lt;br /&gt;
|10.0|| 727,865&lt;br /&gt;
|-&lt;br /&gt;
|5.0 || 2,911,472&lt;br /&gt;
|-&lt;br /&gt;
|2.5 || 11,645,341&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The model runs for three days of simulation time (72 hours).  The approximate run time for the 30m model on the CPU is likely to be ~20min and for the 15m version approximately 4 hours.  Given the runtime for the CPU model at 10m resolution is likely to be &amp;gt; 12 hours, this is skipped in the benchmark (this can also be run without a licence).&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Models==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The simulated models are:&lt;br /&gt;
*20m model - TUFLOW Classic&lt;br /&gt;
*20m model - TUFLOW HPC CPU - 2 Cores (default)&lt;br /&gt;
*20m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
*10m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
&lt;br /&gt;
The user also has an option to run a couple of bigger models on GPU hardware as part of the High End GPU Benchmarking. To run these models, please follow the steps outlined in the below section.&amp;lt;br&amp;gt;&lt;br /&gt;
HIGH END GPU BENCHMARKING MODELS&lt;br /&gt;
*5m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
*2.5m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
&lt;br /&gt;
==To Participate==&lt;br /&gt;
To participate in the benchmark, please follow the steps below:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Download the model from &amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOW/Wiki_Benchmark_Model/FMA2_GPU_CPU_Benchmark.zip FMA2_GPU_CPU_Benchmark.zip]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt; Extract the model on a local drive of the computer you would like to benchmark.&lt;br /&gt;
&amp;lt;li&amp;gt; Navigate to the &#039;&#039;&#039;TUFLOW\runs\&#039;&#039;&#039; folder and run the &#039;&#039;&#039;Run_Benchmark.bat&#039;&#039;&#039; file.  This checks if you are running a 32 or 64 bit system and then runs the benchmark.  This also generates some output files that contain more information on the processor, memory and GPU card that you are using.&lt;br /&gt;
&amp;lt;li&amp;gt; If you have a high performance GPU Card you can also run the &#039;&#039;&#039;Run_Benchmark_HighPerformance_GPU.bat&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Email the _ TUFLOW Simulations.log, cpu.txt, ram.txt and GPU.txt files to [mailto:support@tuflow.com support@tuflow.com] and we will includes these in the results tables below.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039;: An NVIDIA graphics card that is CUDA compatible is required to run the GPU model. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=List of Benchmarking Runtimes and Discussions=&lt;br /&gt;
==Benchmarking Runtimes (2018-03-AA Release)==&lt;br /&gt;
*[[Hardware_Benchmarking_-_Results#CPU_Results | CPU results]]&lt;br /&gt;
*[[Hardware_Benchmarking_-_Results#GPU_Results | GPU results]]&lt;br /&gt;
&lt;br /&gt;
==Discussion Topics==&lt;br /&gt;
*[[Hardware_Benchmarking_Topic_HPC_on_CPU_vs_GPU | HPC (CPU) vs. HPC (GPU)]] &lt;br /&gt;
*[[Hardware_Benchmarking_Topic_Single_Precision_VS_Double_Precision | Single Precision Vs Double Precision]]&lt;br /&gt;
*[[ Hardware Selection Advice]]&lt;br /&gt;
&lt;br /&gt;
==Hardware Selection Advice==&lt;br /&gt;
* [[Hardware_Selection_Advice | Hardware Selection Advice]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| TUFLOW Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking&amp;diff=45229</id>
		<title>Hardware Benchmarking</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Hardware_Benchmarking&amp;diff=45229"/>
		<updated>2025-12-10T04:52:25Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* To Participate */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
We frequently get asked, &amp;quot;What is the minimum or recommended hardware to use for TUFLOW modelling&amp;quot;.  This is always a tricky question, as the answer depends on the type and size of the models you are going to run. For a small model, TUFLOW should run on any modern PC or laptop that is capable of running Windows XP or later.  However, for large models there may be requirements for a hefty computer.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The tables below showing computer specifications and model run-time should help you compare systems. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In this page we outline a hardware benchmark model which is available to download from &amp;lt;u&amp;gt;[https://downloads.tuflow.com/_archive/TUFLOW/Benchmark_Models/FMA2_GPU_CPU_Benchmark.zip FMA2_GPU_CPU_Benchmark.zip]&amp;lt;/u&amp;gt; the model can be simulated without a TUFLOW dongle (license).  This makes it easy to benchmark on a range of computers and the results are compiled below.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We have typically found that for TUFLOW Classic, the CPU speed is the largest influence on TUFLOW runtimes, with the RAM speed also having an influence for large models. When using GPU hardware (available for TUFLOW HPC), the Graphics Card has the largest influence, specifically the number and speed of the CUDA cores. In order to quantify this we are compiling the computational times required for a range of different machines.&lt;br /&gt;
&lt;br /&gt;
=Benchmark Model=&lt;br /&gt;
==Background==&lt;br /&gt;
The benchmark model is based on a “challenge” issued prior to the 2012 Flood Managers Association (FMA) Conference in Sacramento, USA.  There is more information on the model setup and purpose  in the &amp;lt;u&amp;gt;[[FMA_Challenge_Models_Introduction | FMA challenge model introduction]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
This hardware benchmark is based on the second challenge which involves a coastal river in flood with two ocean outlets.  The model has been modified slightly (mainly in terms of the outputs).  It is setup to use both the TUFLOW Classic (CPU) and TUFLOW HPC (on both CPU and GPU hardware) for a range of cell sizes.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| align=&amp;quot;center&amp;quot; class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Cell Size (m)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=50% | Number of cells&lt;br /&gt;
|-&lt;br /&gt;
|20.0|| 181,981&lt;br /&gt;
|-&lt;br /&gt;
|10.0|| 727,865&lt;br /&gt;
|-&lt;br /&gt;
|5.0 || 2,911,472&lt;br /&gt;
|-&lt;br /&gt;
|2.5 || 11,645,341&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The model runs for three days of simulation time (72 hours).  The approximate run time for the 30m model on the CPU is likely to be ~20min and for the 15m version approximately 4 hours.  Given the runtime for the CPU model at 10m resolution is likely to be &amp;gt; 12 hours, this is skipped in the benchmark (this can also be run without a licence).&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Models==&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The simulated models are:&lt;br /&gt;
*20m model - TUFLOW Classic&lt;br /&gt;
*20m model - TUFLOW HPC CPU - 2 Cores (default)&lt;br /&gt;
*20m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
*10m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
&lt;br /&gt;
The user also has an option to run a couple of bigger models on GPU hardware as part of the High End GPU Benchmarking. To run these models, please follow the steps outlined in the below section.&amp;lt;br&amp;gt;&lt;br /&gt;
HIGH END GPU BENCHMARKING MODELS&lt;br /&gt;
*5m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
*2.5m model - TUFLOW HPC - GPU Hardware&lt;br /&gt;
&lt;br /&gt;
==To Participate==&lt;br /&gt;
To participate in the benchmark, please follow the steps below:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Download the model from &amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOW/Wiki_Benchmark_Model/FMA2_GPU_CPU_Benchmark.zip FMA2_GPU_CPU_Benchmark.zip]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt; Extract the model on a local drive of the computer you would like to benchmark.&lt;br /&gt;
&amp;lt;li&amp;gt; Navigate to the &#039;&#039;&#039;TUFLOW\runs\&#039;&#039;&#039; folder and run the &#039;&#039;&#039;Run_Benchmark.bat&#039;&#039;&#039; file.  This checks if you are running a 32 or 64 bit system and then runs the benchmark.  This also generates some output files that contain more information on the processor, memory and GPU card that you are using.&lt;br /&gt;
&amp;lt;li&amp;gt; If you have a high performance GPU Card you can also run the &#039;&#039;&#039;Run_Benchmark_HighPerformance_GPU.bat&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Email the _ TUFLOW Simulations.log, cpu.txt, ram.txt and GPU.txt files to [mailto:support@tuflow.com support@tuflow.com] and we will includes these in the results tables below.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
The computer information is determined in the batch file using the &#039;&#039;&#039;wmic&#039;&#039;&#039; and &#039;&#039;&#039;dxdiag&#039;&#039;&#039; commands.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note&#039;&#039;&#039; An NVIDIA graphics card that is CUDA compatible is required to run the GPU model. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=List of Benchmarking Runtimes and Discussions=&lt;br /&gt;
==Benchmarking Runtimes (2018-03-AA Release)==&lt;br /&gt;
*[[Hardware_Benchmarking_-_Results#CPU_Results | CPU results]]&lt;br /&gt;
*[[Hardware_Benchmarking_-_Results#GPU_Results | GPU results]]&lt;br /&gt;
&lt;br /&gt;
==Discussion Topics==&lt;br /&gt;
*[[Hardware_Benchmarking_Topic_HPC_on_CPU_vs_GPU | HPC (CPU) vs. HPC (GPU)]] &lt;br /&gt;
*[[Hardware_Benchmarking_Topic_Single_Precision_VS_Double_Precision | Single Precision Vs Double Precision]]&lt;br /&gt;
*[[ Hardware Selection Advice]]&lt;br /&gt;
&lt;br /&gt;
==Hardware Selection Advice==&lt;br /&gt;
* [[Hardware_Selection_Advice | Hardware Selection Advice]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| TUFLOW Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=12D_Model&amp;diff=45223</id>
		<title>12D Model</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=12D_Model&amp;diff=45223"/>
		<updated>2025-12-01T05:16:41Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /*  12d Model TUFLOW Editors */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
12d model is a complete civil engineering design software including data terrain modelling, road design, sub division, railway, drainage and much more.&lt;br /&gt;
&lt;br /&gt;
The water water resources modules include the 1d HEC RAS interface, 1d pipe systems (culvert and urban networks) with rational and unsteady flow hydrology and the 2d TUFLOW analysis.&lt;br /&gt;
&lt;br /&gt;
12d model integrates TUFLOW with the file creation, editing and result visualisation.&lt;br /&gt;
&lt;br /&gt;
The section below is an extremely fast method to get a TUFLOW project up and running.&amp;lt;br&amp;gt; &lt;br /&gt;
For the full featured TUFLOW editors please see [[12d_model_TUFLOW_editors | 12d Model TUFLOW Editors]].&lt;br /&gt;
&lt;br /&gt;
=Roadflow Quickstart.. Getting Started.. Fast=&lt;br /&gt;
The Roadflow interface is the quick start method of creating a TUFLOW project. It creates all of the TUFLOW files, launches the TUFLOW engine and reads the results for plan, section and 3d visualisation of results.&lt;br /&gt;
&lt;br /&gt;
Prior to running this option you need to create a data terrain model (tin or super tin) and draw a rectangle indicating the TUFLOW grid extent. The optional data tab has further options and will be discussed later.&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:GridExtentPolygon.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The roadflow panel is found on the menu under &#039;&#039;&#039;Design-&amp;gt;TUFLOW-&amp;gt;Roadflow&#039;&#039;&#039;. The rectangle is selected using the first field and the tin in entered in the second Ground tin field. The other values are typed entry as desired. Select the &#039;&#039;&#039;Run&#039;&#039;&#039; button to start the TUFLOW run.&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:TUFLOW_Road_Flow.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The TUFLOW grid tin model will contain a 12d model grid tin with the centre and side elevations for the TUFLOW run.&lt;br /&gt;
&lt;br /&gt;
While TUFLOW is running the usual data from the &amp;quot;black screen&amp;quot; is captured and displayed as graphed data.&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:TUFLOW Run Panel.png]]&lt;br /&gt;
&lt;br /&gt;
While TUFLOW is solving the results can be monitored and displayed in 12d. This will be discussed later.&lt;br /&gt;
&lt;br /&gt;
When the TUFLOW run is complete, select the &#039;&#039;&#039;Read results&#039;&#039;&#039; button to link 12d to the result files for displaying. You will be instructed to select the tlf file for the run and then once again select the &#039;&#039;&#039;Read results&#039;&#039;&#039; button.&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:RoadflowReadResults.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
Remember the name of the &#039;&#039;&#039;Results tin model&#039;&#039;&#039;. This is the model you will add onto the views to see your results.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add the Results tin model onto a 3d OpenGL view. The results tin will be set to display water levels and the perspective views will have the water surface coloured by depth.&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:Results shaded.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Viewing Depth, Hazard, and Velocity Contours==&lt;br /&gt;
Select the &#039;&#039;&#039;Results Controls&#039;&#039;&#039; button to change what is displayed via the results grid tin. Change the &#039;&#039;&#039;Tin Inquire Results&#039;&#039;&#039; to &#039;&#039;&#039;Result Velocity Vector&#039;&#039;&#039;. This setting controls the &lt;br /&gt;
# contours displayed by the tin, &lt;br /&gt;
# the value shown by &#039;&#039;&#039;Tin Inquire Height&#039;, &lt;br /&gt;
# the level in the section view (yes you can plot velocity profiles across a channel),&lt;br /&gt;
# the result plotted in the time graphs,&lt;br /&gt;
# and the elevation shown in a 3d perspective view (in this case a 3d velocity map may be generated).&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:TUFLOW Tin Results Settings Velocity Vectors.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
Add the &#039;&#039;&#039;Results tin model&#039;&#039;&#039; (the one you were to remember) onto a plan view and check that the contours are turned on and set as desired (F11 key).&lt;br /&gt;
If you also have the raster image added to the view you will see the following. The 1m/s is drawn at the length in the field &#039;&#039;&#039;Arrow Scale&#039;&#039;&#039;. The colour of the arrows is the same colour as the tin (see &#039;&#039;&#039;Tins-&amp;gt;Tin manager&#039;&#039;&#039;).&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:RoadflowVelocityContours.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
One method of inquiring the contour values is via &#039;&#039;&#039;Tin Inquire Height&#039;&#039;&#039;. No need to select a tin if there is only one tin on the view. Move the pointer to a contour and the velocity is displayed.&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:Tin Height Inquire Velocity.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Time Series Graphs==&lt;br /&gt;
To graph the velocity versus time at any location use the &#039;&#039;&#039;Design-&amp;gt;TUFLOW-&amp;gt;Tuflow results graph&#039;&#039;&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
Select the &#039;&#039;&#039;Results tin model&#039;&#039;&#039; (the one you were to remember) for the &#039;&#039;&#039;TUFLOW results tin&#039;&#039;&#039;, optionally enter a &#039;&#039;&#039;Label&#039;&#039;&#039; and use the pick arrow to select a location on the results grid. (your cursor snap should be on).&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:TUFLOW Results Graph Velocity.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
Note that if you leave the &#039;&#039;&#039;Label&#039;&#039;&#039; blank and  pick a 12d string instead of a cursor location, the name of the string will be used as the label. Creating a model of graph locations strings is a perfect way to ensure all results are from the some x,y location.&amp;lt;br&amp;gt;&lt;br /&gt;
Selecting multiple locations will add additional graphs to the plot. There is a &#039;&#039;&#039;Clear&#039;&#039;&#039; button to start over. Right mouse selecting will produce a menu with &#039;&#039;&#039;Export dialog...&#039;&#039;&#039; for exporting the image for reporting.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Viewing results at Various Times==&lt;br /&gt;
Recall selecting the &#039;&#039;&#039;Results Controls&#039;&#039;&#039; button above (the same panel can be obtained via the menu &#039;&#039;&#039;Design-&amp;gt;TUFLOW-&amp;gt;TMO tin settings&#039;&#039;&#039;). The &#039;&#039;&#039;Time step&#039;&#039;&#039; is set to &#039;&#039;&#039;maximums&#039;&#039;&#039; when the results are read. The &#039;&#039;&#039;&amp;lt;&#039;&#039;&#039; and &#039;&#039;&#039;&amp;gt;&#039;&#039;&#039; arrows can be used to move to the previous and next time step. Alternatively, enter a time step in the &#039;&#039;&#039;Time step&#039;&#039;&#039; field and select &#039;&#039;&#039;Set&#039;&#039;&#039;. The modelling time will be displayed in the message area of the panel. If you enter a number greater than or equal to the &#039;&#039;&#039;Results available&#039;&#039;&#039; the maximum values at each cell centre will be displayed. The TUFLOW tmo format produces results at the cell centres.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:TUFLOW Tin Results Settings prev next.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
Referring back to the 3d view, the results are displayed for all of the cells, wet or dry. To show hide the dry cells select BOTH the &#039;&#039;&#039;Use wet/dry flag&#039;&#039;&#039; and &#039;&#039;&#039;Hide dry cells&#039;&#039;. The &#039;&#039;&#039;Use wet/dry flag&#039;&#039;&#039; alone will change the colour of the tin solid to green (dry) or blue (wet).&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[12d_model_TUFLOW_editors | 12d Model TUFLOW Editors]]=&lt;br /&gt;
&lt;br /&gt;
Go to [[12d_model_TUFLOW_editors | 12d Model TUFLOW Editors]].&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=12D_Model&amp;diff=45222</id>
		<title>12D Model</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=12D_Model&amp;diff=45222"/>
		<updated>2025-12-01T05:16:25Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Roadflow Optional Tab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
12d model is a complete civil engineering design software including data terrain modelling, road design, sub division, railway, drainage and much more.&lt;br /&gt;
&lt;br /&gt;
The water water resources modules include the 1d HEC RAS interface, 1d pipe systems (culvert and urban networks) with rational and unsteady flow hydrology and the 2d TUFLOW analysis.&lt;br /&gt;
&lt;br /&gt;
12d model integrates TUFLOW with the file creation, editing and result visualisation.&lt;br /&gt;
&lt;br /&gt;
The section below is an extremely fast method to get a TUFLOW project up and running.&amp;lt;br&amp;gt; &lt;br /&gt;
For the full featured TUFLOW editors please see [[12d_model_TUFLOW_editors | 12d Model TUFLOW Editors]].&lt;br /&gt;
&lt;br /&gt;
=Roadflow Quickstart.. Getting Started.. Fast=&lt;br /&gt;
The Roadflow interface is the quick start method of creating a TUFLOW project. It creates all of the TUFLOW files, launches the TUFLOW engine and reads the results for plan, section and 3d visualisation of results.&lt;br /&gt;
&lt;br /&gt;
Prior to running this option you need to create a data terrain model (tin or super tin) and draw a rectangle indicating the TUFLOW grid extent. The optional data tab has further options and will be discussed later.&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:GridExtentPolygon.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The roadflow panel is found on the menu under &#039;&#039;&#039;Design-&amp;gt;TUFLOW-&amp;gt;Roadflow&#039;&#039;&#039;. The rectangle is selected using the first field and the tin in entered in the second Ground tin field. The other values are typed entry as desired. Select the &#039;&#039;&#039;Run&#039;&#039;&#039; button to start the TUFLOW run.&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:TUFLOW_Road_Flow.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The TUFLOW grid tin model will contain a 12d model grid tin with the centre and side elevations for the TUFLOW run.&lt;br /&gt;
&lt;br /&gt;
While TUFLOW is running the usual data from the &amp;quot;black screen&amp;quot; is captured and displayed as graphed data.&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:TUFLOW Run Panel.png]]&lt;br /&gt;
&lt;br /&gt;
While TUFLOW is solving the results can be monitored and displayed in 12d. This will be discussed later.&lt;br /&gt;
&lt;br /&gt;
When the TUFLOW run is complete, select the &#039;&#039;&#039;Read results&#039;&#039;&#039; button to link 12d to the result files for displaying. You will be instructed to select the tlf file for the run and then once again select the &#039;&#039;&#039;Read results&#039;&#039;&#039; button.&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:RoadflowReadResults.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
Remember the name of the &#039;&#039;&#039;Results tin model&#039;&#039;&#039;. This is the model you will add onto the views to see your results.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Add the Results tin model onto a 3d OpenGL view. The results tin will be set to display water levels and the perspective views will have the water surface coloured by depth.&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:Results shaded.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Viewing Depth, Hazard, and Velocity Contours==&lt;br /&gt;
Select the &#039;&#039;&#039;Results Controls&#039;&#039;&#039; button to change what is displayed via the results grid tin. Change the &#039;&#039;&#039;Tin Inquire Results&#039;&#039;&#039; to &#039;&#039;&#039;Result Velocity Vector&#039;&#039;&#039;. This setting controls the &lt;br /&gt;
# contours displayed by the tin, &lt;br /&gt;
# the value shown by &#039;&#039;&#039;Tin Inquire Height&#039;, &lt;br /&gt;
# the level in the section view (yes you can plot velocity profiles across a channel),&lt;br /&gt;
# the result plotted in the time graphs,&lt;br /&gt;
# and the elevation shown in a 3d perspective view (in this case a 3d velocity map may be generated).&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:TUFLOW Tin Results Settings Velocity Vectors.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
Add the &#039;&#039;&#039;Results tin model&#039;&#039;&#039; (the one you were to remember) onto a plan view and check that the contours are turned on and set as desired (F11 key).&lt;br /&gt;
If you also have the raster image added to the view you will see the following. The 1m/s is drawn at the length in the field &#039;&#039;&#039;Arrow Scale&#039;&#039;&#039;. The colour of the arrows is the same colour as the tin (see &#039;&#039;&#039;Tins-&amp;gt;Tin manager&#039;&#039;&#039;).&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:RoadflowVelocityContours.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
One method of inquiring the contour values is via &#039;&#039;&#039;Tin Inquire Height&#039;&#039;&#039;. No need to select a tin if there is only one tin on the view. Move the pointer to a contour and the velocity is displayed.&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:Tin Height Inquire Velocity.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Time Series Graphs==&lt;br /&gt;
To graph the velocity versus time at any location use the &#039;&#039;&#039;Design-&amp;gt;TUFLOW-&amp;gt;Tuflow results graph&#039;&#039;&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
Select the &#039;&#039;&#039;Results tin model&#039;&#039;&#039; (the one you were to remember) for the &#039;&#039;&#039;TUFLOW results tin&#039;&#039;&#039;, optionally enter a &#039;&#039;&#039;Label&#039;&#039;&#039; and use the pick arrow to select a location on the results grid. (your cursor snap should be on).&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:TUFLOW Results Graph Velocity.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
Note that if you leave the &#039;&#039;&#039;Label&#039;&#039;&#039; blank and  pick a 12d string instead of a cursor location, the name of the string will be used as the label. Creating a model of graph locations strings is a perfect way to ensure all results are from the some x,y location.&amp;lt;br&amp;gt;&lt;br /&gt;
Selecting multiple locations will add additional graphs to the plot. There is a &#039;&#039;&#039;Clear&#039;&#039;&#039; button to start over. Right mouse selecting will produce a menu with &#039;&#039;&#039;Export dialog...&#039;&#039;&#039; for exporting the image for reporting.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Viewing results at Various Times==&lt;br /&gt;
Recall selecting the &#039;&#039;&#039;Results Controls&#039;&#039;&#039; button above (the same panel can be obtained via the menu &#039;&#039;&#039;Design-&amp;gt;TUFLOW-&amp;gt;TMO tin settings&#039;&#039;&#039;). The &#039;&#039;&#039;Time step&#039;&#039;&#039; is set to &#039;&#039;&#039;maximums&#039;&#039;&#039; when the results are read. The &#039;&#039;&#039;&amp;lt;&#039;&#039;&#039; and &#039;&#039;&#039;&amp;gt;&#039;&#039;&#039; arrows can be used to move to the previous and next time step. Alternatively, enter a time step in the &#039;&#039;&#039;Time step&#039;&#039;&#039; field and select &#039;&#039;&#039;Set&#039;&#039;&#039;. The modelling time will be displayed in the message area of the panel. If you enter a number greater than or equal to the &#039;&#039;&#039;Results available&#039;&#039;&#039; the maximum values at each cell centre will be displayed. The TUFLOW tmo format produces results at the cell centres.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;[[File:TUFLOW Tin Results Settings prev next.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
Referring back to the 3d view, the results are displayed for all of the cells, wet or dry. To show hide the dry cells select BOTH the &#039;&#039;&#039;Use wet/dry flag&#039;&#039;&#039; and &#039;&#039;&#039;Hide dry cells&#039;&#039;. The &#039;&#039;&#039;Use wet/dry flag&#039;&#039;&#039; alone will change the colour of the tin solid to green (dry) or blue (wet).&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=[[12d_model_TUFLOW_editors | 12d Model TUFLOW Editors]]=&lt;br /&gt;
&lt;br /&gt;
Please go to [[12d_model_TUFLOW_editors | 12d Model TUFLOW Editors]].&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_Message_2386&amp;diff=45208</id>
		<title>TUFLOW Message 2386</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_Message_2386&amp;diff=45208"/>
		<updated>2025-11-12T06:44:53Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{TUFLOW_Message&lt;br /&gt;
|tuflow_message=WARNING 2386 - Output data type &amp;quot;dt&amp;quot; not valid for Classic solution scheme.&lt;br /&gt;
|alt_msg=WARNING 2386 - Output data type &amp;quot;Nu&amp;quot; not valid for Classic solution scheme. Please use &amp;quot;Cr&amp;quot; instead.&amp;lt;br&amp;gt;&lt;br /&gt;
WARNING 2386 - Output data type &amp;quot;Nc&amp;quot; not valid for Classic solution scheme. Please use &amp;quot;Cr&amp;quot; instead.&amp;lt;br&amp;gt;&lt;br /&gt;
WARNING 2386 - Output data type &amp;quot;Nd&amp;quot; not valid for Classic solution scheme. Please use &amp;quot;Cr&amp;quot; instead.&amp;lt;br&amp;gt;&lt;br /&gt;
WARNING 2386 - Output data type &amp;quot;Cr&amp;quot; not valid for HPC solution scheme. Please use &amp;quot;Nu&amp;quot;, &amp;quot;Nc&amp;quot;, or &amp;quot;Nd&amp;quot; instead.&amp;lt;br&amp;gt;&lt;br /&gt;
WARNING 2386 - Output data type &amp;quot;r&amp;quot; only valid for Classic solution scheme.&amp;lt;br&amp;gt;&lt;br /&gt;
WARNING 2386 - Output data type &amp;quot;CI&amp;quot; not valid with horizontal sub-surface flows or multiple vertical soils layers.&amp;lt;br&amp;gt;&lt;br /&gt;
WARNING 2386 - Output data type &amp;quot;RC&amp;quot; not valid for HPC solution scheme. Switched off.&amp;lt;br&amp;gt;&lt;br /&gt;
|type=[[WARNING]]&lt;br /&gt;
|message_desc=TUFLOW Classic solver applies fixed timestep and does not support the output data type &amp;quot;dt&amp;quot;, &amp;quot;Nu&amp;quot;, &amp;quot;Nc&amp;quot;, or &amp;quot;Nd&amp;quot; (the &amp;lt;u&amp;gt;[[HPC_Adaptive_Timestepping | HPC adaptive timestepping]]&amp;lt;/u&amp;gt;). On the other hand, &amp;quot;Cr&amp;quot; is the Courant Number output in TUFLOW Classic solution scheme, same as &amp;quot;r&amp;quot; is the flow regime, and are not supported by TUFLOW HPC solver.&amp;lt;br&amp;gt;&lt;br /&gt;
The Cumulative Infiltration (CI) output is only available for models with a single vertical soil layer, no horizontal movement of ground water and no drying of the soil layer through negative rainfall. When any of the three options (multiple vertical layers, horizontal movement or negative rainfall) can reduce the groundwater moisture, the water content in the layer is no longer a “cumulative value” so the CI output is not available.&lt;br /&gt;
|suggestions=Use supported output data types in each solver.&lt;br /&gt;
&lt;br /&gt;
|uplink=[[2xxx_TUFLOW_Messages|2xxx Messages]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Tutorial_Introduction&amp;diff=45197</id>
		<title>Tutorial Introduction</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Tutorial_Introduction&amp;diff=45197"/>
		<updated>2025-10-23T07:03:35Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
This TUFLOW licence free tutorial model is aimed at new users, stepping through the process of building and running a model. To begin, watch the following video:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[https://vimeo.com/505584298/2c91bd5f48 What Is TUFLOW?]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements and Downloads=&lt;br /&gt;
TUFLOW uses QGIS as its Graphical User Interface (GUI), in combination with text editor and spreadsheet software, for its model creation and result viewing. The group of software creates an extremely workflow efficient and flexible modelling environment. Notably, QGIS does not experience the data load/visualisation lag and display issues some other hydraulic modelling software GUIs are limited by when working with larger datasets.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This short video introduces the required TUFLOW modelling programs:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[https://vimeo.com/505579529/03f4cb3d17 Required Programs]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;75%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Requirement&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Brief Description&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Download&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;TUFLOW&#039;&#039;&#039; || TUFLOW is a computer program for simulating depth-averaged, one and two-dimensional free-surface flows such as occurs from floods and tides, with the 2D solution occurring over a regular grid of square elements.&amp;lt;br&amp;gt;&lt;br /&gt;
It is recommended to always use the latest release version of TUFLOW.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial model does not require a TUFLOW licence.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial is set up to use a NVIDIA GPU card. If this is not available, CPU can be used in the hardware command. &amp;lt;br&amp;gt;&lt;br /&gt;
||The TUFLOW executable is provided within the &amp;lt;u&amp;gt;[https://wiki.tuflow.com/Tutorial_Introduction#Module_Data Tutorial Dataset]&amp;lt;/u&amp;gt;.  &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;QGIS&#039;&#039;&#039; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;QGIS TUFLOW plugin || The Geographic Information System (GIS) used to build models and view results. This tutorial was developed with QGIS 3.20.  It is recommended to have QGIS 3.20 or later to ensure compatibility with TUFLOW plugin latest features. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
The TUFLOW plugin includes numerous tools to increase workflow efficiency.  &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
||&amp;lt;u&amp;gt;[https://qgis.org/download/ Latest 64-bit version of QGIS]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_QGIS_Plugin| QGIS TUFLOW Plugin Installation]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NotePad++&#039;&#039;&#039; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Syntax Highlighting || A text editor is required for creation of the TUFLOW input files. This tutorial was developed with NotePad++. Ideally a text editor should be able to:&amp;lt;br&amp;gt;&lt;br /&gt;
*Colour code the TUFLOW control files;&lt;br /&gt;
*Open other files from the active control file; and&lt;br /&gt;
*Launch a TUFLOW simulation. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
TUFLOW colour coding can be enabled using syntax highlighting. &lt;br /&gt;
|| &amp;lt;u&amp;gt;[https://notepad-plus-plus.org/downloads/ Latest 64-bit version of Notepad++]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[https://downloads.tuflow.com/_archive/Miscellaneous/NPP_TUFLOW_Syntax_Highlighting.zip TUFLOW syntax highlighting for Notepad++]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For instructions on configuring Notepad++ for TUFLOW modelling, see &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips |Notepad++ tips]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Microsoft Excel&#039;&#039;&#039; || A spreadsheet software is required for working with tabular data and .csv files. This tutorial has been created in Excel. || &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Windows File Explorer&#039;&#039;&#039; || Windows File Explorer is used for navigating, copying and renaming files. It is recommended to display file extension to allow for editing of file extensions. For more details, see [[Tutorial_Troubleshooting_QGIS#Editing_File_Extension | Editing file extension]]. || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Module Data=&lt;br /&gt;
To build the tutorial model, download one of the datasets below. This includes a digital elevation model (DEM), aerial photography, background model data for the tutorial model and a working version of the model. There are two formats available, Shapefile and GeoPackage. GeoPackage has been supported since the 2023-03 Release, for tips on its use see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/GeoPackage_Tips GeoPackage Tips]&amp;lt;/u&amp;gt;. &lt;br /&gt;
:*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOW/Wiki_Tute_Models/Tutorial_Models_QGIS_GPKG.zip Tutorial Dataset - QGIS - GPKG]&amp;lt;/u&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOW/Wiki_Tute_Models/Tutorial_Models_QGIS_SHP.zip Tutorial Dataset - QGIS - SHP]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: there are numerous GIS packages that can be used, these tutorials have been specifically designed for QGIS using the QGIS TUFLOW Plugin. If you would like to see past tutorials for MapInfo, ArcGIS or SMS, please contact &amp;lt;u&amp;gt;[mailto:support@tuflow.com support@tuflow.com]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Tutorial Modules=&lt;br /&gt;
The download dataset contains the input files and working version of the tutorial model for reference. Results and check files are not included to keep the size of the download file manageable. The folder should be placed in a location with write permissions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The tutorial model is presented in a number of modules. All modules can be completed independently, however new users are encouraged to undertake the modules in sequence:&lt;br /&gt;
&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01 | Module 1]]&amp;lt;/u&amp;gt;  - 2D Base Model&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M02 | Module 2]]&amp;lt;/u&amp;gt;  - Topography Updates&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M03 | Module 3]]&amp;lt;/u&amp;gt;  - 1D Culverts&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M04 | Module 4]]&amp;lt;/u&amp;gt;  - 2D Bridges&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M05 | Module 5]]&amp;lt;/u&amp;gt;  - Integrated Urban Drainage&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M06 | Module 6]]&amp;lt;/u&amp;gt;  - Direct Rainfall&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M07 | Module 7]]&amp;lt;/u&amp;gt;  - Quadtree &lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M08 | Module 8]]&amp;lt;/u&amp;gt;  - Scenario Management&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M09 | Module 9]]&amp;lt;/u&amp;gt;  - Event Management&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M10 | Module 10]]&amp;lt;/u&amp;gt; - Dam Break&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M11 | Module 11]]&amp;lt;/u&amp;gt; - 1D Open Channel&lt;br /&gt;
&lt;br /&gt;
=Archive Dataset=&lt;br /&gt;
Historic tutorial model datasets can be accessed via the following link: &amp;lt;u&amp;gt;[[Tutorial_Model_Archive| TUFLOW Classic Tutorial Model Archive]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Contact=&lt;br /&gt;
For comments, requests and feedback contact &amp;lt;u&amp;gt;[mailto:support@tuflow.com support@tuflow.com]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
Alternatively, see the &amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Example_Model_Catalogue | TUFLOW Example Models]]&amp;lt;/u&amp;gt; to explore the full list of TUFLOW features.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Flood_Modeller_Tutorial_Module01&amp;diff=45196</id>
		<title>Flood Modeller Tutorial Module01</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Flood_Modeller_Tutorial_Module01&amp;diff=45196"/>
		<updated>2025-10-23T07:01:02Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* TUFLOW HPC */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
In this module we will link an existing 2D TUFLOW domain to an existing Flood Modeller 1D model. The 2D TUFLOW domain will represent the floodplain in the study area, and the 1D Flood Modeller model will represent the watercourse and all online structures. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
1D-2D linked models are able to utilise the individual benefits of 1D and 2D solution schemes. In this example, the 1D Flood Modeller scheme is used to represent the watercourses where the flow is essentially uni-directional. A 2D scheme is suited to the representation of floodplains where more complex flow patterns may occur. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
As [[Tutorial_Module01_Archive#Reviewing_Model_Performance | discussed in Module 1 of the TUFLOW Tutorial Model]], the main watercourse channel is not very well represented using the 5m 2D cell size. In parts, the watercourse is only 5-10m wide and the 5m cell size could be considered too coarse to accurately represent the watercourse topography.&amp;lt;br&amp;gt;&lt;br /&gt;
[[file:Poor_2d_rep.png|400px]]&amp;lt;br&amp;gt;&lt;br /&gt;
Using a cell size that is coarse relative to the width of the watercourse channel may reduce the accuracy of the conveyance in the channel.  There are two options for improving the representation of the creek channel:&amp;lt;br&amp;gt;&lt;br /&gt;
* decrease the width of the 2D cells; and/or&lt;br /&gt;
* model the channel as a 1D network, dynamically linked to the 2D domain (the floodplain).&lt;br /&gt;
In the [[Tutorial_Module01_Archive#Advanced_-_Model_Resolution_.28Optional.29 | optional section of Module 1 of the TUFLOW Tutorial Model]], we looked at reducing the cell size to get a better representation of the channel. In this module we will adopt the second approach of modelling the creek as 1D elements using Flood Modeller.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TUFLOW may be dynamically linked to 1D networks using the hydrodynamic solutions of ESTRY (TUFLOW 1D), Flood Modeller, XP-SWMM and 12D Solutions’ Dynamic Drainage.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Setting up a 1D/2D model where the 1D channel cuts through the 2D domain is probably the most time-consuming type of a model to setup.  However, the reduction in simulation time can be beneficial and make this a good approach.  For this module, the complete Flood Modeller 1D model has been provided, to allow for progressing through the module in a relatively short period of time.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Existing Model Data=&lt;br /&gt;
This tutorial builds upon the 2D TUFLOW domain that was constructed as part of [[Tutorial Module01_Archive|Module 1]] and [[Tutorial Module02_Archive|Module 2]] of the TUFLOW Tutorial Model.&amp;lt;br&amp;gt;&lt;br /&gt;
The model developed in these tutorial modules already contains some culverts modelled as 1D elements. The culverts are modelled in ESTRY, TUFLOW&#039;s internal 1D engine. One of these culverts will be kept in ESTRY and the other will be added to the Flood Modeller model.&amp;lt;br&amp;gt;&lt;br /&gt;
The 2D boundary conditions (upstream inflows and downstream stage-discharge boundary) will be removed from the model. These will instead be represented in Flood Modeller as it is a more typical schematisation for a 1D/2D linked model.&amp;lt;br&amp;gt;&lt;br /&gt;
The existing TUFLOW model consists of:&lt;br /&gt;
*Definition of Active/In-Active Areas&lt;br /&gt;
*Definition of Land Use&lt;br /&gt;
*1D ESTRY culverts&lt;br /&gt;
*1D/2D boundary links to connect the 1D ESTRY culverts to the 2D TUFLOW domain.&lt;br /&gt;
&lt;br /&gt;
For further information on these elements, please refer to [[Tutorial Module01_Archive|Module 1]] and [[Tutorial Module02_Archive|Module 2]] of the TUFLOW Tutorial Model.&lt;br /&gt;
&lt;br /&gt;
==Flood Modeller==&lt;br /&gt;
A complete Flood Modeller 1D model of the watercourse has been provided for the purposes of this tutorial.&amp;lt;br&amp;gt;&lt;br /&gt;
The model data has been arranged in the following folder structure: &lt;br /&gt;
*&amp;lt;b&amp;gt;DAT&amp;lt;/b&amp;gt;: Contains the Flood Modeller 1D network file.&lt;br /&gt;
*&amp;lt;b&amp;gt;IED&amp;lt;/b&amp;gt;: Contains event data of the model. &lt;br /&gt;
*&amp;lt;b&amp;gt;IEF&amp;lt;/b&amp;gt;: A blank folder in which to store Flood Modeller Event Files used to simulate the model. &lt;br /&gt;
*&amp;lt;b&amp;gt;RES&amp;lt;/b&amp;gt;: A blank folder in which to write the Flood Modeller result files.&lt;br /&gt;
For further information on each file type, please refer to the [https://help.floodmodeller.com/docs Flood Modeller User Manual].&amp;lt;br&amp;gt;&lt;br /&gt;
For this tutorial, the floodplain of the study area will be modelled entirely in TUFLOW. &lt;br /&gt;
The cross-sections in the Flood Modeller 1D model have been trimmed to the top of bank to ensure there is no double-counting of storage within the floodplain. &lt;br /&gt;
Upstream and downstream boundary data is contained separately within the IED files. These will be referenced and linked to the Flood Modeller 1D model via the IEF simulation file.&lt;br /&gt;
&lt;br /&gt;
=GIS and Model Inputs=&lt;br /&gt;
The steps necessary to modify each of the GIS inputs are demonstrated in MapInfo, ArcGIS and QGIS. At each stage please select your GIS package to view relevant instructions.&lt;br /&gt;
&lt;br /&gt;
==Define the External 1D Networks==&lt;br /&gt;
This part of the module creates the GIS layers that specify the location of the Flood Modeller nodes that are to be connected to the 2D domain. Follow the instructions below for your preferred GIS package.&lt;br /&gt;
* [[FM Tute M01_ARC_x1D_Nodes | ArcGIS]]&lt;br /&gt;
* [[FM Tute M01_MI_x1D_Nodes  | MapInfo]]&lt;br /&gt;
* [[FM Tute M01_QGIS_x1D_Nodes  | QGIS]]&lt;br /&gt;
&lt;br /&gt;
==Define the 1D/2D Boundary Links==&lt;br /&gt;
This part of the module creates the 1D/2D boundaries to link the Flood Modeller 1D component to the TUFLOW 2D domain. Follow the instructions below for your preferred GIS package.&lt;br /&gt;
* [[FM Tute M01_ARC_1D2D_Links | ArcGIS]]&lt;br /&gt;
* [[FM Tute M01_MI_1D2D_Links  | MapInfo]]&lt;br /&gt;
* [[FM Tute M01_QGIS_1D2D_Links  | QGIS]]&lt;br /&gt;
&lt;br /&gt;
==Define Bank Elevations==&lt;br /&gt;
This part of the module defines the bank elevations of the watercourse which are the elevations of the 1D/2D boundary links created in the previous section. Follow the instructions below for your preferred GIS package.&lt;br /&gt;
* [[FM Tute M01_ARC_Banks | ArcGIS]]&lt;br /&gt;
* [[FM Tute M01_MI_1D2D_Banks  | MapInfo]]&lt;br /&gt;
* [[FM Tute M01_QGIS_1D2D_Banks  | QGIS]]&lt;br /&gt;
&lt;br /&gt;
==Deactivate 2D cells ==&lt;br /&gt;
This part of the module describes the steps to deactivate the 2D cells where the 1D model is replacing the 2D solution. Follow the instructions below for your preferred GIS package.&lt;br /&gt;
* [[FM Tute M01_ARC_Code | ArcGIS]]&lt;br /&gt;
* [[FM Tute M01_MI_1D2D_Code  | MapInfo]]&lt;br /&gt;
* [[FM Tute M01_QGIS_1D2D_Code  | QGIS]]&lt;br /&gt;
&lt;br /&gt;
=Modify Simulation Control Files=&lt;br /&gt;
Now that we have made all of the necessary changes to the GIS layers, we need to update the TUFLOW control files and Flood Modeller Simulation Files to create a linked model.&lt;br /&gt;
==TUFLOW Control Files==&lt;br /&gt;
==TUFLOW Geometry Control File==&lt;br /&gt;
We will first update the TUFLOW Geometry Control (TGC) file. The following changes have been changes made to the geometry:&lt;br /&gt;
* We have deactivated the cells along the watercourse which are represented in the 1D Flood Modeller component of the model&lt;br /&gt;
* We have enforced bank elevations along the watercourse.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;&#039;&#039;FMT_Tutorial\FMT_M01\TUFLOW\model&#039;&#039;&#039; folder, save a copy of &amp;lt;b&amp;gt;M01_5m_002.tgc&amp;lt;/b&amp;gt; as &amp;lt;b&amp;gt;FMT_M01_001.tgc&amp;lt;/b&amp;gt;. &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Open &amp;lt;b&amp;gt;FMT_M01_001.tgc&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Mapinfo&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Add an extra command line after &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; Read GIS Code &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;..\model\mi\2d_code_FMT_M01_001_R.MIF &amp;lt;/li&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Code BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\2d_bc_FMT_M01_HX_001_R.MIF&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ! Deactivates the cells where the watercourse has been modelled in 1D &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the order of the commands is important. The layer &#039;&#039;&#039;2d_code_FMT_M01_001.MIF&#039;&#039;&#039; first activates cells within the modelled area then the layer &#039;&#039;&#039;2d_bc_FMT_M01_HX_001_R.MIF&#039;&#039;&#039; deactivates selected cells along the watercourse.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Other GIS&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
Add an extra command line after &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; Read GIS Code &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;..\model\gis\2d_code_FMT_M01_001_R.shp &lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Code BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\2d_bc_FMT_M01_HX_001_R.shp &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ! Deactivates the cells where the watercourse has been modelled in 1D &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note that the order of the commands is important. The layer &#039;&#039;&#039;2d_code_FMT_M01_001_R.shp&#039;&#039;&#039; first activates cells within the modelled area then the layer &#039;&#039;&#039;2d_bc_FMT_M01_HX_001_R.shp&#039;&#039;&#039; deactivates selected cells along the watercourse. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Topography amendments should be added in a new section at the bottom of the TGC. These are: &amp;lt;/li&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Mapinfo&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Z HX Line MAX &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\2d_bc_FMT_M01_HX_001_L.MIF | mi\2d_bc_FMT_M01_HX_001_P.MIF &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Defines the bank crest levels (1D/2D boundary cell elevations). The &#039;MAX&#039; option prevents any zpt elevations from being lowered &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
The two GIS layers must be read in together on the same command line. This tells TUFLOW to associate the points within the &#039;&#039;&#039;2d_bc_FMT_M01_HX_001_P.MIF&#039;&#039;&#039; layer (defining elevation) with the polylines within the &#039;&#039;&#039;2d_bc_FMT_M01_HX_001_L.MIF&#039;&#039;&#039; layer (defining bank location). &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Other GIS&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Z HX Line MAX &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\2d_bc_FMT_M01_HX_001_L.shp | gis\2d_bc_FMT_M01_HX_001_P.shp &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Defines the bank crest levels (1D/2D boundary cell elevations). The &#039;MAX&#039; option prevents any zpt elevations from being lowered &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
The two GIS layers must be read in together on the same command line. This tells TUFLOW to associate the points within the &#039;&#039;&#039;2d_bc_FMT_M01_HX_001_P.shp&#039;&#039;&#039; layer (defining elevation) with the polylines within the &#039;&#039;&#039;2d_bc_FMT_M01_HX_001_L.shp&#039;&#039;&#039; layer (defining bank location). &lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Save the file. The geometry control file is now ready to be used.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Boundary Condition Control File==&lt;br /&gt;
We will now update the TUFLOW Boundary Condition control file (tbc) to reference the model boundary files created in previous steps.&lt;br /&gt;
&amp;lt;li&amp;gt; Add the 1D/2D boundaries that link the Flood Modeller open channel to the 2D floodplain&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Update the 1D/2D boundaries which link the ESTRY culverts to the 2D floodplain, as some of these culverts are now modelled in Flood Modeller&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Remove the external inflows applied to the TUFLOW model, as these are now applied in Flood Modeller&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Open &#039;&#039;&#039;M02_5m_001.tbc&#039;&#039;&#039; and save a copy as &#039;&#039;&#039;FMT_M01_001.tbc&#039;&#039;&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt; Remove the boundary linking to the TUFLOW inflows by:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Mapinfo&#039;&#039;&#039;&lt;br /&gt;
:Put an exclamation mark before the line reading. This tells TUFLOW to treat this command line as a comment:&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\2d_bc_M01_002_L.MIF&lt;br /&gt;
&#039;&#039;&#039;Other GIS&#039;&#039;&#039;&lt;br /&gt;
:Put an exclamation mark before the line reading:&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\2d_bc_M01_002_L.SHP&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Update the 1D/2D boundary links at the ESTRY culverts  with the new layer:&amp;lt;/li&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Mapinfo&#039;&#039;&#039;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\2d_bc_M04_culverts_001_L.MIF &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! This command reads in SX boundaries linking the 1D ESTRY culverts to the 2D domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Other GIS&#039;&#039;&#039;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\2d_bc_M04_culverts_001_L.shp	&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! This command reads in SX boundaries linking the 1D ESTRY culverts to the 2D domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Add reference to the 1D/2D boundary links that connect Flood Modeller to the 2D floodplain:&amp;lt;/li&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Mapinfo&#039;&#039;&#039;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\2d_bc_FMT_M01_HX_001_p.MIF | mi\2d_bc_FMT_M01_HX_001_L.MIF&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! This command reads in HX boundaries linking the 1D Flood Modeller watercourse to the 2D domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Other GIS&#039;&#039;&#039;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\2d_bc_FMT_M01_HX_001_p.shp | gis\2d_bc_FMT_M01_HX_001_L.shp &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! This command reads in HX boundaries linking the 1D Flood Modeller watercourse to the 2D domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Save the file. The boundary control file is now ready to be used.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Control File==&lt;br /&gt;
Finally, we need to edit the TUFLOW control file (.tcf). We will:&lt;br /&gt;
&amp;lt;li&amp;gt; Remove reference to model parameters that will be read in from Flood Modeller&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Read in the GIS layer of the Flood Modeller Nodes &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Read in the GIS layers to create Water Level Lines along the Flood Modeller component of the model (optional) &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Add a reference to the ESTRY Control File&lt;br /&gt;
&amp;lt;li&amp;gt; Update reference to the boundary control file (.tbc) and geometry control file &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the \FMT_Tutorial\FMT_M01\TUFLOW\runs folder, save a copy of the TUFLOW file created as a part of module 2 (&#039;&#039;&#039;M02_5m_001.tcf&#039;&#039;&#039;) as &#039;&#039;&#039;FMT_M01_001.tcf&#039;&#039;&#039;. &amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In a linked Flood Modeller - TUFLOW model, the Start Time, End Time and 2D Timestep are read from the Flood Modeller .ief file. It is best practice to therefore remove these parameters from the tcf. And an exclamation mark in front of each of the below commands.&amp;lt;br&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! SIMULATION TIME CONTROL COMMANDS &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Timestep &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; 1.5   &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Specifies a 2D computational timestep of 1.5 seconds &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Start time &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; 0   &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Specifies a simulation start time of 0 hours &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;End Time &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;3     &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Specifies a simulation end time of 3 hours &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; We need to read in the GIS layers of the Flood Modeller Nodes. Place the below command line anywhere in the .tcf. It is good practice to create a section within the .tcf to reference all 1D commands: &amp;lt;br&amp;gt; &amp;lt;/li&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Mapinfo&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS X1D Nodes&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;  &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;..\model\mi\1d_x1d_FMT_M01_nodes_001_P.MIF	&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! GIS layer referencing node IDs from Flood Modeller &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Other GIS&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS X1D Nodes&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;  &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;..\model\gis\1d_x1d_FMT_M01_nodes_001_P.shp	&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! GIS layer referencing node IDs from Flood Modeller &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Add commands to read in the GIS layers referencing Water Level Lines drawn along the Flood Modeller component of the model: &amp;lt;br&amp;gt; &amp;lt;/li&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Mapinfo&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS X1D Network&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;..\model\mi\1d_x1d_FMT_M01_nwk_001_L.MIF	&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! GIS layer representing channels to allow for the digitisation of Water Level Lines (optional)&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS X1D WLL&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ..\model\mi\1d_x1d_WLL_FMT_M01_001_L.MIF &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! GIS layer containing WLLs for visualising 1D results in 2D (optional)&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Other GIS&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS X1D Network&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;..\model\gis\1d_x1d_FMT_M01_nwk_001_L.shp	&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! GIS layer representing channels to allow for the digitisation of Water Level Lines (optional)&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS X1D WLL&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ..\model\gis\1d_x1d_WLL_FMT_M01_001_L.shp &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! GIS layer containing WLLs for visualising 1D results in 2D (optional)&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Add commands to read in the an Esty Control File which contains references to some of the culverts present on the floodplain: &amp;lt;br&amp;gt; &amp;lt;/li&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;ESTRY Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;  &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;..\model\FMT_M01_001.ecf &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;!Reference the ESTRY Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Finally, update the links to the Geometry control file, the Boundary Condition control file and the bc_dbase file:&amp;lt;/li&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Geometry Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;  &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;..\model\FMT_M01_001.tgc&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;  &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;..\model\FMT_M01_001.tbc&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;  &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;..\bc_dbase\bc_dbase_FMT_M01.csv&lt;br /&gt;
&lt;br /&gt;
This concludes the changes that we need to make to the .tcf&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Flood Modeller Simulation Files==&lt;br /&gt;
In the FMT_M01\Flood_Modeller folder, we have provided a complete Flood Modeller model. It is located in the DAT, IED and IEF folders.&amp;lt;br&amp;gt;&lt;br /&gt;
The DAT and IED files are complete and will not require any modification to link to TUFLOW.&amp;lt;br&amp;gt;&lt;br /&gt;
However, we will alter the IEF to create the link. The IEF alterations can be done either in a text editor of your choice or using the Flood Modeller Interface.&amp;lt;br&amp;gt;&lt;br /&gt;
The instructions below have been written for the Flood Modeller Interface version 4.2.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==IEF File==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Open Flood Modeller. Select &#039;Load 1D Network&#039;. Navigate to &#039;&#039;&#039;\FMT_Tutorial\FMT_M01\Flood_Modeller\DAT&#039;&#039;&#039; and load the &#039;&#039;&#039;FMT_M01_001.dat&#039;&#039;&#039;.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Right click &#039;Event Data&#039; and select &#039;Add Item&#039;. Navigate to &#039;&#039;&#039;\FMT_Tutorial\FMT_M01\Flood_Modeller\IED&#039;&#039;&#039; and load the &#039;&#039;&#039;FMT_Inflows.IED&#039;&#039;&#039;.&amp;lt;/li&amp;gt;&lt;br /&gt;
[[file:FMT Load1Dnwk.JPG|500px]]&lt;br /&gt;
&amp;lt;li&amp;gt; On the &#039;Simulation&#039; tab, click New 1D Simulation. Save the file when prompted in the &#039;&#039;&#039;\FMT_Tutorial\FMT_M01\Flood_Modeller\IEF&#039;&#039;&#039; folder as&#039;&#039;&#039;FMT_M01_001.ief&#039;&#039;&#039;&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; On the &#039;Files&#039; Tab of the simulation window, set the following parameters:&amp;lt;/li&amp;gt;&lt;br /&gt;
*Event Title: FMT_M01_001&lt;br /&gt;
*1D Data File: The full path to the \FMT_Tutorial\FMT_M01\Flood_Modeller\DAT\FMT_M01_001.dat&lt;br /&gt;
*Use Initial Conditions from: Network File (.dat)&lt;br /&gt;
*Results File: the full path to \FMT_Tutorial\FMT_M01\Flood_Modeller\RES\FMT_M01_001&lt;br /&gt;
&amp;lt;li&amp;gt;To the right of the Event Data box, click Add and select the &#039;&#039;&#039;FMT_Inflows.IED&#039;&#039;&#039; file in the &#039;&#039;&#039;\FMT_Tutorial\FMT_M01\Flood_Modeller\IED&#039;&#039;&#039; folder.&amp;lt;/li&amp;gt;&lt;br /&gt;
[[file:FMT Simulation files.JPG|500px]]&lt;br /&gt;
&amp;lt;li&amp;gt;On the &#039;Times&#039; tab, we will replace the simulation time parameters that were removed from TUFLOW. Enter the following parameters:&amp;lt;/li&amp;gt;&lt;br /&gt;
*Run Type: Unsteady (Fixed Timestep)&lt;br /&gt;
*Start Time (hrs): 0&lt;br /&gt;
*Finish Time (hrs): 3&lt;br /&gt;
*Timestep (s):1&lt;br /&gt;
*Save Interval (s): 300&lt;br /&gt;
[[file:FMT Simulation times.JPG|500px]]&lt;br /&gt;
&amp;lt;li&amp;gt; Add the &#039;Links&#039; tab by clicking View&amp;gt; Tabs &amp;gt; Links. On the &#039;Links&#039; tab, enter the following parameters:&lt;br /&gt;
*2-d Scheme: TUFLOW&lt;br /&gt;
*2-d Timestep: 2&lt;br /&gt;
*2-d control file: full path to the &#039;&#039;&#039;FMT_M01_001.tcf&#039;&#039;&#039; from the &#039;&#039;&#039;\FMT_Tutorial\FMT_M01\TUFLOW\runs&#039;&#039;&#039; folder&lt;br /&gt;
[[file:FMT Simulation links.JPG|500px]]&lt;br /&gt;
&amp;lt;li&amp;gt; Add the &#039;Additional Output&#039; tab by clicking View&amp;gt; Tabs &amp;gt; Additional Output. On the &#039;Additional Output&#039; tab, select the check box for &#039;2D Flow...&#039;. This will add extra output to check the Flood Modeller and TUFLOW link. We will review this additional output in the following section.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save the Scenario Data. &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Run the Simulation=&lt;br /&gt;
There are a number of different methods in which to start a Flood Modeller – TUFLOW model. Please refer to the [[Running_linked_Flood_Modeller_-_TUFLOW_Models | following page]] for a detailed discussion on each of these methods. &amp;lt;br&amp;gt;&lt;br /&gt;
Use your preferred method to start the model &amp;lt;b&amp;gt;FMT_M01_001.ief&amp;lt;/b&amp;gt; or follow the guidance below. If the simulation fails to start, please refer to the troubleshooting guidance on this page. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
In the &amp;lt;b&amp;gt;Complete_Model\FMT_M01\Flood_Modeller\IEF&amp;lt;/b&amp;gt; folder a batch file has been provided. To use the batch file in this tutorial:&amp;lt;br&amp;gt;&lt;br /&gt;
*Ensure that you [https://wiki.tuflow.com/Running_linked_Flood_Modeller_-_TUFLOW_Models set up the installation folders].&lt;br /&gt;
*Move the batch file to the  &amp;lt;b&amp;gt;FMT_Tutorial\FMT_M01\Flood_Modeller\IEF&amp;lt;/b&amp;gt; folder&lt;br /&gt;
*Open the batch file in a text editor. On the &#039;set FloodModeller=&#039; line, change the path from the one provided to the full path to the ISISf32.exe file that you set up with the installation folders.&lt;br /&gt;
*Save and close the file&lt;br /&gt;
*Double click the batch file in your file explorer to run the file&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
When the simulation is running, the Flood Modeller status window will open. Flood Modeller will then open a tab with the TUFLOW output. &amp;lt;br&amp;gt;&lt;br /&gt;
[[file:FMP_Sim_Screen.png|500px]]&amp;lt;br&amp;gt;&lt;br /&gt;
The simulation will take a few minutes depending on the hardware setup.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Review the Results=&lt;br /&gt;
Modelled results can be processed, reviewed and visualised in many different packages.&amp;lt;br&amp;gt;&lt;br /&gt;
For a complete introduction to the different options, [[Tutorial_Module01_Archive#Viewing_Results | refer to Tutorial Module 1]]. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW HPC==&lt;br /&gt;
&lt;br /&gt;
To run the linked TUFLOW-Flood Modeller Pro model using HPC we simply need to add a single line to the Tuflow Control File.  The HPC solver will only speed up the 2D calculations within the linked 1D-2D model, it will not speed up the 1D calculations that take place in the Flood Modeller Engine. &lt;br /&gt;
The relatively small nature of this specific model means that use of HPC on multiple CPU cores may not lead to significant improvements to model run times.  However, should the machine have an NVIDIA GPU card present then it is possible to run the HPC solver on the GPU to significantly improve model runs times.  The larger the 2D domain, the more significant the improvements to model run times through the use of the HPC solver.&lt;br /&gt;
To utilise the HPC solver:-&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save the TUFLOW runfile ( &amp;lt;b&amp;gt;FMT_M01_001.tcf&amp;lt;/b&amp;gt;) as &amp;lt;b&amp;gt;FMT_M01_002.tcf&amp;lt;/b&amp;gt;.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Add the following command to the TCF file:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; Solution Scheme &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;HPC	&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Use HPC solver to run the simulation&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;	If you have a CUDA enabled NVIDIA GPU device, you can also add the following command to run the HPC solver using GPU hardware:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; Hardware &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;GPU	&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Run HPC solver on GPU&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;	Save the TCF file and run the model.Troubleshooting for GPU Simulation&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
===Troubleshooting for GPU Simulation===&lt;br /&gt;
If you receive the following error when trying to run the TUFLOW HPC model using GPU hardware: &lt;br /&gt;
&amp;lt;pre&amp;gt;TUFLOW GPU: Interrogating CUDA enabled GPUs … &lt;br /&gt;
TUFLOW GPU: Error: Non-CUDA Success Code returned &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
or&lt;br /&gt;
&amp;lt;pre&amp;gt;ERROR 2785 - No GPU devices found, enabled or compatible.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Please try the following steps: &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Check if your GPU card is an NVIDIA GPU card. Currently, TUFLOW does not run on AMD type GPU.&lt;br /&gt;
&amp;lt;li&amp;gt; Check if your NVIDIA GPU card is CUDA enabled and whether the latest drivers are installed. Please see &amp;lt;u&amp;gt;[[GPU_Setup | GPU Setup]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
If you experience an issue that is not detailed above please send an email to [mailto:support@tuflow.com support@tuflow.com]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
We introduced the user to the linking of a TUFLOW 2D domain to a 1D Flood Modeller model.&amp;lt;br&amp;gt;&lt;br /&gt;
For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Flood_Modeller_Tutorial_Model| Back to Flood Modeller Tutorial Model]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Flood_Modeller_Tutorial_Module02&amp;diff=45195</id>
		<title>Flood Modeller Tutorial Module02</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Flood_Modeller_Tutorial_Module02&amp;diff=45195"/>
		<updated>2025-10-23T06:59:11Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
In this tutorial we will add a representation of a proposed development which involves adding TUFLOW 1D pipe network elements into the existing model network to represent the drainage network, which will then be linked with Flood Modeller Pro.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
This will involve: &lt;br /&gt;
*Modification of the floodplain topography by the creation of a 3D TIN surface;&lt;br /&gt;
*Revising the land use;&lt;br /&gt;
*The addition of pipes and pits to represent an underground drainage network;&lt;br /&gt;
*Linking the pipe network to Flood Modeller; and&lt;br /&gt;
*The addition of an inflow into the pipe network.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=GIS and Model Inputs=&lt;br /&gt;
The steps necessary to modify each of the GIS inputs are demonstrated in MapInfo, ArcGIS and QGIS. At each stage please select your GIS package to view relevant instructions.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==Define Elevations (Building a TIN)==&lt;br /&gt;
We have provided the GIS layers necessary to modify the ground elevations to represent the proposed development. This part of the tutorial will demonstrate how a TIN is created from these GIS layers. We will also update the GIS defining the road crest level. Follow the instructions below for your preferred GIS package.&lt;br /&gt;
* [[FM Tute M02_ARC_Define_Elevations | ArcGIS]]&lt;br /&gt;
* [[FM Tute M02_MI_Define_Elevations  | MapInfo]]&lt;br /&gt;
* [[FM Tute M02_QGIS_Define_Elevations  | QGIS]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Define Surface Roughness==&lt;br /&gt;
We have provided the GIS layers necessary to modify the land use areas that will change as part of the proposed development. This part of the tutorial will require populating the layer attributes to assign Manning’s n roughness values to each land use. Follow the instructions below for your preferred GIS package. &lt;br /&gt;
* [[FM Tute M02_ARC_Define_Roughness | ArcGIS]]&lt;br /&gt;
* [[FM Tute M02_MI_Define_Roughness  | MapInfo]]&lt;br /&gt;
* [[FM Tute M02_QGIS_Define_Roughness  | QGIS]]&lt;br /&gt;
==Define Pipe Network==&lt;br /&gt;
This part of the module creates the GIS layers that make up a pipe network. The pits of the pipe network will be linked to the 2D domain. We will also create the pit inlet database which links the GIS layers to depth-discharge curves. Follow the instructions below for your preferred GIS package.&lt;br /&gt;
* [[FM Tute M02_ARC_Pipe_Network | ArcGIS]]&lt;br /&gt;
* [[FM Tute M02_MI_Pipe_Network  | MapInfo]]&lt;br /&gt;
* [[FM Tute M02_QGIS_Pipe_Network  | QGIS]]&lt;br /&gt;
==Define Boundary Conditions==&lt;br /&gt;
This part of the module demonstrates how an inflow can be applied directly to the pits of the pipe network. A GIS layer of the inflow boundary has been provided. We will also modify the existing Boundary Conditions Database to include these new inflows. Follow the instructions below for your preferred GIS package.&lt;br /&gt;
* [[FM Tute M02_ARC_Boundary_Conditions | ArcGIS]]&lt;br /&gt;
* [[FM Tute M02_MI_Boundary_Conditions  | MapInfo]]&lt;br /&gt;
* [[FM Tute M02_QGIS_Boundary_Conditions  | QGIS]]&lt;br /&gt;
===Flood Modeller/ESTRY 1D/1D Link===&lt;br /&gt;
TUFLOW models can also be configured with Flood Modeller for dynamically linked 1D pipe network 2D overland flow modelling.  The main driver for this feature is for Flood Modeller - TUFLOW models to utilise the powerful pipe network and manhole modelling capabilities of TUFLOW (see the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt; for more details) and be able to link these networks into a Flood Modeller river model.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Flood Modeller and TUFLOW (ESTRY) nodes will be considered linked if:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;	An ESTRY node in a 1d_nwk layer, and a Flood Modeller node in a Read GIS X1D Nodes or Read GIS X1D Network layer are snapped.&amp;lt;/li&amp;gt;  &lt;br /&gt;
&amp;lt;li&amp;gt;	The ESTRY node has a 1d_nwk Conn_1D_2D attribute of either &amp;quot;X1DH&amp;quot; or &amp;quot;X1DQ&amp;quot;.&amp;lt;/li&amp;gt;  &lt;br /&gt;
::(i)	If Conn_1D_2D is blank then “X1DH” is assumed.&lt;br /&gt;
::(ii)	A connector &amp;quot;X&amp;quot; channel type can be used to connect the end of the linked ESTRY channel to the ESTRY node snapped to the Flood Modeller node if the end of the ESTRY channel and the snapped Flood Modeller /ESTRY nodes are not in the same location.&lt;br /&gt;
::(iii)	Note that the upstream and downstream inverts for the ESTRY node linked to Flood Modeller should be set to -99999 unless the node is also being used to set the inverts of channels snapped to it.&lt;br /&gt;
&amp;lt;li&amp;gt;	An &amp;quot;X1DH&amp;quot; link means a Flood Modeller 1D water level is being applied at the ESTRY node (ie. Flood Modeller sends ESTRY a water level and ESTRY sends back a +/- flow to Flood Modeller). &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;	An &amp;quot;X1DQ&amp;quot; link means a Flood Modeller inflow/outflow is being applied at the ESTRY node (ie. Flood Modeller sends ESTRY a +/- flow and ESTRY sends back a water level). &amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;	An ESTRY X1DH (the default) would be used for most Flood Modeller ESTRY links.  An X1DQ might be more appropriate where a Flood Modeller model stops and flows into an ESTRY model.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
Generally, an ESTRY timestep will be smaller than the Flood Modeller timestep.  In these cases, the total volume is accumulated over all ESTRY timesteps within a Flood Modeller timestep, and applied to the Flood Modeller model as a discharge by dividing the volume by the Flood Modeller timestep.&lt;br /&gt;
The mass balance _MB1D.csv file includes four new columns:&lt;br /&gt;
*&amp;lt;b&amp;gt;X1DH V In&amp;lt;/b&amp;gt;: The volume of water in via a X1DH link.  &lt;br /&gt;
*&amp;lt;b&amp;gt;X1DH V Out&amp;lt;/b&amp;gt;: The volume of water out via a X1DH link.  &lt;br /&gt;
*&amp;lt;b&amp;gt;X1DQ V In&amp;lt;/b&amp;gt;: The volume of water in via a X1DQ link.  &lt;br /&gt;
*&amp;lt;b&amp;gt;X1DQ V Out&amp;lt;/b&amp;gt;: The volume of water out via a X1DQ link.  &lt;br /&gt;
The type or existence of a connection can be checked by viewing the Conn_1D_2D attribute in the 1d_nwk_N_check layer.  The _messages.mif/.shp layer contains CHECK 1393 messages at each ESTRY node linked to a Flood Modeller node.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Modify Simulation Control Files=&lt;br /&gt;
Now that we have made all of the necessary changes to the GIS layers, we need to update our control files to include all the changes representing the proposed development. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
==TUFLOW Geometry Control File==&lt;br /&gt;
There have been two changes to the model that impact the TGC file:&lt;br /&gt;
*We have created two layers that together form a 3D TIN representing changes to the ground elevations.&lt;br /&gt;
*We have created two 2d_mat layers that represent changes to the land use at the location of the proposed development. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Begin by opening &amp;lt;b&amp;gt;FMT_M01_001.tgc&amp;lt;/b&amp;gt; in your text editor. Save the file as &amp;lt;b&amp;gt;FMT_M02_001.tgc&amp;lt;/b&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt; Open &amp;lt;b&amp;gt;FMT_M02_001.tgc&amp;lt;/b&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;MapInfo Users&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;We will now add the commands to modify the topography to represent the proposed development. Add the following commands after the READ GIS Z Shape line:&amp;lt;/li&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Create TIN Zpts WRITE TIN &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\2d_ztin_FMT_M02_development_001_R.MIF | mi\2d_ztin_FMT_M02_development_001_P.MIF &amp;lt;/li&amp;gt;.&lt;br /&gt;
The &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Create TIN Zpts Write TIN &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command creates and writes an SMS .tin file to the same location as the GIS layer (in this case the TUFLOW\model\mi folder). The TIN can be viewed, checked and modified in SMS. This can then be read into the model directly using the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read TIN zpts&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command for any subsequent model simulations.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Our intention for the 2d_mat layers created in this module is for them to build upon the existing commands which modify roughness. We would like for the new layers to overwrite the existing layers at the location of the proposed development. This process of layering and building up the model is a powerful tool in TUFLOW that minimises data duplication and provides a means of quality control. We need to ensure that the commands reading in our new 2d_mat layers are read in after the existing commands.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Mat&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\2d_mat_FMT_M02_DEV_001_R.MIF &lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Mat&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\2d_mat_FMT_M02_DEV_Buildings_001_R.MIF&lt;br /&gt;
&#039;&#039;&#039;QGIS or ArcGIS Users&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;We will now add the commands to modify the topography to represent the proposed development. Add the following commands after the READ GIS Z Shape line:&amp;lt;/li&amp;gt;&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Create TIN Zpts WRITE TIN &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\2d_ztin_FMT_M02_development_001_R.shp | gis\2d_ztin_ FMT_M02_development_001_P.SHP &amp;lt;/li&amp;gt;&lt;br /&gt;
The &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Create TIN Zpts Write TIN &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command creates and writes an SMS .tin file to the same location as the GIS layer (in this case the TUFLOW\model\gis folder). The TIN can be viewed, checked and modified in SMS. This can then be read into the model directly using the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read TIN zpts&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command for any subsequent model simulations.&lt;br /&gt;
&lt;br /&gt;
Our intention for the 2d_mat layers created in this module is for them to build upon the existing commands which modify roughness. We would like for the new layers to overwrite the existing layers at the location of the proposed development. This process of layering and building up the model is a powerful tool in TUFLOW that minimises data duplication and provides a means of quality control. We need to ensure that the commands reading in our new 2d_mat layers are read in after the existing commands.&lt;br /&gt;
&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Mat&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\2d_mat_FMT_M02_DEV_001_R.MIF &lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Mat&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\2d_mat_FMT_M02_DEV_Buildings_001_R.MIF&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Save the file.  The .tgc file is now ready to be used.&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==ESTRY Control File==&lt;br /&gt;
There have been three changes to the model that impact the ECF file:&lt;br /&gt;
*We have created a 1d_nwk layer representing the culverts of the proposed pipe network&lt;br /&gt;
*We have created a 1d_nwk layer representing the pits of the proposed pipe network&lt;br /&gt;
*We have created a pit inlet database that links depth-discharge curves to the pit inlet type.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &amp;lt;b&amp;gt;FMT_M01_001.ecf&amp;lt;/b&amp;gt; in your text editor. Save the file as &amp;lt;b&amp;gt;FMT_M02_001.ecf&amp;lt;/b&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt; Open &amp;lt;b&amp;gt;FMT_M02_001.ecf&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MapInfo Users&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Add the following commands at the bottom of the file as follows:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Network&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\1d_nwk_FMT_M02_Pipes_001_L.MIF &lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Network&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\1d_nwk_FMT_M02_Pits_001_P.MIF &lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Pit Inlet Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ..\pit_dbase\pit_inlet_dbase.csv &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;QGIS or ArcGIS Users&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Add the following commands at the bottom of the file as follows:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Network&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\1d_nwk_FMT_M02_Pipes_001_L.shp &lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Network&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\1d_nwk_FMT_M02_Pits_001_P.shp &lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Pit Inlet Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ..\pit_dbase\pit_inlet_dbase.csv &lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the file. The 1D control file is now ready to be used.&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Boundary Condition File==&lt;br /&gt;
&lt;br /&gt;
There has been one change to the model that impacts the TBC file:&lt;br /&gt;
*We have created a 2d_sa layer to define inflows into the pipe network.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &amp;lt;b&amp;gt;FMT_M01_001.tbc&amp;lt;/b&amp;gt; in your text editor and save as &amp;lt;b&amp;gt;FMT_M02_001.tbc&amp;lt;/b&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;MapInfo Users&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Insert the following commands after the existing &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SA&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\2d_sa_M01_002_R.MIF command: &lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SA PITS&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; mi\2d_sa_FMT_M02_001_R.MIF&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;QGIS or ArcGIS Users&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Insert the following commands after the existing &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SA&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\2d_sa_M01_002_R.shp command: &lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SA PITS&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; gis\2d_sa_FMT_M02_001_R.shp&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Save the file.  The tbc file is now ready to be used.&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Control File==&lt;br /&gt;
&lt;br /&gt;
We will need to create a new tcf file that references the new tgc, ecf and tbc files.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &amp;lt;b&amp;gt;FMT_M01_001.tcf&amp;lt;/b&amp;gt; and save as &amp;lt;b&amp;gt;FMT_M02_DEV_001.tcf&amp;lt;/b&amp;gt;.&lt;br /&gt;
Update the following commands:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Geometry Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ..\model\FMT_M02_001.tgc&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;ESTRY Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ..\model\FMT_M02_001.ecf&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ..\model\FMT_M02_001.tbc&lt;br /&gt;
&amp;lt;li&amp;gt;We have also created a new bc_dbase in this module which will need to be referenced. Update the command as follows:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ..\bc_dbase\bc_dbase_FMT_M02.csv&lt;br /&gt;
&amp;lt;li&amp;gt;Lastly, update the following command to specify a new output folder for the results of this module:&lt;br /&gt;
:&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Output Folder&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; ..\results\FMT_M02\2d&lt;br /&gt;
&amp;lt;li&amp;gt;Save the file. The tcf file is now ready to be used.&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Flood Modeller Simulation Files==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the Flood Modeller Pro model as per [[Flood_Modeller_Tutorial_Module01 | Flood Modeller Tutorial Module 1]]&lt;br /&gt;
&amp;lt;li&amp;gt;In the &#039;Links&#039; tab with the 2D scheme set as TUFLOW, change the full path of the 2D control file to the &amp;lt;b&amp;gt;FMT_M02_DEV_001.tcf&amp;lt;/b&amp;gt; from the &amp;lt;b&amp;gt;\FMT_Tutorial\FMT_M02\TUFLOW\runs&amp;lt;/b&amp;gt; folder&lt;br /&gt;
&amp;lt;li&amp;gt;Save the Scenario Data.&amp;lt;/li&amp;gt;&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Use your preferred method to start the model &amp;lt;b&amp;gt;FMT_M02_001.ief&amp;lt;/b&amp;gt; or follow the guidance in the [[Flood_Modeller_Tutorial_Module01 | Flood Modeller Tutorial Module 1]] page. If the simulation fails to start, please refer to the troubleshooting guidance on that page.&lt;br /&gt;
&lt;br /&gt;
=Review Check Files=&lt;br /&gt;
Once the model has compiled and the simulation started, we can review the check files to ensure the changes have been correctly applied. The following section of this module outlines how the generated check files can be used to review each of the key changes we have made to the model. Note that there is often more than one check file that can be used to review each component of the model. The below steps outline just how some of these check files can be used.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Review Created TIN&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
From the &amp;lt;b&amp;gt;TUFLOW\check\2d\&amp;lt;/b&amp;gt; folder import (into MapInfo) or open (ArcMap and QGIS):&lt;br /&gt;
*&amp;lt;b&amp;gt;FMT_M02_001_DEM_Z.asc&amp;lt;/b&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The FMT_M02_001_DEM_Z.asc is a grid of the final zpts used by TUFLOW after processing of each of the layers within the tgc. It can be read by most mainstream GIS software and also visualised in SMS.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Review Changes to Roughness&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
From the &amp;lt;b&amp;gt;TUFLOW\check\2d\&amp;lt;/b&amp;gt; folder import (into MapInfo) or open (ArcMap and QGIS):&lt;br /&gt;
*FMT_M02_001_grd_check&lt;br /&gt;
&lt;br /&gt;
The grd_check file contains information on all cells within the model extent, such as ZC elevation and the location of the cell in relation to the model origin. One of the attributes of this check layer is the Material ID assigned to each cell. A review of this check file is recommended particularly when using multiple GIS layers to define the roughness of a 2D domain. The file can be colour coded to provide a visual representation of the roughness assigned to the entire model extent by:&lt;br /&gt;
*Thematically mapping the grd_check layer in MapInfo&lt;br /&gt;
*Changing the style of the grd_check file to &#039;Categorized&#039; by the &#039;Material&#039; column in QGIS&lt;br /&gt;
*By right clicking on the grd_check layer within the table of contents and click Properties. Once the properties dialogue window is open select the Symbology tab. Choose the Unique values option under Categories in the left-hand list and map the Value Field of interest.&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Review Pipe Network&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
From the &amp;lt;b&amp;gt;TUFLOW\check\1d\&amp;lt;/b&amp;gt; folder import (into MapInfo) or open (ArcMap and QGIS):&lt;br /&gt;
*FMT_M02_001_nwk_C_check&lt;br /&gt;
*FMT_M02_001_nwk_N_check&lt;br /&gt;
&lt;br /&gt;
These two check files provide information on the all 1D elements within the model. The _nwk_C_check layer provides information on all 1D channels (including structures) in the model, whilst the _nwk_N_check layer provides information on the nodes. Notice how the _nwk_C check layer shows a series of dashed lines at the locations where we have specified pits in the model. These lines represent &#039;pit channels&#039;, zero length channels that connect the 1D pipe network to the 2D floodplain. Viewing in conjunction with the _nwk_N check layer shows two nodes are created at the upstream (ground level) and downstream (invert of the pipe network) ends of the pit channel. The orange triangle at the upstream end provides information on the link created with the 2D floodplain. The blue diamond at the downstream end provides information on the automatically created manhole at the junction between the culverts of the pipe network. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Review Boundaries and 1D/2D Links&#039;&#039;&#039;&lt;br /&gt;
From the &amp;lt;b&amp;gt;TUFLOW\check\2d\&amp;lt;/b&amp;gt; folder import (into MapInfo) or open (ArcMap and QGIS):&lt;br /&gt;
*FMT_M02_001_1d_to_2d_check&lt;br /&gt;
*FMT_M02_001_sac_check&lt;br /&gt;
&lt;br /&gt;
The _1d_to_2d_check layer highlights the location of all 1D/2D boundary links within the model. Where we have digitised the pipe network, this check file shows the SX boundaries that have been created at the location of the pits. This check file also shows the ZC elevation of the SX boundary which can be compared to surrounding ZC elevations by viewing alongside the grd_check layer. The check layer also shows the HX boundaries digitised along the river banks in Module 01. &lt;br /&gt;
&lt;br /&gt;
The _sac_check layer highlights the 2D cells connected to 1D pits where the 2d_sa inflow boundaries have been applied. The check file has been colour coded to show which 2D cells each of the four inflow boundaries has been applied to. The flow is distributed equally among each of the 2D cells.&lt;br /&gt;
&lt;br /&gt;
=Review the Results=&lt;br /&gt;
&lt;br /&gt;
Open the 2D results in your results viewer or import to your GIS package. It can be seen that during the flood event the capacity of the pipe network is exceeded resulting in flooding of the roads in the proposed development.&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:M07 2d Results.PNG|800px]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The 1D ESTRY results can be viewed by importing the time series (_TS.mif or _TS_P.shp from the TUFLOW\results\1D folder, or opening any of the csv files outputted to TUFLOW\results\1d\csv. Another useful method for viewing the results of pipe networks is by importing in the _1d_ccA result layer found in the TUFLOW/results/1D folder. For each conduit or bridge within the model extent, this layer will provide information on the performance of the structure. Information such as percentage full and the time (in hours) the structure is at capacity are shown in this result layer. The layer is also automatically colour coded with thicker, dark purple lines highlighting structures that have reached capacity during the simulation. Thinner, pink lines show pipes that still have capacity.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:M07 ccA Results.PNG|800px]]&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
We have added to the model a final proposed development scenario. Using the Create TIN Zpts command, we have altered the ground elevations to represent the development. We have also added a 1D pipe network which has been linked to the 2D domain as well as feeding flows in the 1-dimensional channel represented within Flood Modeller. A pit inlet database has been created to specify a depth-discharge relationship for flow into and out of the pits.  This allows us to create a fully integrated urban drainage model comprises 1D representations of the pipe network and river system together with the 2D surface.&amp;lt;br&amp;gt;&lt;br /&gt;
For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Flood_Modeller_Tutorial_Model| Back to Flood Modeller Tutorial Model]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Flood_Modeller_Tutorial_Model&amp;diff=45194</id>
		<title>Flood Modeller Tutorial Model</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Flood_Modeller_Tutorial_Model&amp;diff=45194"/>
		<updated>2025-10-23T06:56:40Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Modules */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
The objective of this Flood Modeller – TUFLOW model is to demonstrate the ability of TUFLOW to link to an external 1D scheme and the various methods available in which to create this link. It is designed to supplement existing documentation and assumes the user has some prior knowledge of both the Flood Modeller and TUFLOW software packages.&lt;br /&gt;
This tutorial model has been developed by BMT with Jacobs. Please post comments, requests and feedback to [mailto:support@tuflow.com support@tuflow.com].&lt;br /&gt;
&lt;br /&gt;
=Requirements and Downloads=&lt;br /&gt;
Both TUFLOW and Flood Modeller have relatively modest system requirements for small models such as the tutorial model.  However, larger and more complex models may have higher hardware requirements - in particular memory (RAM).  Both software are available in 32 and 64 bit versions.&lt;br /&gt;
==Hardware==&lt;br /&gt;
The tutorial model is designed to be small, to allow for quick simulation and load times. The tutorial model should run on any modern PC or laptop that is capable of running Windows 7 or later. If you would like to complete the optional TUFLOW HPC steps utilising a GPU card then you will need access to a CUDA enabled NVidia graphics card.&lt;br /&gt;
==Software== &lt;br /&gt;
===TUFLOW===&lt;br /&gt;
&lt;br /&gt;
This tutorial model has been constructed using the 2018 release of TUFLOW. The tutorial model may be simulated licence free using TUFLOW Build 2016-03-AC or later. This can be obtained from the [https://tuflow.com/downloads/#tuflow downloads section] of the TUFLOW website. TUFLOW Build 2016-03-AD or later must be used in order to take advantage of the free TUFLOW link for this tutorial model. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Flood Modeller===&lt;br /&gt;
This tutorial model has been constructed using version 4.2 of Flood Modeller. This can be downloaded from the [https://www.floodmodeller.com/en-gb/downloads/ Flood Modeller Website]. The tutorial model may be simulated licence free using Version 4.2 to 4.6. These versions of Flood Modeller contains the free TUFLOW link, which permits simulation of linked models with up to 10 links or the tutorial model. &lt;br /&gt;
&lt;br /&gt;
Larger models with more links will require a [https://www.floodmodeller.com/en-gb/sales/pricing-and-licensing-options/tuflow/ link licence].  A licence is also required is you intend to run the model in Flood Modeller 5 or later&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===GIS Software===&lt;br /&gt;
TUFLOW models typically require access to a GIS package, text editor, Microsoft Excel and a results viewer to build, review and visualise a model. Refer to the following Wiki page to view a list of compatible packages. Alternatively, Flood Modeller may be used as a GUI for creating and editing GIS layers in a TUFLOW model and also for visualising the results.&lt;br /&gt;
Instructions for this Flood Modeller – TUFLOW tutorial model have been provided using the following GIS and modelling packages:&lt;br /&gt;
*MapInfo&lt;br /&gt;
*QGIS&lt;br /&gt;
*ArcGIS&lt;br /&gt;
&lt;br /&gt;
=Module Data=&lt;br /&gt;
All data to complete the tutorial has been provided, including a digital elevation model (DEM), aerial photography and a complete Flood Modeller model. Data for this tutorial is provided in a variety of different GIS compatible formats. Download the dataset that matches the GIS software you are using:&lt;br /&gt;
*[https://downloads.tuflow.com/_archive/TUFLOW/Tutorial_Model/FMT_Tutorial_QGIS.zip QGIS Data Download]&lt;br /&gt;
*[https://downloads.tuflow.com/_archive/TUFLOW/Tutorial_Model/FMT_Tutorial_Data_MapInfo.zip MapInfo Data Download]&lt;br /&gt;
*[https://downloads.tuflow.com/_archive/TUFLOW/Tutorial_Model/FMT_Tutorial_Data_ArcGIS.zip ArcGIS Data Download]&lt;br /&gt;
&lt;br /&gt;
=Recommended Reading=&lt;br /&gt;
The aim of this tutorial is to demonstrate the steps undertaken to build, review and visualise the results of a linked Flood Modeller – TUFLOW model. It assumes that the user has a good understanding of both the 1D component of Flood Modeller and the 1D and 2D components of TUFLOW. The following resources may be of use:&lt;br /&gt;
*[[Tutorial_Introduction | TUFLOW Tutorial Model]]&lt;br /&gt;
*[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW User Manual]&lt;br /&gt;
*[https://www.floodmodeller.com/media/34731/isis_1d_quick_start_guide.pdf Flood Modeller 1D Quick Start Guide]&lt;br /&gt;
*[https://help.floodmodeller.com/docs Flood Modeller User Manual]&lt;br /&gt;
&lt;br /&gt;
=Modules=&lt;br /&gt;
The tutorial is presented over a series of modules, with each module offering the opportunity to run the model and review the results. Each of the modules builds upon the previous iteration with models developed in the previous module made available. &lt;br /&gt;
New users are advised to undertake the modules in sequence, whilst more experienced users can skip to modules containing specific features of interest.&lt;br /&gt;
==Module 1: Linking Flood Modeller to TUFLOW==&lt;br /&gt;
The first tutorial module introduces the user to the linking of a TUFLOW 2D domain to a 1D Flood Modeller model. To access this module of the tutorial please see this page: [[Flood Modeller Tutorial Module01|Flood Modeller Tutorial Module 1]].&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
From this tutorial you will learn how to link an existing Flood Modeller 1D model to a TUFLOW 2D domain.&amp;lt;br&amp;gt;&lt;br /&gt;
This tutorial is ideal for those starting to learn how to link Flood Modellder and TUFLOW.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Module 2: Linking Flood Modeller to ESTRY==&lt;br /&gt;
The second tutorial demonstrates the linking of an ESTRY pipe network to an existing Flood Modeller – TUFLOW linked model. To access this module of the tutorial please see this page: &lt;br /&gt;
[[Flood Modeller Tutorial Module02|Flood Modeller Tutorial Module 2]]. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
From this tutorial you will learn how to add a 1D pipe network and connect it to the representation of the watercourse created in Flood Modeller and link it to the TUFLOW representation of the floodplain created as part of [[Flood Modeller Tutorial Module01|Flood Modeller Tutorial Module 1]].  This tutorial is ideal for those who would like to learn more about the interaction of TUFLOW with Flood Modeller including the simulation of fully integrated drainage systems.&lt;br /&gt;
&lt;br /&gt;
=Contact=&lt;br /&gt;
For comments, requests and feedback contact &amp;lt;u&amp;gt;[mailto:support@tuflow.com support@tuflow.com]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=Tutorial_Introduction&amp;diff=45193</id>
		<title>Tutorial Introduction</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=Tutorial_Introduction&amp;diff=45193"/>
		<updated>2025-10-23T06:19:41Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Contact */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
This TUFLOW licence free tutorial model is aimed at new users, stepping through the process of building and running a model. To begin, watch the following video:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[https://vimeo.com/505584298/2c91bd5f48 What Is TUFLOW?]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Requirements and Downloads=&lt;br /&gt;
TUFLOW uses QGIS as its Graphical User Interface (GUI), in combination with text editor and spreadsheet software, for its model creation and result viewing. The group of software creates an extremely workflow efficient and flexible modelling environment. Notably, QGIS does not experience the data load/visualisation lag and display issues some other hydraulic modelling software GUIs are limited by when working with larger datasets.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This short video introduces the required TUFLOW modelling programs:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[https://vimeo.com/505579529/03f4cb3d17 Required Programs]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;75%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Requirement&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Brief Description&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Download&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;TUFLOW&#039;&#039;&#039; || TUFLOW is a computer program for simulating depth-averaged, one and two-dimensional free-surface flows such as occurs from floods and tides, with the 2D solution occurring over a regular grid of square elements.&amp;lt;br&amp;gt;&lt;br /&gt;
It is recommended to always use the latest release version of TUFLOW.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial model does not require a TUFLOW licence.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial is set up to use a NVIDIA GPU card. If this is not available, CPU can be used in the hardware command. &amp;lt;br&amp;gt;&lt;br /&gt;
||The TUFLOW executable is provided within the &amp;lt;u&amp;gt;[https://wiki.tuflow.com/Tutorial_Introduction#Module_Data Tutorial Dataset]&amp;lt;/u&amp;gt;.  &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;QGIS&#039;&#039;&#039; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;QGIS TUFLOW plugin || The Geographic Information System (GIS) used to build models and view results. This tutorial was developed with QGIS 3.20.  It is recommended to have QGIS 3.20 or later to ensure compatibility with TUFLOW plugin latest features. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
The TUFLOW plugin includes numerous tools to increase workflow efficiency.  &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
||&amp;lt;u&amp;gt;[https://qgis.org/download/ Latest 64-bit version of QGIS]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_QGIS_Plugin| QGIS TUFLOW Plugin Installation]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NotePad++&#039;&#039;&#039; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Syntax Highlighting || A text editor is required for creation of the TUFLOW input files. This tutorial was developed with NotePad++. Ideally a text editor should be able to:&amp;lt;br&amp;gt;&lt;br /&gt;
*Colour code the TUFLOW control files;&lt;br /&gt;
*Open other files from the active control file; and&lt;br /&gt;
*Launch a TUFLOW simulation. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
TUFLOW colour coding can be enabled using syntax highlighting. &lt;br /&gt;
|| &amp;lt;u&amp;gt;[https://notepad-plus-plus.org/downloads/ Latest 64-bit version of Notepad++]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[https://downloads.tuflow.com/_archive/Miscellaneous/NPP_TUFLOW_Syntax_Highlighting.zip TUFLOW syntax highlighting for Notepad++]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For instructions on configuring Notepad++ for TUFLOW modelling, see &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips |Notepad++ tips]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Microsoft Excel&#039;&#039;&#039; || A spreadsheet software is required for working with tabular data and .csv files. This tutorial has been created in Excel. || &lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Windows File Explorer&#039;&#039;&#039; || Windows File Explorer is used for navigating, copying and renaming files. It is recommended to display file extension to allow for editing of file extensions. For more details, see [[Tutorial_Troubleshooting_QGIS#Editing_File_Extension | Editing file extension]]. || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Module Data=&lt;br /&gt;
To build the tutorial model, download one of the datasets below. This includes a digital elevation model (DEM), aerial photography, background model data for the tutorial model and a working version of the model. There are two formats available, Shapefile and GeoPackage. GeoPackage has been supported since the 2023-03 Release, for tips on its use see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/GeoPackage_Tips GeoPackage Tips]&amp;lt;/u&amp;gt;. &lt;br /&gt;
:*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOW/Wiki_Tute_Models/Tutorial_Models_QGIS_GPKG.zip Tutorial Dataset - QGIS - GPKG]&amp;lt;/u&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOW/Wiki_Tute_Models/Tutorial_Models_QGIS_SHP.zip Tutorial Dataset - QGIS - SHP]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Note: there are numerous GIS packages that can be used, these tutorials have been specifically designed for QGIS using the QGIS TUFLOW Plugin. If you would like to see past tutorials for MapInfo, ArcGIS or SMS, please contact &amp;lt;u&amp;gt;[mailto:support@tuflow.com support@tuflow.com]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Tutorial Modules=&lt;br /&gt;
The download dataset contains the input files and working version of the tutorial model for reference. Results and check files are not included to keep the size of the download file manageable. The folder should be placed in a location with write permissions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The tutorial model is presented in a number of modules. All modules can be completed independently, however new users are encouraged to undertake the modules in sequence:&lt;br /&gt;
&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M01 | Module 1]]&amp;lt;/u&amp;gt;  - 2D Base Model&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M02 | Module 2]]&amp;lt;/u&amp;gt;  - Topography Updates&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M03 | Module 3]]&amp;lt;/u&amp;gt;  - 1D Culverts&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M04 | Module 4]]&amp;lt;/u&amp;gt;  - 2D Bridges&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M05 | Module 5]]&amp;lt;/u&amp;gt;  - Integrated Urban Drainage&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M06 | Module 6]]&amp;lt;/u&amp;gt;  - Direct Rainfall&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M07 | Module 7]]&amp;lt;/u&amp;gt;  - Quadtree &lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M08 | Module 8]]&amp;lt;/u&amp;gt;  - Scenario Management&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M09 | Module 9]]&amp;lt;/u&amp;gt;  - Event Management&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M10 | Module 10]]&amp;lt;/u&amp;gt; - Dam Break&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M11 | Module 11]]&amp;lt;/u&amp;gt; - 1D Open Channel&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Contact=&lt;br /&gt;
For comments, requests and feedback contact &amp;lt;u&amp;gt;[mailto:support@tuflow.com support@tuflow.com]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
Alternatively, see the &amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Example_Model_Catalogue | TUFLOW Example Models]]&amp;lt;/u&amp;gt; to explore the full list of TUFLOW features.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Archive Dataset=&lt;br /&gt;
Historic tutorial model datasets can be accessed via the following link: &amp;lt;u&amp;gt;[[Tutorial_Model_Archive| TUFLOW Classic Tutorial Model Archive]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=XPSWMM_to_TUFLOW-SWMM&amp;diff=45192</id>
		<title>XPSWMM to TUFLOW-SWMM</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=XPSWMM_to_TUFLOW-SWMM&amp;diff=45192"/>
		<updated>2025-10-23T06:19:06Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Feedback / Suggestions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
This Wiki page outlines recommended steps for the conversion of an XPSWMM model to TUFLOW. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
XPSWMM is a flood and urban stormwater drainage modeling software developed by Autodesk (previously Innovyze and XP Solutions). The XPSWMM solution uses EPA SWMM for its 1D calculations, dynamically linked to TUFLOW for its 2D calculations. The software functions within a custom build Graphical User Interface (GUI). Unknown to many XPSWMM modelers, during simulation, XPSWMM processes its inputs into TUFLOW files and also calls TUFLOW for the 2D calculations. As XPSWMM uses TUFLOW for its 2D engine, like-for-like results can be achieved using this software. The modeling workflow in TUFLOW differs from XPSWMM, as TUFLOW modeling is integrated with QGIS (Geographical Information System) GIS software instead of embedded within a software specific Graphical User Interface.&lt;br /&gt;
&lt;br /&gt;
If you are building a TUFLOW SWMM model from scratch, not from XPSWMM, please refer to the &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_Introduction | TUFLOW SWMM Tutorials]]&amp;lt;/u&amp;gt;. Tutorials are provided for the following topics:&lt;br /&gt;
* &amp;lt;u&amp;gt;[[TUFLOW SWMM Tutorial M01 | TUFLOW SWMM Module 1]]&amp;lt;/u&amp;gt; - 1D SWMM Culverts&lt;br /&gt;
* &amp;lt;u&amp;gt;[[TUFLOW SWMM Tutorial M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt; - 1D SWMM Pipe Network / 2D TUFLOW Direct Rainfall Hydrology&lt;br /&gt;
* &amp;lt;u&amp;gt;[[TUFLOW SWMM Tutorial M03 | TUFLOW SWMM Module 3]]&amp;lt;/u&amp;gt; - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology&lt;br /&gt;
* &amp;lt;u&amp;gt;[[TUFLOW SWMM Tutorial M04 | TUFLOW SWMM Module 4]]&amp;lt;/u&amp;gt; - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology: Executing multiple different event simulations from a single model control file.&lt;br /&gt;
&lt;br /&gt;
== Dataset Download ==&lt;br /&gt;
The dataset used for this model conversion demonstration is available for download here: &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/XPSWMM_XPX_to_TUFLOW_Conversion.zip XPSWMM XPX to TUFLOW Conversion Dataset]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
This dataset contains the XPSWMM model and the resulting TUFLOW model that is created. These can be found in the &#039;&#039;&#039;XPSWMM&#039;&#039;&#039; and &#039;&#039;&#039;Complete_Conversion&#039;&#039;&#039; folders respectively. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;If you are using this example conversion dataset, please rerun the XPSWMM model in the location where you save the dataset before beginning your own TUFLOW model conversion.&#039;&#039;&#039; Rerunning the model is necessary because XPSWMM will write TUFLOW files during its preprocessing, subsequently defining the correct file path information (for the location where you saved your files) in the newly written TUFLOW files. We also recommend creating your own TUFLOW model in a different folder from the provided TUFLOW dataset so you can easily compare your model against it.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you do not have access to a XPSWMM license and the XPSWMM Application, please refer to the &amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM_Troubleshooting#Model_Conversion_Without_a_XPSWMM_License |XPSWMM to TUFLOW SWMM Troubleshooting]]&amp;lt;/u&amp;gt; page. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= XPSWMM to TUFLOW Model Conversion =&lt;br /&gt;
== Export Data From XPSWMM Model == &lt;br /&gt;
&#039;&#039;&#039;Digital Terrain Model (DTM) Data&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
XPSWMM reads its 2D DTM data in one of two ways:&lt;br /&gt;
* The DTM data can be directly specified in the &#039;2D Model Settings&#039;, or &lt;br /&gt;
* The DTM data can be internally processed by XPSWMM using its terrain tools and DTM builder. &lt;br /&gt;
Depending on which method is applied to your XPSWMM model, the steps required to will vary. Review which method is used:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Open your existing model in XPSWMM.&lt;br /&gt;
&amp;lt;li&amp;gt; In the top dropdown menu options, go to Configuration &amp;gt; Job Control &amp;gt; 2D Model Settings. This will open a dialog. &lt;br /&gt;
&amp;lt;li&amp;gt; Under &#039;2D Hydraulics Job Control&#039;, select &#039;Surface &amp;amp; Sampling&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt; Review the options in the &#039;Surface&#039; section:&lt;br /&gt;
:* If &#039;Use DTM&#039; is selected: Continue to the section below (&amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM#Export_DTM_Data_from_XPSWMM |Export DTM Data from XPSWMM]]&amp;lt;/u&amp;gt;) and complete the steps.&lt;br /&gt;
:* If &#039;Use Grid File for Topography&#039; is selected and a &#039;Grid file&#039; is specified, the steps outlined in the &#039;Export DTM Data From XPSWMM&#039; section can be skipped. Go to the &amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM#Export_XPX_Data_From_XPSWMM|Export XPX Data From XPSWMM]]&amp;lt;/u&amp;gt; section.&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If you have a .tif elevation file, you can continue to the &amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM#Export_XPX_Data_From_XPSWMM|Export XPX Data From XPSWMM]]&amp;lt;/u&amp;gt; section. The conversion process will be identical however, once converted, you will have to create the &#039;&#039;&#039;TUFLOW\model\grid&#039;&#039;&#039; folder manually and copy the .tif file into it. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_XPtoTUFLOW_Export_Data_01b.mp4|width=1350}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Export DTM Data From XPSWMM ===&lt;br /&gt;
If &#039;Use DTM&#039; was selected, XPSWMM preprocesses its Digital Terrain Model (DTM) into a binary XPTIN elevation dataset for inclusion in the TUFLOW model. XPTIN is a binary format that can&#039;t readily be used in GIS software. For this reason, the following steps outline how to obtain a DTM dataset in a GIS friendly form.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the XPSWMM Layers panel, under &#039;Topography&#039;, right click on &#039;&#039;&#039;DTM&#039;&#039;&#039; and select &#039;Export DTM Data&#039;. &lt;br /&gt;
:* Input TIN File: Select the relevant XPSWMM Input TIN file. &lt;br /&gt;
:* Output File Format: &#039;ASCII Grid File Format&#039;.&lt;br /&gt;
:* Cell Size Value: Choose a suitable DTM resolution. This resolution should be finer than the hydraulic model resolution. Typically, a DTM resolution is 1/5th to 1/10th of the hydraulic model 2D cell size is common (1 in the example dataset).&lt;br /&gt;
&#039;&#039;Note: XPSWMM requires an integer cell size value for this export step. For example, Cell Size Values of 1, 2, 3, 4, 5 ... are suitable. The XPSWMM export will not function if you specify a decimal cell size value (eg. 0.5, 2.5, etc.).&#039;&#039;  &lt;br /&gt;
&amp;lt;li&amp;gt; Click &#039;Export&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Save the file under an appropriate name (e.g. &#039;&#039;&#039;1D2D_Urban_Grid.asc&#039;&#039;&#039;) to the folder where XPSWMM writes the .tcf during its simulation preprocessing. By default, this is the &#039;&#039;&#039;2D\Data&#039;&#039;&#039; folder. &amp;lt;br&amp;gt;&lt;br /&gt;
If this folder does not exist, either:&lt;br /&gt;
:* The XPSWMM model has not run, so the TUFLOW control files have not been created by XPSWMM. Run the XPSWMM model (go to Analyze &amp;gt; Solve... in top dropdown menu options).&lt;br /&gt;
:* Non-default output settings have been specified in XPSWMM. To determine the output location, in the top dropdown menu options, go to Configuration &amp;gt; Job Control &amp;gt; 2D Model Settings &amp;gt; Folder Options. Ensure the following &#039;Folder Locations&#039; are selected.&lt;br /&gt;
::[[File: XPSWMM_to_TUFLOW_2DJobControl_FolderOptions_Dialog_01e.png]]&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the top dropdown menu options, navigate to  Configuration &amp;gt; Job Control &amp;gt; 2D Model Settings. This will open a dialog, under &#039;2D Hydraulics Job Control&#039;, select &#039;Surface &amp;amp; Sampling&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Tick on &#039;Use grid file for topography&#039; and select &#039;...&#039; to navigate to the Grid file saved in the &#039;&#039;&#039;2D\Data&#039;&#039;&#039; folder. This file will be read directly into TUFLOW. &lt;br /&gt;
&amp;lt;li&amp;gt; Click &#039;OK&#039; to save the settings. &lt;br /&gt;
&amp;lt;li&amp;gt; Run the XPSWMM model to rewrite the TUFLOW files (including the new linkage to the DTM dataset) to the Data folder (go to Analyze &amp;gt; Solve... in top dropdown menu options).&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_XPtoTUFLOW_Export_Data_02b.mp4|width=1350}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Export XPX Data From XPSWMM ===&lt;br /&gt;
A XPX file is a simple command line file that contains the information needed to create link and node objects. To export this data from the XPSWMM model:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In XPSWMM, in the top dropdown menu options, navigate to File &amp;gt; Import/Export Data &amp;gt; Export XPX Data. This will open a dialog. Leave all options as default and click &#039;Export&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; When prompted, save the file under an appropriate name (eg &#039;&#039;&#039;1D2D_Urban_001.xpx&#039;&#039;&#039;) to the folder where the XPSWMM model is located.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_XPtoTUFLOW_Export_Data_03b.mp4|width=1350}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Convert XPSWMM Model to TUFLOW SWMM ==&lt;br /&gt;
Ensure you have QGIS and have the QGIS TUFLOW Plugin installed:&lt;br /&gt;
*Install QGIS 3.34 or later: &amp;lt;u&amp;gt;[https://www.qgis.org/download/ Latest 64-bit version of QGIS]&amp;lt;/u&amp;gt;. &lt;br /&gt;
*Install the QGIS TUFLOW Plugin by following the instructions, &amp;lt;u&amp;gt;[[TUFLOW_QGIS_Plugin | QGIS TUFLOW Plugin Installation]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
The following steps outline the process of converting a XPSWMM model to TUFLOW SWMM using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Convert_XPSWMM_Model_From_XPX|Convert - XPSWMM model from XPX]]&amp;lt;/u&amp;gt;&#039; processing tool.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Open QGIS and go to Processing &amp;gt; Toolbox from the top dropdown menu options to open the Processing Toolbox.&lt;br /&gt;
&amp;lt;li&amp;gt; Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Convert_XPSWMM_Model_From_XPX|Convert - XPSWMM model from XPX]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:* XPSWMM Exported XPX File: Click &#039;...&#039; and navigate to the exported XPX data (e.g. &#039;&#039;&#039;1D2D_Urban_001.xpx&#039;&#039;&#039;). This should be located in the same folder as the XPSWMM model. &lt;br /&gt;
:* TUFLOW TCF Filename: Click &#039;...&#039; and navigate to the XPSWMM .tcf. This should be located in the &#039;&#039;&#039;2D\Data&#039;&#039;&#039; folder (e.g. &#039;&#039;&#039;2D\Data &amp;gt;&amp;gt; 1D2D_Urban_001.tcf&#039;&#039;&#039;). &lt;br /&gt;
:* SWMM File Prefix: Choose an appropriate prefix for the SWMM files (e.g. &#039;&#039;&#039;1D2D_Urban_swmm&#039;&#039;&#039;).&lt;br /&gt;
:* Output Solution Scheme: &#039;HPC&#039;&lt;br /&gt;
:* Output Hardware Specification: &#039;GPU&#039; (if GPU is not available, select &#039;CPU&#039;)&lt;br /&gt;
:* Output Vector Format: &#039;GPKG&#039;&lt;br /&gt;
:* Output Raster Format: &#039;GTIFF&#039;&lt;br /&gt;
:* Output Profile: Any option can be used. &#039;ALL IN ONE&#039; is used in this example for model design consistency with the &amp;lt;u&amp;gt;[[Tutorial_Introduction | TUFLOW SWMM Tutorials]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
:* Event name if no global storms: Choose an appropriate event name if applicable (100yr in the example dataset). &lt;br /&gt;
:* BC width for created 1D/2D connections (HX/SX): This value should be approximately 2 times the width of the hydraulic model 2D cell size (10 in the example dataset).&lt;br /&gt;
:* BC offset distance for created 1D/2D connections (HX/SX): Distance from the channel endpoint to the midpoint of the BC line (2 in the example dataset).&lt;br /&gt;
:* Output Folder: Click &#039;...&#039; and navigate to an appropriate location to save your TUFLOW model. In this location, create a new folder called &#039;&#039;&#039;TUFLOW&#039;&#039;&#039; and select it.&lt;br /&gt;
:* Output CRS: Select an appropriate Coordinate Reference System (CRS) for the model. For the demonstration model, the CRS is &#039;EPSG:32760 - WGS 84 / UTM zone 60S&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Click &#039;Run&#039;. Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_XPtoTUFLOW_Convert_01c.mp4|width=1350}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Inspect the output of the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Convert_XPSWMM_Model_From_XPX|Convert - XPSWMM model from XPX]]&amp;lt;/u&amp;gt;&#039; processing tool and load the TUFLOW model into QGIS:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In Windows File Explorer, inspect the files output by the processing tool. In particular:&lt;br /&gt;
* The &#039;&#039;&#039;TUFLOW\bc_dbase&#039;&#039;&#039; folder contains the BC Database which will contain any curves used in BC conditions, for easy extending to other events.&lt;br /&gt;
* The &#039;&#039;&#039;TUFLOW\model&#039;&#039;&#039; folder contains the TUFLOW SWMM Control File (TSCF) which holds all commands specific to SWMM, including links to the converted SWMM INP file. &lt;br /&gt;
* The &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder contains a GeoPackage database (&#039;&#039;&#039;*_convert_messages.gpkg&#039;&#039;&#039;). This GeoPackage contains locations and descriptions of any errors or warnings that occurred during the conversion process. &lt;br /&gt;
: &#039;&#039;&#039;Note:&#039;&#039;&#039; Conversion messages are addressed in further detail here &amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM_Troubleshooting#Common_Conversion_Issues |XPSWMM to TUFLOW SWMM Troubleshooting]]&amp;lt;/u&amp;gt;. &lt;br /&gt;
* The &#039;&#039;&#039;TUFLOW\runs&#039;&#039;&#039; folder contains the TCF. If event(s) are specified, the TCF filename with have event placeholder(s), i.e. &#039;_~e1~_~e2~_&#039; (e.g. &#039;&#039;&#039;1D2D_Urban_001_~e1~.tcf&#039;&#039;&#039;). Again, if event(s) are used, this folder also contains the TUFLOW Event File (TEF) with the event(s) specified. &amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_XPtoTUFLOW_Convert_02b.mp4|width=800}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Open QGIS, and click on the ‘Load TUFLOW Layers from TCF’ symbol from the QGIS TUFLOW Plugin toolbar.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: Tuflow_plugin_load_tcf_layers.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Navigate to the location of the TUFLOW model and go to the &#039;&#039;&#039;TUFLOW\runs&#039;&#039;&#039; folder. Select the TCF.&lt;br /&gt;
&amp;lt;li&amp;gt; In the Load Layers window, select:&lt;br /&gt;
* Ordering Options: Alphabetical&lt;br /&gt;
* Grouping Options: Group by control file&lt;br /&gt;
* Raster Load Options: Load Normally &lt;br /&gt;
&amp;lt;li&amp;gt; Click ‘Open’ and ‘OK’.&lt;br /&gt;
&amp;lt;li&amp;gt; Change the symbology of the DTM dataset:&lt;br /&gt;
* In the QGIS Layers panel, right click on the DTM Grid file and select &#039;Properties&#039;.&lt;br /&gt;
* In the Symbology tab, under &#039;Band Rendering&#039;, set the &#039;Render type&#039; to &#039;Hillshade&#039; and the &#039;Z Factor&#039; to 3.&lt;br /&gt;
&amp;lt;li&amp;gt; Inspect the output GIS layers.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_XPtoTUFLOW_Convert_03b.mp4|width=1350}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Recommended Additional Conversion Steps == &lt;br /&gt;
While the bulk of the XPSWMM to TUFLOW SWMM model conversion is automated by the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Convert_XPSWMM_Model_From_XPX|Convert - XPSWMM model from XPX]]&amp;lt;/u&amp;gt;&#039; processing tool, some required or recommended conventions must be implemented/updated manually. Therefore, it is highly recommended to complete the additional conversion steps: &amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM_Recommended_Additional_Conversion_Steps|Recommended Additional Conversion Steps]]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt; &lt;br /&gt;
These steps can help improve model stability and they may also be helpful to address any messages that occurred when using the conversion tool. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TUFLOW Simulation Execution ==&lt;br /&gt;
Set up a simple batch file (.bat) to run TUFLOW. This approach calls the TUFLOW executable file (.exe) and runs the TCF file.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new text file in the &#039;&#039;&#039;TUFLOW\runs&#039;&#039;&#039; folder and save as &#039;&#039;&#039;_run_HPC.bat&#039;&#039;&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;&#039;&#039;_run_HPC.bat&#039;&#039;&#039; in a text editor and include a file path to the TUFLOW executable and the TCF name: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;set &amp;lt;/font&amp;gt;exe&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;=&amp;lt;/font&amp;gt;&amp;quot;..\..\exe\2023-03-AD\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;set &amp;lt;/font&amp;gt;run&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;=&amp;lt;/font&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;%exe%&amp;lt;/font&amp;gt; -b&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;%run%&amp;lt;/font&amp;gt; -e1 100yr 1D2D_Urban_001_~e1~.tcf&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; A relative path is used for the executable and the TCF, full file path can also be used.&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in Windows File Explorer to run the simulation. This will open the TUFLOW Console Window and the simulation should be executed. &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TUFLOW simulations can be executed via numerous ways. A comprehensive summary of the most commonly used approaches is documented in the &amp;lt;u&amp;gt;[[Running_TUFLOW | Running TUFLOW]]&amp;lt;/u&amp;gt; Wiki page.&lt;br /&gt;
&lt;br /&gt;
=== Troubleshooting ===&lt;br /&gt;
Did your TUFLOW SWMM model fail to run successfully? If so, here is a link to a troubleshooting guide: &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Troubleshooting | TUFLOW SWMM Troubleshooting]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= TUFLOW SWMM Result Viewing =&lt;br /&gt;
Are you familiar with loading and viewing TUFLOW results in QGIS? If not, we strongly recommend self-registering and completing our free eLearning: &lt;br /&gt;
&amp;lt;u&amp;gt;[https://www.tuflow.com/training/training-course-catalogue/tt001-e-introduction-to-qgis-for-tuflow-elearning/ Introduction to QGIS for TUFLOW]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Our &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_Introduction | TUFLOW SWMM Tutorials]]&amp;lt;/u&amp;gt; also demonstrate working with TUFLOW SWMM results.&lt;br /&gt;
&lt;br /&gt;
= Recommended Further Reading =&lt;br /&gt;
For users who wish to get a better understanding of either 2D TUFLOW or 1D EPA SWMM, the following resources may be of use:&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;TUFLOW&#039;&#039;&#039;: &amp;lt;u&amp;gt;[https://www.tuflow.com www.tuflow.com]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://www.tuflow.com/downloads/#tuflow TUFLOW User Manual]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/ TUFLOW 2023-03-AD release notes]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[[Tutorial_Introduction#Tutorial_Modules | TUFLOW Tutorial Models]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;EPA SWMM&#039;&#039;&#039;: &amp;lt;u&amp;gt;[https://www.epa.gov/water-research/storm-water-management-model-swmm www.epa.gov]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume1_Hydrology_P100NYRA.pdf SWMM5 Reference Manual - Volume 1 (Hydrology)]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM5 Reference Manual - Volume 2 (Hydraulics) ]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydraulics_Addendum-20220210mas2wr.pdf  SWMM5 Reference Manual - Volume 2 (Hydraulics Addendum) ]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume3_Water_Quality_P100P2NY.pdf  SWMM5 Reference Manual - Volume 3 (Water Quality) ]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/swmm-users-manual-version-5.2.pdf EPA SWMM5 User&#039;s Manual]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Contact=&lt;br /&gt;
For comments, requests and feedback contact &amp;lt;u&amp;gt;[mailto:support@tuflow.com support@tuflow.com]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Wiki Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M04&amp;diff=45191</id>
		<title>TUFLOW SWMM Tutorial M04</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M04&amp;diff=45191"/>
		<updated>2025-10-23T06:18:21Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
This tutorial, Module 4 of the TUFLOW SWMM tutorial dataset will demonstrate TUFLOW&#039;s in-built event management functionality. This powerful functionality runs multiple event combinations (e.g. magnitude, duration, temporal patterns, climate change) using a single set of control files, rather than creating a new set of control files for every event simulation. This tutorial demonstrates how event management can be used on a smaller scale, running only 6 models.&amp;lt;br&amp;gt;&lt;br /&gt;
The real power of event management is seen when running a model of a much greater size. For example, without implementing event management, a project requiring simulation of the following event combinations would require 144 TCF and bc_dbase files:&lt;br /&gt;
:*6 x Event Magnitude:	01%, 2%, 5%, 10%, 20% and 50% Annual Exceedance Probability (AEP)&lt;br /&gt;
:*8 x Event Duration:	1, 2, 3, 6, 9, 12, 18 and 24 hour storm&lt;br /&gt;
:*3 x Climate Change Planning Horizon:	current climate, 2050, 2100&lt;br /&gt;
Using predefined naming conventions, with TUFLOW&#039;s event management functionality, all the events can be executed from a single TCF and bc_dbase file!  &lt;br /&gt;
&lt;br /&gt;
This feature of TUFLOW makes management of the model files easier, ensures consistency between the simulations and improves project quality control by reducing the likelihood of human error associated with incorrect file referencing. &amp;lt;br&amp;gt;  &lt;br /&gt;
&lt;br /&gt;
TUFLOW SWMM Tutorial Module 4 builds from the model created in &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M03|TUFLOW SWMM Tutorial Module 3]]&amp;lt;/u&amp;gt;. The completed TUFLOW SWMM Module 3 model is provided in the &#039;&#039;&#039;&#039;&#039;TUFLOW_SWMM_Module_04\TUFLOW&#039;&#039;&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. If you are not already familiar with TUFLOW SWMM linking, we recommend completing TUFLOW SWMM Modules 1, 2 and 3 prior to starting this tutorial. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
TUFLOW&#039;s automated event management operates by introducing wildcard referencing into the boundary condition database.&amp;lt;br&amp;gt;&lt;br /&gt;
A new control file, called the &#039;TUFLOW Event File&#039; (TEF) is added. It lists all event titles that are applied to the wildcard character in the boundary condition database. It also lists unique commands to associate with the specific events.&amp;lt;br&amp;gt;&lt;br /&gt;
Models are executed using a batch file, with the event specifically listed as a variable in the batch file syntax.&lt;br /&gt;
&lt;br /&gt;
This tutorial example will upgrade our single simulation model to run six event simulations. The simulations will cater for three Annual Exceedance Probability (AEP) event magnitudes:  5%, 2% and 1% AEP. In Average Recurrence Interval (ARI) terminology, this translates to the 1 in 20, 50 and 100 year ARI events. These three design events will be simulated for two event storm durations: 1 and 2 hours.&amp;lt;br&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
=== TUFLOW Boundary Condition Database (bc_dbase) ===&lt;br /&gt;
The first task when upgrading a model to include Event Management functionality is to decide on a naming convention for the event wildcard characters to be used in the bc_dbase.csv.&lt;br /&gt;
*Event Magnitude: &#039;&#039;&#039;AEP&#039;&#039;&#039;&lt;br /&gt;
*Event Duration: &#039;&#039;&#039;DUR&#039;&#039;&#039;&lt;br /&gt;
Update the bc_dbase with event magnitude and event duration wildcard characters. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_04\Tutorial_Data&#039;&#039;&#039; folder. Copy and paste the following files to the &#039;&#039;&#039;TUFLOW_SWMM_Module_04\TUFLOW\bc_dbase&#039;&#039;&#039; folder. These files contain the inflows and rainfall for each event magnitude and duration. &lt;br /&gt;
:*&#039;&#039;&#039;TS04_inflow_05p1hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_inflow_05p2hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_inflow_02p1hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_inflow_02p2hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_inflow_01p1hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_inflow_01p2hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_rainfall_05p1hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_rainfall_05p2hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_rainfall_02p1hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_rainfall_02p2hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_rainfall_01p1hr.csv&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;TS04_rainfall_01p2hr.csv&#039;&#039;&#039; &amp;lt;br&amp;gt;&lt;br /&gt;
The files with &#039;inflow&#039; in their name are flow hydrograph boundary conditions sourced from an external hydrology model, such as HEC-HMS, RORB, URBS, WBNM etc. &amp;lt;br&amp;gt;&lt;br /&gt;
The files with &#039;rainfall&#039; in their name are rainfall depth hyetographs used to define rainfall timeseries in the SWMM urban hydrology section of the model.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of the &#039;&#039;&#039;bc_dbase_TS03_001.csv&#039;&#039;&#039; as &#039;&#039;&#039;bc_dbase_TS04_001.csv&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file and make the following updates to the &#039;Source&#039; column. The &#039;AEP&#039; and &#039;DUR&#039; wildcards must be between the special character &#039;~&#039; to function as a variable. Note, columns E to I are to remain blank. The final &#039;&#039;&#039;bc_dbase_TS04_001.csv&#039;&#039;&#039; should look like this: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:SWMM_M04_event_bcdbase_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save &#039;&#039;&#039;bc_dbase_TS04_001.csv&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS4_Sim_Control_01b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Event File (TEF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_04\Tutorial_Data&#039;&#039;&#039; folder. Copy the &#039;&#039;&#039;TS04_Event_File.tef&#039;&#039;&#039; to the &#039;&#039;&#039;TUFLOW_SWMM_Module_04\TUFLOW\runs&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt;Open the TEF in a Text Editor (Notepad++ is recommended). There are three event magnitudes and two event durations listed:&lt;br /&gt;
:*Event Magnitudes: 5% , 2% and 1% AEP&lt;br /&gt;
:*Event Durations: 1hr and 2hrs&lt;br /&gt;
&amp;lt;li&amp;gt;The event specific commands are contained between the &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Define Event&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; and &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;End Define&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; commands. &lt;br /&gt;
&amp;lt;li&amp;gt;The &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Event Source&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; command is linked to the bc_dbase file (&#039;&#039;&#039;bc_dbase_TS04_001.csv&#039;&#039;&#039;). In the below examples, any occurrence of &#039;~AEP~&#039; in &#039;&#039;&#039;bc_dbase_TS04_001.csv&#039;&#039;&#039; will be replaced with &#039;05p&#039; and any occurrence of &#039;~DUR~&#039; in &#039;&#039;&#039;bc_dbase_TS04_001.csv&#039;&#039;&#039; will be replaced with &#039;1hr&#039;. Also, when the 1 hour event is called the simulation, the end time will be set to 2 hours (instead of 3 hours, as per the other simulations). &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! EVENT MAGNITUDES&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Define Event&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;05p&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;   BC Event Source &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ~AEP~ | 05p&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;End Define&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! EVENT DURATIONS&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Define Event&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;1hr&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;   BC Event Source &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ~DUR~ | 1hr&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
    &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;   End Time &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 2&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;End Define&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; When TUFLOW runs a simulation, it reads all of the defined events in the TEF, though only uses the event variables specified in the batch file. We will create a compatible batch file shortly.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS4_Sim_Control_02c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Control File (TCF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS03_5m_001.tcf&#039;&#039;&#039; in a Text Editor (Notepad++ is recommended). Save the file as &#039;&#039;&#039;TS04_5m_~e1~_~e2~_001.tcf&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_04\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Make the following reference update:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\bc_dbase\bc_dbase_TS04_001.csv&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the Boundary Conditions Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following commands to reference the TEF at the end of the TCF:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! EVENTS&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Event File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TS04_Event_File.tef&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Event File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
The location of this command in the TCF is important. If there are any commands associated with an event which overwrite other existing commands (such as &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;End Time&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;==&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;), the TEF file needs to be processed last for it to take precedence over other commands fulfilling the same purpose. Referencing this file in the last line in the TCF ensures this order of operation occurs as intended.&amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Save the TCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS4_Sim_Control_03c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Running the Simulation =&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;_run_TS03_HPC.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TS04_HPC.bat&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_04\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the &#039;&#039;&#039;TS04_5m_~e1~_~e2~_001.tcf&#039;&#039;&#039; and include event switches (-e1, -e2) defining event magnitude and event duration:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;exe&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2023-03-AF\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; %exe%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 05p -e2 1hr TS04_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 05p -e2 2hr TS04_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 02p -e2 1hr TS04_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 02p -e2 2hr TS04_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 01p -e2 1hr TS04_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e1 01p -e2 2hr TS04_5m_~e1~_~e2~_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in Windows File Explorer to run the simulation.&amp;lt;br&amp;gt;&lt;br /&gt;
If the model simulation doesn&#039;t run, here is a link to some common &amp;lt;u&amp;gt;[[Tutorial_Troubleshooting_QGIS | Trouble Shooting]]&amp;lt;/u&amp;gt; advice.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS4_Run_Sim_01c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Troubleshooting ==&lt;br /&gt;
Did your TUFLOW SWMM model fail to run successfully? If so, here is a link to a troubleshooting guide: &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Troubleshooting | TUFLOW SWMM Troubleshooting]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Advanced Looping Batch File (Optional)=&lt;br /&gt;
Looping batch files are a powerful tool to enable high volume simulation management with the least amount syntax, and subsequently manual effort. For example, the following looped batch file executed 1440 simulation using 15 lines of syntax!&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:SWMM_M04_advanced_looping_batch_01c.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
We will convert our sequential formatted batch file to a looped format:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;_run_TS04_HPC.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TS04_HPC_loop.bat&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_04\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following commands. Indentation is important in batch files, insert tabs to match the below spacing:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;echo &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;off&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;set &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;exe&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2023-03-AF\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;set &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%exe%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;set&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; AEP&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;05p 02p 01p&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;set&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; DUR&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;1hr 2hr&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;for &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%%a&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; in &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;(&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%AEP%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;)&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; do &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;(&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;	for &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%%b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; in &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;(&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%DUR%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;)&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; do &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;( &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&amp;lt;ol&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;	echo &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Running &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%%a %%b &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
	&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; %run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;-e1 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%%a&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -e2 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%%b &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TS04_5m_~e1~_~e2~_001.tcf&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;/ol&amp;gt;)&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;)&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The &#039;AEP&#039; and &#039;DUR&#039; are user defined batch file variables. Projects may use different variable names. The &#039;AEP&#039; refers to an event magnitude (Annual Exceedance Probability) and &#039;DUR&#039; refers to an event duration.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in Windows File Explorer to run the simulation.&lt;br /&gt;
If the model simulation doesn&#039;t run, here is a link to some common &amp;lt;u&amp;gt;[[Tutorial_Troubleshooting_QGIS | Trouble Shooting]]&amp;lt;/u&amp;gt; advice.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS4_Run_Sim_02b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Check and Result Files =&lt;br /&gt;
When the TUFLOW models were executed via the batch file, the names of check and result files should have been updated to include the event variables from the simulation. For example:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;60%&amp;quot; style=&amp;quot;text-align:center&amp;quot;&lt;br /&gt;
!style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| TCF &lt;br /&gt;
!style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Event 1 (-e1) &lt;br /&gt;
!style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Event 2 (-e2)&lt;br /&gt;
!style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Check and Result filename &lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;6&amp;quot;|TS04_5m_&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&#039;&#039;&#039;~e1~_~e2~&#039;&#039;&#039;&amp;lt;/font&amp;gt;_001.tcf&lt;br /&gt;
| 05p || 1hr || TS04_5m_&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&#039;&#039;&#039;05p_1hr&#039;&#039;&#039;&amp;lt;/font&amp;gt;_001&lt;br /&gt;
|-&lt;br /&gt;
| 05p || 2hr || TS04_5m_&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&#039;&#039;&#039;05p_2hr&#039;&#039;&#039;&amp;lt;/font&amp;gt;_001&lt;br /&gt;
|-&lt;br /&gt;
| 02p || 1hr || TS04_5m_&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&#039;&#039;&#039;02p_1hr&#039;&#039;&#039;&amp;lt;/font&amp;gt;_001&lt;br /&gt;
|-&lt;br /&gt;
| 02p || 2hr || TS04_5m_&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&#039;&#039;&#039;02p_2hr&#039;&#039;&#039;&amp;lt;/font&amp;gt;_001&lt;br /&gt;
|-&lt;br /&gt;
| 01p || 1hr || TS04_5m_&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&#039;&#039;&#039;01p_1hr&#039;&#039;&#039;&amp;lt;/font&amp;gt;_001&lt;br /&gt;
|-&lt;br /&gt;
| 01p || 2hr || TS04_5m_&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&#039;&#039;&#039;01p_2hr&#039;&#039;&#039;&amp;lt;/font&amp;gt;_001&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
==Check Sucessful Completion of Multiple Simulations==&lt;br /&gt;
Open &#039;&#039;&#039;_TUFLOW Simulations.log&#039;&#039;&#039; from the &#039;&#039;&#039;TUFLOW_SWMM_Module_04\TUFLOW\runs&#039;&#039;&#039; folder. Confirm &#039;Finished&#039; is tagged next to the entry for each of the six simulations we executed. This log confirms the model simulation was completed.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS4_Results_01b.mp4|width=1350}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Viewing Multiple Simulation Results==&lt;br /&gt;
===Load Results===&lt;br /&gt;
Open the simulation results in QGIS. When loading multiple simulations which include 1D results (all with the same object IDs), a two step load workflow is recommended to avoid filling the QGIS layer panel with duplicate 1D object entries.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Open TUFLOW Viewer from the TUFLOW Plugin toolbar.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_tuflow_viewer.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Open 1D and 2D results: Select File &amp;gt; Load Results. Navigate to the &#039;&#039;&#039;TUFLOW\runs&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS04_5m_~e1~_~e2~_001.tcf&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; When asked which simulation to load, select &#039;&#039;&#039;TS04_5m_01p_1hr_001&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; When asked &#039;Do you want to open result GIS layer?&#039;, select &#039;Yes&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt; After &#039;&#039;&#039;TS04_5m_01p_1hr_001&#039;&#039;&#039; has loaded, open the remaining result files:&lt;br /&gt;
* Select File &amp;gt; Load Results. Navigate to the &#039;&#039;&#039;TUFLOW\runs&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS04_5m_~e1~_~e2~_001.tcf&#039;&#039;&#039;.&lt;br /&gt;
* When asked which simulation to load, select all remaining results (except &#039;&#039;&#039;TS04_5m_01p_1hr_001&#039;&#039;&#039;).&lt;br /&gt;
* When asked &#039;Do you want to open result GIS layer?&#039;, select &#039;No&#039;.  The results will still be loaded, though will all be associated with the GIS objects loaded for the &#039;&#039;&#039;TS04_5m_01p_1hr_001&#039;&#039;&#039; simulation. &lt;br /&gt;
&amp;lt;li&amp;gt; In the QGIS Layers Panel, move the GIS vector (line and point) layers to the top of the list. This will ensure these layers are displayed above all mesh result layers in the project. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS4_Results_02c.mp4|width=1350}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Mesh Results (Map Output)===&lt;br /&gt;
Inspect the results for all events.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Zoom in to the pipe network area.&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the scalar dataset &#039;Depth&#039; under the &#039;Result Type&#039; in the TUFLOW Viewer &#039;Map Outputs&#039; list. Toggle on the maximum depth output by clicking the [[File: max_output_icon.png]] symbol.&lt;br /&gt;
&amp;lt;li&amp;gt;Click through the results in the &#039;Open Results&#039; list to observe the different max depth values.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS4_Results_03c.mp4|width=1350}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Vector Results (Pipe Network Output)===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click &#039;&#039;&#039;TS04_5m_01p_1hr_001_swmm_ts_L&#039;&#039;&#039;, and select &#039;Show Labels&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Use the &#039;Select Features&#039; tool to highlight &#039;Pipe 3&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;In the &#039;Open Results&#039; list, select all 1hr duration event results (hold Ctrl to select multiple). &lt;br /&gt;
&amp;lt;li&amp;gt;Click on a scalar dataset &#039;Flow&#039; under the &#039;Result Type&#039; in the TUFLOW Viewer &#039;Time Series&#039; list. &lt;br /&gt;
&amp;lt;li&amp;gt;Try multiple combinations of the simulation results to observe how the different events impacted flow through &#039;Pipe 3&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click the &#039;Refresh Current Plot&#039; [[File: Refreshplotblack.png || 20px]] button to update the plot window after making new selections. &lt;br /&gt;
&amp;lt;li&amp;gt;Click the &#039;Clear Current Plot&#039; [[File: QGIS_Plugin_Icon_ClearPlot.png || 20px]] button to remove all data from the plot window if needed prior to making a new selection.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS4_Results_04c.mp4|width=1350}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion =&lt;br /&gt;
*Automated Event Management functionality was added to the TUFLOW SWMM model.&lt;br /&gt;
*Multiple event simulations were run in sequence from a batch file.&lt;br /&gt;
*Creation of looped batch file was demonstrated for the efficient execution of bulk simulations.&lt;br /&gt;
*Multiple event simulation results were inspected using the QGIS TUFLOW Viewer.&lt;br /&gt;
*For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Other TUFLOW SWMM Tutorials=&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01 | TUFLOW SWMM Module 1]]&amp;lt;/u&amp;gt;  - 1D SWMM Culverts&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 2D TUFLOW Direct Rainfall Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M03 | TUFLOW SWMM Module 3]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M04 | TUFLOW SWMM Module 4]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology: Executing multiple different event simulations from a single model control file.&lt;br /&gt;
*&amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM | XPSWMM to TUFLOW SWMM]]&amp;lt;/u&amp;gt;  - How to convert an XPSWMM model to TUFLOW SWMM.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_SWMM_Tutorial_Introduction#Tutorial_Modules| Back to TUFLOW SWMM Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M03&amp;diff=45190</id>
		<title>TUFLOW SWMM Tutorial M03</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M03&amp;diff=45190"/>
		<updated>2025-10-23T06:17:52Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
This tutorial, Module 3 of the TUFLOW-SWMM tutorial dataset, demonstrates how to add SWMM urban hydrology to a 1D SWMM stormwater pipe network / 2D TUFLOW HPC catchment model. TUFLOW-SWMM Tutorial Module 3 builds from the model created in &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02|TUFLOW SWMM Tutorial Module 2]]&amp;lt;/u&amp;gt;. The completed TUFLOW-SWMM Module 2 model is provided in the &#039;&#039;&#039;&#039;&#039;TUFLOW_SWMM_Module_03\TUFLOW&#039;&#039;&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. If you are not already familiar with TUFLOW-SWMM linking, we recommend completing TUFLOW-SWMM Modules 1 and 2 prior to starting this tutorial. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Project Initialization =&lt;br /&gt;
==QGIS==&lt;br /&gt;
QGIS Version 3.34 or newer, and QGIS TUFLOW Plugin 3.11 or newer are required to access the SWMM Processing Tools described in the following sections. For installation, see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/TUFLOW_QGIS_Plugin Installation of TUFLOW Plugin]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
Define the Coordinate Reference System (CRS), also called ‘Projection’, for the QGIS workspace:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Open QGIS.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Properties… &lt;br /&gt;
&amp;lt;li&amp;gt;In the CRS tab, type ‘WGS 84 / UTM Zone 60S’.&lt;br /&gt;
&amp;lt;li&amp;gt;Select the matching projection in the &#039;Predefined Coordinate Reference Systems&#039; section.&lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Apply’ and ‘OK’.&lt;br /&gt;
&amp;lt;li&amp;gt;Ensure that the projection is set correctly by viewing the bottom right hand corner of the workspace. It should read ‘EPSG:32760’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_01a.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Model==&lt;br /&gt;
===Load and Style TUFLOW Model Files===&lt;br /&gt;
Load in the project GIS layers:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the ‘Load TUFLOW Layers from TCF’ symbol from the TUFLOW Plugin toolbar.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: Tuflow_plugin_load_tcf_layers.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\TUFLOW\runs&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Load Layers window, select:&lt;br /&gt;
* Ordering Options: Alphabetical&lt;br /&gt;
* Grouping Options: Group by control file&lt;br /&gt;
* Raster Load Options: Load Normally &lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Open’ and ‘OK’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Style the TUFLOW layers. Suggested styling steps were provided in &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01#Load_and_Style_TUFLOW_Model_Files|TUFLOW SWMM Tutorial M01]]&amp;lt;/u&amp;gt;. They have not been duplicated here.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW Plugin===&lt;br /&gt;
Next we need to configure the QGIS TUFLOW Plugin settings to link with the project folder where we will build our model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;Configure TUFLOW Project&#039; tool by selecting Plugins &amp;gt; TUFLOW &amp;gt; Editing &amp;gt; Configure / Create TUFLOW Project.&lt;br /&gt;
&amp;lt;li&amp;gt;Set the CRS (Coordinate Reference System) by selecting one of the vector layers associated with the opened model using the drop menu list. For example, &#039;&#039;2d_bc_M01_001_L&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW folder, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_03&#039;&#039;&#039; folder. Click &#039;Select Folder&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW single precision executable file, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;exe\2023-03-AF&#039;&#039;&#039; folder. Select &#039;&#039;&#039;TUFLOW_iSP_w64.exe&#039;&#039;&#039; and click &#039;Open&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;GPKG&#039; as the GIS Format. &lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;TUFLOW Classic / HPC&#039; as the TUFLOW Engine.&lt;br /&gt;
&amp;lt;li&amp;gt;Tick on &#039;Save Default Settings Globally&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TS3_Configure_Project_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Increment TUFLOW GeoPackage File === &lt;br /&gt;
We will now save a copy of &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039; with a new name, &#039;&#039;&#039;TS03_001.gpkg&#039;&#039;&#039;. This project initialization step is recommended so prior model versions from a project are not broken as a result of changes being made to GIS inputs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the &#039;Increment Selected Layer&#039; symbol from the TUFLOW Plugin toolbar. This opens the dialog shown below. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_increment_layer.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
:*Source Layer: Automatically set to the selected layer, &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
:*Output Database: Click &#039;Browse...&#039;. This will automatically open to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder. Set the new output database name to &#039;&#039;&#039;TS03_001.gpkg&#039;&#039;&#039; and click &#039;Save&#039;.&lt;br /&gt;
:*Output Layer Name: This will automatically increment to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;2&#039;&#039;_L&#039;&#039;&#039;. Change the name back to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;1&#039;&#039;_L&#039;&#039;&#039;.&lt;br /&gt;
:*Delete the pre-filled &#039;Incremented Layer&#039; entry in the table. We do not wish to modify the version number associated with the 2d_bc file. This current exercise will not change the version number of any of the GIS layer inputs, it is simply establishing a copy of the existing GeoPackage where future edits will be saved to.&lt;br /&gt;
:*Select &#039;Remove Source Layer from Workspace&#039;.&lt;br /&gt;
:*Select &#039;Increment Layer and Preserve Database&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The GeoPackage database, &#039;&#039;&#039;TS03_001.gpkg&#039;&#039;&#039; will now be in the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\TUFLOW\model\gis&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_Initialization_02b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Increment SWMM GeoPackage File === &lt;br /&gt;
SWMM pipe network junction attributes need to be updated when converting a TUFLOW 2D direct rainfall / SWMM 1D model &amp;lt;u&amp;gt;([[TUFLOW_SWMM_Tutorial_M02|TUFLOW SWMM Tutorial Module 2]]&amp;lt;/u&amp;gt;). into a format that uses SWMM hydrology instead of direct rainfall. Similar to above (incrementing the TUFLOW GeoPackage file), we will increment the SWMM pipe network database name so we do not alter the inputs necessary for &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; to function without issue. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the QGIS Layers Panel, open the &#039;&#039;&#039;TS02_001.tscf&#039;&#039;&#039; group. In the &#039;&#039;&#039;sw02_001.inp&#039;&#039;&#039; group, right click &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Select TUFLOW &amp;gt; SWMM - Increment GeoPackage. This opens the dialog shown below. &lt;br /&gt;
:*Output File: Click the &#039;...&#039;. This will automatically open to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder. Set the output database name to &#039;&#039;&#039;sw03_001.gpkg&#039;&#039;&#039; and click &#039;Save&#039;. &lt;br /&gt;
:*Existing GeoPackage Layers: &#039;Unload -- do not move&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Select &#039;OK&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; The tool will automatically load &#039;&#039;&#039;sw03_001.gpkg&#039;&#039;&#039; into the QGIS workspace and remove &#039;&#039;&#039;sw02_001.inp&#039;&#039;&#039; from the QGIS workspace.&lt;br /&gt;
&amp;lt;li&amp;gt; In the QGIS Layers Panel, move &#039;&#039;&#039;sw03_001.gpkg&#039;&#039;&#039; to the top of the list. This will ensure the data within this database file is displayed above all other layers in the project. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_Initialization_03b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Save QGIS Project Workspace===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Save As.&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_03&#039;&#039;&#039; folder and type &#039;&#039;&#039;SWMM_M03&#039;&#039;&#039; as the filename with the extension .qgz.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= GIS Inputs =&lt;br /&gt;
==Update SWMM GeoPackage Spatial Database== &lt;br /&gt;
In previous tutorials we have created new SWMM GeoPackage databases for our new entries. This tutorial will demonstrate a different update approach. Instead of creating a new SWMM GeoPackage database, we will update the existing database, &#039;&#039;&#039;sw03_001.gpkg&#039;&#039;&#039; by adding new SWMM Sections for the hydrology elements we will be incorporating into the model in this tutorial.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Processing &amp;gt; Toolbox from the top dropdown menu options to open the Processing Toolbox.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Add_Sections |GeoPackage - Add sections]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:*GPKG filename modify: Click the ... and navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\TUFLOW\model\swmm&#039;&#039;&#039; folder. Select &#039;&#039;&#039;sw03_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
:*CRS for GeoPackage: Click the drop down menu and select &#039;Project CRS: EPSG:32760 - WGS 84 / UTM zone 60S&#039;.&lt;br /&gt;
:*SWMM Sections to add: Click the ..., and tick on:&lt;br /&gt;
::*&#039;&#039;&#039;Hydrology--Raingages&#039;&#039;&#039;&lt;br /&gt;
::*&#039;&#039;&#039;Hydrology--Subcatchments&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_SWMM_Inputs_01b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The above steps have added the new sections to the SWMM GeoPackage database, &#039;&#039;&#039;sw03_001.gpkg&#039;&#039;&#039;. However, the new sections are not currently displayed in the QGIS Layers Panel. We need to close the database and reopen it to view the changes.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click &#039;&#039;&#039;sw03_001&#039;&#039;&#039; and select &#039;Remove Group...&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and drag and drop &#039;&#039;&#039;sw03_001.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;, then select &#039;Add Layers&#039; to open all vectors within &#039;&#039;&#039;sw03_001.gpkg&#039;&#039;&#039;. By default, all items in the available list should have been selected. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, move &#039;&#039;&#039;sw03_001.gpkg&#039;&#039;&#039; to the top of the list. This will ensure the data within this database file is displayed above all other layers in the project when we are making edits. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, within the &#039;&#039;&#039;sw03_001&#039;&#039;&#039; group, move &#039;&#039;&#039;Hydrology--Subcatchments&#039;&#039;&#039; to the bottom. This will ensure that the other data within this database can be seen. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_SWMM_Inputs_02b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== SWMM GIS Data Entry ==&lt;br /&gt;
&lt;br /&gt;
A GeoPackage called &#039;&#039;&#039;Urban_Hydrology.gpkg&#039;&#039;&#039; is provided in the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\Tutorial_Data&#039;&#039;&#039; folder. It contains one SWMM input layer and one TUFLOW input layer: &lt;br /&gt;
:*&#039;&#039;&#039;SWMM_Subcatchments&#039;&#039;&#039;: defines the 1D SWMM urban hydrology subcatchment delineation and associated parameters.&lt;br /&gt;
:*&#039;&#039;&#039;TUFLOW_Subcatchments&#039;&#039;&#039;: defines the remaining 2D TUFLOW catchment hydrology subcatchment delineation.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To populate the SWMM GeoPackage created in the previous section:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\Tutorial_Data&#039;&#039;&#039; folder. Drag and drop the &#039;&#039;&#039;Urban_Hydrology.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS select &#039;&#039;&#039;SWMM_Subcatchments&#039;&#039;&#039;. Click &#039;Add Layers&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click on the &#039;&#039;&#039;SWMM_Subcatchments&#039;&#039;&#039; layer and select &#039;Zoom to Layer(s)&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Use the &#039;Select Features&#039; tool to highlight all items included in &#039;&#039;&#039;SWMM_Subcatchments&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and &#039;Copy Features&#039; from the drop down menu. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) the &#039;&#039;&#039;sw03_001 &amp;gt;&amp;gt; Hydrology--Subcatchments&#039;&#039;&#039; layer. &lt;br /&gt;
&amp;lt;li&amp;gt;Make the &#039;&#039;&#039;sw03_001 &amp;gt;&amp;gt; Hydrology--Subcatchments&#039;&#039;&#039; layer editable by clicking the &#039;Toggle Editing&#039; symbol [[File:toggle_editing_icon.png|27x27px]].&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and click &#039;Paste Features&#039; from the drop down menu.&lt;br /&gt;
&amp;lt;li&amp;gt;Toggle the editing off to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;Remove &#039;&#039;&#039;Urban_Hydrology&#039;&#039;&#039; from the QGIS Layers Panel.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_SWMM_Inputs_03b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==SWMM GIS Data Updates==&lt;br /&gt;
The following updates are being made to the objects and layers within &#039;&#039;&#039;sw03_001.gpkg&#039;&#039;&#039;. &lt;br /&gt;
&lt;br /&gt;
===Update SWMM Hydrology Raingages===&lt;br /&gt;
The text information within &#039;&#039;&#039;Hydrology--Raingages&#039;&#039;&#039; defines the pluviographs in the catchment. We will link to two different rain gages in this example. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; &#039;Gage&#039; is the American spelling of &#039;Gauge&#039; in Oxford English.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Hydrology--Raingages&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Hydrology--Raingages&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Add Feature&#039; twice. Enter the following attributes (leave all other fields as &#039;&#039;NULL&#039;&#039;):&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;60%&amp;quot;&lt;br /&gt;
!style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Name &lt;br /&gt;
!style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Form &lt;br /&gt;
!style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Intevl &lt;br /&gt;
!style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| SnowCatchDeficiency&lt;br /&gt;
!style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Format &lt;br /&gt;
!style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Tseries &lt;br /&gt;
|-&lt;br /&gt;
| RF_G1 || Volume || 0.1 || 1 || TIMESERIES || RF_FC04 &lt;br /&gt;
|-&lt;br /&gt;
| RF_G2 || Volume || 0.1 || 1 || TIMESERIES || RF_FC07 &lt;br /&gt;
|}&lt;br /&gt;
For a summary of the attributes associated with &#039;&#039;&#039;Hydrology--Raingages&#039;&#039;&#039;, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Raingages TUFLOW 2023-03-AD Release Notes (Table A.11)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume1_Hydrology_P100NYRA.pdf SWMM5 Reference Manual - Volume 1 (Hydrology)]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
Note, the spatial locations where the gage information is applied is covered in the following section.&lt;br /&gt;
&amp;lt;li&amp;gt; Turn off editing and save the information.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_SWMM_Inputs_04b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update SWMM Hydrology Subcatchments===&lt;br /&gt;
The information within &#039;&#039;&#039;Hydrology--Subcatchments&#039;&#039;&#039; defines the subcatchment parameters (including catchment area, width, slope, percent impervious, outlet specification and infiltration details). All required data entries have been pre-filled in the supplied dataset except the &#039;Area&#039; information, which we will determine using QGIS. SWMM requires the hydrology subcatchment area information in hectares.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Hydrology--Subcatchments&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Hydrology--Subcatchments&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Choose &#039;Area&#039; as the target field and type the calculation expression, &#039;area($geometry) / 10000&#039;. &lt;br /&gt;
:* &#039;area($geometry) &#039;: Extracts the area of each region (subcatchment) in &#039;&#039;&#039;Hydrology--Subcatchments&#039;&#039;&#039;.&lt;br /&gt;
:* &#039;/ 10000&#039;: Converts the area values into hectares.&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The projection used in these tutorials is measured in meters. Thus, when QGIS extracts the area from a region, it reports the area in m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;. If using a projection that is measured in feet, QGIS would extract the area in ft&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Update All&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing and save the information.&lt;br /&gt;
&amp;lt;li&amp;gt;Inspect the attribute information within &#039;&#039;&#039;Hydrology--Subcatchments&#039;&#039;&#039; to familiarize yourself with the data. A few demonstration features have been included in the dataset. &lt;br /&gt;
:*Two rainfall gages are linked to the subcatchments. Downstream subcatchments linked to rain gage &#039;RF_G1&#039;. Upstream subcatchments are linked to rain gage &#039;RF_G2&#039;.&lt;br /&gt;
:*Subcatchments &#039;SPit11A&#039; and &#039;SPit11A&#039; are being routed to subcatchment &#039;SPit11C&#039; before entering the SWMM pipe network. All other hydrology subcatchments route directly to a SWMM &#039;&#039;&#039;Node--Junctions&#039;&#039;&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
For a summary of the attributes associated with the layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Subcatchments TUFLOW 2023-03-AD Release Notes (Table A.38)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume1_Hydrology_P100NYRA.pdf SWMM5 Reference Manual - Volume 1 (Hydrology)]&amp;lt;/u&amp;gt;. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_SWMM_Inputs_05b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===SWMM Options===&lt;br /&gt;
SWMM &#039;&#039;&#039;Project--Options&#039;&#039;&#039; defines the SWMM simulation controls, such as hydrology computation timestep. &#039;&#039;&#039;Project--Options&#039;&#039;&#039; are not required in the new GeoPackage database we are creating for this Tutorial. This is because this model will be constructed from multiple SWMM input (INP) files:&lt;br /&gt;
:*&#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; (road culverts).&lt;br /&gt;
:*&#039;&#039;&#039;sw03_001.inp&#039;&#039;&#039; (underground pipe network inputs and SWMM hydrology).&lt;br /&gt;
When TUFLOW processes SWMM inputs, it combines the multiple INP files into one single INP prior to simulation. For this model, the simulation control parameters defined in Module 1 (&#039;&#039;&#039;sw01_001 &amp;gt; Project--Options&#039;&#039;&#039;) will apply. The options relevant to this tutorial that have already been defined in the Module 1 input include:&lt;br /&gt;
:*&#039;&#039;&#039;flow_units&#039;&#039;&#039;: set to metric.&lt;br /&gt;
:*&#039;&#039;&#039;infiltration&#039;&#039;&#039; method: set to Green Ampt.&lt;br /&gt;
We need to change the SWMM hydrology timestep details. Updating this setting in the &#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; does not impact any of the previous tutorial modules, as they did not include any hydrology components. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, open the &#039;&#039;&#039;TS02_001.tscf&#039;&#039;&#039; group and select (left click) &#039;&#039;&#039;sw01_001 &amp;gt;&amp;gt; Project--Options&#039;&#039;&#039; and toggle on editing. &lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Project--Options&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the following hydrology timestep options: &lt;br /&gt;
:*WET_STEP: 00:01:00&lt;br /&gt;
:*DRY_STEP: 00:01:00&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_SWMM_Inputs_06b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Export SWMM INP File ==&lt;br /&gt;
We will now create a new INP file for the pipe network and SWMM urban hydrology inputs and update &#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; to reflect the changes made to the hydrology options above.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click &#039;&#039;&#039;Hydrology--Subcatchments&#039;&#039;&#039; (or any other SWMM layer in the same GeoPackage) and select &#039;TUFLOW&#039; &amp;gt; &#039;SWMM - Export inp file&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This will open the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Write_to_SWMM_inp |GeoPackage - Write to SWMM inp]]&amp;lt;/u&amp;gt;&#039; processing tool, prepopulated with the filename of the layer&#039;s GeoPackage. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This tool can also be activated from the Processing Toolbox. &lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, update the &#039;GeoPackage Input File&#039; parameter. Click &#039;...&#039;, and navigate to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder. Select &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This tool will save the SWMM inp files in the same folder location and with the same name as the GeoPackage input file. In this case, it will save &#039;&#039;&#039;sw03_001.inp&#039;&#039;&#039; and &#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_SWMM_Inputs_07b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW GIS Updates==&lt;br /&gt;
We will be reverting the TUFLOW model back to a configuration that uses inflows from an external hydrology model (as per Module 1), instead of 2D direct rainfall (Module 2), in the areas not covered by SWMM urban hydrology. Instead of reusing the input from Module 1, we will need to use a new TUFLOW source area inflow layer. This will ensure that we do not double count the flow generated over the area now represented by SWMM.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the ‘Import Empty File’ symbol from the TUFLOW plugin toolbar. &amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_import_empty_file.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;2d_sa&#039; from the Empty Type list.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Run ID box write &#039;TS03_001&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Tick the &#039;Regions&#039; Geometry Type.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Spatial Database Options, select &#039;All to one&#039;. Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\TUFLOW\model\gis&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS03_001.gpkg&#039;&#039;&#039;. Click Save and hit &#039;OK&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The &#039;&#039;&#039;2d_sa_TS03_001_R&#039;&#039;&#039; appears in the QGIS Layers Panel.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:TS3_import_empty_2d_sa_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\Tutorial_Data&#039;&#039;&#039; folder. Drag and drop the &#039;&#039;&#039;Urban_Hydrology.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, select &#039;&#039;&#039;TUFLOW_Subcatchments&#039;&#039;&#039;. Click &#039;Add Layers&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) the &#039;&#039;&#039;TUFLOW_Subcatchments&#039;&#039;&#039; layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Use the &#039;Select Features&#039; tool to highlight the four regions included in &#039;&#039;&#039;TUFLOW_Subcatchments&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and &#039;Copy Features&#039; from the drop down menu. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) the &#039;&#039;&#039;2d_sa_TS03_001_R&#039;&#039;&#039; layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Make the &#039;&#039;&#039;2d_sa_TS03_001_R&#039;&#039;&#039; layer editable by clicking the &#039;Toggle Editing&#039; symbol [[File:toggle_editing_icon.png|27x27px]].&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and click &#039;Paste Features&#039; from the drop down menu.&lt;br /&gt;
&amp;lt;li&amp;gt;Toggle off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;Remove &#039;&#039;&#039;Urban_Hydrology.gpkg&#039;&#039;&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
The polygon entry we have updated refers to a new subcatchment name for the region adjacent to the SWMM subcatchments. The new name is &#039;FC06.62&#039;, instead of &#039;FC06&#039;. When we update the TUFLOW Control files we will configure the file references so we are sourcing data from a new flow file obtained from an external hydrology model that has been updated with the reduced catchment area, in recognition of SWMM being used for the flow estimate in the proposed urban development area. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Common hydrology software used in combination with TUFLOW by modelers include: HEC-HMS, RORB, Drains, WBNM, URBS and more.&#039;&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_TUFLOW_Inputs_01b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Boundary Updates==&lt;br /&gt;
As a result of the changes made to the TUFLOW inflows, new TUFLOW Boundary Condition csv files are also needed. Updated files have been provided in the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\Tutorial_Data&#039;&#039;&#039; folder. These files provide the values and model linkages to the new hydrology inflows, which include the &#039;FC06.62&#039; entry.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Copy &#039;&#039;&#039;bc_dbase_TS03_001.csv&#039;&#039;&#039; and &#039;&#039;&#039;TS03_01p2hr.csv&#039;&#039;&#039; from the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\Tutorial_Data&#039;&#039;&#039; folder to the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\TUFLOW\bc_dbase&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_TUFLOW_Boundary_01b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Simulation Control Files=&lt;br /&gt;
To avoid the potential risk of overwriting existing control files accidentally, we will start by saving new control files where we will be making subsequent syntax updates during the following steps.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; in a Text Editor (Notepad++ is recommended). Save the file as &#039;&#039;&#039;TS03_5m_001.tcf&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\TUFLOW\runs&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt;Using the &#039;Open File&#039; function in Notepad++: &lt;br /&gt;
:*Open &#039;&#039;&#039;TS02_001.tbc,&#039;&#039;&#039;  and save the file as &#039;&#039;&#039;TS03_001.tbc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
:*Open &#039;&#039;&#039;TS02_001.tscf,&#039;&#039;&#039;  and save the file as &#039;&#039;&#039;TS03_001.tscf&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW Control File (TCF)===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Edit &#039;&#039;&#039;TS03_5m_001.tcf&#039;&#039;&#039; by making the following reference updates:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Spatial Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\gis\TS03_001.gpkg&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specify the location of the GeoPackage Spatial Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\TS03_001.tbc&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Boundary Condition Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\bc_dbase\bc_dbase_TS03_001.csv&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the Boundary Condition Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SWMM Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\TS03_001.tscf&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the SWMM (1D) Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Add the following command to the &#039;&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;Time Control&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&#039; section. This command is necessary for many TUFLOW-SWMM models, especially when using SWMM hydrology. The 2D timestep dictates the SWMM 1D timestep. Generally, this timestep is adequate for SWMM but in cases where the flows are contained in the 1D, the timestep may become too large for SWMM. This command forces it into the appropriate range. If this command is neglected, some models will experience very high mass errors. The range of timesteps used is reported in the SWMM .rpt file (&#039;&#039;&#039;TS03_5m_001_swmm.rpt&#039;&#039;&#039;) in the &#039;&#039;&#039;TUFLOW\results&#039;&#039;&#039; folder.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Timestep Maximum &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;3&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specifies a maximum timestep of 3 seconds&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Comment out the &#039;Map Cuttoff Depth&#039; command by placing a &#039;!&#039; at the beginning of the line. This command is only necessary for 2D direct rainfall (rain on grid) modelling (SWMM Tutorial 2).&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Map Cutoff Depth == 0.05&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_Sim_Control_01b.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW Boundary Control File (TBC)===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Edit &#039;&#039;&#039;TS03_001.tbc&#039;&#039;&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;Comment out the &#039;Global Rainfall BC&#039; command by placing a &#039;!&#039; at the beginning of the line. This command is only necessary for 2D direct rainfall (rain on grid) modelling (SWMM Tutorial 2).&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Global Rainfall BC == RF_FC04&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following additional command:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SA&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_sa_TS03_001_R &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Reads in 2D source area - Excluding SWMM areas&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_Sim_Control_02c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW SWMM Control File (TSCF)===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Edit &#039;&#039;&#039;TS03_001.tscf&#039;&#039;&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;Replace &amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read SWMM&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\sw02_001.inp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; with the following command:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read SWMM&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\sw03_001.inp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;As we are pushing flows from the subcatchments straight to the pipe network, the water level of the ponded water at the nodes can become much higher than the 2D water levels. The inlet will surcharge but the flow is throttled. The following command will pull water out of the 2D if the 1D ponded water level goes beyond 0.1 m higher than the 2D (not needed for rain on grid simulations). Add the following command:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Maximum Inlet Ponded Depth&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;0.1 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Pull ponded water out of the 1D domain as needed&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read BC Timeseries&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; == &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;RF_FC04 | RF_FC07 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! TUFLOW BC Database / SWMM Rain Gage Linkage&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_Sim_Control_03c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Running the Simulation=&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;_run_TS02_HPC.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TS03_HPC.bat&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the &#039;&#039;&#039;TS03_5m_001.tcf&#039;&#039;&#039; :&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;exe&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2023-03-AF\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; %exe%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TS03_5m_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in Windows File Explorer to run the simulation. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Did your TUFLOW-SWMM model fail to run successfully? If so, here is a link to a troubleshooting guide: &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Troubleshooting | TUFLOW SWMM Troubleshooting]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS3_Run_Sim_01c.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Check Files = &lt;br /&gt;
Review the SWMM INP and simulation report file from the &#039;&#039;&#039;TUFLOW_SWMM_Module_03\TUFLOW\results&#039;&#039;&#039; folder to confirm the new hydrology inputs are being processed correctly:&lt;br /&gt;
* View &#039;&#039;&#039;TS03_5m_001_swmm.inp&#039;&#039;&#039; in a text editor to confirm the combining of the two input INP files has occurred correctly. Also use the QGIS Processing tool, &amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Create_from_SWMM_inp |GeoPackage - Create from SWMM inp ]]&amp;lt;/u&amp;gt;, to view the information in QGIS. &lt;br /&gt;
* View &#039;&#039;&#039;TS03_5m_001_swmm_curves.inp&#039;&#039;&#039; in a text editor to confirm the rainfall time series that has been used by the SWMM hydrology engine matches the input dataset.&lt;br /&gt;
* View &#039;&#039;&#039;TS03_5m_001_swmm.rpt&#039;&#039;&#039; in a text editor to confirm the model computation is healthy in term of mass conservation.&lt;br /&gt;
&lt;br /&gt;
= Results Output =&lt;br /&gt;
Complete the steps outlined in following link to review the simulation results from the TUFLOW SWMM model simulation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M03_Results_QGIS | TUFLOW SWMM Tutorial 03 Results]]&amp;lt;/u&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion =&lt;br /&gt;
*EPA SWMM urban hydrology was added to the model (replacing 2D drect rainfall / rain-on-grid).&lt;br /&gt;
*The 1D SWMM pipe urban pipe network junction attributes were updated to accomodate for the change in model configuration, from 2D direct rainfall to 1D SWMM hydrology.&lt;br /&gt;
*Check and result files associated with the SWMM hydrology modelling were inspected.&lt;br /&gt;
*For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Other TUFLOW SWMM Tutorials=&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01 | TUFLOW SWMM Module 1]]&amp;lt;/u&amp;gt;  - 1D SWMM Culverts&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 2D TUFLOW Direct Rainfall Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M03 | TUFLOW SWMM Module 3]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M04 | TUFLOW SWMM Module 4]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology: Executing multiple different event simulations from a single model control file.&lt;br /&gt;
*&amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM | XPSWMM to TUFLOW SWMM]]&amp;lt;/u&amp;gt;  - How to convert an XPSWMM model to TUFLOW SWMM.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_SWMM_Tutorial_Introduction#Tutorial_Modules| Return to TUFLOW SWMM Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M01&amp;diff=45189</id>
		<title>TUFLOW SWMM Tutorial M01</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M01&amp;diff=45189"/>
		<updated>2025-10-23T06:17:14Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In this module, three culverts are added to represent flow through three separate road embankments. EPA SWMM is used as the solution scheme for the 1D culvert flow calculations, dynamically linked with the TUFLOW HPC 2D solution scheme. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TUFLOW SWMM Tutorial Module 1 builds from the model created in &amp;lt;u&amp;gt;[[Tutorial_M02 |TUFLOW Tutorial Module 2]]&amp;lt;/u&amp;gt; (in the TUFLOW Only tutorial dataset). The completed TUFLOW Module 2 model is provided in the &#039;&#039;&#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW&#039;&#039;&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. If you are not already familiar with TUFLOW, we recommend first completing Module 1 and 2 of the &amp;lt;u&amp;gt;[[Tutorial_Introduction | &amp;quot;TUFLOW Only&amp;quot; Tutorials]]&amp;lt;/u&amp;gt; to establish an understanding of 2D modeling, before progressing to learning how to link 1D EPA SWMM to 2D TUFLOW. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Project Initialization =&lt;br /&gt;
Three steps are required for the project initialization:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Setting the  QGIS Project Coordinate Reference System (CRS).&lt;br /&gt;
&amp;lt;li&amp;gt; Configuring the QGIS TUFLOW Plugin.&lt;br /&gt;
&amp;lt;li&amp;gt; Establishing the new TUFLOW model GeoPackage file that will include new GIS inputs associated with this model update.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== QGIS ==&lt;br /&gt;
QGIS Version 3.34 or newer, and QGIS TUFLOW Plugin 3.11 or newer are required to access the SWMM Processing Tools described in the following sections. For installation, see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/TUFLOW_QGIS_Plugin Installation of TUFLOW Plugin]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
Firstly, define the Coordinate Reference System (CRS), also called ‘Projection’, for the QGIS workspace:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Open QGIS.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Properties… &lt;br /&gt;
&amp;lt;li&amp;gt;In the CRS tab, type ‘WGS 84 / UTM Zone 60S’.&lt;br /&gt;
&amp;lt;li&amp;gt;Select the matching projection in the &#039;Predefined Coordinate Reference Systems&#039; section.&lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Apply’ and ‘OK’.&lt;br /&gt;
&amp;lt;li&amp;gt;Ensure that the projection is set correctly by viewing the bottom right hand corner of the workspace. It should read ‘EPSG:32760’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_01a.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Model==&lt;br /&gt;
===Load and Style TUFLOW Model Files===&lt;br /&gt;
Load and Style the GIS layers from the TUFLOW model:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the ‘Load TUFLOW Layers from TCF’ symbol from the TUFLOW Plugin toolbar.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: Tuflow_plugin_load_tcf_layers.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder and select &#039;&#039;&#039;M02_5m_001.tcf&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Load Layers window, select:&lt;br /&gt;
* Ordering Options: Alphabetical&lt;br /&gt;
* Grouping Options: Group by control file&lt;br /&gt;
* Raster Load Options: Load Normally &lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Open’ and ‘OK’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Style the TUFLOW layers however you desire. Common steps to do this are:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the ‘Apply TUFLOW Styles to Open Layers’ symbol from the TUFLOW Plugin toolbar.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_styles_open_layers.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Change the symbology of the DEM:&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM&#039;&#039;&#039; file in the QGIS Layers Panel and select &#039;Properties&#039;.&lt;br /&gt;
*From the Symbology tab, under &#039;Band Rendering&#039; select the following options:&lt;br /&gt;
:*Render type: Singleband pseudocolor&lt;br /&gt;
:*Color ramp: Spectral&lt;br /&gt;
:*Color ramp: Invert Color Ramp&lt;br /&gt;
:*Mode: Equal Interval&lt;br /&gt;
*From the Transparency tab, set the Global Opacity to 75%.&lt;br /&gt;
*Click &#039;Apply&#039; and &#039;OK&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_03d.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a hillshade of the DEM:&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM&#039;&#039;&#039; file in the QGIS Layers Panel and select &#039;Duplicate Layer&#039;.&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM_copy&#039;&#039;&#039; and select &#039;Rename Layer&#039;. Rename the layer to &#039;&#039;&#039;DEM_Hillshade&#039;&#039;&#039;.&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM_Hillshade&#039;&#039;&#039; and select &#039;Properties&#039;.&lt;br /&gt;
*From the Symbology tab, under &#039;Band Rendering&#039; select the following options:&lt;br /&gt;
:*Render type: Hillshade&lt;br /&gt;
:*Z Factor: 3&lt;br /&gt;
*Click &#039;Apply&#039; and &#039;OK&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_04b.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW Plugin===&lt;br /&gt;
Next we need to configure the QGIS TUFLOW Plugin settings to link with the project folder where we will build our model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;Configure TUFLOW Project&#039; tool by selecting Plugins &amp;gt; TUFLOW &amp;gt; Editing &amp;gt; Configure / Create TUFLOW Project.&lt;br /&gt;
&amp;lt;li&amp;gt;Set the CRS (Coordinate Reference System) by selecting one of the vector layers associated with the opened model using the drop menu list. For example, &#039;&#039;2d_bc_M01_001_L&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW folder, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01&#039;&#039;&#039; folder. Click &#039;Select Folder&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW single precision executable file, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;exe\2023-03-AF&#039;&#039;&#039; folder. Select &#039;&#039;&#039;TUFLOW_iSP_w64.exe&#039;&#039;&#039; and click &#039;Open&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;GPKG&#039; as the GIS Format. &lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;TUFLOW Classic / HPC&#039; as the TUFLOW Engine.&lt;br /&gt;
&amp;lt;li&amp;gt;Tick on &#039;Save Default Settings Globally&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TS1_Configure_Project_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Increment Model GeoPackage File === &lt;br /&gt;
We will now save a copy of &#039;&#039;&#039;M02_001.gpkg&#039;&#039;&#039; with a new name, &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039;. This project initialization step is recommended so prior model versions from a project are not broken as a result of changes being made to GIS inputs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the &#039;Increment Selected Layer&#039; symbol from the TUFLOW Plugin toolbar. This opens the dialog shown below. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_increment_layer.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
:*Source Layer: Automatically set to the selected layer, &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
:*Output Database: Click &#039;Browse...&#039;. This will automatically open to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder. Set the new output database name to &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039; and click &#039;Save&#039;.&lt;br /&gt;
:*Output Layer Name: This will automatically increment to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;2&#039;&#039;_L&#039;&#039;&#039;. Change the name back to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;1&#039;&#039;_L&#039;&#039;&#039;.&lt;br /&gt;
:*Delete the pre-filled &#039;Incremented Layer&#039; entry in the table. We do not wish to modify the version number associated with the 2d_bc file. This current exercise will not change the version number of any of the GIS layer inputs, it is simply establishing a copy of the existing GeoPackage where future edits will be saved to.&lt;br /&gt;
:*Select &#039;Remove Source Layer from Workspace&#039;.&lt;br /&gt;
:*Select &#039;Increment Layer and Preserve Database&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The GeoPackage database, &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039; will now be in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model\gis&#039;&#039;&#039; folder. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_05c.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Save QGIS Project Workspace===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Save As.&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01&#039;&#039;&#039; folder and type &#039;&#039;&#039;SWMM_M01&#039;&#039;&#039; as the filename with the extension .qgz.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= GIS Inputs =&lt;br /&gt;
==Create SWMM GeoPackage Spatial Database== &lt;br /&gt;
Create a new folder in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model&#039;&#039;&#039; folder called &#039;&#039;&#039;swmm&#039;&#039;&#039;. This is the location where all SWMM inputs will be saved.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
In QGIS, create the SWMM GeoPackage Database:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Go to Processing &amp;gt; Toolbox from the top dropdown menu options to open the Processing Toolbox.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Create |GeoPackage - Create]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:*To set the ‘CRS for GeoPackage’: Click the drop down menu and select ‘Project CRS: EPSG:32760 - WGS 84 / UTM zone 60S’.&lt;br /&gt;
:*To set the ‘Initial SWMM Sections’: Click …, and tick on (if not already ticked): &lt;br /&gt;
::*&#039;&#039;&#039;Project--Title&#039;&#039;&#039;, &#039;&#039;&#039;Project--Options&#039;&#039;&#039;, &#039;&#039;&#039;Project --Report.&#039;&#039;&#039;&lt;br /&gt;
::*&#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039;, &#039;&#039;&#039;Nodes--Outfalls.&#039;&#039;&#039;, &#039;&#039;&#039;Nodes--Storage.&#039;&#039;&#039; &lt;br /&gt;
::*&#039;&#039;&#039;Links--Conduits, Links--Streets&#039;&#039;&#039;. &lt;br /&gt;
:*To define the ‘GPKG filename to create’: Click …, select ‘Save to File’. Navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and save the GeoPackage database as &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Run’. &lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click ‘Close’.&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and drag and drop &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;, then select &#039;Add Layers&#039; to open all vectors within &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039;. By default, all items in the available list should have been selected. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, move &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039; to the top of the list. This will ensure the data within this database file is displayed above all other layers in the project. &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_01g.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GIS Data Entry ==&lt;br /&gt;
&lt;br /&gt;
A GeoPackage database called &#039;&#039;&#039;SWMM_Culverts.gpkg&#039;&#039;&#039; is provided in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\Tutorial_Data&#039;&#039;&#039; folder. It contains three layers: &lt;br /&gt;
:*&#039;&#039;&#039;Conduits:&#039;&#039;&#039; defines the culvert location, type and geometry.&lt;br /&gt;
:*&#039;&#039;&#039;Outfalls:&#039;&#039;&#039; defines the downstream culvert inverts.&lt;br /&gt;
:*&#039;&#039;&#039;Storage_nodes:&#039;&#039;&#039; defines the upstream culvert inverts.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To populate the GeoPackage database created in the previous section:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\Tutorial_Data&#039;&#039;&#039; folder. Drag and drop the &#039;&#039;&#039;SWMM_Culverts.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;. By default, all items in the GeoPackage database will be selected. Click &#039;Add Layers&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click on the &#039;&#039;&#039;SWMM_Culverts &amp;gt;&amp;gt; Conduits&#039;&#039;&#039; layer and select &#039;Zoom to Layer(s)&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Use the &#039;Select Features&#039; tool to highlight all items included in &#039;&#039;&#039;Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and &#039;Copy Features&#039; from the drop down menu. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) the &#039;&#039;&#039;sw01_001.gpkg &amp;gt;&amp;gt; Links--Conduits&#039;&#039;&#039; layer. &lt;br /&gt;
&amp;lt;li&amp;gt;Make the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer editable by clicking the &#039;Toggle Editing&#039; symbol [[File:toggle_editing_icon.png|27x27px]].&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and click &#039;Paste Features&#039; from the drop down menu.&lt;br /&gt;
&amp;lt;li&amp;gt;Toggle the editing off to save the edits.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_02f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Similarly, copy the objects from &#039;&#039;&#039;Storage_nodes&#039;&#039;&#039; into &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039;. Junctions and storage nodes are allowed at the upstream end of culverts. Storage nodes are preferred for culverts receiving 2D flows not through a storm drain inlet.&lt;br /&gt;
&amp;lt;li&amp;gt;Also copy the objects from &#039;&#039;&#039;Outfalls&#039;&#039;&#039; into &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039;. Outfalls are treated as outlets, and are required at the downstream end of culverts.&lt;br /&gt;
&amp;lt;li&amp;gt; Toggle off editing and save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;Remove &#039;&#039;&#039;SWMM_Culverts.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_03f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Inspect the attribute information within the respective layers to familiarize yourself with the data.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_04f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GIS Data Updates ==&lt;br /&gt;
The provided GIS data requires numerous updates before proceeding to a model simulation. We have intentionally built these updates into this tutorial to demonstrate some of the available TUFLOW SWMM model build processing tools. The following updates are being made to objects and layers within &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
===Update Conduit Details===&lt;br /&gt;
==== Node Details ====&lt;br /&gt;
Stage 1 of building the 1D SWMM network involves updating the &#039;From Node&#039; and &#039;To Node&#039; attribute information in &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;. This information defines the Link/Node connections. &amp;lt;br&amp;gt;&lt;br /&gt;
The information we will be adding to &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; is extracted from &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039; automatically using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; tool from the Processing Toolbox.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, select the &#039;Edit Features In-Place&#039; tool [[File:edit_features_in_place_icon.png]]. This allows the editing of an existing layer, instead of the creation of a new layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.  &lt;br /&gt;
:*SWMM Node Layers: Tick on &#039;&#039;&#039;sw01_001 &amp;gt;&amp;gt; Nodes--Storage&#039;&#039;&#039; and &#039;&#039;&#039;sw01_001 &amp;gt;&amp;gt; Nodes--Outfalls&#039;&#039;&#039;. Click &#039;OK&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Modify All Features&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;View the attributes associated within &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; to verify the data processing has been completed correctly. The &#039;From Node&#039; and &#039;To Node&#039; attribute information is now configured correctly. For a broader understanding of the other attributes associated with the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Conduits TUFLOW 2023-03-AD Release Notes (Table A.19)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM Reference Manual - Volume 2 (Hydraulics)]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Tip 1:&#039;&#039;&#039; If you wish to only update a selection of objects, instead of selecting the entire &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; dataset, select the target objects first using the &#039;Select Features&#039; tool. The &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; tool will provide an option to &#039;Modify Selected Features&#039;, instead of &#039;Modify All Features.&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Tip 2:&#039;&#039;&#039; Unique Node ID&#039;s are required for the SWMM network to function error free. If you are following this workflow for a project model build, please ensure the &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039; object ID information is unique. If duplicate ID values are assigned to multiple objects, consider using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Integrity_Make_Object_Names_Unique |Integrity - Make object names unique ]]&amp;lt;/u&amp;gt;&#039; TUFLOW SWMM processing tool to ensure all ID values are unique before using &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_05g.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Update Losses====&lt;br /&gt;
Stage 2 involves updating the loss attributes in the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer. In this example, default loss values are used and will be entered manually. These loss values can be adjusted in your project models to reflect site specific information if desired. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;For each conduit, update the following fields:&lt;br /&gt;
:*losses_Kentry: 0.5&lt;br /&gt;
:*losses_Kexit: 1.0&lt;br /&gt;
:*losses_Kavg: 0.0&lt;br /&gt;
The video below demonstrates how to do this one entry at a time, or via the bulk attribute update options in QGIS.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_06f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Since all the 1D SWMM inputs in this model are embankment culverts that all use the same loss parameters, it&#039;s not necessary to specify different loss attributes. The &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt; will demonstrate an urban pipe network added to the model, with different loss attributes required for the road culverts and underground storm pipe network links. To simplify this step, Module 2 uses the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; processing tool. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Create 1D/2D Connections===&lt;br /&gt;
The following instructions introduce a new tool that automates the creation of 1D/2D connections. Due to the limitations of SWMM boundary conditions, HX lines are required for the upstream end of the culvert (rather than SX), and SX connections are used at the downstream end of the culvert.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, go to TUFLOW &amp;gt;&amp;gt; SWMM and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_BC_Create_Channel_Endpoint_1D/2D_Connections |BC - Create channel endpoint 1D/2D connections]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.  &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Ensure the &#039;Edit Features In-Place&#039; tool has been turned off. &lt;br /&gt;
:*Input Conduits Layer: &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;&lt;br /&gt;
:*Create connections at: &#039;Both ends&#039;. &lt;br /&gt;
:*Offset Distance: 2&lt;br /&gt;
:*Length of BC lines: 10&lt;br /&gt;
:*Tick on &#039;Set 2D cell elevation to 1D culvert invert at 1D/2D connection cells if needed&#039;.&lt;br /&gt;
:*Output Layer:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
::&amp;lt;li&amp;gt;Click the ... and select &#039;Save to GeoPackage&#039;.&lt;br /&gt;
::&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039;. Click Save. &lt;br /&gt;
::&amp;lt;li&amp;gt;A dialog will open. In the Layer name field, write &#039;&#039;&#039;2d_bc_SWMM_Culvert_Connections_001_L&#039;&#039;&#039;.&lt;br /&gt;
::&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The &#039;&#039;&#039;2d_bc_SWMM_Culvert_Connections_001_L&#039;&#039;&#039; appears in the QGIS Layers Panel. Select &#039;Apply TUFLOW Styles to Current Layer&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_07f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The positions of the HX and SX connections may not be in the optimum location or extent using the generalized automated tool. As such, it is recommended to check the output from this processing step. In this module, the 1D/2D connections associated with &#039;&#039;&#039;2d_bc_SWMM_Culvert_Connections_001_L&#039;&#039;&#039; are checked in &amp;lt;u&amp;gt;[[TUFLOW SWMM Tutorial M01 Check QGIS|TUFLOW SWMM Tutorial 01 Check Files]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update Storage Node Details===&lt;br /&gt;
The attributes of the storage nodes need to be modified to represent the storage of the connected HX cells since these cells do not represent storage themselves. The area associated with the storage nodes should be similar to the areas of the HX cells. To set the area, we will use a &amp;quot;PYRAMIDAL&amp;quot; shape with the SWMM side slope (run/rise) (Z) set to 0 to represent vertical walls. As the cell size is 5m, and the length of each polyline is 10m, the length (L) will be set to 10m and the width (W) to 5m. These sizes will be modified later when we change the boundary conditions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt; Right click &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Set the following attributes:&lt;br /&gt;
:* YMax: 50.0 (this is a value greater than the expected water level. It is required to allow water to fill node)&lt;br /&gt;
:* TYPE: &#039;PYRAMIDAL&#039;&lt;br /&gt;
:* L: 10&lt;br /&gt;
:* W: 5&lt;br /&gt;
:* Z: 0.0&lt;br /&gt;
&amp;lt;li&amp;gt; Turn off editing to save the edits.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_08g.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==SWMM Options==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Project--Options&#039;&#039;&#039; and toggle on editing. &lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Project--Options&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the following options: &lt;br /&gt;
*&#039;&#039;&#039;START_DATE&#039;&#039;&#039;: 2020-01-01 (Date Format: YYYY-MM-DD)&lt;br /&gt;
*&#039;&#039;&#039;REPORT_STEP&#039;&#039;&#039;: 00:01:00&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.  &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_09f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;Save the QGIS Project Workspace:&lt;br /&gt;
&lt;br /&gt;
# Go to Project &amp;gt; Save. This will update &#039;&#039;&#039;SWMM_M01.qgz&#039;&#039;&#039;, which was created previously in the folder &#039;&#039;&#039;TUFLOW_SWMM_Module_01&#039;&#039;&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Export SWMM INP File ==&lt;br /&gt;
SWMM is not able to read the &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039; database directly, therefore, we need to convert the GeoPackage file to a SWMM INP file format.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; (or any of the SWMM layers) and select &#039;TUFLOW&#039; &amp;gt; &#039;SWMM - Export inp file&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This will open the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Write_to_SWMM_inp |GeoPackage - Write to SWMM inp]]&amp;lt;/u&amp;gt;&#039; processing tool, prepopulated with the filename of the layer&#039;s GeoPackage. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This tool can also be activated from the Processing Toolbox. &lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This tool will save the SWMM inp file in the same folder location and with the same name as the GeoPackage input file. In this case, it will save &#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_10e.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
The following steps will require use of a text editor. The tutorial demonstration uses Notepad++. For its configuration information refer to &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips | Notepad++ Tips]]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To differentiate the TUFLOW SWMM tutorials from the TUFLOW/ESTRY tutorials, &#039;TS&#039; is used as the file prefix in this series of tutorials. To avoid the potential risk of overwriting existing control files accidentally, we will start by saving new control files where we will be making subsequent syntax updates during the following steps. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set up the simulation control files:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder and open &#039;&#039;&#039;M02_5m_001.tcf&#039;&#039;&#039; in a Text Editor (Notepad++ is recommended). &lt;br /&gt;
&amp;lt;li&amp;gt;Save the file as &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;M01_001.tbc&#039;&#039;&#039; using the &#039;Open File&#039; function in Notepad++. Save the file as &#039;&#039;&#039;TS01_001.tbc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new blank text file called &#039;&#039;&#039;TS01_001.tscf&#039;&#039;&#039; and save it in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_00a.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Control File (TCF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; in a Text Editor (Notepad++ is recommended) and make the following reference updates:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Spatial Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\gis\TS01_001.gpkg &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ! Specify the location of the GeoPackage Spatial Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\TS01_001.tbc&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Boundary Conditions Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Add the following line in the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Model Inputs&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SWMM Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\TS01_001.tscf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the SWMM (1D) Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Add the following line in the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Output Settings&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;NetCDF Output Start Date &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2020-01-01 00:00 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Sets the output units for the NetCDF time variable&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Save the TCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_01c.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Boundary Control File (TBC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;From &#039;&#039;&#039;TS01_001.tcf&#039;&#039;&#039;, right click &#039;&#039;&#039;TS01_001.tbc&#039;&#039;&#039; and select &#039;Open File&#039;. This opens &#039;&#039;&#039;TS01_001.tbc&#039;&#039;&#039; into a new tab in Notepad ++.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command line after &#039;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SA &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_sa_M01_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039;:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_bc_SWMM_Culvert_Connections_001_L&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;      ! Links 1D SWMM culverts to the 2D TUFLOW domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Save the TBC.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_02c.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW SWMM Control File (TSCF) ===&lt;br /&gt;
A new control file, the TUFLOW SWMM Control File (TSCF), is used to control the SWMM input data. All 1D SWMM files and commands are referenced in the TUFLOW SWMM Control File.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;From &#039;&#039;&#039;TS01_001.tcf&#039;&#039;&#039;, right click &#039;&#039;&#039;TS01_001.tscf&#039;&#039;&#039; and select &#039;Open File&#039;. This opens &#039;&#039;&#039;TS01_001.tscf&#039;&#039;&#039; into a new tab in Notepad ++.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read SWMM &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\sw01_001.inp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! 1D SWMM culvert input file&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TSCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_03c.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Running the Simulation =&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;_run_M02_HPC.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TS01_HPC.bat&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; :&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;exe&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2023-03-AF\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; %exe%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TS01_5m_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in Windows File Explorer to run the simulation. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
If the model simulation doesn&#039;t run:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Check in the screen output or the tlf file near the end for &amp;quot;For SWMM Model Errors see:&amp;quot;. This indicates that there is something wrong with the SWMM inputs. Reviewing that file will provide feedback on what is wrong.&lt;br /&gt;
&amp;lt;li&amp;gt; Review this link for common &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Troubleshooting | TUFLOW SWMM Troubleshooting]]&amp;lt;/u&amp;gt; advice.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Run_Sim_01d.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Check Files and Results Output=&lt;br /&gt;
Complete the steps outlined in following links to review check files and simulation results from the TUFLOW SWMM model simulation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01_Check_QGIS | TUFLOW SWMM Tutorial 01 Check Files]]&amp;lt;/u&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01_Results_QGIS | TUFLOW SWMM Tutorial 01 Results]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion =&lt;br /&gt;
*EPA SWMM culverts were added to convey water through the structures under the three roads in the tutorial model.&lt;br /&gt;
*Check files were used to review the inclusion of 1D SWMM culverts to a 2D TUFLOW model.&lt;br /&gt;
*Results through the 1D culverts were assessed.&lt;br /&gt;
*For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Other TUFLOW SWMM Tutorials=&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01 | TUFLOW SWMM Module 1]]&amp;lt;/u&amp;gt;  - 1D SWMM Culverts&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 2D TUFLOW Direct Rainfall Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M03 | TUFLOW SWMM Module 3]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M04 | TUFLOW SWMM Module 4]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology: Executing multiple different event simulations from a single model control file.&lt;br /&gt;
*&amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM | XPSWMM to TUFLOW SWMM]]&amp;lt;/u&amp;gt;  - How to convert an XPSWMM model to TUFLOW SWMM.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_SWMM_Tutorial_Introduction#Tutorial_Modules| Return to TUFLOW SWMM Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M02&amp;diff=45188</id>
		<title>TUFLOW SWMM Tutorial M02</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M02&amp;diff=45188"/>
		<updated>2025-10-23T06:16:08Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
This tutorial, Module 2 of the TUFLOW SWMM tutorial dataset will demonstrate how to model underground stormwater pipe networks using SWMM, linked to the TUFLOW HPC 2D solution scheme. Boundary condition inflows to the model are defined using TUFLOW&#039;s 2D direct rainfall (rain on grid) approach. TUFLOW SWMM Tutorial Module 2 builds from the model created in &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01|TUFLOW SWMM Tutorial Module 1]]&amp;lt;/u&amp;gt;. The completed TUFLOW SWMM Module 1 model is provided in the &#039;&#039;&#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW&#039;&#039;&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. If you are not already familiar with TUFLOW SWMM linking, we recommend completing TUFLOW SWMM Module 1 prior to starting this tutorial. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Project Initialization =&lt;br /&gt;
==QGIS==&lt;br /&gt;
QGIS Version 3.34 or newer, and QGIS TUFLOW Plugin 3.11 or newer are required to access the SWMM Processing Tools described in the following sections. For installation, see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/TUFLOW_QGIS_Plugin Installation of TUFLOW Plugin]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
Define the Coordinate Reference System (CRS), also called ‘Projection’, for the QGIS workspace:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Open QGIS.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Properties… &lt;br /&gt;
&amp;lt;li&amp;gt;In the CRS tab, type ‘WGS 84 / UTM Zone 60S’.&lt;br /&gt;
&amp;lt;li&amp;gt;Select the matching projection in the &#039;Predefined Coordinate Reference Systems&#039; section.&lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Apply’ and ‘OK’.&lt;br /&gt;
&amp;lt;li&amp;gt;Ensure that the projection is set correctly by viewing the bottom right hand corner of the workspace. It should read ‘EPSG:32760’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_01a.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Model==&lt;br /&gt;
===Load and Style TUFLOW Model Files===&lt;br /&gt;
Load in the project GIS layers:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the ‘Load TUFLOW Layers from TCF’ symbol from the TUFLOW Plugin toolbar.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: Tuflow_plugin_load_tcf_layers.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\runs&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Load Layers window, select:&lt;br /&gt;
* Ordering Options: Alphabetical&lt;br /&gt;
* Grouping Options: Group by control file&lt;br /&gt;
* Raster Load Options: Load Normally &lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Open’ and ‘OK’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Style the TUFLOW layers. Suggested styling steps were provided in &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01#Project_Initialization|TUFLOW SWMM Tutorial M01]]&amp;lt;/u&amp;gt;. They have not been duplicated here.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW Plugin===&lt;br /&gt;
Next we need to configure the QGIS TUFLOW Plugin settings to link with the project folder where we will build our model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;Configure TUFLOW Project&#039; tool by selecting Plugins &amp;gt; TUFLOW &amp;gt; Editing &amp;gt; Configure / Create TUFLOW Project.&lt;br /&gt;
&amp;lt;li&amp;gt;Set the CRS (Coordinate Reference System) by selecting one of the vector layers associated with the opened model using the drop menu list. For example, &#039;&#039;2d_bc_M01_001_L&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW folder, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02&#039;&#039;&#039; folder. Click &#039;Select Folder&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW single precision executable file, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;exe\2023-03-AF&#039;&#039;&#039; folder. Select &#039;&#039;&#039;TUFLOW_iSP_w64.exe&#039;&#039;&#039; and click &#039;Open&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;GPKG&#039; as the GIS Format. &lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;TUFLOW Classic / HPC&#039; as the TUFLOW Engine.&lt;br /&gt;
&amp;lt;li&amp;gt;Tick on &#039;Save Default Settings Globally&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TS2_Configure_Project_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Increment TUFLOW GeoPackage File === &lt;br /&gt;
We will now save a copy of &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039; with a new name, &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039;. This project initialization step is recommended so prior model versions from a project are not broken as a result of changes being made to GIS inputs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the &#039;Increment Selected Layer&#039; symbol from the TUFLOW Plugin toolbar. This opens the dialog shown below. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_increment_layer.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
:*Source Layer: Automatically set to the selected layer, &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
:*Output Database: Click &#039;Browse...&#039;. This will automatically open to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder. Set the new output database name to &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039; and click &#039;Save&#039;.&lt;br /&gt;
:*Output Layer Name: This will automatically increment to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;2&#039;&#039;_L&#039;&#039;&#039;. Change the name back to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;1&#039;&#039;_L&#039;&#039;&#039;.&lt;br /&gt;
:*Delete the pre-filled &#039;Incremented Layer&#039; entry in the table. We do not wish to modify the version number associated with the 2d_bc file. This current exercise will not change the version number of any of the GIS layer inputs, it is simply establishing a copy of the existing GeoPackage where future edits will be saved to.&lt;br /&gt;
:*Select &#039;Remove Source Layer from Workspace&#039;.&lt;br /&gt;
:*Select &#039;Increment Layer and Preserve Database&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The GeoPackage database, &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039; will now be in the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\model\gis&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Initialization_02c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Save QGIS Project Workspace===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Save As.&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02&#039;&#039;&#039; folder and type &#039;&#039;&#039;SWMM_M02&#039;&#039;&#039; as the filename with the extension .qgz.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= GIS Inputs =&lt;br /&gt;
==Create SWMM GeoPackage Spatial Database== &lt;br /&gt;
We will create a new SWMM GeoPackage database for our pipe network feature entries:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Go to Processing &amp;gt; Toolbox from the top dropdown menu options to open the Processing Toolbox.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Create |GeoPackage - Create]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:*To set the ‘CRS for GeoPackage’: Click the drop down menu and select ‘Project CRS: EPSG:32760 - WGS 84 / UTM zone 60S’.&lt;br /&gt;
:*To set the ‘Initial SWMM Sections’: Click the …, and tick on (if not already ticked): &lt;br /&gt;
::*&#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039;, &#039;&#039;&#039;Nodes--Outfalls.&#039;&#039;&#039; &lt;br /&gt;
::*&#039;&#039;&#039;Links--Conduits, Links--Streets.&#039;&#039;&#039;&lt;br /&gt;
::*&#039;&#039;&#039;Inlets--Inlets.&#039;&#039;&#039;&lt;br /&gt;
:*To define the ‘GPKG filename to create’: Click the …, select ‘Save to File’. Navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and save the GeoPackage Database as &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
::&#039;&#039;&#039;Note:&#039;&#039;&#039; In Module 1 we also included &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039;, &#039;&#039;&#039;Project--Title&#039;&#039;&#039;, &#039;&#039;&#039;Project--Options&#039;&#039;&#039;, and &#039;&#039;&#039;Project--Report&#039;&#039;&#039; in the GeoPackage file. &#039;&#039;&#039;Project--Options&#039;&#039;&#039; is not required this time as this tutorial model will use two SWMM INP files. The file created during Module 1 (for the road culverts) and the INP is to be created from this GeoPackage (for the underground pipe network inputs). When TUFLOW processes SWMM inputs, it combines the multiple INP files into one before simulation. As such, the details from the Module 1 &#039;&#039;&#039;Project--Options&#039;&#039;&#039; input will be used in this tutorial. If &#039;&#039;&#039;Project--Options&#039;&#039;&#039; are included in multiple Geopackage/INP files, the entry that is referenced lowest in the TUFLOW SWMM Control file (TSCF) will be used. &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; will not be used in this tutorial, as these are only needed to represent detention, or for nodes connected using HX boundaries.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click ‘Close’.&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and drag and drop &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;, then select &#039;Add Layers&#039; to open all vectors within &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039;. By default, all items in the available list should have been selected. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, move &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039; to the top of the list. This will ensure the data within this database file is displayed above all other layers in the project. &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_01e.mp4|width=1236}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GIS Data Entry ==&lt;br /&gt;
&lt;br /&gt;
A GeoPackage called &#039;&#039;&#039;Urban_Development.gpkg&#039;&#039;&#039; is provided in the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder. It contains three SWMM input layers (and five other geometry input layers to be used later in the module): &lt;br /&gt;
:*&#039;&#039;&#039;Pipes&#039;&#039;&#039;: defines the underground pipe network location, type and geometry.&lt;br /&gt;
:*&#039;&#039;&#039;Junctions&#039;&#039;&#039;: defines the pipe network inlets.&lt;br /&gt;
:*&#039;&#039;&#039;Outfalls&#039;&#039;&#039;: defines the pipe network outlet.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To populate the GeoPackage database created in the previous section:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder. Drag and drop the &#039;&#039;&#039;Urban_Development.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;, then select &#039;&#039;&#039;Pipes&#039;&#039;&#039;, &#039;&#039;&#039;Junctions&#039;&#039;&#039; and &#039;&#039;&#039;Outfalls&#039;&#039;&#039; (hold Ctrl to select multiple). Click &#039;Add Layers&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click on the &#039;&#039;&#039;Pipes&#039;&#039;&#039; layer and select &#039;Zoom to Layer(s)&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Use the &#039;Select Features&#039; tool to highlight all items included in &#039;&#039;&#039;Pipes&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and &#039;Copy Features&#039; from the drop down menu. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Make the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer editable by clicking the &#039;Toggle Editing&#039; symbol [[File:toggle_editing_icon.png|27x27px]].&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and click &#039;Paste Features&#039; from the drop down menu.&lt;br /&gt;
&amp;lt;li&amp;gt;Toggle the editing off to save the edits.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_02d.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Similarly, copy the objects from &#039;&#039;&#039;Junctions&#039;&#039;&#039; into &#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039;. Junctions are considered inlets, and should be defined at the upstream end of isolated culverts and all upstream ends of pipes within a network.&lt;br /&gt;
&amp;lt;li&amp;gt;Also copy the objects from &#039;&#039;&#039;Outfalls&#039;&#039;&#039; into &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039;. Outfalls are treated as outlets, and are required at the downstream end of isolated culverts and the most downstream end of a pipe network.&lt;br /&gt;
&amp;lt;li&amp;gt;Toggle off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;Remove &#039;&#039;&#039;Urban_Development.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_03c.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Inspect the attribute information within the respective layers to familiarize yourself with the data.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_04c.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GIS Data Updates ==&lt;br /&gt;
The provided GIS data requires numerous updates, prior to our model simulation. We have built these updates into this tutorial to demonstrate some of the available TUFLOW SWMM model built processing tools. &lt;br /&gt;
&lt;br /&gt;
The following updates are being made to objects and layers within &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
===Update SWMM Inlet Usage Layer Details===&lt;br /&gt;
An Inlet Usage Layer defines the physical location of inlets to the pipe network. It also defines some of the site specific geometry, such as inlet type, street cross-section reference, surface inlet elevation, placement type (on-sag and on-grade). To reduce data entry requirements for this tutorial, a complete Inlet Usage Layer has been provided, &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039;. It includes a variety of on-sag and on-grade inlets. On-sag inlets are used in locations where the inlet is located in an area of minimal longtudial slope. In this situation ponded surface water enters the pipe network. On-grade inlets are used where bypass flow is expected due to the inlet location being on a slope. For on-grade inlets, TUFLOW SWMM captures a percentage of the “approach flow” based on several factors including the total 2D approach flow, velocity and depth.&amp;lt;br&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder and save a copy of &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\model\swmm&#039;&#039;&#039; folder.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder. Drag and drop &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039; into the QGIS workspace.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When you progress from this tutorial to project modeling, you will need to create an Inlet Usage Layer yourself. The template file for this is available from &#039;&#039;&#039;model\gis\empty\swmm_iu_empty.gpkg&#039;&#039;&#039;. The file is created during the initial &#039;Write Empty&#039; step of the model build process (refer to &amp;lt;u&amp;gt;[[Tutorial_M01#Project_Initialisation | TUFLOW Tutorial Model 1]]&amp;lt;/u&amp;gt;). A summary of the attributes within the Inlet Usage Layer is documented in   &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-TUFLOW-1.html#tab:tab-SWMMinletusage TUFLOW 2023-03-AD Release Notes (Table 4.1)]&amp;lt;/u&amp;gt; &lt;br /&gt;
&lt;br /&gt;
The &#039;Inlet&#039; Attribute within &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039; is an ID reference to inlet geometry and associated information listed within &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039; &amp;gt;&amp;gt; &#039;&#039;&#039;Inlets--Inlets&#039;&#039;&#039;. A single inlet type, &#039;Combo1&#039;, was referenced in &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039; (the provided Inlet Usage Layer). In recognition of this, we need to create the entry for &#039;Combo1&#039; in the &#039;&#039;&#039;Inlets--Inlets&#039;&#039;&#039; layer. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Inlets--Inlets&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Inlets--Inlets&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Add Feature&#039;. Enter the following attributes (leave all other fields as &#039;&#039;NULL&#039;&#039;):&lt;br /&gt;
:*Name: Combo1&lt;br /&gt;
:*Type: COMBINATION&lt;br /&gt;
:*Grate_Length: 0.6&lt;br /&gt;
:*Grate_Width: 0.3&lt;br /&gt;
:*Grate_Type: P_BAR-50&lt;br /&gt;
:*Curb_Length: 0.9&lt;br /&gt;
:*Curb_Height: 0.15&lt;br /&gt;
:*Curb_Throat: VERTICAL&lt;br /&gt;
For a summary of the attributes associated with the &#039;&#039;&#039;Inlets--Inlets&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Inlets TUFLOW 2023-03-AD Release Notes (Table A.16)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydraulics_Addendum-20220210mas2wr.pdf  SWMM5 Reference Manual - Volume 2 (Hydraulics Addendum) ]&amp;lt;/u&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_05c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update Streets Details===&lt;br /&gt;
&lt;br /&gt;
Street cross-section information is needed for SWMM on-grade inlet flow calculations. A single street cross-section type named &#039;Xsec1&#039;, is referenced in &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039; (the Inlet Usage Layer) using the &#039;StreetXSEC&#039; field. &amp;lt;br&amp;gt;&lt;br /&gt;
We will now define this street cross-section type and its attributes. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Streets&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Links--Streets&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Add Feature&#039;. Enter the following attributes:&lt;br /&gt;
:*Name: Xsec1&lt;br /&gt;
:*Tcrown: 7&lt;br /&gt;
:*Hcurb: 0.2&lt;br /&gt;
:*Sx: 4&lt;br /&gt;
:*nRoad: 0.014&lt;br /&gt;
:*a: 0&lt;br /&gt;
:*W: 0&lt;br /&gt;
:*Sides: 1&lt;br /&gt;
:*Tback: 5&lt;br /&gt;
:*Sback: 2&lt;br /&gt;
:*nBack: 0.016&lt;br /&gt;
For a summary of the attributes associated with the &#039;&#039;&#039;Links--Streets&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Streets TUFLOW 2023-03-AD Release Notes (Table A.24)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM Reference Manual - Volume 2 (Hydraulics)]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_06c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update Conduit Details===&lt;br /&gt;
====Node Details====&lt;br /&gt;
&lt;br /&gt;
The &#039;From Node&#039; and &#039;To Node&#039; attribute information in &#039;&#039;&#039;Links---Conduits&#039;&#039;&#039; is necessary to build the 1D SWMM network. It defines the link/node connections. The information we will be adding to &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; is extracted from &#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039; and &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039; automatically using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; tool from the Processing Toolbox.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, select the &#039;Edit Features In-Place&#039; tool [[File:edit_features_in_place_icon.png]]. This allows the editing of an existing layer, instead of the creation of a new layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
&amp;lt;li&amp;gt;Tick on the SWMM Node Layers: &#039;&#039;&#039;sw02_001 &amp;gt;&amp;gt; Nodes--Junctions&#039;&#039;&#039; and &#039;&#039;&#039;sw02_001 &amp;gt;&amp;gt; Nodes--Outfalls&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Modify All Features&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;View the attributes associated within &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; to verify the data processing has been completed correctly. The &#039;From Node&#039; and &#039;To Node&#039; attribute information is now configured correctly. &amp;lt;br&amp;gt;&lt;br /&gt;
For a broader understanding of the other attributes associated with the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Conduits TUFLOW 2023-03-AD Release Notes (Table A.19)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM Reference Manual - Volume 2 (Hydraulics)]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Tip:&#039;&#039;&#039; In a future modeling project, if you wish to only update selected objects, rather than the entire &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; dataset, select the target objects first using the &#039;Select Features by Area&#039; tool. The &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; tool will provide an option to &#039;Modify Selected Features&#039;, instead of &#039;Modify All Features.&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_07c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Update Losses====&lt;br /&gt;
&lt;br /&gt;
Update the loss attributes in the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer. These values will be entered automatically using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Losses |Conduits - Assign losses]]&amp;lt;/u&amp;gt;&#039; tool from the Processing Toolbox. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, ensure the &#039;Edit Features In-Place&#039; tool [[File:edit_features_in_place_icon.png]] is still selected.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Losses |Conduits - Assign losses]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:*Input inlet usage layers: &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039;.&lt;br /&gt;
:*Culvert opening - Entrance loss: 0.5&lt;br /&gt;
:*Culvert or pipe network outlet - Exit loss: 1.0&lt;br /&gt;
:*Pipe Network (manholes and pit inlets):&lt;br /&gt;
:::*Entrance loss: 0.2&lt;br /&gt;
:::*Exit loss: 0.4&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Modify All Features&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;After the tool processing has finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;View the attributes associated within &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; to verify the data processing has been completed correctly. The &#039;losses_Kentry&#039;, &#039;losses_Kexit&#039; and &#039;losses_Kavg&#039; attribute information is now configured.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_08d.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===1D/2D Linking===&lt;br /&gt;
The 1D SWMM / 2D TUFLOW linkage locations to connect the pipe network inlets to the surface have been already automatically defined in the SWMM Inlet Usage Layer, &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039;, using the &#039;Conn1D_2D&#039; attribute.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:swmm_iu_TS02_001_attribute_table_Conn1D2D.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To complete the pipe network, 1D/2D linkage is needed at the outlet of the pipe network. The &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_BC_Create_Channel_Endpoint_1D/2D_Connections |BC - Create channel endpoint 1D/2D connections]]&amp;lt;/u&amp;gt;&#039; tool will be used to automate this process.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Use the &#039;Select Features&#039; tool to select the most downstream object in &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, go to TUFLOW &amp;gt;&amp;gt; SWMM and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_BC_Create_Channel_Endpoint_1D/2D_Connections |BC - Create channel endpoint 1D/2D connections]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:*Input Conduits Layer: &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;&lt;br /&gt;
:*Tick on &#039;Selected features only&#039;&lt;br /&gt;
:*Create connections at: &#039;Downstream end&#039;&lt;br /&gt;
:*Offset Distance: 2&lt;br /&gt;
:*Length of BC lines: 10&lt;br /&gt;
:*Tick on &#039;Set 2D cell elevation to 1D culvert invert at 1D/2D connection cells if needed&#039;.&lt;br /&gt;
:*Output Layer:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
::&amp;lt;li&amp;gt;Click the ... and select &#039;Save to GeoPackage&#039;.&lt;br /&gt;
::&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039;. Click &#039;Save&#039;. &lt;br /&gt;
::&amp;lt;li&amp;gt;A dialog will open. In the layer name box, write &#039;&#039;&#039;2d_bc_SWMM_Pipe_Network_Connections_001_L&#039;&#039;&#039;.&lt;br /&gt;
::&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The &#039;&#039;&#039;2d_bc_SWMM_Pipe_Network_Connections_001_L&#039;&#039;&#039; appears in the QGIS Layers Panel. &lt;br /&gt;
&amp;lt;li&amp;gt;Click the &#039;Apply TUFLOW Styles to Current Layer&#039; symbol from the TUFLOW Plugin toolbar to style the &#039;&#039;&#039;2d_bc_SWMM_Pipe_Network_Connections_001_L&#039;&#039;&#039; layer. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_09e.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update SWMM Junction Details===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, select the &#039;Edit Features In-Place&#039; tool. This allows the editing of an existing layer, instead of the creation of a new layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Junctions_Set_Attributes |Junctions - Set attributes ]]&amp;lt;/u&amp;gt;&#039; processing tool. This opens the dialog shown below.&lt;br /&gt;
:*Input Inlet Usage Layers: &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039;&lt;br /&gt;
:*Input BC Connection Layers: &#039;&#039;&#039;2d_bc_SWMM_Pipe_Network_Connections_001_L&#039;&#039;&#039;&lt;br /&gt;
:*General Options: &lt;br /&gt;
:::*Maximum Depth Option (Ymax): &#039;Set to 0.0&#039;.&lt;br /&gt;
:::*Nodes receiving subcatchment flows option (if connected to 2D): &#039;Based on options selected below&#039;.&lt;br /&gt;
:*Nodes connected to 2D without Inlets:&lt;br /&gt;
:::*None - leave defaults&lt;br /&gt;
:*Nodes connected to 2D with Inlets:&lt;br /&gt;
:::*Maximum depth (Ymax) option: &#039;Use global option&#039;&lt;br /&gt;
:::*Ysur: 0 (ignored because ponding &amp;gt; 0.0)&lt;br /&gt;
:::*Area of Ponding (Apond): 5&lt;br /&gt;
:*Nodes without 2D Connection:&lt;br /&gt;
:::*Surcharge Depth: 50&lt;br /&gt;
:::*Area of Ponding (Apond): 0.0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Modify All Features&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;View the attributes associated within &#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039; to verify the data processing has been completed correctly. &amp;lt;br&amp;gt;&lt;br /&gt;
For a summary of the attributes associated with the &#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Junctions TUFLOW 2023-03-AD Release Notes (Table A.30)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM Reference Manual - Volume 2 (Hydraulics)]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_10d.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==SWMM Options==&lt;br /&gt;
The model we are building will use two SWMM INP files.&lt;br /&gt;
*&#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; was already created in TUFLOW SWMM Tutorial Module 1. It contained details defining the three culverts under the roads in the model. It also contained the associated 1D SWMM / 2D TUFLOW connection layer objects and the &#039;&#039;&#039;Project--Options&#039;&#039;&#039; necessary to execute the SWMM simulation. &#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; has been included in the base model we are using for Module 2. No changes will be made to it.&lt;br /&gt;
* We will create a new INP file for the SWMM pipe network inputs (covered in the next section). As SWMM Options are already included in &#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039;, they are not needed in this second (new) INP file. As such, no new SWMM Option commands are necessary for this tutorial.&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If &#039;&#039;&#039;Project--Options&#039;&#039;&#039; are included in multiple GeoPackage/INP files, the entry that is referenced lowest in the TUFLOW SWMM Control File (TSCF) will be used.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Export SWMM INP File ==&lt;br /&gt;
We will now create a new INP file for the SWMM pipe network inputs. To do this, we need to convert &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039; into a SWMM INP file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Right click on the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer in the &#039;&#039;&#039;sw02_001&#039;&#039;&#039; group (or any other SWMM layer in the same GeoPackage) and select &#039;TUFLOW&#039; &amp;gt; &#039;SWMM - Export inp file&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This will open the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Write_to_SWMM_inp |GeoPackage - Write to SWMM inp]]&amp;lt;/u&amp;gt;&#039; processing tool, prepopulated with the filename of the layer&#039;s GeoPackage. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This tool can also be activated from the Processing Toolbox. &lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This tool will save the SWMM inp file in the same folder location and with the same name as the GeoPackage input file. In this case, it will save &#039;&#039;&#039;sw02_001.inp&#039;&#039;&#039; to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_11e.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TUFLOW Boundary Updates ==&lt;br /&gt;
We will be using TUFLOW&#039;s 2D direct rainfall (also known as rain on grid) functionality for the catchment inflow boundary condition approach to demonstrate flows into the pipe network inlets. There is a wide range of direct rainfall options built into TUFLOW, including:&lt;br /&gt;
*&#039;&#039;&#039;Globally uniform rainfall:&#039;&#039;&#039; This method applies temporally varied rainfall uniformly (spatially) over the entire model. &lt;br /&gt;
*&#039;&#039;&#039;Spatially varying rainfall:&#039;&#039;&#039; This method applies temporally varied rainfall with spatial variation defined using polygon delineation, grid raster files or inbuilt TUFLOW TIN triangulation routines.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The focus of this tutorial is not to demonstrate the available direct rainfall options. As such, we will be using the simplest approach, globally uniform rainfall. It does not require any GIS updates to implement the boundary condition change. Updates will be limited to the Boundary Condition Database reference and Control File syntax updates. Both are addressed in the next section. If you are interested in learning about the available direct rainfall options, please refer to &amp;lt;u&amp;gt;[[Tutorial_M06 |TUFLOW Tutorial Module 6]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Copy &#039;&#039;&#039;rainfall_stations.csv&#039;&#039;&#039; from the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\bc_dbase&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Copy &#039;&#039;&#039;bc_dbase_TS02_001.csv&#039;&#039;&#039; from the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\bc_dbase&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
It is common to use depth varying manning&#039;s roughness when using direct rainfall. A Materials File using depth varying inputs has been provided. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Copy &#039;&#039;&#039;materials_TS02_001.csv&#039;&#039;&#039; from the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_TUFLOW_Boundary_01a.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TUFLOW Geometry Update  ==&lt;br /&gt;
We will update TUFLOW&#039;s 2D elevation and landuse to represent changes associated with the urban development. The updates will be consolidated within &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Copy the following TUFLOW geometry inputs to GeoPackage &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Right click anywhere in the QGIS Toolbar Panel and tick on &#039;Browser Panel&#039; from the &#039;Panels&#039; options.&lt;br /&gt;
&amp;lt;li&amp;gt;Within the QGIS Browser Panel, there is a dropdown directory, &#039;Project Home&#039;. This directory is a shortcut to the location where the QGIS workspace is saved. In this case, it is a shortcut to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt;In the &#039;Project Home&#039; directory, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt;Drag the following layers (hold Ctrl to select multiple) from the &#039;&#039;&#039;Urban_Development.gpkg&#039;&#039;&#039; and drop them into the &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039; contained within the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\model\gis&#039;&#039;&#039; folder:&lt;br /&gt;
:*&#039;&#039;&#039;2d_mat_TS02_Dev_Buildings_001_R&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;2d_mat_TS02_Dev_Lots_001_R&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;2d_ztin_TS02_Dev_001_L&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;2d_ztin_TS02_Dev_001_P&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;2d_ztin_TS02_Dev_001_R&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The focus of this tutorial is not to demonstrate 2D geometry updates. If you are interested in learning about the above &#039;&#039;&#039;2d_ztin&#039;&#039;&#039; and &#039;&#039;&#039;2d_mat&#039;&#039;&#039; changes, please refer to &amp;lt;u&amp;gt;[[Tutorial_M02 |TUFLOW Tutorial Module 2]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_TUFLOW_Geometry_01f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
To avoid the potential risk of overwriting existing control files accidentally, we will start by saving new control files where we will be making subsequent syntax updates during the following steps.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; in a Text Editor (Notepad++ is used here). Save the file as &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\runs&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt;Using the &#039;Open File&#039; function in Notepad++: &lt;br /&gt;
:*Open &#039;&#039;&#039;M02_001.tgc,&#039;&#039;&#039;  and save the file as &#039;&#039;&#039;TS02_001.tgc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
:*Open &#039;&#039;&#039;TS01_001.tbc,&#039;&#039;&#039;  and save the file as &#039;&#039;&#039;TS02_001.tbc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
:*Open &#039;&#039;&#039;TS01_001.tscf,&#039;&#039;&#039;  and save the file as &#039;&#039;&#039;TS02_001.tscf&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW Control File (TCF)===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS02_001.tcf&#039;&#039;&#039; and make the following reference updates:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Spatial Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\gis\TS02_001.gpkg&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specify the location of the GeoPackage Spatial Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Geometry Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\TS02_001.tgc&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Geometry Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\TS02_001.tbc&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Boundary Condition Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\bc_dbase\bc_dbase_TS02_001.csv&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the Boundary Condition Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read Materials File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\materials_TS02_001.csv&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the Materials Definition File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SWMM Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\TS02_001.tscf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the SWMM (1D) Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following line in the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Output Settings&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Map Cutoff Depth &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 0.05 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Sets map cutoff depth of 0.05 meters&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save the TCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Sim_Control_01d.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Geometry Control File (TGC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS02_001.tgc&#039;&#039;&#039;. If using Notepad++, right click the file reference in &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; and select &#039;Open File&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command to the the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Topography&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section below the below the existing &#039;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Z Shape&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; command:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Create TIN Zpts &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_ztin_TS02_Dev_001_R | 2d_ztin_TS02_Dev_001_L | 2d_ztin_TS02_Dev_001_P&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Urban Development Topography TIN&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following lines in the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Materials&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section, below the existing material commands : &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Mat &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_mat_TS02_Dev_Lots_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;    ! Urban Development Landuse 1&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Mat &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_mat_TS02_Dev_Buildings_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ! Urban Development Landuse 2&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TGC.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Sim_Control_02b.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Boundary Control File (TBC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS02_001.tbc&#039;&#039;&#039;. If using Notepad++, right click the file reference in &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; and select &#039;Open File&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Comment out the &#039;Read GIS SA&#039; command by placing &#039;!&#039; before the command: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Read GIS SA == 2d_sa_M01_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following additional command lines:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Global Rainfall BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;RF_FC04&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reads in global rainfall&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_bc_SWMM_Pipe_Network_Connections_001_L&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Links the 1D Pipe Network Outlets to the 2D domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TBC.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Sim_Control_03d.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW SWMM Control File (TSCF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS02_001.tscf&#039;&#039;&#039;. If using Notepad++, right click the file reference in &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; and select &#039;Open File&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command lines after &#039;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read SWMM &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\sw01_001.inp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039;:   &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read SWMM &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\sw02_001.inp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! 1D SWMM Pipe Network Input File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SWMM Inlet Usage &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\swmm_iu_TS02_001.gpkg &amp;gt;&amp;gt; swmm_iu_TS02_001&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! 1D SWMM Pipe Network Inlet Usage Layer&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TSCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Sim_Control_04b.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Running the Simulation =&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;_run_TS01_HPC.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TS02_HPC.bat&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; :&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;exe&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2023-03-AF\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; %exe%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TS02_5m_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in Windows File Explorer to run the simulation. &lt;br /&gt;
&amp;lt;li&amp;gt;Did your TUFLOW SWMM model fail to run successfully? If so, here is a link to a troubleshooting guide: &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Troubleshooting | TUFLOW SWMM Troubleshooting]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Run_Sim_01c.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Check Files and Results Output=&lt;br /&gt;
Complete the steps outlined in following links to review check files and simulation results from the TUFLOW SWMM model simulation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02_Check_QGIS | TUFLOW SWMM Tutorial 02 Check Files]]&amp;lt;/u&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02_Results_QGIS | TUFLOW SWMM Tutorial 02 Results]]&amp;lt;/u&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion =&lt;br /&gt;
* 1D EPA SWMM pipe network features and 2D direct rainfall (rain on grid) hydrology have been added to the tutorial model.&lt;br /&gt;
* Check files were used to review the 1D SWMM pipe network model features.&lt;br /&gt;
* Simulation results in the 1D SWMM pipe network were viewed in time series and long section plot format.&lt;br /&gt;
* For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Other TUFLOW SWMM Tutorials=&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01 | TUFLOW SWMM Module 1]]&amp;lt;/u&amp;gt;  - 1D SWMM Culverts&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 2D TUFLOW Direct Rainfall Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M03 | TUFLOW SWMM Module 3]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M04 | TUFLOW SWMM Module 4]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology: Executing multiple different event simulations from a single model control file.&lt;br /&gt;
*&amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM | XPSWMM to TUFLOW SWMM]]&amp;lt;/u&amp;gt;  - How to convert an XPSWMM model to TUFLOW SWMM.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_SWMM_Tutorial_Introduction#Tutorial_Modules| Back to TUFLOW SWMM Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M02&amp;diff=45187</id>
		<title>TUFLOW SWMM Tutorial M02</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M02&amp;diff=45187"/>
		<updated>2025-10-23T06:15:51Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
This tutorial, Module 2 of the TUFLOW SWMM tutorial dataset will demonstrate how to model underground stormwater pipe networks using SWMM, linked to the TUFLOW HPC 2D solution scheme. Boundary condition inflows to the model are defined using TUFLOW&#039;s 2D direct rainfall (rain on grid) approach. TUFLOW SWMM Tutorial Module 2 builds from the model created in &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01|TUFLOW SWMM Tutorial Module 1]]&amp;lt;/u&amp;gt;. The completed TUFLOW SWMM Module 1 model is provided in the &#039;&#039;&#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW&#039;&#039;&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. If you are not already familiar with TUFLOW SWMM linking, we recommend completing TUFLOW SWMM Module 1 prior to starting this tutorial. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Project Initialization =&lt;br /&gt;
==QGIS==&lt;br /&gt;
QGIS Version 3.34 or newer, and QGIS TUFLOW Plugin 3.11 or newer are required to access the SWMM Processing Tools described in the following sections. For installation, see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/TUFLOW_QGIS_Plugin Installation of TUFLOW Plugin]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
Define the Coordinate Reference System (CRS), also called ‘Projection’, for the QGIS workspace:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Open QGIS.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Properties… &lt;br /&gt;
&amp;lt;li&amp;gt;In the CRS tab, type ‘WGS 84 / UTM Zone 60S’.&lt;br /&gt;
&amp;lt;li&amp;gt;Select the matching projection in the &#039;Predefined Coordinate Reference Systems&#039; section.&lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Apply’ and ‘OK’.&lt;br /&gt;
&amp;lt;li&amp;gt;Ensure that the projection is set correctly by viewing the bottom right hand corner of the workspace. It should read ‘EPSG:32760’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_01a.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Model==&lt;br /&gt;
===Load and Style TUFLOW Model Files===&lt;br /&gt;
Load in the project GIS layers:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the ‘Load TUFLOW Layers from TCF’ symbol from the TUFLOW Plugin toolbar.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: Tuflow_plugin_load_tcf_layers.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\runs&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Load Layers window, select:&lt;br /&gt;
* Ordering Options: Alphabetical&lt;br /&gt;
* Grouping Options: Group by control file&lt;br /&gt;
* Raster Load Options: Load Normally &lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Open’ and ‘OK’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
Style the TUFLOW layers. Suggested styling steps were provided in &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01#Project_Initialization|TUFLOW SWMM Tutorial M01]]&amp;lt;/u&amp;gt;. They have not been duplicated here.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW Plugin===&lt;br /&gt;
Next we need to configure the QGIS TUFLOW Plugin settings to link with the project folder where we will build our model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;Configure TUFLOW Project&#039; tool by selecting Plugins &amp;gt; TUFLOW &amp;gt; Editing &amp;gt; Configure / Create TUFLOW Project.&lt;br /&gt;
&amp;lt;li&amp;gt;Set the CRS (Coordinate Reference System) by selecting one of the vector layers associated with the opened model using the drop menu list. For example, &#039;&#039;2d_bc_M01_001_L&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW folder, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02&#039;&#039;&#039; folder. Click &#039;Select Folder&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW single precision executable file, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;exe\2023-03-AF&#039;&#039;&#039; folder. Select &#039;&#039;&#039;TUFLOW_iSP_w64.exe&#039;&#039;&#039; and click &#039;Open&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;GPKG&#039; as the GIS Format. &lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;TUFLOW Classic / HPC&#039; as the TUFLOW Engine.&lt;br /&gt;
&amp;lt;li&amp;gt;Tick on &#039;Save Default Settings Globally&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TS2_Configure_Project_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Increment TUFLOW GeoPackage File === &lt;br /&gt;
We will now save a copy of &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039; with a new name, &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039;. This project initialization step is recommended so prior model versions from a project are not broken as a result of changes being made to GIS inputs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the &#039;Increment Selected Layer&#039; symbol from the TUFLOW Plugin toolbar. This opens the dialog shown below. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_increment_layer.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
:*Source Layer: Automatically set to the selected layer, &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
:*Output Database: Click &#039;Browse...&#039;. This will automatically open to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder. Set the new output database name to &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039; and click &#039;Save&#039;.&lt;br /&gt;
:*Output Layer Name: This will automatically increment to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;2&#039;&#039;_L&#039;&#039;&#039;. Change the name back to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;1&#039;&#039;_L&#039;&#039;&#039;.&lt;br /&gt;
:*Delete the pre-filled &#039;Incremented Layer&#039; entry in the table. We do not wish to modify the version number associated with the 2d_bc file. This current exercise will not change the version number of any of the GIS layer inputs, it is simply establishing a copy of the existing GeoPackage where future edits will be saved to.&lt;br /&gt;
:*Select &#039;Remove Source Layer from Workspace&#039;.&lt;br /&gt;
:*Select &#039;Increment Layer and Preserve Database&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The GeoPackage database, &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039; will now be in the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\model\gis&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Initialization_02c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Save QGIS Project Workspace===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Save As.&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02&#039;&#039;&#039; folder and type &#039;&#039;&#039;SWMM_M02&#039;&#039;&#039; as the filename with the extension .qgz.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= GIS Inputs =&lt;br /&gt;
==Create SWMM GeoPackage Spatial Database== &lt;br /&gt;
We will create a new SWMM GeoPackage database for our pipe network feature entries:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Go to Processing &amp;gt; Toolbox from the top dropdown menu options to open the Processing Toolbox.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Create |GeoPackage - Create]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:*To set the ‘CRS for GeoPackage’: Click the drop down menu and select ‘Project CRS: EPSG:32760 - WGS 84 / UTM zone 60S’.&lt;br /&gt;
:*To set the ‘Initial SWMM Sections’: Click the …, and tick on (if not already ticked): &lt;br /&gt;
::*&#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039;, &#039;&#039;&#039;Nodes--Outfalls.&#039;&#039;&#039; &lt;br /&gt;
::*&#039;&#039;&#039;Links--Conduits, Links--Streets.&#039;&#039;&#039;&lt;br /&gt;
::*&#039;&#039;&#039;Inlets--Inlets.&#039;&#039;&#039;&lt;br /&gt;
:*To define the ‘GPKG filename to create’: Click the …, select ‘Save to File’. Navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and save the GeoPackage Database as &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
::&#039;&#039;&#039;Note:&#039;&#039;&#039; In Module 1 we also included &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039;, &#039;&#039;&#039;Project--Title&#039;&#039;&#039;, &#039;&#039;&#039;Project--Options&#039;&#039;&#039;, and &#039;&#039;&#039;Project--Report&#039;&#039;&#039; in the GeoPackage file. &#039;&#039;&#039;Project--Options&#039;&#039;&#039; is not required this time as this tutorial model will use two SWMM INP files. The file created during Module 1 (for the road culverts) and the INP is to be created from this GeoPackage (for the underground pipe network inputs). When TUFLOW processes SWMM inputs, it combines the multiple INP files into one before simulation. As such, the details from the Module 1 &#039;&#039;&#039;Project--Options&#039;&#039;&#039; input will be used in this tutorial. If &#039;&#039;&#039;Project--Options&#039;&#039;&#039; are included in multiple Geopackage/INP files, the entry that is referenced lowest in the TUFLOW SWMM Control file (TSCF) will be used. &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; will not be used in this tutorial, as these are only needed to represent detention, or for nodes connected using HX boundaries.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click ‘Close’.&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and drag and drop &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;, then select &#039;Add Layers&#039; to open all vectors within &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039;. By default, all items in the available list should have been selected. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, move &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039; to the top of the list. This will ensure the data within this database file is displayed above all other layers in the project. &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_01e.mp4|width=1236}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GIS Data Entry ==&lt;br /&gt;
&lt;br /&gt;
A GeoPackage called &#039;&#039;&#039;Urban_Development.gpkg&#039;&#039;&#039; is provided in the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder. It contains three SWMM input layers (and five other geometry input layers to be used later in the module): &lt;br /&gt;
:*&#039;&#039;&#039;Pipes&#039;&#039;&#039;: defines the underground pipe network location, type and geometry.&lt;br /&gt;
:*&#039;&#039;&#039;Junctions&#039;&#039;&#039;: defines the pipe network inlets.&lt;br /&gt;
:*&#039;&#039;&#039;Outfalls&#039;&#039;&#039;: defines the pipe network outlet.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To populate the GeoPackage database created in the previous section:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder. Drag and drop the &#039;&#039;&#039;Urban_Development.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;, then select &#039;&#039;&#039;Pipes&#039;&#039;&#039;, &#039;&#039;&#039;Junctions&#039;&#039;&#039; and &#039;&#039;&#039;Outfalls&#039;&#039;&#039; (hold Ctrl to select multiple). Click &#039;Add Layers&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click on the &#039;&#039;&#039;Pipes&#039;&#039;&#039; layer and select &#039;Zoom to Layer(s)&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Use the &#039;Select Features&#039; tool to highlight all items included in &#039;&#039;&#039;Pipes&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and &#039;Copy Features&#039; from the drop down menu. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Make the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer editable by clicking the &#039;Toggle Editing&#039; symbol [[File:toggle_editing_icon.png|27x27px]].&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and click &#039;Paste Features&#039; from the drop down menu.&lt;br /&gt;
&amp;lt;li&amp;gt;Toggle the editing off to save the edits.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_02d.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Similarly, copy the objects from &#039;&#039;&#039;Junctions&#039;&#039;&#039; into &#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039;. Junctions are considered inlets, and should be defined at the upstream end of isolated culverts and all upstream ends of pipes within a network.&lt;br /&gt;
&amp;lt;li&amp;gt;Also copy the objects from &#039;&#039;&#039;Outfalls&#039;&#039;&#039; into &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039;. Outfalls are treated as outlets, and are required at the downstream end of isolated culverts and the most downstream end of a pipe network.&lt;br /&gt;
&amp;lt;li&amp;gt;Toggle off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;Remove &#039;&#039;&#039;Urban_Development.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_03c.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Inspect the attribute information within the respective layers to familiarize yourself with the data.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_04c.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GIS Data Updates ==&lt;br /&gt;
The provided GIS data requires numerous updates, prior to our model simulation. We have built these updates into this tutorial to demonstrate some of the available TUFLOW SWMM model built processing tools. &lt;br /&gt;
&lt;br /&gt;
The following updates are being made to objects and layers within &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
===Update SWMM Inlet Usage Layer Details===&lt;br /&gt;
An Inlet Usage Layer defines the physical location of inlets to the pipe network. It also defines some of the site specific geometry, such as inlet type, street cross-section reference, surface inlet elevation, placement type (on-sag and on-grade). To reduce data entry requirements for this tutorial, a complete Inlet Usage Layer has been provided, &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039;. It includes a variety of on-sag and on-grade inlets. On-sag inlets are used in locations where the inlet is located in an area of minimal longtudial slope. In this situation ponded surface water enters the pipe network. On-grade inlets are used where bypass flow is expected due to the inlet location being on a slope. For on-grade inlets, TUFLOW SWMM captures a percentage of the “approach flow” based on several factors including the total 2D approach flow, velocity and depth.&amp;lt;br&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder and save a copy of &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\model\swmm&#039;&#039;&#039; folder.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder. Drag and drop &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039; into the QGIS workspace.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When you progress from this tutorial to project modeling, you will need to create an Inlet Usage Layer yourself. The template file for this is available from &#039;&#039;&#039;model\gis\empty\swmm_iu_empty.gpkg&#039;&#039;&#039;. The file is created during the initial &#039;Write Empty&#039; step of the model build process (refer to &amp;lt;u&amp;gt;[[Tutorial_M01#Project_Initialisation | TUFLOW Tutorial Model 1]]&amp;lt;/u&amp;gt;). A summary of the attributes within the Inlet Usage Layer is documented in   &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-TUFLOW-1.html#tab:tab-SWMMinletusage TUFLOW 2023-03-AD Release Notes (Table 4.1)]&amp;lt;/u&amp;gt; &lt;br /&gt;
&lt;br /&gt;
The &#039;Inlet&#039; Attribute within &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039; is an ID reference to inlet geometry and associated information listed within &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039; &amp;gt;&amp;gt; &#039;&#039;&#039;Inlets--Inlets&#039;&#039;&#039;. A single inlet type, &#039;Combo1&#039;, was referenced in &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039; (the provided Inlet Usage Layer). In recognition of this, we need to create the entry for &#039;Combo1&#039; in the &#039;&#039;&#039;Inlets--Inlets&#039;&#039;&#039; layer. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Inlets--Inlets&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Inlets--Inlets&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Add Feature&#039;. Enter the following attributes (leave all other fields as &#039;&#039;NULL&#039;&#039;):&lt;br /&gt;
:*Name: Combo1&lt;br /&gt;
:*Type: COMBINATION&lt;br /&gt;
:*Grate_Length: 0.6&lt;br /&gt;
:*Grate_Width: 0.3&lt;br /&gt;
:*Grate_Type: P_BAR-50&lt;br /&gt;
:*Curb_Length: 0.9&lt;br /&gt;
:*Curb_Height: 0.15&lt;br /&gt;
:*Curb_Throat: VERTICAL&lt;br /&gt;
For a summary of the attributes associated with the &#039;&#039;&#039;Inlets--Inlets&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Inlets TUFLOW 2023-03-AD Release Notes (Table A.16)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydraulics_Addendum-20220210mas2wr.pdf  SWMM5 Reference Manual - Volume 2 (Hydraulics Addendum) ]&amp;lt;/u&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_05c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update Streets Details===&lt;br /&gt;
&lt;br /&gt;
Street cross-section information is needed for SWMM on-grade inlet flow calculations. A single street cross-section type named &#039;Xsec1&#039;, is referenced in &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039; (the Inlet Usage Layer) using the &#039;StreetXSEC&#039; field. &amp;lt;br&amp;gt;&lt;br /&gt;
We will now define this street cross-section type and its attributes. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Streets&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Links--Streets&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Add Feature&#039;. Enter the following attributes:&lt;br /&gt;
:*Name: Xsec1&lt;br /&gt;
:*Tcrown: 7&lt;br /&gt;
:*Hcurb: 0.2&lt;br /&gt;
:*Sx: 4&lt;br /&gt;
:*nRoad: 0.014&lt;br /&gt;
:*a: 0&lt;br /&gt;
:*W: 0&lt;br /&gt;
:*Sides: 1&lt;br /&gt;
:*Tback: 5&lt;br /&gt;
:*Sback: 2&lt;br /&gt;
:*nBack: 0.016&lt;br /&gt;
For a summary of the attributes associated with the &#039;&#039;&#039;Links--Streets&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Streets TUFLOW 2023-03-AD Release Notes (Table A.24)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM Reference Manual - Volume 2 (Hydraulics)]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_06c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update Conduit Details===&lt;br /&gt;
====Node Details====&lt;br /&gt;
&lt;br /&gt;
The &#039;From Node&#039; and &#039;To Node&#039; attribute information in &#039;&#039;&#039;Links---Conduits&#039;&#039;&#039; is necessary to build the 1D SWMM network. It defines the link/node connections. The information we will be adding to &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; is extracted from &#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039; and &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039; automatically using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; tool from the Processing Toolbox.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, select the &#039;Edit Features In-Place&#039; tool [[File:edit_features_in_place_icon.png]]. This allows the editing of an existing layer, instead of the creation of a new layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
&amp;lt;li&amp;gt;Tick on the SWMM Node Layers: &#039;&#039;&#039;sw02_001 &amp;gt;&amp;gt; Nodes--Junctions&#039;&#039;&#039; and &#039;&#039;&#039;sw02_001 &amp;gt;&amp;gt; Nodes--Outfalls&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Modify All Features&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;View the attributes associated within &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; to verify the data processing has been completed correctly. The &#039;From Node&#039; and &#039;To Node&#039; attribute information is now configured correctly. &amp;lt;br&amp;gt;&lt;br /&gt;
For a broader understanding of the other attributes associated with the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Conduits TUFLOW 2023-03-AD Release Notes (Table A.19)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM Reference Manual - Volume 2 (Hydraulics)]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Tip:&#039;&#039;&#039; In a future modeling project, if you wish to only update selected objects, rather than the entire &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; dataset, select the target objects first using the &#039;Select Features by Area&#039; tool. The &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; tool will provide an option to &#039;Modify Selected Features&#039;, instead of &#039;Modify All Features.&#039;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_07c.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Update Losses====&lt;br /&gt;
&lt;br /&gt;
Update the loss attributes in the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer. These values will be entered automatically using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Losses |Conduits - Assign losses]]&amp;lt;/u&amp;gt;&#039; tool from the Processing Toolbox. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, ensure the &#039;Edit Features In-Place&#039; tool [[File:edit_features_in_place_icon.png]] is still selected.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Losses |Conduits - Assign losses]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:*Input inlet usage layers: &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039;.&lt;br /&gt;
:*Culvert opening - Entrance loss: 0.5&lt;br /&gt;
:*Culvert or pipe network outlet - Exit loss: 1.0&lt;br /&gt;
:*Pipe Network (manholes and pit inlets):&lt;br /&gt;
:::*Entrance loss: 0.2&lt;br /&gt;
:::*Exit loss: 0.4&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Modify All Features&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;After the tool processing has finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;View the attributes associated within &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; to verify the data processing has been completed correctly. The &#039;losses_Kentry&#039;, &#039;losses_Kexit&#039; and &#039;losses_Kavg&#039; attribute information is now configured.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_08d.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===1D/2D Linking===&lt;br /&gt;
The 1D SWMM / 2D TUFLOW linkage locations to connect the pipe network inlets to the surface have been already automatically defined in the SWMM Inlet Usage Layer, &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039;, using the &#039;Conn1D_2D&#039; attribute.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:swmm_iu_TS02_001_attribute_table_Conn1D2D.png]]&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To complete the pipe network, 1D/2D linkage is needed at the outlet of the pipe network. The &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_BC_Create_Channel_Endpoint_1D/2D_Connections |BC - Create channel endpoint 1D/2D connections]]&amp;lt;/u&amp;gt;&#039; tool will be used to automate this process.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Use the &#039;Select Features&#039; tool to select the most downstream object in &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, go to TUFLOW &amp;gt;&amp;gt; SWMM and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_BC_Create_Channel_Endpoint_1D/2D_Connections |BC - Create channel endpoint 1D/2D connections]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:*Input Conduits Layer: &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;&lt;br /&gt;
:*Tick on &#039;Selected features only&#039;&lt;br /&gt;
:*Create connections at: &#039;Downstream end&#039;&lt;br /&gt;
:*Offset Distance: 2&lt;br /&gt;
:*Length of BC lines: 10&lt;br /&gt;
:*Tick on &#039;Set 2D cell elevation to 1D culvert invert at 1D/2D connection cells if needed&#039;.&lt;br /&gt;
:*Output Layer:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
::&amp;lt;li&amp;gt;Click the ... and select &#039;Save to GeoPackage&#039;.&lt;br /&gt;
::&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039;. Click &#039;Save&#039;. &lt;br /&gt;
::&amp;lt;li&amp;gt;A dialog will open. In the layer name box, write &#039;&#039;&#039;2d_bc_SWMM_Pipe_Network_Connections_001_L&#039;&#039;&#039;.&lt;br /&gt;
::&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The &#039;&#039;&#039;2d_bc_SWMM_Pipe_Network_Connections_001_L&#039;&#039;&#039; appears in the QGIS Layers Panel. &lt;br /&gt;
&amp;lt;li&amp;gt;Click the &#039;Apply TUFLOW Styles to Current Layer&#039; symbol from the TUFLOW Plugin toolbar to style the &#039;&#039;&#039;2d_bc_SWMM_Pipe_Network_Connections_001_L&#039;&#039;&#039; layer. &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_09e.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update SWMM Junction Details===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, select the &#039;Edit Features In-Place&#039; tool. This allows the editing of an existing layer, instead of the creation of a new layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Junctions_Set_Attributes |Junctions - Set attributes ]]&amp;lt;/u&amp;gt;&#039; processing tool. This opens the dialog shown below.&lt;br /&gt;
:*Input Inlet Usage Layers: &#039;&#039;&#039;swmm_iu_TS02_001&#039;&#039;&#039;&lt;br /&gt;
:*Input BC Connection Layers: &#039;&#039;&#039;2d_bc_SWMM_Pipe_Network_Connections_001_L&#039;&#039;&#039;&lt;br /&gt;
:*General Options: &lt;br /&gt;
:::*Maximum Depth Option (Ymax): &#039;Set to 0.0&#039;.&lt;br /&gt;
:::*Nodes receiving subcatchment flows option (if connected to 2D): &#039;Based on options selected below&#039;.&lt;br /&gt;
:*Nodes connected to 2D without Inlets:&lt;br /&gt;
:::*None - leave defaults&lt;br /&gt;
:*Nodes connected to 2D with Inlets:&lt;br /&gt;
:::*Maximum depth (Ymax) option: &#039;Use global option&#039;&lt;br /&gt;
:::*Ysur: 0 (ignored because ponding &amp;gt; 0.0)&lt;br /&gt;
:::*Area of Ponding (Apond): 5&lt;br /&gt;
:*Nodes without 2D Connection:&lt;br /&gt;
:::*Surcharge Depth: 50&lt;br /&gt;
:::*Area of Ponding (Apond): 0.0&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Modify All Features&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;View the attributes associated within &#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039; to verify the data processing has been completed correctly. &amp;lt;br&amp;gt;&lt;br /&gt;
For a summary of the attributes associated with the &#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Junctions TUFLOW 2023-03-AD Release Notes (Table A.30)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM Reference Manual - Volume 2 (Hydraulics)]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_10d.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==SWMM Options==&lt;br /&gt;
The model we are building will use two SWMM INP files.&lt;br /&gt;
*&#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; was already created in TUFLOW SWMM Tutorial Module 1. It contained details defining the three culverts under the roads in the model. It also contained the associated 1D SWMM / 2D TUFLOW connection layer objects and the &#039;&#039;&#039;Project--Options&#039;&#039;&#039; necessary to execute the SWMM simulation. &#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; has been included in the base model we are using for Module 2. No changes will be made to it.&lt;br /&gt;
* We will create a new INP file for the SWMM pipe network inputs (covered in the next section). As SWMM Options are already included in &#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039;, they are not needed in this second (new) INP file. As such, no new SWMM Option commands are necessary for this tutorial.&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; If &#039;&#039;&#039;Project--Options&#039;&#039;&#039; are included in multiple GeoPackage/INP files, the entry that is referenced lowest in the TUFLOW SWMM Control File (TSCF) will be used.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Export SWMM INP File ==&lt;br /&gt;
We will now create a new INP file for the SWMM pipe network inputs. To do this, we need to convert &#039;&#039;&#039;sw02_001.gpkg&#039;&#039;&#039; into a SWMM INP file.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Right click on the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer in the &#039;&#039;&#039;sw02_001&#039;&#039;&#039; group (or any other SWMM layer in the same GeoPackage) and select &#039;TUFLOW&#039; &amp;gt; &#039;SWMM - Export inp file&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This will open the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Write_to_SWMM_inp |GeoPackage - Write to SWMM inp]]&amp;lt;/u&amp;gt;&#039; processing tool, prepopulated with the filename of the layer&#039;s GeoPackage. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This tool can also be activated from the Processing Toolbox. &lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This tool will save the SWMM inp file in the same folder location and with the same name as the GeoPackage input file. In this case, it will save &#039;&#039;&#039;sw02_001.inp&#039;&#039;&#039; to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_SWMM_Inputs_11e.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TUFLOW Boundary Updates ==&lt;br /&gt;
We will be using TUFLOW&#039;s 2D direct rainfall (also known as rain on grid) functionality for the catchment inflow boundary condition approach to demonstrate flows into the pipe network inlets. There is a wide range of direct rainfall options built into TUFLOW, including:&lt;br /&gt;
*&#039;&#039;&#039;Globally uniform rainfall:&#039;&#039;&#039; This method applies temporally varied rainfall uniformly (spatially) over the entire model. &lt;br /&gt;
*&#039;&#039;&#039;Spatially varying rainfall:&#039;&#039;&#039; This method applies temporally varied rainfall with spatial variation defined using polygon delineation, grid raster files or inbuilt TUFLOW TIN triangulation routines.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
The focus of this tutorial is not to demonstrate the available direct rainfall options. As such, we will be using the simplest approach, globally uniform rainfall. It does not require any GIS updates to implement the boundary condition change. Updates will be limited to the Boundary Condition Database reference and Control File syntax updates. Both are addressed in the next section. If you are interested in learning about the available direct rainfall options, please refer to &amp;lt;u&amp;gt;[[Tutorial_M06 |TUFLOW Tutorial Module 6]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Copy &#039;&#039;&#039;rainfall_stations.csv&#039;&#039;&#039; from the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\bc_dbase&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Copy &#039;&#039;&#039;bc_dbase_TS02_001.csv&#039;&#039;&#039; from the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\bc_dbase&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
It is common to use depth varying manning&#039;s roughness when using direct rainfall. A Materials File using depth varying inputs has been provided. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Copy &#039;&#039;&#039;materials_TS02_001.csv&#039;&#039;&#039; from the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_TUFLOW_Boundary_01a.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TUFLOW Geometry Update  ==&lt;br /&gt;
We will update TUFLOW&#039;s 2D elevation and landuse to represent changes associated with the urban development. The updates will be consolidated within &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
Copy the following TUFLOW geometry inputs to GeoPackage &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039;:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Right click anywhere in the QGIS Toolbar Panel and tick on &#039;Browser Panel&#039; from the &#039;Panels&#039; options.&lt;br /&gt;
&amp;lt;li&amp;gt;Within the QGIS Browser Panel, there is a dropdown directory, &#039;Project Home&#039;. This directory is a shortcut to the location where the QGIS workspace is saved. In this case, it is a shortcut to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt;In the &#039;Project Home&#039; directory, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\Tutorial_Data&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt;Drag the following layers (hold Ctrl to select multiple) from the &#039;&#039;&#039;Urban_Development.gpkg&#039;&#039;&#039; and drop them into the &#039;&#039;&#039;TS02_001.gpkg&#039;&#039;&#039; contained within the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\model\gis&#039;&#039;&#039; folder:&lt;br /&gt;
:*&#039;&#039;&#039;2d_mat_TS02_Dev_Buildings_001_R&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;2d_mat_TS02_Dev_Lots_001_R&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;2d_ztin_TS02_Dev_001_L&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;2d_ztin_TS02_Dev_001_P&#039;&#039;&#039;&lt;br /&gt;
:*&#039;&#039;&#039;2d_ztin_TS02_Dev_001_R&#039;&#039;&#039;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The focus of this tutorial is not to demonstrate 2D geometry updates. If you are interested in learning about the above &#039;&#039;&#039;2d_ztin&#039;&#039;&#039; and &#039;&#039;&#039;2d_mat&#039;&#039;&#039; changes, please refer to &amp;lt;u&amp;gt;[[Tutorial_M02 |TUFLOW Tutorial Module 2]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_TUFLOW_Geometry_01f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
To avoid the potential risk of overwriting existing control files accidentally, we will start by saving new control files where we will be making subsequent syntax updates during the following steps.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; in a Text Editor (Notepad++ is used here). Save the file as &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\runs&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt;Using the &#039;Open File&#039; function in Notepad++: &lt;br /&gt;
:*Open &#039;&#039;&#039;M02_001.tgc,&#039;&#039;&#039;  and save the file as &#039;&#039;&#039;TS02_001.tgc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
:*Open &#039;&#039;&#039;TS01_001.tbc,&#039;&#039;&#039;  and save the file as &#039;&#039;&#039;TS02_001.tbc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
:*Open &#039;&#039;&#039;TS01_001.tscf,&#039;&#039;&#039;  and save the file as &#039;&#039;&#039;TS02_001.tscf&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW Control File (TCF)===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS02_001.tcf&#039;&#039;&#039; and make the following reference updates:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Spatial Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\gis\TS02_001.gpkg&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specify the location of the GeoPackage Spatial Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Geometry Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\TS02_001.tgc&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Geometry Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\TS02_001.tbc&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Boundary Condition Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\bc_dbase\bc_dbase_TS02_001.csv&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the Boundary Condition Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read Materials File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\materials_TS02_001.csv&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the Materials Definition File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SWMM Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\TS02_001.tscf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the SWMM (1D) Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following line in the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Output Settings&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Map Cutoff Depth &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; 0.05 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Sets map cutoff depth of 0.05 meters&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save the TCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Sim_Control_01d.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Geometry Control File (TGC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS02_001.tgc&#039;&#039;&#039;. If using Notepad++, right click the file reference in &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; and select &#039;Open File&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command to the the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Topography&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section below the below the existing &#039;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Z Shape&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; command:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Create TIN Zpts &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_ztin_TS02_Dev_001_R | 2d_ztin_TS02_Dev_001_L | 2d_ztin_TS02_Dev_001_P&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Urban Development Topography TIN&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following lines in the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Materials&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section, below the existing material commands : &amp;lt;br&amp;gt; &lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Mat &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_mat_TS02_Dev_Lots_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;    ! Urban Development Landuse 1&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Mat &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_mat_TS02_Dev_Buildings_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ! Urban Development Landuse 2&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TGC.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Sim_Control_02b.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Boundary Control File (TBC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS02_001.tbc&#039;&#039;&#039;. If using Notepad++, right click the file reference in &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; and select &#039;Open File&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Comment out the &#039;Read GIS SA&#039; command by placing &#039;!&#039; before the command: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Read GIS SA == 2d_sa_M01_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following additional command lines:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Global Rainfall BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;RF_FC04&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reads in global rainfall&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_bc_SWMM_Pipe_Network_Connections_001_L&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Links the 1D Pipe Network Outlets to the 2D domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TBC.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Sim_Control_03d.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW SWMM Control File (TSCF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS02_001.tscf&#039;&#039;&#039;. If using Notepad++, right click the file reference in &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; and select &#039;Open File&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command lines after &#039;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read SWMM &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\sw01_001.inp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039;:   &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read SWMM &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\sw02_001.inp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! 1D SWMM Pipe Network Input File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SWMM Inlet Usage &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\swmm_iu_TS02_001.gpkg &amp;gt;&amp;gt; swmm_iu_TS02_001&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! 1D SWMM Pipe Network Inlet Usage Layer&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TSCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Sim_Control_04b.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Running the Simulation =&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;_run_TS01_HPC.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TS02_HPC.bat&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_02\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the &#039;&#039;&#039;TS02_5m_001.tcf&#039;&#039;&#039; :&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;exe&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2023-03-AF\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; %exe%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TS02_5m_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in Windows File Explorer to run the simulation. &lt;br /&gt;
&amp;lt;li&amp;gt;Did your TUFLOW SWMM model fail to run successfully? If so, here is a link to a troubleshooting guide: &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Troubleshooting | TUFLOW SWMM Troubleshooting]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS2_Run_Sim_01c.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Check Files and Results Output=&lt;br /&gt;
Complete the steps outlined in following links to review check files and simulation results from the TUFLOW SWMM model simulation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02_Check_QGIS | TUFLOW SWMM Tutorial 02 Check Files]]&amp;lt;/u&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02_Results_QGIS | TUFLOW SWMM Tutorial 02 Results]]&amp;lt;/u&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion =&lt;br /&gt;
* 1D EPA SWMM pipe network features and 2D direct rainfall (rain on grid) hydrology have been added to the tutorial model.&lt;br /&gt;
* Check files were used to review the 1D SWMM pipe network model features.&lt;br /&gt;
* Simulation results in the 1D SWMM pipe network were viewed in time series and long section plot format.&lt;br /&gt;
* For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Other TUFLOW SWMM Tutorials=&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01 | TUFLOW SWMM Module 1]]&amp;lt;/u&amp;gt;  - 1D SWMM Culverts&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 2D TUFLOW Direct Rainfall Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M03 | TUFLOW SWMM Module 3]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M04 | TUFLOW SWMM Module 4]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology: Executing multiple different event simulations from a single model control file.&lt;br /&gt;
*&amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM | XPSWMM to TUFLOW SWMM]]&amp;lt;/u&amp;gt;  - How to convert an XPSWMM model to TUFLOW SWMM.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_SWMM_Tutorial_Introduction#Tutorial_Modules| Back to TUFLOW SWMM Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M01&amp;diff=45186</id>
		<title>TUFLOW SWMM Tutorial M01</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M01&amp;diff=45186"/>
		<updated>2025-10-23T06:14:35Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In this module, three culverts are added to represent flow through three separate road embankments. EPA SWMM is used as the solution scheme for the 1D culvert flow calculations, dynamically linked with the TUFLOW HPC 2D solution scheme. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TUFLOW SWMM Tutorial Module 1 builds from the model created in &amp;lt;u&amp;gt;[[Tutorial_M02 |TUFLOW Tutorial Module 2]]&amp;lt;/u&amp;gt; (in the TUFLOW Only tutorial dataset). The completed TUFLOW Module 2 model is provided in the &#039;&#039;&#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW&#039;&#039;&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. If you are not already familiar with TUFLOW, we recommend first completing Module 1 and 2 of the &amp;lt;u&amp;gt;[[Tutorial_Introduction | &amp;quot;TUFLOW Only&amp;quot; Tutorials]]&amp;lt;/u&amp;gt; to establish an understanding of 2D modeling, before progressing to learning how to link 1D EPA SWMM to 2D TUFLOW. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Project Initialization =&lt;br /&gt;
Three steps are required for the project initialization:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Setting the  QGIS Project Coordinate Reference System (CRS).&lt;br /&gt;
&amp;lt;li&amp;gt; Configuring the QGIS TUFLOW Plugin.&lt;br /&gt;
&amp;lt;li&amp;gt; Establishing the new TUFLOW model GeoPackage file that will include new GIS inputs associated with this model update.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== QGIS ==&lt;br /&gt;
QGIS Version 3.34 or newer, and QGIS TUFLOW Plugin 3.11 or newer are required to access the SWMM Processing Tools described in the following sections. For installation, see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/TUFLOW_QGIS_Plugin Installation of TUFLOW Plugin]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
Firstly, define the Coordinate Reference System (CRS), also called ‘Projection’, for the QGIS workspace:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Open QGIS.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Properties… &lt;br /&gt;
&amp;lt;li&amp;gt;In the CRS tab, type ‘WGS 84 / UTM Zone 60S’.&lt;br /&gt;
&amp;lt;li&amp;gt;Select the matching projection in the &#039;Predefined Coordinate Reference Systems&#039; section.&lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Apply’ and ‘OK’.&lt;br /&gt;
&amp;lt;li&amp;gt;Ensure that the projection is set correctly by viewing the bottom right hand corner of the workspace. It should read ‘EPSG:32760’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_01a.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Model==&lt;br /&gt;
===Load and Style TUFLOW Model Files===&lt;br /&gt;
Load and Style the GIS layers from the TUFLOW model:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the ‘Load TUFLOW Layers from TCF’ symbol from the TUFLOW Plugin toolbar.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: Tuflow_plugin_load_tcf_layers.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder and select &#039;&#039;&#039;M02_5m_001.tcf&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Load Layers window, select:&lt;br /&gt;
* Ordering Options: Alphabetical&lt;br /&gt;
* Grouping Options: Group by control file&lt;br /&gt;
* Raster Load Options: Load Normally &lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Open’ and ‘OK’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Style the TUFLOW layers however you desire. Common steps to do this are:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the ‘Apply TUFLOW Styles to Open Layers’ symbol from the TUFLOW Plugin toolbar.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_styles_open_layers.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Change the symbology of the DEM:&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM&#039;&#039;&#039; file in the QGIS Layers Panel and select &#039;Properties&#039;.&lt;br /&gt;
*From the Symbology tab, under &#039;Band Rendering&#039; select the following options:&lt;br /&gt;
:*Render type: Singleband pseudocolor&lt;br /&gt;
:*Color ramp: Spectral&lt;br /&gt;
:*Color ramp: Invert Color Ramp&lt;br /&gt;
:*Mode: Equal Interval&lt;br /&gt;
*From the Transparency tab, set the Global Opacity to 75%.&lt;br /&gt;
*Click &#039;Apply&#039; and &#039;OK&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_03d.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a hillshade of the DEM:&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM&#039;&#039;&#039; file in the QGIS Layers Panel and select &#039;Duplicate Layer&#039;.&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM_copy&#039;&#039;&#039; and select &#039;Rename Layer&#039;. Rename the layer to &#039;&#039;&#039;DEM_Hillshade&#039;&#039;&#039;.&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM_Hillshade&#039;&#039;&#039; and select &#039;Properties&#039;.&lt;br /&gt;
*From the Symbology tab, under &#039;Band Rendering&#039; select the following options:&lt;br /&gt;
:*Render type: Hillshade&lt;br /&gt;
:*Z Factor: 3&lt;br /&gt;
*Click &#039;Apply&#039; and &#039;OK&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_04b.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW Plugin===&lt;br /&gt;
Next we need to configure the QGIS TUFLOW Plugin settings to link with the project folder where we will build our model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;Configure TUFLOW Project&#039; tool by selecting Plugins &amp;gt; TUFLOW &amp;gt; Editing &amp;gt; Configure / Create TUFLOW Project.&lt;br /&gt;
&amp;lt;li&amp;gt;Set the CRS (Coordinate Reference System) by selecting one of the vector layers associated with the opened model using the drop menu list. For example, &#039;&#039;2d_bc_M01_001_L&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW folder, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01&#039;&#039;&#039; folder. Click &#039;Select Folder&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW single precision executable file, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;exe\2023-03-AF&#039;&#039;&#039; folder. Select &#039;&#039;&#039;TUFLOW_iSP_w64.exe&#039;&#039;&#039; and click &#039;Open&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;GPKG&#039; as the GIS Format. &lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;TUFLOW Classic / HPC&#039; as the TUFLOW Engine.&lt;br /&gt;
&amp;lt;li&amp;gt;Tick on &#039;Save Default Settings Globally&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TS1_Configure_Project_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Increment Model GeoPackage File === &lt;br /&gt;
We will now save a copy of &#039;&#039;&#039;M02_001.gpkg&#039;&#039;&#039; with a new name, &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039;. This project initialization step is recommended so prior model versions from a project are not broken as a result of changes being made to GIS inputs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the &#039;Increment Selected Layer&#039; symbol from the TUFLOW Plugin toolbar. This opens the dialog shown below. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_increment_layer.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
:*Source Layer: Automatically set to the selected layer, &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
:*Output Database: Click &#039;Browse...&#039;. This will automatically open to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder. Set the new output database name to &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039; and click &#039;Save&#039;.&lt;br /&gt;
:*Output Layer Name: This will automatically increment to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;2&#039;&#039;_L&#039;&#039;&#039;. Change the name back to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;1&#039;&#039;_L&#039;&#039;&#039;.&lt;br /&gt;
:*Delete the pre-filled &#039;Incremented Layer&#039; entry in the table. We do not wish to modify the version number associated with the 2d_bc file. This current exercise will not change the version number of any of the GIS layer inputs, it is simply establishing a copy of the existing GeoPackage where future edits will be saved to.&lt;br /&gt;
:*Select &#039;Remove Source Layer from Workspace&#039;.&lt;br /&gt;
:*Select &#039;Increment Layer and Preserve Database&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The GeoPackage database, &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039; will now be in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model\gis&#039;&#039;&#039; folder. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_05c.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Save QGIS Project Workspace===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Save As.&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01&#039;&#039;&#039; folder and type &#039;&#039;&#039;SWMM_M01&#039;&#039;&#039; as the filename with the extension .qgz.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= GIS Inputs =&lt;br /&gt;
==Create SWMM GeoPackage Spatial Database== &lt;br /&gt;
Create a new folder in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model&#039;&#039;&#039; folder called &#039;&#039;&#039;swmm&#039;&#039;&#039;. This is the location where all SWMM inputs will be saved.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
In QGIS, create the SWMM GeoPackage Database:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Go to Processing &amp;gt; Toolbox from the top dropdown menu options to open the Processing Toolbox.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Create |GeoPackage - Create]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:*To set the ‘CRS for GeoPackage’: Click the drop down menu and select ‘Project CRS: EPSG:32760 - WGS 84 / UTM zone 60S’.&lt;br /&gt;
:*To set the ‘Initial SWMM Sections’: Click …, and tick on (if not already ticked): &lt;br /&gt;
::*&#039;&#039;&#039;Project--Title&#039;&#039;&#039;, &#039;&#039;&#039;Project--Options&#039;&#039;&#039;, &#039;&#039;&#039;Project --Report.&#039;&#039;&#039;&lt;br /&gt;
::*&#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039;, &#039;&#039;&#039;Nodes--Outfalls.&#039;&#039;&#039;, &#039;&#039;&#039;Nodes--Storage.&#039;&#039;&#039; &lt;br /&gt;
::*&#039;&#039;&#039;Links--Conduits, Links--Streets&#039;&#039;&#039;. &lt;br /&gt;
:*To define the ‘GPKG filename to create’: Click …, select ‘Save to File’. Navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and save the GeoPackage database as &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Run’. &lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click ‘Close’.&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and drag and drop &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;, then select &#039;Add Layers&#039; to open all vectors within &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039;. By default, all items in the available list should have been selected. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, move &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039; to the top of the list. This will ensure the data within this database file is displayed above all other layers in the project. &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_01g.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GIS Data Entry ==&lt;br /&gt;
&lt;br /&gt;
A GeoPackage database called &#039;&#039;&#039;SWMM_Culverts.gpkg&#039;&#039;&#039; is provided in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\Tutorial_Data&#039;&#039;&#039; folder. It contains three layers: &lt;br /&gt;
:*&#039;&#039;&#039;Conduits:&#039;&#039;&#039; defines the culvert location, type and geometry.&lt;br /&gt;
:*&#039;&#039;&#039;Outfalls:&#039;&#039;&#039; defines the downstream culvert inverts.&lt;br /&gt;
:*&#039;&#039;&#039;Storage_nodes:&#039;&#039;&#039; defines the upstream culvert inverts.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To populate the GeoPackage database created in the previous section:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\Tutorial_Data&#039;&#039;&#039; folder. Drag and drop the &#039;&#039;&#039;SWMM_Culverts.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;. By default, all items in the GeoPackage database will be selected. Click &#039;Add Layers&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click on the &#039;&#039;&#039;SWMM_Culverts &amp;gt;&amp;gt; Conduits&#039;&#039;&#039; layer and select &#039;Zoom to Layer(s)&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Use the &#039;Select Features&#039; tool to highlight all items included in &#039;&#039;&#039;Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and &#039;Copy Features&#039; from the drop down menu. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) the &#039;&#039;&#039;sw01_001.gpkg &amp;gt;&amp;gt; Links--Conduits&#039;&#039;&#039; layer. &lt;br /&gt;
&amp;lt;li&amp;gt;Make the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer editable by clicking the &#039;Toggle Editing&#039; symbol [[File:toggle_editing_icon.png|27x27px]].&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and click &#039;Paste Features&#039; from the drop down menu.&lt;br /&gt;
&amp;lt;li&amp;gt;Toggle the editing off to save the edits.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_02f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Similarly, copy the objects from &#039;&#039;&#039;Storage_nodes&#039;&#039;&#039; into &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039;. Junctions and storage nodes are allowed at the upstream end of culverts. Storage nodes are preferred for culverts receiving 2D flows not through a storm drain inlet.&lt;br /&gt;
&amp;lt;li&amp;gt;Also copy the objects from &#039;&#039;&#039;Outfalls&#039;&#039;&#039; into &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039;. Outfalls are treated as outlets, and are required at the downstream end of culverts.&lt;br /&gt;
&amp;lt;li&amp;gt; Toggle off editing and save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;Remove &#039;&#039;&#039;SWMM_Culverts.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_03f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Inspect the attribute information within the respective layers to familiarize yourself with the data.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_04f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GIS Data Updates ==&lt;br /&gt;
The provided GIS data requires numerous updates before proceeding to a model simulation. We have intentionally built these updates into this tutorial to demonstrate some of the available TUFLOW SWMM model build processing tools. The following updates are being made to objects and layers within &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
===Update Conduit Details===&lt;br /&gt;
==== Node Details ====&lt;br /&gt;
Stage 1 of building the 1D SWMM network involves updating the &#039;From Node&#039; and &#039;To Node&#039; attribute information in &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;. This information defines the Link/Node connections. &amp;lt;br&amp;gt;&lt;br /&gt;
The information we will be adding to &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; is extracted from &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039; automatically using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; tool from the Processing Toolbox.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, select the &#039;Edit Features In-Place&#039; tool [[File:edit_features_in_place_icon.png]]. This allows the editing of an existing layer, instead of the creation of a new layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.  &lt;br /&gt;
:*SWMM Node Layers: Tick on &#039;&#039;&#039;sw01_001 &amp;gt;&amp;gt; Nodes--Storage&#039;&#039;&#039; and &#039;&#039;&#039;sw01_001 &amp;gt;&amp;gt; Nodes--Outfalls&#039;&#039;&#039;. Click &#039;OK&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Modify All Features&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;View the attributes associated within &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; to verify the data processing has been completed correctly. The &#039;From Node&#039; and &#039;To Node&#039; attribute information is now configured correctly. For a broader understanding of the other attributes associated with the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Conduits TUFLOW 2023-03-AD Release Notes (Table A.19)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM Reference Manual - Volume 2 (Hydraulics)]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Tip 1:&#039;&#039;&#039; If you wish to only update a selection of objects, instead of selecting the entire &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; dataset, select the target objects first using the &#039;Select Features&#039; tool. The &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; tool will provide an option to &#039;Modify Selected Features&#039;, instead of &#039;Modify All Features.&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Tip 2:&#039;&#039;&#039; Unique Node ID&#039;s are required for the SWMM network to function error free. If you are following this workflow for a project model build, please ensure the &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039; object ID information is unique. If duplicate ID values are assigned to multiple objects, consider using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Integrity_Make_Object_Names_Unique |Integrity - Make object names unique ]]&amp;lt;/u&amp;gt;&#039; TUFLOW SWMM processing tool to ensure all ID values are unique before using &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_05g.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Update Losses====&lt;br /&gt;
Stage 2 involves updating the loss attributes in the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer. In this example, default loss values are used and will be entered manually. These loss values can be adjusted in your project models to reflect site specific information if desired. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;For each conduit, update the following fields:&lt;br /&gt;
:*losses_Kentry: 0.5&lt;br /&gt;
:*losses_Kexit: 1.0&lt;br /&gt;
:*losses_Kavg: 0.0&lt;br /&gt;
The video below demonstrates how to do this one entry at a time, or via the bulk attribute update options in QGIS.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_06f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Since all the 1D SWMM inputs in this model are embankment culverts that all use the same loss parameters, it&#039;s not necessary to specify different loss attributes. The &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt; will demonstrate an urban pipe network added to the model, with different loss attributes required for the road culverts and underground storm pipe network links. To simplify this step, Module 2 uses the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; processing tool. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Create 1D/2D Connections===&lt;br /&gt;
The following instructions introduce a new tool that automates the creation of 1D/2D connections. Due to the limitations of SWMM boundary conditions, HX lines are required for the upstream end of the culvert (rather than SX), and SX connections are used at the downstream end of the culvert.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, go to TUFLOW &amp;gt;&amp;gt; SWMM and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_BC_Create_Channel_Endpoint_1D/2D_Connections |BC - Create channel endpoint 1D/2D connections]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.  &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Ensure the &#039;Edit Features In-Place&#039; tool has been turned off. &lt;br /&gt;
:*Input Conduits Layer: &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;&lt;br /&gt;
:*Create connections at: &#039;Both ends&#039;. &lt;br /&gt;
:*Offset Distance: 2&lt;br /&gt;
:*Length of BC lines: 10&lt;br /&gt;
:*Tick on &#039;Set 2D cell elevation to 1D culvert invert at 1D/2D connection cells if needed&#039;.&lt;br /&gt;
:*Output Layer:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
::&amp;lt;li&amp;gt;Click the ... and select &#039;Save to GeoPackage&#039;.&lt;br /&gt;
::&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039;. Click Save. &lt;br /&gt;
::&amp;lt;li&amp;gt;A dialog will open. In the Layer name field, write &#039;&#039;&#039;2d_bc_SWMM_Culvert_Connections_001_L&#039;&#039;&#039;.&lt;br /&gt;
::&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The &#039;&#039;&#039;2d_bc_SWMM_Culvert_Connections_001_L&#039;&#039;&#039; appears in the QGIS Layers Panel. Select &#039;Apply TUFLOW Styles to Current Layer&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_07f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The positions of the HX and SX connections may not be in the optimum location or extent using the generalized automated tool. As such, it is recommended to check the output from this processing step. In this module, the 1D/2D connections associated with &#039;&#039;&#039;2d_bc_SWMM_Culvert_Connections_001_L&#039;&#039;&#039; are checked in &amp;lt;u&amp;gt;[[TUFLOW SWMM Tutorial M01 Check QGIS|TUFLOW SWMM Tutorial 01 Check Files]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update Storage Node Details===&lt;br /&gt;
The attributes of the storage nodes need to be modified to represent the storage of the connected HX cells since these cells do not represent storage themselves. The area associated with the storage nodes should be similar to the areas of the HX cells. To set the area, we will use a &amp;quot;PYRAMIDAL&amp;quot; shape with the SWMM side slope (run/rise) (Z) set to 0 to represent vertical walls. As the cell size is 5m, and the length of each polyline is 10m, the length (L) will be set to 10m and the width (W) to 5m. These sizes will be modified later when we change the boundary conditions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt; Right click &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Set the following attributes:&lt;br /&gt;
:* YMax: 50.0 (this is a value greater than the expected water level. It is required to allow water to fill node)&lt;br /&gt;
:* TYPE: &#039;PYRAMIDAL&#039;&lt;br /&gt;
:* L: 10&lt;br /&gt;
:* W: 5&lt;br /&gt;
:* Z: 0.0&lt;br /&gt;
&amp;lt;li&amp;gt; Turn off editing to save the edits.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_08g.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==SWMM Options==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Project--Options&#039;&#039;&#039; and toggle on editing. &lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Project--Options&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the following options: &lt;br /&gt;
*&#039;&#039;&#039;START_DATE&#039;&#039;&#039;: 2020-01-01 (Date Format: YYYY-MM-DD)&lt;br /&gt;
*&#039;&#039;&#039;REPORT_STEP&#039;&#039;&#039;: 00:01:00&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.  &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_09f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;Save the QGIS Project Workspace:&lt;br /&gt;
&lt;br /&gt;
# Go to Project &amp;gt; Save. This will update &#039;&#039;&#039;SWMM_M01.qgz&#039;&#039;&#039;, which was created previously in the folder &#039;&#039;&#039;TUFLOW_SWMM_Module_01&#039;&#039;&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Export SWMM INP File ==&lt;br /&gt;
SWMM is not able to read the &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039; database directly, therefore, we need to convert the GeoPackage file to a SWMM INP file format.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; (or any of the SWMM layers) and select &#039;TUFLOW&#039; &amp;gt; &#039;SWMM - Export inp file&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This will open the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Write_to_SWMM_inp |GeoPackage - Write to SWMM inp]]&amp;lt;/u&amp;gt;&#039; processing tool, prepopulated with the filename of the layer&#039;s GeoPackage. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This tool can also be activated from the Processing Toolbox. &lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This tool will save the SWMM inp file in the same folder location and with the same name as the GeoPackage input file. In this case, it will save &#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_10e.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
The following steps will require use of a text editor. The tutorial demonstration uses Notepad++. For its configuration information refer to &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips | Notepad++ Tips]]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To differentiate the TUFLOW SWMM tutorials from the TUFLOW/ESTRY tutorials, &#039;TS&#039; is used as the file prefix in this series of tutorials. To avoid the potential risk of overwriting existing control files accidentally, we will start by saving new control files where we will be making subsequent syntax updates during the following steps. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set up the simulation control files:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder and open &#039;&#039;&#039;M02_5m_001.tcf&#039;&#039;&#039; in a Text Editor (Notepad++ is recommended). &lt;br /&gt;
&amp;lt;li&amp;gt;Save the file as &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;M01_001.tbc&#039;&#039;&#039; using the &#039;Open File&#039; function in Notepad++. Save the file as &#039;&#039;&#039;TS01_001.tbc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new blank text file called &#039;&#039;&#039;TS01_001.tscf&#039;&#039;&#039; and save it in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_00a.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Control File (TCF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; in a Text Editor (Notepad++ is recommended) and make the following reference updates:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Spatial Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\gis\TS01_001.gpkg &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ! Specify the location of the GeoPackage Spatial Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\TS01_001.tbc&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Boundary Conditions Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Add the following line in the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Model Inputs&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SWMM Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\TS01_001.tscf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the SWMM (1D) Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Add the following line in the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Output Settings&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;NetCDF Output Start Date &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2020-01-01 00:00 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Sets the output units for the NetCDF time variable&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Save the TCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_01c.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Boundary Control File (TBC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;From &#039;&#039;&#039;TS01_001.tcf&#039;&#039;&#039;, right click &#039;&#039;&#039;TS01_001.tbc&#039;&#039;&#039; and select &#039;Open File&#039;. This opens &#039;&#039;&#039;TS01_001.tbc&#039;&#039;&#039; into a new tab in Notepad ++.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command line after &#039;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SA &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_sa_M01_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039;:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_bc_SWMM_Culvert_Connections_001_L&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;      ! Links 1D SWMM culverts to the 2D TUFLOW domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Save the TBC.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_02c.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW SWMM Control File (TSCF) ===&lt;br /&gt;
A new control file, the TUFLOW SWMM Control File (TSCF), is used to control the SWMM input data. All 1D SWMM files and commands are referenced in the TUFLOW SWMM Control File.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;From &#039;&#039;&#039;TS01_001.tcf&#039;&#039;&#039;, right click &#039;&#039;&#039;TS01_001.tscf&#039;&#039;&#039; and select &#039;Open File&#039;. This opens &#039;&#039;&#039;TS01_001.tscf&#039;&#039;&#039; into a new tab in Notepad ++.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read SWMM &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\sw01_001.inp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! 1D SWMM culvert input file&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TSCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_03c.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Running the Simulation =&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;_run_M02_HPC.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TS01_HPC.bat&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; :&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;exe&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2023-03-AF\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; %exe%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TS01_5m_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in Windows File Explorer to run the simulation. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
If the model simulation doesn&#039;t run:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Check in the screen output or the tlf file near the end for &amp;quot;For SWMM Model Errors see:&amp;quot;. This indicates that there is something wrong with the SWMM inputs. Reviewing that file will provide feedback on what is wrong.&lt;br /&gt;
&amp;lt;li&amp;gt; Review this link for common &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Troubleshooting | TUFLOW SWMM Troubleshooting]]&amp;lt;/u&amp;gt; advice.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Run_Sim_01d.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Check Files and Results Output=&lt;br /&gt;
Complete the steps outlined in following links to review check files and simulation results from the TUFLOW SWMM model simulation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01_Check_QGIS | TUFLOW SWMM Tutorial 01 Check Files]]&amp;lt;/u&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01_Results_QGIS | TUFLOW SWMM Tutorial 01 Results]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion =&lt;br /&gt;
*EPA SWMM culverts were added to convey water through the structures under the three roads in the tutorial model.&lt;br /&gt;
*Check files were used to review the inclusion of 1D SWMM culverts to a 2D TUFLOW model.&lt;br /&gt;
*Results through the 1D culverts were assessed.&lt;br /&gt;
*For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Other TUFLOW SWMM Tutorials=&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01 | TUFLOW SWMM Module 1]]&amp;lt;/u&amp;gt;  - 1D SWMM Culverts&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 2D TUFLOW Direct Rainfall Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M03 | TUFLOW SWMM Module 3]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M04 | TUFLOW SWMM Module 4]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology: Executing multiple different event simulations from a single model control file.&lt;br /&gt;
*&amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM | XPSWMM to TUFLOW SWMM]]&amp;lt;/u&amp;gt;  - How to convert an XPSWMM model to TUFLOW SWMM.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_SWMM_Tutorial_Introduction#Tutorial_Modules| Return to TUFLOW SWMM Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M01&amp;diff=45185</id>
		<title>TUFLOW SWMM Tutorial M01</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_M01&amp;diff=45185"/>
		<updated>2025-10-23T06:13:43Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Other TUFLOW SWMM Tutorials */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In this module, three culverts are added to represent flow through three separate road embankments. EPA SWMM is used as the solution scheme for the 1D culvert flow calculations, dynamically linked with the TUFLOW HPC 2D solution scheme. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TUFLOW SWMM Tutorial Module 1 builds from the model created in &amp;lt;u&amp;gt;[[Tutorial_M02 |TUFLOW Tutorial Module 2]]&amp;lt;/u&amp;gt; (in the TUFLOW Only tutorial dataset). The completed TUFLOW Module 2 model is provided in the &#039;&#039;&#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW&#039;&#039;&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. If you are not already familiar with TUFLOW, we recommend first completing Module 1 and 2 of the &amp;lt;u&amp;gt;[[Tutorial_Introduction | &amp;quot;TUFLOW Only&amp;quot; Tutorials]]&amp;lt;/u&amp;gt; to establish an understanding of 2D modeling, before progressing to learning how to link 1D EPA SWMM to 2D TUFLOW. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Project Initialization =&lt;br /&gt;
Three steps are required for the project initialization:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Setting the  QGIS Project Coordinate Reference System (CRS).&lt;br /&gt;
&amp;lt;li&amp;gt; Configuring the QGIS TUFLOW Plugin.&lt;br /&gt;
&amp;lt;li&amp;gt; Establishing the new TUFLOW model GeoPackage file that will include new GIS inputs associated with this model update.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== QGIS ==&lt;br /&gt;
QGIS Version 3.34 or newer, and QGIS TUFLOW Plugin 3.11 or newer are required to access the SWMM Processing Tools described in the following sections. For installation, see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/TUFLOW_QGIS_Plugin Installation of TUFLOW Plugin]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
Firstly, define the Coordinate Reference System (CRS), also called ‘Projection’, for the QGIS workspace:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Open QGIS.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Properties… &lt;br /&gt;
&amp;lt;li&amp;gt;In the CRS tab, type ‘WGS 84 / UTM Zone 60S’.&lt;br /&gt;
&amp;lt;li&amp;gt;Select the matching projection in the &#039;Predefined Coordinate Reference Systems&#039; section.&lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Apply’ and ‘OK’.&lt;br /&gt;
&amp;lt;li&amp;gt;Ensure that the projection is set correctly by viewing the bottom right hand corner of the workspace. It should read ‘EPSG:32760’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_01a.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==TUFLOW Model==&lt;br /&gt;
===Load and Style TUFLOW Model Files===&lt;br /&gt;
Load and Style the GIS layers from the TUFLOW model:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the ‘Load TUFLOW Layers from TCF’ symbol from the TUFLOW Plugin toolbar.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: Tuflow_plugin_load_tcf_layers.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder and select &#039;&#039;&#039;M02_5m_001.tcf&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Load Layers window, select:&lt;br /&gt;
* Ordering Options: Alphabetical&lt;br /&gt;
* Grouping Options: Group by control file&lt;br /&gt;
* Raster Load Options: Load Normally &lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Open’ and ‘OK’.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Style the TUFLOW layers however you desire. Common steps to do this are:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the ‘Apply TUFLOW Styles to Open Layers’ symbol from the TUFLOW Plugin toolbar.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_styles_open_layers.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Change the symbology of the DEM:&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM&#039;&#039;&#039; file in the QGIS Layers Panel and select &#039;Properties&#039;.&lt;br /&gt;
*From the Symbology tab, under &#039;Band Rendering&#039; select the following options:&lt;br /&gt;
:*Render type: Singleband pseudocolor&lt;br /&gt;
:*Color ramp: Spectral&lt;br /&gt;
:*Color ramp: Invert Color Ramp&lt;br /&gt;
:*Mode: Equal Interval&lt;br /&gt;
*From the Transparency tab, set the Global Opacity to 75%.&lt;br /&gt;
*Click &#039;Apply&#039; and &#039;OK&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_03d.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Create a hillshade of the DEM:&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM&#039;&#039;&#039; file in the QGIS Layers Panel and select &#039;Duplicate Layer&#039;.&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM_copy&#039;&#039;&#039; and select &#039;Rename Layer&#039;. Rename the layer to &#039;&#039;&#039;DEM_Hillshade&#039;&#039;&#039;.&lt;br /&gt;
*Right click on the &#039;&#039;&#039;DEM_Hillshade&#039;&#039;&#039; and select &#039;Properties&#039;.&lt;br /&gt;
*From the Symbology tab, under &#039;Band Rendering&#039; select the following options:&lt;br /&gt;
:*Render type: Hillshade&lt;br /&gt;
:*Z Factor: 3&lt;br /&gt;
*Click &#039;Apply&#039; and &#039;OK&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_04b.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===TUFLOW Plugin===&lt;br /&gt;
Next we need to configure the QGIS TUFLOW Plugin settings to link with the project folder where we will build our model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;Configure TUFLOW Project&#039; tool by selecting Plugins &amp;gt; TUFLOW &amp;gt; Editing &amp;gt; Configure / Create TUFLOW Project.&lt;br /&gt;
&amp;lt;li&amp;gt;Set the CRS (Coordinate Reference System) by selecting one of the vector layers associated with the opened model using the drop menu list. For example, &#039;&#039;2d_bc_M01_001_L&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW folder, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01&#039;&#039;&#039; folder. Click &#039;Select Folder&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;To set the location of the TUFLOW single precision executable file, click &#039;Browse...&#039; and navigate to the &#039;&#039;&#039;exe\2023-03-AF&#039;&#039;&#039; folder. Select &#039;&#039;&#039;TUFLOW_iSP_w64.exe&#039;&#039;&#039; and click &#039;Open&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;GPKG&#039; as the GIS Format. &lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;TUFLOW Classic / HPC&#039; as the TUFLOW Engine.&lt;br /&gt;
&amp;lt;li&amp;gt;Tick on &#039;Save Default Settings Globally&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TS1_Configure_Project_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Increment Model GeoPackage File === &lt;br /&gt;
We will now save a copy of &#039;&#039;&#039;M02_001.gpkg&#039;&#039;&#039; with a new name, &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039;. This project initialization step is recommended so prior model versions from a project are not broken as a result of changes being made to GIS inputs.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click on the &#039;Increment Selected Layer&#039; symbol from the TUFLOW Plugin toolbar. This opens the dialog shown below. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File:tuflow_plugin_increment_layer.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
:*Source Layer: Automatically set to the selected layer, &#039;&#039;&#039;2d_bc_M01_001_L&#039;&#039;&#039;.&lt;br /&gt;
:*Output Database: Click &#039;Browse...&#039;. This will automatically open to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder. Set the new output database name to &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039; and click &#039;Save&#039;.&lt;br /&gt;
:*Output Layer Name: This will automatically increment to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;2&#039;&#039;_L&#039;&#039;&#039;. Change the name back to &#039;&#039;&#039;2d_bc_M01_00&#039;&#039;1&#039;&#039;_L&#039;&#039;&#039;.&lt;br /&gt;
:*Delete the pre-filled &#039;Incremented Layer&#039; entry in the table. We do not wish to modify the version number associated with the 2d_bc file. This current exercise will not change the version number of any of the GIS layer inputs, it is simply establishing a copy of the existing GeoPackage where future edits will be saved to.&lt;br /&gt;
:*Select &#039;Remove Source Layer from Workspace&#039;.&lt;br /&gt;
:*Select &#039;Increment Layer and Preserve Database&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The GeoPackage database, &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039; will now be in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model\gis&#039;&#039;&#039; folder. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Initialization_05c.mp4|width=1235}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Save QGIS Project Workspace===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Go to Project &amp;gt; Save As.&lt;br /&gt;
&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01&#039;&#039;&#039; folder and type &#039;&#039;&#039;SWMM_M01&#039;&#039;&#039; as the filename with the extension .qgz.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= GIS Inputs =&lt;br /&gt;
==Create SWMM GeoPackage Spatial Database== &lt;br /&gt;
Create a new folder in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model&#039;&#039;&#039; folder called &#039;&#039;&#039;swmm&#039;&#039;&#039;. This is the location where all SWMM inputs will be saved.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
In QGIS, create the SWMM GeoPackage Database:&lt;br /&gt;
&amp;lt;ol&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Go to Processing &amp;gt; Toolbox from the top dropdown menu options to open the Processing Toolbox.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Create |GeoPackage - Create]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.&lt;br /&gt;
:*To set the ‘CRS for GeoPackage’: Click the drop down menu and select ‘Project CRS: EPSG:32760 - WGS 84 / UTM zone 60S’.&lt;br /&gt;
:*To set the ‘Initial SWMM Sections’: Click …, and tick on (if not already ticked): &lt;br /&gt;
::*&#039;&#039;&#039;Project--Title&#039;&#039;&#039;, &#039;&#039;&#039;Project--Options&#039;&#039;&#039;, &#039;&#039;&#039;Project --Report.&#039;&#039;&#039;&lt;br /&gt;
::*&#039;&#039;&#039;Nodes--Junctions&#039;&#039;&#039;, &#039;&#039;&#039;Nodes--Outfalls.&#039;&#039;&#039;, &#039;&#039;&#039;Nodes--Storage.&#039;&#039;&#039; &lt;br /&gt;
::*&#039;&#039;&#039;Links--Conduits, Links--Streets&#039;&#039;&#039;. &lt;br /&gt;
:*To define the ‘GPKG filename to create’: Click …, select ‘Save to File’. Navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and save the GeoPackage database as &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Click ‘Run’. &lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click ‘Close’.&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder and drag and drop &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;, then select &#039;Add Layers&#039; to open all vectors within &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039;. By default, all items in the available list should have been selected. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, move &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039; to the top of the list. This will ensure the data within this database file is displayed above all other layers in the project. &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_01g.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GIS Data Entry ==&lt;br /&gt;
&lt;br /&gt;
A GeoPackage database called &#039;&#039;&#039;SWMM_Culverts.gpkg&#039;&#039;&#039; is provided in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\Tutorial_Data&#039;&#039;&#039; folder. It contains three layers: &lt;br /&gt;
:*&#039;&#039;&#039;Conduits:&#039;&#039;&#039; defines the culvert location, type and geometry.&lt;br /&gt;
:*&#039;&#039;&#039;Outfalls:&#039;&#039;&#039; defines the downstream culvert inverts.&lt;br /&gt;
:*&#039;&#039;&#039;Storage_nodes:&#039;&#039;&#039; defines the upstream culvert inverts.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To populate the GeoPackage database created in the previous section:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\Tutorial_Data&#039;&#039;&#039; folder. Drag and drop the &#039;&#039;&#039;SWMM_Culverts.gpkg&#039;&#039;&#039; into QGIS. &lt;br /&gt;
&amp;lt;li&amp;gt;When prompted by QGIS, under &#039;Options&#039;, tick on &#039;Add layers to group&#039;. By default, all items in the GeoPackage database will be selected. Click &#039;Add Layers&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click on the &#039;&#039;&#039;SWMM_Culverts &amp;gt;&amp;gt; Conduits&#039;&#039;&#039; layer and select &#039;Zoom to Layer(s)&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Use the &#039;Select Features&#039; tool to highlight all items included in &#039;&#039;&#039;Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and &#039;Copy Features&#039; from the drop down menu. &lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) the &#039;&#039;&#039;sw01_001.gpkg &amp;gt;&amp;gt; Links--Conduits&#039;&#039;&#039; layer. &lt;br /&gt;
&amp;lt;li&amp;gt;Make the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer editable by clicking the &#039;Toggle Editing&#039; symbol [[File:toggle_editing_icon.png|27x27px]].&lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Edit&#039; from the top QGIS tab and click &#039;Paste Features&#039; from the drop down menu.&lt;br /&gt;
&amp;lt;li&amp;gt;Toggle the editing off to save the edits.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_02f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Similarly, copy the objects from &#039;&#039;&#039;Storage_nodes&#039;&#039;&#039; into &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039;. Junctions and storage nodes are allowed at the upstream end of culverts. Storage nodes are preferred for culverts receiving 2D flows not through a storm drain inlet.&lt;br /&gt;
&amp;lt;li&amp;gt;Also copy the objects from &#039;&#039;&#039;Outfalls&#039;&#039;&#039; into &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039;. Outfalls are treated as outlets, and are required at the downstream end of culverts.&lt;br /&gt;
&amp;lt;li&amp;gt; Toggle off editing and save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;Remove &#039;&#039;&#039;SWMM_Culverts.gpkg&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_03f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Inspect the attribute information within the respective layers to familiarize yourself with the data.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_04f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== GIS Data Updates ==&lt;br /&gt;
The provided GIS data requires numerous updates before proceeding to a model simulation. We have intentionally built these updates into this tutorial to demonstrate some of the available TUFLOW SWMM model build processing tools. The following updates are being made to objects and layers within &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039;.&lt;br /&gt;
===Update Conduit Details===&lt;br /&gt;
==== Node Details ====&lt;br /&gt;
Stage 1 of building the 1D SWMM network involves updating the &#039;From Node&#039; and &#039;To Node&#039; attribute information in &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;. This information defines the Link/Node connections. &amp;lt;br&amp;gt;&lt;br /&gt;
The information we will be adding to &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; is extracted from &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039; automatically using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; tool from the Processing Toolbox.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, select the &#039;Edit Features In-Place&#039; tool [[File:edit_features_in_place_icon.png]]. This allows the editing of an existing layer, instead of the creation of a new layer.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW &amp;gt;&amp;gt; SWMM in the processing tool list and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.  &lt;br /&gt;
:*SWMM Node Layers: Tick on &#039;&#039;&#039;sw01_001 &amp;gt;&amp;gt; Nodes--Storage&#039;&#039;&#039; and &#039;&#039;&#039;sw01_001 &amp;gt;&amp;gt; Nodes--Outfalls&#039;&#039;&#039;. Click &#039;OK&#039;. &lt;br /&gt;
&amp;lt;li&amp;gt;Select &#039;Modify All Features&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool has finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;li&amp;gt;View the attributes associated within &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; to verify the data processing has been completed correctly. The &#039;From Node&#039; and &#039;To Node&#039; attribute information is now configured correctly. For a broader understanding of the other attributes associated with the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/SWMM-Input-Detailed-1.html#tab:tab-SWMM-Input-Conduits TUFLOW 2023-03-AD Release Notes (Table A.19)]&amp;lt;/u&amp;gt; and the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM Reference Manual - Volume 2 (Hydraulics)]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Tip 1:&#039;&#039;&#039; If you wish to only update a selection of objects, instead of selecting the entire &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; dataset, select the target objects first using the &#039;Select Features&#039; tool. The &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; tool will provide an option to &#039;Modify Selected Features&#039;, instead of &#039;Modify All Features.&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Tip 2:&#039;&#039;&#039; Unique Node ID&#039;s are required for the SWMM network to function error free. If you are following this workflow for a project model build, please ensure the &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and &#039;&#039;&#039;Nodes--Outfalls&#039;&#039;&#039; object ID information is unique. If duplicate ID values are assigned to multiple objects, consider using the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Integrity_Make_Object_Names_Unique |Integrity - Make object names unique ]]&amp;lt;/u&amp;gt;&#039; TUFLOW SWMM processing tool to ensure all ID values are unique before using &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_05g.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Update Losses====&lt;br /&gt;
Stage 2 involves updating the loss attributes in the &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; layer. In this example, default loss values are used and will be entered manually. These loss values can be adjusted in your project models to reflect site specific information if desired. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;For each conduit, update the following fields:&lt;br /&gt;
:*losses_Kentry: 0.5&lt;br /&gt;
:*losses_Kexit: 1.0&lt;br /&gt;
:*losses_Kavg: 0.0&lt;br /&gt;
The video below demonstrates how to do this one entry at a time, or via the bulk attribute update options in QGIS.&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_06f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Since all the 1D SWMM inputs in this model are embankment culverts that all use the same loss parameters, it&#039;s not necessary to specify different loss attributes. The &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt; will demonstrate an urban pipe network added to the model, with different loss attributes required for the road culverts and underground storm pipe network links. To simplify this step, Module 2 uses the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_Conduits_Assign_Node_Fields |Conduits - Assign node fields]]&amp;lt;/u&amp;gt;&#039; processing tool. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Create 1D/2D Connections===&lt;br /&gt;
The following instructions introduce a new tool that automates the creation of 1D/2D connections. Due to the limitations of SWMM boundary conditions, HX lines are required for the upstream end of the culvert (rather than SX), and SX connections are used at the downstream end of the culvert.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;In the Processing Toolbox, go to TUFLOW &amp;gt;&amp;gt; SWMM and select &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_BC_Create_Channel_Endpoint_1D/2D_Connections |BC - Create channel endpoint 1D/2D connections]]&amp;lt;/u&amp;gt;&#039;. This opens the dialog shown below.  &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; Ensure the &#039;Edit Features In-Place&#039; tool has been turned off. &lt;br /&gt;
:*Input Conduits Layer: &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039;&lt;br /&gt;
:*Create connections at: &#039;Both ends&#039;. &lt;br /&gt;
:*Offset Distance: 2&lt;br /&gt;
:*Length of BC lines: 10&lt;br /&gt;
:*Tick on &#039;Set 2D cell elevation to 1D culvert invert at 1D/2D connection cells if needed&#039;.&lt;br /&gt;
:*Output Layer:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
::&amp;lt;li&amp;gt;Click the ... and select &#039;Save to GeoPackage&#039;.&lt;br /&gt;
::&amp;lt;li&amp;gt;Navigate to the &#039;&#039;&#039;TUFLOW\model\gis&#039;&#039;&#039; folder and select &#039;&#039;&#039;TS01_001.gpkg&#039;&#039;&#039;. Click Save. &lt;br /&gt;
::&amp;lt;li&amp;gt;A dialog will open. In the Layer name field, write &#039;&#039;&#039;2d_bc_SWMM_Culvert_Connections_001_L&#039;&#039;&#039;.&lt;br /&gt;
::&amp;lt;li&amp;gt;Click &#039;OK&#039;.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;The &#039;&#039;&#039;2d_bc_SWMM_Culvert_Connections_001_L&#039;&#039;&#039; appears in the QGIS Layers Panel. Select &#039;Apply TUFLOW Styles to Current Layer&#039;.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_07f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; The positions of the HX and SX connections may not be in the optimum location or extent using the generalized automated tool. As such, it is recommended to check the output from this processing step. In this module, the 1D/2D connections associated with &#039;&#039;&#039;2d_bc_SWMM_Culvert_Connections_001_L&#039;&#039;&#039; are checked in &amp;lt;u&amp;gt;[[TUFLOW SWMM Tutorial M01 Check QGIS|TUFLOW SWMM Tutorial 01 Check Files]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Update Storage Node Details===&lt;br /&gt;
The attributes of the storage nodes need to be modified to represent the storage of the connected HX cells since these cells do not represent storage themselves. The area associated with the storage nodes should be similar to the areas of the HX cells. To set the area, we will use a &amp;quot;PYRAMIDAL&amp;quot; shape with the SWMM side slope (run/rise) (Z) set to 0 to represent vertical walls. As the cell size is 5m, and the length of each polyline is 10m, the length (L) will be set to 10m and the width (W) to 5m. These sizes will be modified later when we change the boundary conditions.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and toggle on editing.&lt;br /&gt;
&amp;lt;li&amp;gt; Right click &#039;&#039;&#039;Nodes--Storage&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Set the following attributes:&lt;br /&gt;
:* YMax: 50.0 (this is a value greater than the expected water level. It is required to allow water to fill node)&lt;br /&gt;
:* TYPE: &#039;PYRAMIDAL&#039;&lt;br /&gt;
:* L: 10&lt;br /&gt;
:* W: 5&lt;br /&gt;
:* Z: 0.0&lt;br /&gt;
&amp;lt;li&amp;gt; Turn off editing to save the edits.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_08g.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==SWMM Options==&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, select (left click) &#039;&#039;&#039;Project--Options&#039;&#039;&#039; and toggle on editing. &lt;br /&gt;
&amp;lt;li&amp;gt;Right click &#039;&#039;&#039;Project--Options&#039;&#039;&#039; and select &#039;Open Attribute Table&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the following options: &lt;br /&gt;
*&#039;&#039;&#039;START_DATE&#039;&#039;&#039;: 2020-01-01 (Date Format: YYYY-MM-DD)&lt;br /&gt;
*&#039;&#039;&#039;REPORT_STEP&#039;&#039;&#039;: 00:01:00&lt;br /&gt;
&amp;lt;li&amp;gt;Turn off editing to save the edits.  &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_09f.mp4|width=1236}}&lt;br /&gt;
&amp;lt;br&amp;gt;Save the QGIS Project Workspace:&lt;br /&gt;
&lt;br /&gt;
# Go to Project &amp;gt; Save. This will update &#039;&#039;&#039;SWMM_M01.qgz&#039;&#039;&#039;, which was created previously in the folder &#039;&#039;&#039;TUFLOW_SWMM_Module_01&#039;&#039;&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Export SWMM INP File ==&lt;br /&gt;
SWMM is not able to read the &#039;&#039;&#039;sw01_001.gpkg&#039;&#039;&#039; database directly, therefore, we need to convert the GeoPackage file to a SWMM INP file format.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In the QGIS Layers Panel, right click &#039;&#039;&#039;Links--Conduits&#039;&#039;&#039; (or any of the SWMM layers) and select &#039;TUFLOW&#039; &amp;gt; &#039;SWMM - Export inp file&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This will open the &#039;&amp;lt;u&amp;gt;[[QGIS_SWMM_GeoPackage_Write_to_SWMM_inp |GeoPackage - Write to SWMM inp]]&amp;lt;/u&amp;gt;&#039; processing tool, prepopulated with the filename of the layer&#039;s GeoPackage. &amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;Note:&#039;&#039;&#039; This tool can also be activated from the Processing Toolbox. &lt;br /&gt;
&amp;lt;li&amp;gt;Click &#039;Run&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Once the tool is finished, click &#039;Close&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;This tool will save the SWMM inp file in the same folder location and with the same name as the GeoPackage input file. In this case, it will save &#039;&#039;&#039;sw01_001.inp&#039;&#039;&#039; to the &#039;&#039;&#039;TUFLOW\model\swmm&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_SWMM_Inputs_10e.mp4|width=1236}}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
The following steps will require use of a text editor. The tutorial demonstration uses Notepad++. For its configuration information refer to &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips | Notepad++ Tips]]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To differentiate the TUFLOW SWMM tutorials from the TUFLOW/ESTRY tutorials, &#039;TS&#039; is used as the file prefix in this series of tutorials. To avoid the potential risk of overwriting existing control files accidentally, we will start by saving new control files where we will be making subsequent syntax updates during the following steps. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Set up the simulation control files:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder and open &#039;&#039;&#039;M02_5m_001.tcf&#039;&#039;&#039; in a Text Editor (Notepad++ is recommended). &lt;br /&gt;
&amp;lt;li&amp;gt;Save the file as &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;M01_001.tbc&#039;&#039;&#039; using the &#039;Open File&#039; function in Notepad++. Save the file as &#039;&#039;&#039;TS01_001.tbc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Create a new blank text file called &#039;&#039;&#039;TS01_001.tscf&#039;&#039;&#039; and save it in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\model&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_00a.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Control File (TCF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; in a Text Editor (Notepad++ is recommended) and make the following reference updates:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Spatial Database &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\gis\TS01_001.gpkg &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ! Specify the location of the GeoPackage Spatial Database&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;BC Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;..\model\TS01_001.tbc&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the TUFLOW Boundary Conditions Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Add the following line in the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Model Inputs&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;SWMM Control File &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; ..\model\TS01_001.tscf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Reference the SWMM (1D) Control File&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Add the following line in the &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Output Settings&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; section: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;NetCDF Output Start Date &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2020-01-01 00:00 &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;! Sets the output units for the NetCDF time variable&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Save the TCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_01c.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Boundary Control File (TBC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;From &#039;&#039;&#039;TS01_001.tcf&#039;&#039;&#039;, right click &#039;&#039;&#039;TS01_001.tbc&#039;&#039;&#039; and select &#039;Open File&#039;. This opens &#039;&#039;&#039;TS01_001.tbc&#039;&#039;&#039; into a new tab in Notepad ++.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command line after &#039;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS SA &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_sa_M01_001_R&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039;:  &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;2d_bc_SWMM_Culvert_Connections_001_L&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;      ! Links 1D SWMM culverts to the 2D TUFLOW domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt;Save the TBC.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_02c.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW SWMM Control File (TSCF) ===&lt;br /&gt;
A new control file, the TUFLOW SWMM Control File (TSCF), is used to control the SWMM input data. All 1D SWMM files and commands are referenced in the TUFLOW SWMM Control File.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;From &#039;&#039;&#039;TS01_001.tcf&#039;&#039;&#039;, right click &#039;&#039;&#039;TS01_001.tscf&#039;&#039;&#039; and select &#039;Open File&#039;. This opens &#039;&#039;&#039;TS01_001.tscf&#039;&#039;&#039; into a new tab in Notepad ++.&lt;br /&gt;
&amp;lt;li&amp;gt;Add the following command: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read SWMM &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;swmm\sw01_001.inp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! 1D SWMM culvert input file&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TSCF.&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Sim_Control_03c.mp4|width=1235}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Running the Simulation =&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;_run_M02_HPC.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TS01_HPC.bat&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_SWMM_Module_01\TUFLOW\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the &#039;&#039;&#039;TS01_5m_001.tcf&#039;&#039;&#039; :&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;exe&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&amp;quot;..\..\..\exe\2023-03-AF\TUFLOW_iSP_w64.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;&#039;&#039;&#039;set&#039;&#039;&#039;&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;run&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;=&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;start &amp;quot;TUFLOW&amp;quot; /wait&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; %exe%&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt; -b&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;%run% &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;TS01_5m_001.tcf &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the batch file and double click it in Windows File Explorer to run the simulation. &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
If the model simulation doesn&#039;t run:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Check in the screen output or the tlf file near the end for &amp;quot;For SWMM Model Errors see:&amp;quot;. This indicates that there is something wrong with the SWMM inputs. Reviewing that file will provide feedback on what is wrong.&lt;br /&gt;
&amp;lt;li&amp;gt; Review this link for common &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Troubleshooting | TUFLOW SWMM Troubleshooting]]&amp;lt;/u&amp;gt; advice.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{{Video|name=Animation_TS1_Run_Sim_01d.mp4|width=1236}}&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Check Files and Results Output=&lt;br /&gt;
Complete the steps outlined in following links to review check files and simulation results from the TUFLOW SWMM model simulation:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01_Check_QGIS | TUFLOW SWMM Tutorial 01 Check Files]]&amp;lt;/u&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01_Results_QGIS | TUFLOW SWMM Tutorial 01 Results]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion =&lt;br /&gt;
*EPA SWMM culverts were added to convey water through the structures under the three roads in the tutorial model.&lt;br /&gt;
*Check files were used to review the inclusion of 1D SWMM culverts to a 2D TUFLOW model.&lt;br /&gt;
*Results through the 1D culverts were assessed.&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Other TUFLOW SWMM Tutorials=&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01 | TUFLOW SWMM Module 1]]&amp;lt;/u&amp;gt;  - 1D SWMM Culverts&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 2D TUFLOW Direct Rainfall Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M03 | TUFLOW SWMM Module 3]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M04 | TUFLOW SWMM Module 4]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology: Executing multiple different event simulations from a single model control file.&lt;br /&gt;
*&amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM | XPSWMM to TUFLOW SWMM]]&amp;lt;/u&amp;gt;  - How to convert an XPSWMM model to TUFLOW SWMM.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_SWMM_Tutorial_Introduction#Tutorial_Modules| Return to TUFLOW SWMM Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_Example_Models&amp;diff=45184</id>
		<title>TUFLOW Example Models</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_Example_Models&amp;diff=45184"/>
		<updated>2025-10-23T06:12:42Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Further Learning */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=Introduction=&lt;br /&gt;
These example models have been developed to demonstrate the most common TUFLOW model design features and applications. This dataset is useful for experienced modellers wishing to further develop their skills via demonstration examples. Although the models are based on the TUFLOW tutorial model dataset, new users are encouraged to familiarise themselves with TUFLOW through the &amp;lt;u&amp;gt;[[Tutorial_Introduction |Tutorial Model Introduction]]&amp;lt;/u&amp;gt; before using this dataset. Unlike the tutorials, this dataset does not include step-by-step instructions / documentation. Users of this dataset are expected to have a basic knowledge TUFLOW, and have suitable skills to open the model files by referencing the TUFLOW Control File (TCF) referenced in the feature catalogue list below. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Example Model Data=&lt;br /&gt;
The model data is available for download from &amp;lt;u&amp;gt;https://downloads.tuflow.com/TUFLOW/Wiki_Example_Models/TUFLOW_Example_Model_Dataset.zip&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
The dataset only includes model input files. The models can be run to create simulation check and result files. Batch files (*.bat) for each of the example feature categories has been provided within the &amp;quot;runs&amp;quot; folder of the TUFLOW project. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If you are unfamiliar with using batch files, additional information explaining how to use them to execute multiple simulations is available here: &amp;lt;u&amp;gt;[[Run_TUFLOW_From_a_Batch-file| Run TUFLOW From a Batch-file]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Example Model Catalogue=&lt;br /&gt;
Below is a complete list of the example models. This dataset uses TUFLOW HPC as the computational engine.&lt;br /&gt;
&lt;br /&gt;
Click on the following shortcuts to skip directly to the targeted major feature category in the table below:&amp;lt;br&amp;gt;&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Project Initiation| Project Initiation]]&amp;lt;/u&amp;gt;&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Model Units| Model Units]]&amp;lt;/u&amp;gt;&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Solver Options| Solver Options]]&amp;lt;/u&amp;gt;&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Output Options| Output Options]]&amp;lt;/u&amp;gt;&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Boundary Condition Options| Boundary Condition Options]]&amp;lt;/u&amp;gt; (Inflows, Outflows, Losses)&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Topography Features| Topography Features]]&amp;lt;/u&amp;gt; (Static Updates, Dynamic Updates, Sub-Grid Sampling)&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Structures| Structures]]&amp;lt;/u&amp;gt; (Bridges, Weirs, Culverts, Operational Controls)&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Multiple Domain Model Design| Multiple Domain Model Design]]&amp;lt;/u&amp;gt; (2D/2D, 1D open channel / 2D floodplain, 1D pipe network / 2D floodplain)&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Bulk Simulation Management| Bulk Simulation Management]]&amp;lt;/u&amp;gt;&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Advection Dispersion| Advection Dispersion]]&amp;lt;/u&amp;gt;&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Non-Newtonian | Non-Newtonian]]&amp;lt;/u&amp;gt;&lt;br /&gt;
*&amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Mathematical Operations| Mathematical Operations]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; style=&amp;quot;text-align:center;&amp;quot;&lt;br /&gt;
! colspan=&amp;quot;4&amp;quot; style=&amp;quot;position:sticky; top:0; background-color:#005581; font-weight:bold; color:white; z-index:2;&amp;quot; | Example Model Catalogue&lt;br /&gt;
|-&lt;br /&gt;
! colspan=&amp;quot;2&amp;quot; style=&amp;quot;position:sticky; top:2.2em; background-color:#fff; font-weight:bold; z-index:2;&amp;quot; | Model Category&lt;br /&gt;
! style=&amp;quot;position:sticky; top:2.2em; background-color:#fff; font-weight:bold; z-index:2;&amp;quot; | Description&lt;br /&gt;
! style=&amp;quot;position:sticky; top:2.2em; background-color:#fff; font-weight:bold; z-index:2;&amp;quot; | Model Name&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; id=&amp;quot;Project Initiation&amp;quot; | &amp;lt;b&amp;gt;Project Initiation&amp;lt;/b&amp;gt;&lt;br /&gt;
| Write empty files&lt;br /&gt;
| Create_Empties.tcf&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;2&amp;quot; id=&amp;quot;Model Units&amp;quot; |&amp;lt;b&amp;gt;Model Units&amp;lt;/b&amp;gt;&lt;br /&gt;
|Basic 2D model (SI units - m)&lt;br /&gt;
|EG00_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Basic 2D model (US units - ft)&lt;br /&gt;
|EG00_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;8&amp;quot; id=&amp;quot;Solver Options&amp;quot; |&amp;lt;b&amp;gt;Solver Options&amp;lt;/b&amp;gt;&lt;br /&gt;
|TUFLOW Classic&lt;br /&gt;
|Refer to &amp;lt;u&amp;gt;[[TUFLOW_Classic_Example_Model_Archive| TUFLOW Classic Example Model Archive]]&amp;lt;/u&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|TUFLOW HPC - Sub-Grid Sampled (SGS) topography enabled&lt;br /&gt;
|EG01_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|TUFLOW HPC - Sub-Grid Sampled (SGS) topography disabled&lt;br /&gt;
|EG01_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|TUFLOW HPC - Multiple GPU cards&lt;br /&gt;
|EG01_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|TUFLOW HPC - Newtonian Viscosity (Wu Turbulence)&lt;br /&gt;
|EG01_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|TUFLOW HPC - Newtonian Viscosity (Smagorinsky)&lt;br /&gt;
|EG01_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|TUFLOW HPC - Quadtree&lt;br /&gt;
|See Section &amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Multiple Domain Model Design| EG13]]&amp;lt;/u&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|ESTRY&lt;br /&gt;
|See Section &amp;lt;u&amp;gt;[[TUFLOW_Example_Models#1D Culverts, Bridges, Weirs| EG11]]&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;[[TUFLOW_Example_Models#1D Operating Structures| EG12]]&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;[[TUFLOW_Example_Models#1D Pipe Network / 2D Floodplain Modelling| EG15]]&amp;lt;/u&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| colspan=&amp;quot;2&amp;quot; rowspan=&amp;quot;19&amp;quot; id=&amp;quot;Output Options&amp;quot; |&amp;lt;b&amp;gt;Output Options&amp;lt;/b&amp;gt;&lt;br /&gt;
|2D xmdf (binary time series) and grid (maximums) output&lt;br /&gt;
|EG02_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Time and duration of inundation (Time Output Cut-off = Depth)&lt;br /&gt;
|EG02_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Time and duration of inundation (Time Output Cut-off = VxD)&lt;br /&gt;
|EG02_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Time and duration of inundation (Time Output Cut-off = Hazard)&lt;br /&gt;
|EG02_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Gauge level map output interval control (2d_glo)&lt;br /&gt;
|EG02_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D SGS high resolution grid output&lt;br /&gt;
|EG02_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D SGS high resolution grid output with manual specification of output resolution&lt;br /&gt;
|EG02_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Output Zone (2d_oz)&lt;br /&gt;
|EG02_008.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Write Restart File (See EG06_004.tcf for Read Restart File)&lt;br /&gt;
|EG02_009.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D plot output (2d_po point, line and region)&lt;br /&gt;
|EG02_010.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D structure outputs&lt;br /&gt;
|EG02_011.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D Long Profile (2d_lp)&lt;br /&gt;
|EG02_012.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D/2D Reporting locations - 1D river (1d_nwk), 2D floodplain&lt;br /&gt;
|EG02_013.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D/2D Reporting locations - 1D pipe network (1d_nwk), 2D floodplain&lt;br /&gt;
|EG02_014.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Evacuation route inundation reporting (2d_zshr) (Route Cut Off Type = Depth)&lt;br /&gt;
|EG02_015.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Evacuation route inundation reporting (2d_zshr) (Route Cut Off Type = Velocity)&lt;br /&gt;
|EG02_016.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Evacuation route inundation reporting (2d_zshr) (Route Cut Off Type = VxD)&lt;br /&gt;
|EG02_017.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Evacuation route inundation reporting (2d_zshr) (Route Cut Off Type = Hazard)&lt;br /&gt;
|EG02_018.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Translating gauge data information to catchment receptors (Read GIS Objects)&lt;br /&gt;
|EG02_019.tcf&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;52&amp;quot; id=&amp;quot;Boundary Condition Options&amp;quot; |&amp;lt;b&amp;gt;Boundary Condition Options&amp;lt;/b&amp;gt;&lt;br /&gt;
| rowspan=&amp;quot;19&amp;quot; id=&amp;quot;Inflows&amp;quot; |&amp;lt;b&amp;gt;Inflows&amp;lt;/b&amp;gt;&lt;br /&gt;
|2D flow (m^3/s) vs time upstream inflow (2d_bc, QT)&lt;br /&gt;
|EG03_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D head (m) vs time upstream inflow (2d_bc, HT)&lt;br /&gt;
|EG03_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Internal catchment inflow (m^3/s)(2d_sa)&lt;br /&gt;
|EG03_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Internal catchment inflow  (m^3/s) with streamlines (2d_sa, 2d_strm)&lt;br /&gt;
|EG03_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Internal catchment rainfall (mm) (2d_sa_rf)&lt;br /&gt;
|EG03_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Direct rainfall (mm) (2D Global Rainfall)&lt;br /&gt;
|EG03_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Direct rainfall (mm) (2d_rf)&lt;br /&gt;
|EG03_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Direct rainfall (mm) (Rainfall Control File - IDW)&lt;br /&gt;
|EG03_008.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Direct rainfall (mm) (Rainfall Control File - TIN)&lt;br /&gt;
|EG03_009.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Direct rainfall (mm) (Rainfall Control File - Poly)&lt;br /&gt;
|EG03_010.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Direct rainfall (mm) (time varying gridded rainfall) - netcdf format&lt;br /&gt;
|EG03_011.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Direct rainfall (mm) (time varying gridded rainfall) - flt format&lt;br /&gt;
|EG03_012.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Direct rainfall (mm) (2d_rf) - negative rainfall&lt;br /&gt;
|EG03_013.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Direct rainfall (2d_rf) and internal catchment rainfall (2d_sa_rf) for buildings&lt;br /&gt;
|EG03_014.tcf&lt;br /&gt;
|-&lt;br /&gt;
|HEC-DSS flow (m^3/s) vs time upstream inflow (2d_bc, QT)&lt;br /&gt;
|EG03_015.tcf&lt;br /&gt;
|-&lt;br /&gt;
|HEC-DSS flow (m^3/s) vs time upstream inflow (2d_bc, QT, multiple events)&lt;br /&gt;
|EG03_016.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D flow (m^3/s) vs time upstream inflow (1d_bc, QT)&lt;br /&gt;
|EG14_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D flow (m^3/s) vs time internal inflow (1d_bc, QT)&lt;br /&gt;
|EG14_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D flow (m^3/s) vs time internal inflow to 1D pits (1d_bc, QT)&lt;br /&gt;
|EG14_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; id=&amp;quot;Outflows&amp;quot; |&amp;lt;b&amp;gt;Outflows&amp;lt;/b&amp;gt;&lt;br /&gt;
|2D Automatic stage discharge downstream boundary (2d_bc, HQ)&lt;br /&gt;
|EG04_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D User-specified stage discharge downstream boundary (2d_bc, HQ)&lt;br /&gt;
|EG04_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D Stage time downstream boundary (2d_bc, HT)&lt;br /&gt;
|EG04_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D Automatic stage discharge downstream boundary (1d_bc, HQ)&lt;br /&gt;
|EG04_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D User-specified stage discharge downstream boundary (1d_bc, HQ)&lt;br /&gt;
|EG04_005.tcf&lt;br /&gt;
|- &lt;br /&gt;
|1D Stage time downstream boundary (1d_bc, HT)&lt;br /&gt;
|EG04_006.tcf&lt;br /&gt;
|- &lt;br /&gt;
&lt;br /&gt;
| rowspan=&amp;quot;19&amp;quot; id=&amp;quot;Loss Options&amp;quot; |&amp;lt;b&amp;gt;Loss Options&amp;lt;/b&amp;gt;&lt;br /&gt;
|Rainfall excess loss approach - IL/CL (Global loss applied via the TBC file)&lt;br /&gt;
|EG05_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Rainfall excess loss approach - IL/CL (applied via the materials file)&lt;br /&gt;
|EG05_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - IL/CL&lt;br /&gt;
|EG05_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - IL/CL, porosity&lt;br /&gt;
|EG05_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - IL/CL, porosity, initial moisture&lt;br /&gt;
|EG05_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - Green Ampt (USDA soil type)&lt;br /&gt;
|EG05_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - Green Ampt (USDA soil type), initial moisture&lt;br /&gt;
|EG05_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - Green Ampt (USDA soil type), initial moisture, ponding&lt;br /&gt;
|EG05_008.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - Green Ampt (User specified soil properties)&lt;br /&gt;
|EG05_009.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - Green Ampt (User specified soil properties), initial moisture&lt;br /&gt;
|EG05_010.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - Green Ampt (User specified soil properties), initial moisture, ponding&lt;br /&gt;
|EG05_011.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - Horton&lt;br /&gt;
|EG05_012.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - Horton, porosity&lt;br /&gt;
|EG05_013.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Infiltration loss approach - Horton, porosity, initial moisture&lt;br /&gt;
|EG05_014.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Groundwater - no horizontal infiltration&lt;br /&gt;
|EG05_015.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Groundwater - 1 soil layer, horizontal hydraulic conductivity&lt;br /&gt;
|EG05_016.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Groundwater - 2 soil layers, horizontal hydraulic conductivity&lt;br /&gt;
|EG05_017.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Groundwater level versus time downstream boundary (2d_bc, GT)&lt;br /&gt;
|EG05_018.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Groundwater linking to 1D&lt;br /&gt;
|EG05_019.tcf&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=&amp;quot;8&amp;quot; id=&amp;quot;Other&amp;quot; |&amp;lt;b&amp;gt;Other&amp;lt;/b&amp;gt;&lt;br /&gt;
|Spatially varied initial water level commands (2d_iwl)&lt;br /&gt;
|EG06_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Spatially varied initial water level commands (Grid 2d_iwl)&lt;br /&gt;
|EG06_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D pump (2d_bc, SH)&lt;br /&gt;
|EG06_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Read Restart File (See EG02_009.tcf for Write Restart File)&lt;br /&gt;
|EG06_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Storage Reduction Factor (global specification)&lt;br /&gt;
|EG06_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Storage Reduction Factor (2d_srf) (location specific update)&lt;br /&gt;
|EG06_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|External Stress - Wind (global specification)&lt;br /&gt;
|EG06_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Dynamic Topography Options (Dam / Levee Failure)&lt;br /&gt;
|See Section &amp;lt;u&amp;gt;[[TUFLOW_Example_Models#Dynamic Topography Updates| EG08]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;28&amp;quot; id=&amp;quot;Topography Features&amp;quot; |&amp;lt;b&amp;gt;Topography Features&amp;lt;/b&amp;gt;&lt;br /&gt;
| rowspan=&amp;quot;12&amp;quot; id=&amp;quot;Static Topography Updates&amp;quot; |&amp;lt;b&amp;gt;Static Topography Updates&amp;lt;/b&amp;gt;&lt;br /&gt;
|Cell resolution change&lt;br /&gt;
|EG07_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Thin breakline topography update (2d_zsh_L, 2d_zsh_P)&lt;br /&gt;
|EG07_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Thick breakline topography update (2d_zsh_L, 2d_zsh_P)&lt;br /&gt;
|EG07_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Gully (Min) breakline topography update (2d_zsh_L, 2d_zsh_P)&lt;br /&gt;
|EG07_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Ridge (Max) breakline topography update (2d_zsh_L, 2d_zsh_P)&lt;br /&gt;
|EG07_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Region update - Absolute value change, No merge (2d_zsh_R)&lt;br /&gt;
|EG07_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Region update - Relative value change, No merge (2d_zsh_R)&lt;br /&gt;
|EG07_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Region update - Absolute value change, Partial merge (2d_zsh_R, 2d_zsh_P)&lt;br /&gt;
|EG07_008.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Region update - Feature removal (2d_zsh_R)&lt;br /&gt;
|EG07_009.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Advanced topography update - TIN (2d_ztin_R, 2d_ztin_P)&lt;br /&gt;
|EG07_010.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Advanced topography update - TIN (2d_ztin_R, 2d_ztin_L, 2d_ztin_P)&lt;br /&gt;
|EG07_011.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Depth varying Manning&#039;s n&lt;br /&gt;
|EG07_012.tcf&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;13&amp;quot; id=&amp;quot;Dynamic Topography Updates&amp;quot; |&amp;lt;b&amp;gt;Dynamic Topography Options (Dam / Levee Failure)&amp;lt;/b&amp;gt;&lt;br /&gt;
|2D embankment failure - Time trigger, linear evolution&lt;br /&gt;
|EG08_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D embankment failure - Time trigger, non-linear evolution&lt;br /&gt;
|EG08_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D embankment failure - Water level trigger, linear evolution&lt;br /&gt;
|EG08_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D embankment failure - Water level trigger, non-linear evolution&lt;br /&gt;
|EG08_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D embankment failure - Water level difference trigger, linear evolution&lt;br /&gt;
|EG08_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D embankment failure - Water level difference trigger, non-linear evolution&lt;br /&gt;
|EG08_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D flood barrier reinstatement - Time trigger&lt;br /&gt;
|EG08_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D flood barrier reinstatement - Water level trigger&lt;br /&gt;
|EG08_008.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D flood barrier reinstatement - Water level difference trigger&lt;br /&gt;
|EG08_009.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D piping failure transitioning to 1D dam failure - Time trigger&lt;br /&gt;
|EG08_010.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D dam failure - Time trigger&lt;br /&gt;
|EG08_011.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D piping failure transitioning to 1D dam failure - Water level trigger&lt;br /&gt;
|EG08_012.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D dam failure - Water level trigger&lt;br /&gt;
|EG08_013.tcf&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; id=&amp;quot;Sub Grid Sampling&amp;quot; |&amp;lt;b&amp;gt;Sub Grid Sampling&amp;lt;/b&amp;gt;&lt;br /&gt;
|Breakline detection delta tool&lt;br /&gt;
|EG09_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D SGS high resolution grid output&lt;br /&gt;
|EG09_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D SGS high resolution grid output with manual specification of output resolution&lt;br /&gt;
|EG09_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;37&amp;quot; id=&amp;quot;Structures&amp;quot; |&amp;lt;b&amp;gt;Structures&amp;lt;/b&amp;gt;&lt;br /&gt;
| rowspan=&amp;quot;9&amp;quot; id=&amp;quot;2D Structures&amp;quot; |&amp;lt;b&amp;gt;2D Structures&amp;lt;/b&amp;gt;&lt;br /&gt;
|Bridge (2d_fc)&lt;br /&gt;
|Refer to &amp;lt;u&amp;gt;[[TUFLOW_Classic_Example_Model_Archive| TUFLOW Classic Example Model Archive]]&amp;lt;/u&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Bridge (2d_fcsh)&lt;br /&gt;
|Refer to &amp;lt;u&amp;gt;[[TUFLOW_Classic_Example_Model_Archive| TUFLOW Classic Example Model Archive]]&amp;lt;/u&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|Bridge - horizontal deck (2d_lfcsh)&lt;br /&gt;
|EG10_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Bridge - variable deck form geometry (2d_lfcsh)&lt;br /&gt;
|EG10_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Bridge - horizontal deck (2d_bg)&lt;br /&gt;
|EG10_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D weir coefficient change (global specification)&lt;br /&gt;
|EG10_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|2D weir coefficient change (location specific update)&lt;br /&gt;
|EG10_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Bridge (2d_bg) - horizontal deck, auto superstructure FLC&lt;br /&gt;
|EG10_008.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Fences (2d_lfcsh)&lt;br /&gt;
|EG10_009.tcf&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=&amp;quot;14&amp;quot; id=&amp;quot;1D Structures&amp;quot; |&amp;lt;b&amp;gt;1D Structures&amp;lt;/b&amp;gt;&lt;br /&gt;
|1D culverts - Circular and Box type. SX point, line and region 1D/2D examples&lt;br /&gt;
|EG11_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D culverts - Irregular shape (e.g. Arch)&lt;br /&gt;
|EG11_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D culverts - Unidirectional structures (flapgate) (1d_nwk)&lt;br /&gt;
|EG11_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D culverts - ARR2019 blockage matrix (1d_nwk)&lt;br /&gt;
|EG11_~e1~_~e2~_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D M channel - User defined flow matrix (1d_nwk)&lt;br /&gt;
|EG11_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D Q channel - Upstream Depth-Discharge Relationship (1d_nwk)&lt;br /&gt;
|EG11_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Bridge (1d_nwk, 1d_bg)&lt;br /&gt;
|EG11_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Weir (1d_nwk)&lt;br /&gt;
|EG11_008.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Pump (1d_nwk) - pump curve&lt;br /&gt;
|EG11_009.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Sluice gate (1d_nwk)&lt;br /&gt;
|EG11_010.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Gated spillway (1d_nwk)&lt;br /&gt;
|EG11_011.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Arch bridge (1D), no orifice flow&lt;br /&gt;
|EG11_012.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Arch bridge (1D), orifice flow enabled&lt;br /&gt;
|EG11_013.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Arch bridge (1D), orifice flow enabled with calibration factor&lt;br /&gt;
|EG11_014.tcf&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=&amp;quot;14&amp;quot; id=&amp;quot;1D Operating Structures&amp;quot; |&amp;lt;b&amp;gt;1D Operating Structures&amp;lt;/b&amp;gt;&lt;br /&gt;
|Pump operational (1d_nwk) - time trigger&lt;br /&gt;
|EG12_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Pump operational - 1D water level trigger (1d_nwk)&lt;br /&gt;
|EG12_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Pump operational - 2D water level trigger (1d_nwk)&lt;br /&gt;
|EG12_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Pump operational - Depth above structure invert trigger (1d_nwk)&lt;br /&gt;
|EG12_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Q flow matrix - Operation based on water level trigger (1d_nwk)&lt;br /&gt;
|EG12_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Q flow matrix - Operation based on water level trigger and time delay (1d_nwk)&lt;br /&gt;
|EG12_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Sluice gate  operational - Time trigger (simulation time) (1d_nwk)&lt;br /&gt;
|EG12_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Sluice gate  operational - Water level trigger(1d_nwk)&lt;br /&gt;
|EG12_008.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Gated spillway operational - Time trigger (Day) (1d_nwk)&lt;br /&gt;
|EG12_009.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Gated spillway operational - Water level trigger (1d_nwk)&lt;br /&gt;
|EG12_010.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Coordinated operation (multiple interacting structures) - Pump and Gated Spillway&lt;br /&gt;
|EG12_011.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Coordinated operation controlled by status of another structure&lt;br /&gt;
|EG12_012.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Pump operational (1d_nwk) - pump curve&lt;br /&gt;
|EG12_013.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Pump operational (1d_nwk) - Time stamp after water level trigger&lt;br /&gt;
|EG12_014.tcf&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=&amp;quot;17&amp;quot; id=&amp;quot;Multiple Domain Model Design&amp;quot; |&amp;lt;b&amp;gt;Multiple Domain Model Design&amp;lt;/b&amp;gt;&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; id=&amp;quot;2D/2D Modelling&amp;quot; |&amp;lt;b&amp;gt;2D/2D Modelling&amp;lt;/b&amp;gt;&lt;br /&gt;
|TUFLOW HPC - Quadtree: Sample target distance&lt;br /&gt;
|EG13_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|TUFLOW HPC - Quadtree: Sample frequency nesting&lt;br /&gt;
|EG13_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|TUFLOW HPC - Quadtree: Memory efficient pre-processing&lt;br /&gt;
|EG13_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|TUFLOW HPC - Quadtree: Sample frequency&lt;br /&gt;
|EG13_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|TUFLOW Classic - M2D&lt;br /&gt;
|Refer to &amp;lt;u&amp;gt;[[TUFLOW_Classic_Example_Model_Archive| TUFLOW Classic Example Model Archive]]&amp;lt;/u&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;1&amp;quot; id=&amp;quot;1D Open Channel / 2D Floodplain Modelling&amp;quot; |&amp;lt;b&amp;gt;1D Open Channel / 2D Floodplain Modelling&amp;lt;/b&amp;gt;&lt;br /&gt;
|1D river (1d_nwk), 2D floodplain&lt;br /&gt;
|EG14_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=&amp;quot;11&amp;quot; id=&amp;quot;1D Pipe Network / 2D Floodplain Modelling&amp;quot; |&amp;lt;b&amp;gt;1D Pipe Network / 2D Floodplain Modelling&amp;lt;/b&amp;gt;&lt;br /&gt;
|1D pipe network (1d_nwk), 2D floodplain, 2d_sa_rf inflow (mm) to 1D pits&lt;br /&gt;
|EG15_000.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D pipe network (1d_nwk), 2D floodplain, 2d_sa inflow (m^3/s) to 1D pits&lt;br /&gt;
|EG15_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D pipe network (1d_nwk), 2D floodplain, 2d_rf direct rainfall&lt;br /&gt;
|EG15_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D pipe network (1d_nwk), 2D  / 2D floodplain quadtree&lt;br /&gt;
|EG15_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D pipe network (1d_nwk), manually specified manholes (1d_mh), 2D floodplain&lt;br /&gt;
|EG15_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D pipe network (1d_nwk), non-default (fixed) manhole loss method, 2D floodplain&lt;br /&gt;
|EG15_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D pipe network (1d_nwk), localised manually specified manhole losses, 2D floodplain&lt;br /&gt;
|EG15_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D virtual pipes, 2D floodplain&lt;br /&gt;
|EG15_007.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D virtual pipes connected to 1D pipe network (trunk drainage line), 2D floodplain&lt;br /&gt;
|EG15_008.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D storage tank (1d_na)&lt;br /&gt;
|EG15_009.tcf&lt;br /&gt;
|-&lt;br /&gt;
|1D storage tank (1d_nwk)&lt;br /&gt;
|EG15_010.tcf&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; id=&amp;quot;Bulk Simulation Management&amp;quot; |&amp;lt;b&amp;gt;Bulk Simulation Management&amp;lt;/b&amp;gt;&lt;br /&gt;
| rowspan=&amp;quot;6&amp;quot; id=&amp;quot;Scenario / Event Management&amp;quot; |&amp;lt;b&amp;gt;Scenario / Event Management&amp;lt;/b&amp;gt;&lt;br /&gt;
|Scenario (single)&lt;br /&gt;
|EG16_~s1~_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Scenario (multiple)&lt;br /&gt;
|EG16_~s1~_~s2~_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Set Variable&lt;br /&gt;
|EG16_~s1~_~s2~_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Event (single)&lt;br /&gt;
|EG16_~e1~_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Event (multiple)&lt;br /&gt;
|EG16_~e1~_~e2~_005.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Scenario (multiple), Event (multiple), Set Variable&lt;br /&gt;
|EG16_~s1~_~s2~_~e1~_~e2~_006.tcf&lt;br /&gt;
|-&lt;br /&gt;
&lt;br /&gt;
| rowspan=&amp;quot;10&amp;quot; id=&amp;quot;Other&amp;quot; |&amp;lt;b&amp;gt;Other&amp;lt;/b&amp;gt;&lt;br /&gt;
| rowspan=&amp;quot;3&amp;quot; id=&amp;quot;Advection Dispersion&amp;quot; |&amp;lt;b&amp;gt;Advection Dispersion&amp;lt;/b&amp;gt;&lt;br /&gt;
|Advection Dispersion&lt;br /&gt;
|EG17_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Advection Dispersion with settling&lt;br /&gt;
|EG17_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Advection Dispersion with decay&lt;br /&gt;
|EG17_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;2&amp;quot; id=&amp;quot;Non-Newtonian&amp;quot; |&amp;lt;b&amp;gt;Non-Newtonian&amp;lt;/b&amp;gt;&lt;br /&gt;
|Non-newtonian viscosity &lt;br /&gt;
|EG18_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Non-newtonian mixing (dam failure scenario) &lt;br /&gt;
|EG18_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
| rowspan=&amp;quot;5&amp;quot; id=&amp;quot;Mathematical Operations&amp;quot; |&amp;lt;b&amp;gt;Mathematical Operations&amp;lt;/b&amp;gt;&lt;br /&gt;
|Unit Conversion&lt;br /&gt;
|EG19_001.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Using Variables&lt;br /&gt;
|EG19_~e1~_~e2~_002.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Adjust Event Variables&lt;br /&gt;
|EG19_~e1~_~e2~_003.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Apply Loss Factors &lt;br /&gt;
|EG19_~e1~_~e2~_004.tcf&lt;br /&gt;
|-&lt;br /&gt;
|Logic Control &lt;br /&gt;
|EG19_005.tcf&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=Archive Dataset=&lt;br /&gt;
Historic example model datasets can be accessed via the following link: &amp;lt;u&amp;gt;[[TUFLOW_Classic_Example_Model_Archive| TUFLOW Classic Example Model Archive]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Contact=&lt;br /&gt;
For comments, requests and feedback contact &amp;lt;u&amp;gt;[mailto:support@tuflow.com support@tuflow.com]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Wiki Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_Introduction&amp;diff=45183</id>
		<title>TUFLOW SWMM Tutorial Introduction</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_SWMM_Tutorial_Introduction&amp;diff=45183"/>
		<updated>2025-10-23T06:12:14Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Recommended Further Reading */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;On request from USA XPSWMM users, TUFLOW linkage with 1D EPA Storm Water Management Model (SWMM) has been added as a supported feature in TUFLOW 2023-03-AD release or newer. EPA SWMM is used for simulating urban watershed hydrologic and 1D hydraulic behavior. Initially developed in the early 1970&#039;s by the USA Environmental Protection Agency (EPA), the software has since undergone numerous updates and enhancements to become one of the most used 1D stormwater runoff and water quality analysis tools in North America. The primary uses of EPA SWMM include designing and evaluating stormwater systems and also planning and assessment of low-impact developments (also known as Water Sensitive Urban Design). For more details about EPA SWMM, please visit: &amp;lt;u&amp;gt;[https://www.epa.gov/water-research/storm-water-management-model-swmm  https://www.epa.gov/water-research/storm-water-management-model-swmm]&amp;lt;/u&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
This EPA SWMM series of tutorials has been written in USA English for the predominantly USA SWMM user base.&lt;br /&gt;
&lt;br /&gt;
= Introduction =&lt;br /&gt;
The following tutorial models are aimed at new and experienced users, stepping through the process of building and running TUFLOW SWMM together. The main objective aims to demonstrate the ability for TUFLOW to link to 1D EPA SWMM in a variety of different common use case scenarios. &lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;Note, if you are not already familiar with TUFLOW, we recommend first completing Module 1 and 2 of the &amp;lt;u&amp;gt;[[Tutorial_Introduction | &amp;quot;TUFLOW Only&amp;quot; Tutorials]]&amp;lt;/u&amp;gt; to establish an understanding of 2D modeling, before progressing to learning how to link 1D EPA SWMM to 2D TUFLOW.&#039;&#039;&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;TUFLOW has supported 1D/2D dynamic coupling since its initial 2D solver development in 1989. Traditionally, 1D (1 Dimensional) linking and associated modeling has been applied using TUFLOW&#039;s 1D solver, ESTRY. As demonstrated in:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M03 | Module 3 - 1D Culverts]]&amp;lt;/u&amp;gt; &lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M05 | Module 5 - Integrated Urban Pipe Network Drainage]]&amp;lt;/u&amp;gt; &lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_M11 | Module 11 - 1D Open Channel]]&amp;lt;/u&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
EPA SWMM&#039;s inclusion in TUFLOW does not replace ESTRY, rather both 1D solvers complement each other. Links to the TUFLOW SWMM tutorials are included in the section below.&lt;br /&gt;
&lt;br /&gt;
=Software Requirements=&lt;br /&gt;
TUFLOW uses QGIS as its Graphical User Interface (GUI), in combination with text editor and spreadsheet software, for its model creation and result viewing. The group of software creates an extremely workflow efficient and flexible modeling environment. Notably, QGIS does not experience the data load/visualization lag and display issues some other hydraulic modeling software GUI&#039;s are limited by when working with larger datasets.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; width=&amp;quot;75%&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot;| Requirement&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Brief Description&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Download&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;TUFLOW&#039;&#039;&#039; || TUFLOW is a computer program for simulating depth-averaged, one and two-dimensional free-surface flows such as occurs from floods and tides, with the 2D solution occurring over a regular grid or quadtree mesh of square elements.&amp;lt;br&amp;gt;&lt;br /&gt;
It is recommended to always use the latest release version of TUFLOW.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial model does not require a TUFLOW license.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
This tutorial is configured to use a NVIDIA GPU card. If this is not available, your CPU can be used via the Hardware command. &amp;lt;br&amp;gt;&lt;br /&gt;
||The TUFLOW executable is provided within the &amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_Introduction#Tutorial_Data | Tutorial Download Dataset]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;QGIS&#039;&#039;&#039; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;QGIS TUFLOW plugin || QGIS is the Geographic Information System (GIS) Graphical User Interface (GUI) used to build models and view results. The QGIS TUFLOW plugin includes numerous tools to increase workflow efficiency. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This tutorial was developed using QGIS 3.34 and QGIS TUFLOW Plugin 3.11. Please use these or newer versions of QGIS and the plugin. Earlier releases will not include the TUFLOW SWMM automation tools demonstrated in the Tutorials. &lt;br /&gt;
&lt;br /&gt;
||&amp;lt;u&amp;gt;[https://qgis.org/download/ Latest 64-bit version of QGIS]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[[TUFLOW_QGIS_Plugin| QGIS TUFLOW Plugin Installation]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;NotePad++&#039;&#039;&#039; &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;Syntax Highlighting || A text editor is required for creation of the TUFLOW control (script) files. This tutorial was developed with NotePad++. Ideally a text editor should be able to:&amp;lt;br&amp;gt;&lt;br /&gt;
*Color code the TUFLOW control files;&lt;br /&gt;
*Open other files from the active control file; and&lt;br /&gt;
*Launch a TUFLOW simulation. &amp;lt;br&amp;gt;&lt;br /&gt;
TUFLOW color coding can be enabled using syntax highlighting. &lt;br /&gt;
|| &amp;lt;u&amp;gt;[https://notepad-plus-plus.org/downloads/ Latest 64-bit version of Notepad++]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;u&amp;gt;[https://downloads.tuflow.com/_archive/Miscellaneous/NPP_TUFLOW_Syntax_Highlighting.zip TUFLOW syntax highlighting for Notepad++]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For instructions on configuring Notepad++ for TUFLOW modeling, see &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips |Notepad++ tips]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
|-&lt;br /&gt;
| &#039;&#039;&#039;Microsoft Excel&#039;&#039;&#039; || A spreadsheet software is required for working with tabular data and .csv files. This tutorial has been created using Excel. || &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tutorial Data=&lt;br /&gt;
To build the tutorial model, download the dataset below. This includes a digital elevation model (DEM), aerial photography, background model data for the tutorial model and a working version of the model. GeoPackage database has been used as the GIS format for the model build tasks. For tips on using GeoPackage databases see &amp;lt;u&amp;gt;[https://wiki.tuflow.com/GeoPackage_Tips GeoPackage Tips]&amp;lt;/u&amp;gt;. &lt;br /&gt;
:*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOW/Wiki_Tute_Models/TUFLOW_SWMM_Tutorial_Models_QGIS_GPKG.zip  TUFLOW SWMM Tutorial Dataset - QGIS - GPKG]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Tutorial Modules=&lt;br /&gt;
The download dataset contains the input files and working version of the tutorial model for reference. Results and check files are not included to keep the size of the download file manageable; they will be created when running the model simulations. The folder should be placed in a location with write permissions.&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The tutorial model is presented in several modules. All modules can be completed independently, however new users are encouraged to undertake the modules in sequence:&lt;br /&gt;
&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M01 | TUFLOW SWMM Module 1]]&amp;lt;/u&amp;gt;  - 1D SWMM Culverts&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M02 | TUFLOW SWMM Module 2]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 2D TUFLOW Direct Rainfall Hydrology&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M03 | TUFLOW SWMM Module 3]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_SWMM_Tutorial_M04 | TUFLOW SWMM Module 4]]&amp;lt;/u&amp;gt;  - 1D SWMM Pipe Network / 1D SWMM Urban Hydrology: Executing multiple different event simulations from a single model control file.&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM | XPSWMM to TUFLOW SWMM: Automated (Recommended) Approach]]&amp;lt;/u&amp;gt;  - How to convert an XPSWMM model to TUFLOW SWMM: Automated XPX Conversion Tool Approach.&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[XPSWMM_to_TUFLOW-SWMM_Archive | XPSWMM to TUFLOW SWMM: Manual Approach]]&amp;lt;/u&amp;gt;  - How to convert an XPSWMM model to TUFLOW SWMM: Manual Approach.&lt;br /&gt;
&lt;br /&gt;
== TUFLOW SWMM Documentation ==&lt;br /&gt;
TUFLOW SWMM documentation can be found in the TUFLOW Manual, the 2023-03-AD release notes for TUFLOW-SWMM and in the TUFLOW plugin documentation for the related QGIS tools.&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;&lt;br /&gt;
* &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/ TUFLOW 2023-03-AD Release notes - SWMM Section]&amp;lt;/u&amp;gt;&lt;br /&gt;
* &amp;lt;u&amp;gt;[[TUFLOW QGIS Plugin#Processing_Toolbox|TUFLOW QGIS Plugin Documentation including SWMM tools]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Recommended Further Reading=&lt;br /&gt;
For users who wish to get a better understanding of either 1D EPA SWMM or 2D TUFLOW, the following resources may be of use:&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;EPA SWMM&#039;&#039;&#039;: &amp;lt;u&amp;gt;[https://www.epa.gov/water-research/storm-water-management-model-swmm www.epa.gov]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume1_Hydrology_P100NYRA.pdf SWMM5 Reference Manual - Volume 1 (Hydrology)]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydaulics_P100S9AS.pdf SWMM5 Reference Manual - Volume 2 (Hydraulics) ]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume2_Hydraulics_Addendum-20220210mas2wr.pdf  SWMM5 Reference Manual - Volume 2 (Hydraulics Addendum) ]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/SWMM5_Reference_Manual_Volume3_Water_Quality_P100P2NY.pdf  SWMM5 Reference Manual - Volume 3 (Water Quality) ]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://downloads.tuflow.com/SWMM/swmm-users-manual-version-5.2.pdf EPA SWMM5 User&#039;s Manual]&amp;lt;/u&amp;gt; &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&#039;&#039;&#039;TUFLOW&#039;&#039;&#039;: &amp;lt;u&amp;gt;[https://www.tuflow.com www.tuflow.com]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/release/2023-03-AD/ TUFLOW 2023-03-AD release notes]&amp;lt;/u&amp;gt; &lt;br /&gt;
*&amp;lt;u&amp;gt;[[Tutorial_Introduction#Tutorial_Modules | TUFLOW Tutorial Models]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Contact=&lt;br /&gt;
For comments, requests and feedback contact &amp;lt;u&amp;gt;[mailto:support@tuflow.com support@tuflow.com]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[Main_Page| Back to Wiki Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_CATCH_Tutorial_M04&amp;diff=45182</id>
		<title>TUFLOW CATCH Tutorial M04</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_CATCH_Tutorial_M04&amp;diff=45182"/>
		<updated>2025-10-23T06:08:13Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In this module, a TUFLOW CATCH integrated model with interventions is developed. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TUFLOW CATCH Tutorial 04 is built from the models created in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M02 | TUFLOW CATCH Tutorial 02]]&amp;lt;/u&amp;gt; and &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M03 | TUFLOW CATCH Tutorial 03]]&amp;lt;/u&amp;gt;. The completed TUFLOW CATCH Tutorial 03 is provided in the &#039;&#039;&#039;TUFLOW_CATCH_Module_04\Modelling&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. &lt;br /&gt;
If unfamiliar with TUFLOW CATCH, it is recommended to complete &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01 | TUFLOW CATCH Tutorial 01]]&amp;lt;/u&amp;gt;, &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M02 | TUFLOW CATCH Tutorial 02]]&amp;lt;/u&amp;gt; and &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M03 | TUFLOW CATCH Tutorial 03]]&amp;lt;/u&amp;gt; prior to starting this tutorial.&lt;br /&gt;
&lt;br /&gt;
= Meteorological Data =&lt;br /&gt;
Meteorological inputs are defined in boundary condition blocks within the receiving model block of the TUFLOW CATCH Control file (.tcc). &amp;lt;!-- reference TUFLOW FV manual when it&#039;s done --&amp;gt; For this tutorial, timeseries meteorological data has been supplied.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_04\Tutorial_Data&#039;&#039;&#039; folder. Copy the &#039;&#039;&#039;TC04_met_ts_001.csv&#039;&#039;&#039; and paste it in the &#039;&#039;&#039;TUFLOW_CATCH_Module_04\Modelling\TUFLOWFV\bc_dbase\met&#039;&#039;&#039; folder. This file contains the timeseries meteorological data.&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file. As this file is read by TUFLOW FV, the first column (Time) must contain the date is ISODATE format (DD/MM/YYYY hh:mm:ss). The other columns contain the data for the meteorological conditions that will be simulated in this model: &amp;lt;br&amp;gt;&lt;br /&gt;
{|&lt;br /&gt;
| &lt;br /&gt;
* &#039;&#039;&#039;AIR_TEMP&#039;&#039;&#039;: Air temperature (degrees Celsius)&lt;br /&gt;
| &lt;br /&gt;
:::* &#039;&#039;&#039;REL_HUM&#039;&#039;&#039;: Relative humidity (%)&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
*&#039;&#039;&#039;LW_RAD&#039;&#039;&#039;: Downward longwave radiation (W m&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;sup&amp;gt;-2&amp;lt;/sup&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;)&lt;br /&gt;
| &lt;br /&gt;
:::*&#039;&#039;&#039;W10_X&#039;&#039;&#039;: Zonal wind velocity at 10m (m s&amp;lt;sup&amp;gt;-1&amp;lt;/sup&amp;gt;)&lt;br /&gt;
|-&lt;br /&gt;
| &lt;br /&gt;
*&#039;&#039;&#039;SW_RAD&#039;&#039;&#039;: Downward shortwave radiation (W m&amp;lt;sup&amp;gt;-2&amp;lt;/sup&amp;gt;)&lt;br /&gt;
| &lt;br /&gt;
:::*&#039;&#039;&#039;W10_Y&#039;&#039;&#039;: Meridional wind velocity at 10m (m s&amp;lt;sup&amp;gt;-1&amp;lt;/sup&amp;gt;)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
[[File: TC4_met_ts_data_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
The following steps will require use of a text editor. The tutorial demonstration uses Notepad++. For its configuration information refer to &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips | Notepad++ Tips]]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Generate Template Files ====&lt;br /&gt;
This tutorial requires a Water Quality Control file (.fvwq) and a Sediment Transport Control file (.fvsed). Use the TUFLOW CATCH plugin to generate template files:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In QGIS, go to Processing &amp;gt; Toolbox from the top drop down menu options to open the Processing Toolbox.&lt;br /&gt;
&amp;lt;li&amp;gt;Go to TUFLOW Catch in the processing tool list and select &#039;Create TUFLOW Catch Project&#039;. This opens the dialog shown below:&lt;br /&gt;
*Project Name: &#039;&#039;&#039;TC04&#039;&#039;&#039;&lt;br /&gt;
*Project Folder: Click &#039;...&#039;, and navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_04\Modelling&#039;&#039;&#039; folder.&lt;br /&gt;
*Project CRS: Click the drop down menu and select &#039;Project CRS: EPSG:32760 - WGS 84 / UTM zone 60S’.&lt;br /&gt;
* TUFLOW HPC Executable: Click &#039;...&#039;, and navigate to the &#039;&#039;&#039;exe\TUFLOW\2025.1.0 folder&#039;&#039;&#039;. Select &#039;&#039;&#039;TUFLOW_iSP_w64.exe&#039;&#039;&#039;.&lt;br /&gt;
* TUFLOW FV Executable: Click &#039;...&#039;, and navigate to the &#039;&#039;&#039;exe\TUFLOWFV\2025.1.0&#039;&#039;&#039; folder. Select &#039;&#039;&#039;TUFLOWFV.exe&#039;&#039;&#039;.&lt;br /&gt;
* Default GIS Format: Click the drop down menu and select &#039;SHP&#039;.&lt;br /&gt;
* Tick on &#039;Setup Control File Templates&#039;.&lt;br /&gt;
* Control File Templates: Expand the &#039;Advanced Parameters&#039; section. Click &#039;...&#039;, and tick on: Water Quality Control file (.fvwq) and Sediment Control file (.fvsed). Ensure all other files are ticked off. &lt;br /&gt;
&amp;lt;li&amp;gt; Click &#039;Run&#039;. Once the tool has finished click &#039;Close&#039;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC4_Create_CATCH_Project_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Water Quality Control File (FVWQ) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Navigate to the &#039;&#039;&#039;TUFLOWFV\wqm&#039;&#039;&#039; folder and open &#039;&#039;&#039;TC04_001.fvwq&#039;&#039;&#039; in a text editor. &lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Simulation Controls&#039; sections, update the following commands:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Simulation Class&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;DO  &amp;lt;font color=green&amp;gt;  ! Specify the simulation class to Dissolved Oxygen&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;WQ dt&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300  &amp;lt;font color=green&amp;gt;  ! Interval for updating the water quality module &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;WQ Units&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;mgL  &amp;lt;font color=green&amp;gt;  ! Specify the units to be mgL &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Constituent Model Settings&#039;, add the following commands to specify the constituent (oxygen and pathogens) parameters. For more information on the model settings for each constituent, refer to the TUFLOW FV Water Quality Manual: &amp;lt;u&amp;gt;[https://docs.tuflow.com/fv/wqm/manual/2025.1/SimulationConstruction-1.html#ConModClssOxy-4 Section 4.6.3.1 (Oxygen)]&amp;lt;/u&amp;gt; and &amp;lt;u&amp;gt;[https://docs.tuflow.com/fv/wqm/manual/2025.1/SimulationConstruction-1.html#ConModClssPth-4 Section 4.6.3.2 (Pathogens)]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Oxygen Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;O2  &amp;lt;font color=green&amp;gt;  ! Set the oxygen model&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Oxygen Min Max&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.0, 12.0  &amp;lt;font color=green&amp;gt;  ! Specify the allowable minimum and maximum oxygen concentrations&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Oxygen Benthic&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;4.7, 1.08  &amp;lt;font color=green&amp;gt;  ! Specify the global benthic parameters &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Oxygen Model&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Pathogen Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Free, Ecoli  &amp;lt;font color=green&amp;gt;  ! Set the pathogen model and name&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Alive Min Max&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.0, 1e7  &amp;lt;font color=green&amp;gt;  ! Specify the allowable minimum and maximum concentrations&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Mortality&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.08, 2e-12, 6.1, 1.0, 1.11  &amp;lt;font color=green&amp;gt;  ! Specify the mortality parameters&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Visible Inactivation&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.082, 0.0067, 0.5  &amp;lt;font color=green&amp;gt;  ! Specify the visible light inactivation parameters&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;UVA Inactivation&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.5, 0.0067, 0.5  &amp;lt;font color=green&amp;gt;  ! Specify the UV-A light inactivation parameters&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;UVB Inactivation&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1.0, 0.0067, 0.5  &amp;lt;font color=green&amp;gt;  ! Specify the UV-B light inactivation parameters&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Settling&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;-0.03  &amp;lt;font color=green&amp;gt;  ! Specify the settling of non-attached pathogens&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Pathogen Model&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Material Specifications&#039; section, add the following material blocks to specify oxygen flux for each material ID.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Material&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Default  &amp;lt;font color=green&amp;gt;  ! Defines default properties for all materials&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Oxygen Flux&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;-1400.0 &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Material&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Material&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1  &amp;lt;font color=green&amp;gt;  ! Defines properties for material ID 1 (overwrites default)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Oxygen Flux&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;-1100.0 &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Material&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Material&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;2  &amp;lt;font color=green&amp;gt;  ! Defines properties for material ID 2 (overwrites default)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Oxygen Flux&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;-1200.0 &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Material&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Material&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;3  &amp;lt;font color=green&amp;gt;  ! Defines properties for material ID 3 (overwrites default)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Oxygen Flux&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;-1300.0 &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Material&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Save the FVWQ.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sediment Transport Control File (FVSED) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Navigate to the &#039;&#039;&#039;TUFLOWFV\stm&#039;&#039;&#039; folder and open &#039;&#039;&#039;TC04_001.fvsed&#039;&#039;&#039; in a text editor.&lt;br /&gt;
&amp;lt;li&amp;gt; Update the following command to match the output interval for the rest of the model (300secs or 5mins):&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Update dt&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300  &amp;lt;font color=green&amp;gt;  ! Interval for updating the sediment transport module&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Settings&#039; section, update the following commands. For more information on these commands, please refer to the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOWFV/Releases/Latest/TUFLOW_FV_ST_and_PT_Modules_User_Manual.pdf TUFLOW FV Sediment Transport Manual]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Erosion Depth Limits&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.1, 0.5  &amp;lt;font color=green&amp;gt;  ! Depth limits within which the erosion rate is scaled down (meters)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Deposition Depth Limits&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.1, 0.5  &amp;lt;font color=green&amp;gt;  ! Depth limits within which the deposition rate is scaled down (meters)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Bed Roughness Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;ks  &amp;lt;font color=green&amp;gt;  ! Set bed roughness model&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Bed Roughness Parameters&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.02, 0.02  &amp;lt;font color=green&amp;gt;  ! Specify the bed roughness for current and waves&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Fractions&#039; section, add in the following Fraction block to set the parameters for clay. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Fraction&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Clay  &amp;lt;font color=green&amp;gt;  ! Set sediment fraction&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;d50&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.0002  &amp;lt;font color=green&amp;gt;  ! Specify the median grain size of the sediment fraction (meters)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Particle Density&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;2650.0  &amp;lt;font color=green&amp;gt;  ! Specify the density of the particle group (kg/m&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Settling Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Constant  &amp;lt;font color=green&amp;gt;  ! Set the settling model&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Settling Parameters&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1e-05  &amp;lt;font color=green&amp;gt;  ! Specify constant settling velocity (m/s)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Critical Stress Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Constant  &amp;lt;font color=green&amp;gt;  ! Set the critical stress model&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Critical Stress Parameters&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.15  &amp;lt;font color=green&amp;gt;  ! Specify constant critical stress (N/m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Erosion Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Mehta  &amp;lt;font color=green&amp;gt;  ! Set the erosion model&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Erosion Parameters&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.01, 0.5, 1.0  &amp;lt;font color=green&amp;gt;  ! Specify constant erosion rate (g/m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;s), critical shear stress (N/m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;) and power coefficient&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Deposition Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;ws0  &amp;lt;font color=green&amp;gt;  ! Set the deposition model&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Fraction&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Materials&#039; section, add the following material blocks to set the sediment transport for each material ID.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Material&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1, 2  &amp;lt;font color=green&amp;gt;  ! Defines properties for material IDs 1 and 2&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Nlayer&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1  &amp;lt;font color=green&amp;gt;  ! Number of sediment bed layers&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Layer&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1  &amp;lt;font color=green&amp;gt;  ! Bed layer number &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
::&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Dry Density&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;800  &amp;lt;font color=green&amp;gt;  ! Dry density of bed layer (kg/m&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;) &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
::&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Initial Mass&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1500  &amp;lt;font color=green&amp;gt;  ! Initial mass of each sediment fraction (kg/m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;) &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Layer&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Material&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Material&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;3  &amp;lt;font color=green&amp;gt;  ! Defines properties for material ID 3&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Nlayer&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1  &amp;lt;font color=green&amp;gt;  ! Number of sediment bed layers&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Layer&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1  &amp;lt;font color=green&amp;gt;  ! Bed layer number &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
::&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Dry Density&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;800  &amp;lt;font color=green&amp;gt;  ! Dry density of bed layer (kg/m&amp;lt;sup&amp;gt;3&amp;lt;/sup&amp;gt;) &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
::&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Initial Mass&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;3200  &amp;lt;font color=green&amp;gt;  ! Initial mass of each sediment fraction (kg/m&amp;lt;sup&amp;gt;2&amp;lt;/sup&amp;gt;) &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Layer&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Material&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the FVSED.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TUFLOW CATCH Control File (TCC) ==&lt;br /&gt;
=== Global Settings ===&lt;br /&gt;
For this tutorial, leave all commands as is. This section of the .tcc was populated in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01 | TUFLOW CATCH Tutorial 01]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Catchment Hydraulic Model ===&lt;br /&gt;
This block contains commands that construct the TUFLOW HPC simulation.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save a copy of &#039;&#039;&#039;TC03_001.tcc&#039;&#039;&#039; as &#039;&#039;&#039;TC04_001.tcc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_CATCH_Module_04\Modelling\TUFLOWCATCH\runs&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt; Open &#039;&#039;&#039;TC04_001.tcc&#039;&#039;&#039; in a text editor, and comment out the following command:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=green&amp;gt;! Pollutant == Salinity, Temperature, WQ_DISS_OXYGEN_MG_L, WQ_PATH_ECOLI_ALIVE_CFU_100ML, WQ_PATH_ECOLI_DEAD_CFU_100ML, SED_CLAY ! Specify the pollutant names&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Pollutant Export Model ===&lt;br /&gt;
This block contains commands that control the pollutant export (and other constituent) simulation. As this tutorial model is an integrated simulation with interventions, we must turn the pollutant export model back on:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Set the pollutant export model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Catchment Pollutant Export Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Mass Accumulation Release &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Uncomment all the commands. The pollutant export model block should look the same as in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M02#Pollutant_Export_Model | TUFLOW CATCH Tutorial 02]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Receiving Model ===&lt;br /&gt;
This block contains commands that construct the TUFLOW FV simulation. For this tutorial, the receiving model block must be updated to include water quality and sediment transport. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;General Parameters&#039; section, update the following commands to turn on salinity, temperature, sediment and heat. For more information on these commands, refer to &amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOWFV/Releases/Latest/TUFLOW_FV_User_Manual.pdf Appendix B of the TUFLOW FV Manual]&amp;lt;/u&amp;gt; &amp;lt;!-- Update link here when TUFLOW FV Manual update is done --&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Include Salinity&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1,0  &amp;lt;font color=green&amp;gt;  &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Include Temperature&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1,0  &amp;lt;font color=green&amp;gt;  &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Include Sediment&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1,0  &amp;lt;font color=green&amp;gt;  &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Include Heat&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;1  &amp;lt;font color=green&amp;gt;  &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Water Quality&#039; section, update the following commands to set the general WQ parameters and to reference the Water Quality Control file. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Water Quality Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;TUFLOW  &amp;lt;font color=green&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Water Quality Control File&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOWFV\wqm\TC04_001.fvwq  &amp;lt;font color=green&amp;gt;  ! Reference the Water Quality Control File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Water Quality Model Directory&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOWFV\wqm\  &amp;lt;font color=green&amp;gt;  ! Location of the Water Quality Directory&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Cell Water Quality Depth&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.05  &amp;lt;font color=green&amp;gt;  ! Minimum depth to execute water quality calculations (meters)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Sediment Transport&#039; section, update the following command to reference the Sediment Control file:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Sediment Control File&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOWFV\stm\TC04_001.fvsed  &amp;lt;font color=green&amp;gt;  ! Reference the Sediment Control File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Initial Conditions&#039; section, update the following commands to set the initial temperature, salinity, sediment concentration and water quality concentrations. The initial water level was set in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M03#Receiving_Model | TUFLOW CATCH Tutorial 03]]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Initial Temperature&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;17.0  &amp;lt;font color=green&amp;gt;  ! Specify initial temperature (degrees Celsius)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Initial Salinity&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.0  &amp;lt;font color=green&amp;gt;  ! Specify initial salinity (psu)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Initial Sediment Concentration&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;20  &amp;lt;font color=green&amp;gt;  ! Specify initial suspended sediment concentration for clay (mg/L)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Initial WQ Concentration&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;8.0, 1e6, 1e6  &amp;lt;font color=green&amp;gt;  ! Specify initial water quality concentration for dissolved oxygen, alive and dead E. coli&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;In the &#039;Meteorology&#039; section, add the following boundary condition blocks to specify meteorological conditions. The variable &#039;&amp;lt;tt&amp;gt;met_ts&amp;lt;/tt&amp;gt;&#039; is used to define the location of the meteorological data. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Set Variable met_ts&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOWFV\bc_dbase\met\TC04_met_ts_001.csv &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;LW_RAD, &amp;lt;&amp;lt;met_ts&amp;gt;&amp;gt;  &amp;lt;font color=green&amp;gt;  ! Downward longwave radiation (W m&amp;lt;sup&amp;gt;-2&amp;lt;/sup&amp;gt;)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Header&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Time, LW_RAD  &amp;lt;font color=green&amp;gt;  ! Column headers to read from time series file&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Update dt&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300  &amp;lt;font color=green&amp;gt;  ! Specify update timestep for BC (seconds)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Time Units&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Hours  &amp;lt;font color=green&amp;gt;  ! Specify time units&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Reference Time&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 10:00  &amp;lt;font color=green&amp;gt;  ! Specify boundary condition reference time&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End BC&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;SW_RAD, &amp;lt;&amp;lt;met_ts&amp;gt;&amp;gt;  &amp;lt;font color=green&amp;gt;  ! Downward shortwave radiation (W m&amp;lt;sup&amp;gt;-2&amp;lt;/sup&amp;gt;)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Header&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Time, SW_RAD&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Update dt&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Time Units&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Hours&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Reference Time&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 10:00&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End BC&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;W10, &amp;lt;&amp;lt;met_ts&amp;gt;&amp;gt;  &amp;lt;font color=green&amp;gt;  ! Wind velocity at 10m (m s&amp;lt;sup&amp;gt;-1&amp;lt;/sup&amp;gt;)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Header&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Time, W10_X, W10_Y&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Update dt&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Time Units&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Hours&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Reference Time&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 10:00&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End BC&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;AIR_TEMP, &amp;lt;&amp;lt;met_ts&amp;gt;&amp;gt;  &amp;lt;font color=green&amp;gt;  ! Temperature input (deg C)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Header&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Time, AIR_TEMP&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Update dt&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Time Units&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Hours&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Reference Time&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 10:00&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End BC&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;REL_HUM, &amp;lt;&amp;lt;met_ts&amp;gt;&amp;gt;  &amp;lt;font color=green&amp;gt;  ! Relative humidity (%)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Header&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Time, REL_HUM&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Update dt&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Time Units&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;Hours&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Reference Time&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 10:00&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End BC&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Outputs&#039; section, update the existing NetCDF output block to include sediment:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Output&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;NetCDF  &amp;lt;font color=green&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Output Parameters&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;h, v, d, sed_1  &amp;lt;font color=green&amp;gt; ! Outputs water level, velocity, depth and sediment&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Output Interval&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;30  &amp;lt;font color=green&amp;gt; ! Interval to output the data (seconds) &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Suffix&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;HD  &amp;lt;font color=green&amp;gt; ! Specify suffix for the output NetCDF file &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Output&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; At the end of the &#039;Outputs&#039; section, add the following output block to output water quality results.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Output&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;NetCDF  &amp;lt;font color=green&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Output Parameters&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;wq_all  &amp;lt;font color=green&amp;gt; ! Outputs water quality results &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Output Interval&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;30  &amp;lt;font color=green&amp;gt; ! Interval to output the data (seconds) &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Suffix&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;WQ  &amp;lt;font color=green&amp;gt; ! Specify suffix for the output NetCDF file &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Output&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TCC.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Running the Simulation =&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOWCATCH\runs&#039;&#039;&#039; folder. Save a copy of &#039;&#039;&#039;_run_TC03_CATCH.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TC04_CATCH.bat&#039;&#039;&#039; and open the file in a text editor. &lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the &#039;&#039;&#039;TC04_001.tcc&#039;&#039;&#039;:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;set &amp;lt;/font&amp;gt;exe&amp;lt;font color=red&amp;gt;=&amp;lt;/font&amp;gt;&amp;quot;..\..\..\..\exe\TUFLOWCATCH\2025.1.0\TUFLOWCATCH.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=orange&amp;gt;%exe%&amp;lt;/font&amp;gt; TC04_001.tcc&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Double click the batch file in file explorer to run the simulation. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
See tips on common mistakes and troubleshooting steps if the model doesn&#039;t run:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_Troubleshooting_QGIS | QGIS]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Results Output =&lt;br /&gt;
Complete the steps outlined in the following links to review simulation results from the TUFLOW CATCH integrated model simulation:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M04_Results_QGIS | TC04 - Results]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion =&lt;br /&gt;
* A TUFLOW CATCH Integrated model was created.&lt;br /&gt;
* Meteorological data, water quality and sediment transport were added to the model.&lt;br /&gt;
* A TUFLOW CATCH JSON file was created to review the transfer of results (particularly pollutants) between the TUFLOW HPC and the TUFLOW FV domains.&lt;br /&gt;
* For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_CATCH_Tutorial_Introduction| Back to Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_CATCH_Tutorial_M01&amp;diff=45181</id>
		<title>TUFLOW CATCH Tutorial M01</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_CATCH_Tutorial_M01&amp;diff=45181"/>
		<updated>2025-10-23T06:07:55Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In this module, a TUFLOW CATCH pollutant export model is developed. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TUFLOW CATCH Tutorial 01 is built from the model created in &amp;lt;u&amp;gt;[[Tutorial_M06#Part_3_-_Rainfall_Control_File | TUFLOW Tutorial Module 6 - Part 3]]&amp;lt;/u&amp;gt;. The completed TUFLOW Module 6 (part 3) is provided in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. If unfamiliar with TUFLOW, it is recommended to complete Modules 1, 2, 3 and 6 of the &amp;lt;u&amp;gt;[[Tutorial_Introduction | TUFLOW Tutorials]]&amp;lt;/u&amp;gt; to establish an understanding of 1D and 2D TUFLOW modelling, including direct rainfall models.&lt;br /&gt;
&lt;br /&gt;
= Project Initialisation =&lt;br /&gt;
TUFLOW CATCH models are separated into a series of folders which contain the input and output files. The recommended directory structure for TUFLOW CATCH models consists of a top-level folder, &#039;&#039;&#039;Modelling&#039;&#039;&#039;, which contains three subfolders:&lt;br /&gt;
* &#039;&#039;&#039;TUFLOW&#039;&#039;&#039;: Contains TUFLOW HPC input files.&lt;br /&gt;
* &#039;&#039;&#039;TUFLOWCATCH&#039;&#039;&#039;: Contains the TUFLOW CATCH Control file, as well as all check, results and log files.&lt;br /&gt;
* &#039;&#039;&#039;TUFLOWFV&#039;&#039;&#039;: Contains TUFLOW FV input files.&lt;br /&gt;
The third level subfolders are outlined below. For a more detailed description, refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/latest/ TUFLOW CATCH Manual]&amp;lt;/u&amp;gt;. For more information on TUFLOW HPC or TUFLOW FV folder structures, refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt; or the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOWFV/Releases/Latest/TUFLOW_FV_User_Manual.pdf TUFLOW FV Manual]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
[[File:TC1_folder_structure_01a.png|left]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Folder&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10%| Sub-Folder (s)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=75%| Description&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;3&amp;quot; style=&amp;quot;text-align: center;&amp;quot;|TUFLOW&lt;br /&gt;
| bc_dbase&amp;lt;br&amp;gt;model|| Follows standard TUFLOW structure.&lt;br /&gt;
|-&lt;br /&gt;
| catch || Not used, but generated for internal use. It holds files that are produced during computation, but deleted when the simulation finishes successfully.&lt;br /&gt;
|-&lt;br /&gt;
| check&amp;lt;br&amp;gt;results&amp;lt;br&amp;gt;runs || Not used, but generated for internal use. &amp;lt;br&amp;gt;All TUFLOW check and results files are written to the &#039;&#039;&#039;TUFLOWCATCH\check&#039;&#039;&#039; folder and the &#039;&#039;&#039;TUFLOWCATCH\results&#039;&#039;&#039; folder respectively. &amp;lt;br&amp;gt;TUFLOW CATCH simulations are run from the .tcc file in the &#039;&#039;&#039;TUFLOWCATCH\runs&#039;&#039;&#039; folder.&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;6&amp;quot; style=&amp;quot;text-align: center;&amp;quot;|TUFLOWCATCH&lt;br /&gt;
| bc_dbase|| Contains the output boundary condition and time-series data.&lt;br /&gt;
|-&lt;br /&gt;
| check || Contains the GIS and other check files produced by TUFLOW CATCH, TUFLOW and TUFLOW FV to carry out quality control checks&lt;br /&gt;
|-&lt;br /&gt;
| model || Not used - generated for internal use.&lt;br /&gt;
|-&lt;br /&gt;
| results|| Contains the result files produced by TUFLOW CATCH, TUFLOW and TUFLOW FV.&lt;br /&gt;
|-&lt;br /&gt;
| runs|| Contains the .tcc simulation control file.&lt;br /&gt;
|-&lt;br /&gt;
| runs\log || Contains the log files (e.g. .catchlog, .tlf, .log, etc) and _messages.shp files produced by TUFLOW CATCH, TUFLOW and TUFLOW FV.&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot; style=&amp;quot;text-align: center;&amp;quot;|TUFLOWFV&lt;br /&gt;
| bc_dbase&amp;lt;br&amp;gt;model&amp;lt;br&amp;gt;stm&amp;lt;br&amp;gt;wqm|| Follows standard TUFLOW FV structure.&lt;br /&gt;
|-&lt;br /&gt;
| check&amp;lt;br&amp;gt;results&amp;lt;br&amp;gt;runs || Not used, but generated for internal use. &amp;lt;br&amp;gt;All TUFLOW FV check and results files are written to the &#039;&#039;&#039;TUFLOWCATCH\check&#039;&#039;&#039; folder and the &#039;&#039;&#039;TUFLOWCATCH\results&#039;&#039;&#039; folder respectively. &amp;lt;br&amp;gt;TUFLOW CATCH simulations are run from the .tcc file in the &#039;&#039;&#039;TUFLOWCATCH\runs&#039;&#039;&#039; folder.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The TUFLOW CATCH folders can be set up manually, or automatically through the TUFLOW CATCH QGIS Plugin (recommended).&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Project_Initialisation_QGIS | TUFLOW CATCH Project Initialisation]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= GIS Inputs =&lt;br /&gt;
Create, import and view input data:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_GIS_Inputs_QGIS | TC01 - GIS Inputs]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= TUFLOW Boundary Condition Database (bc_dbase) =&lt;br /&gt;
Update the bc_dbase with a reference to the timeseries temperature data:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Tutorial_Data&#039;&#039;&#039; folder. Copy the &#039;&#039;&#039;temperature.csv&#039;&#039;&#039; and paste it in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\bc_dbase&#039;&#039;&#039; folder. This file contains the timeseries temperature data. &lt;br /&gt;
&amp;lt;li&amp;gt; Open the file. As this file will be read by TUFLOW CATCH, the first column must contain the date in ISODATE format (DD/MM/YYYY hh:mm:ss). It will also be read by TUFLOW HPC, and therefore must have a column specifying a time in hours from the beginning of the model. In this case, the &#039;TUFLOW_Time&#039; column contains the time in hours. For example, 01/01/2021 10:00:00 corresponds to 0, 01/01/2021 11:00:00 to 1, and so on. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC1_temperature_csv_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;&#039;&#039;TUFLOW\bc_dbase&#039;&#039;&#039; folder, save a copy of the &#039;&#039;&#039;bc_dbase_M06_001.csv&#039;&#039;&#039; as &#039;&#039;&#039;bc_dbase_TC01_001.csv&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Open the file and add the reference to the timeseries temperature data as shown below:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC1_bc_dbase_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save the bc_dbase.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Materials =&lt;br /&gt;
Surface roughness or bed resistance values (e.g. Manning’s n) are assigned to material IDs. To simulate a more complex catchment area, more material IDs have been specified. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Tutorial_Data&#039;&#039;&#039; folder. Copy the &#039;&#039;&#039;materials_TC01_001.csv&#039;&#039;&#039; and paste it in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\model&#039;&#039;&#039; folder. This file is a modified version of &#039;&#039;&#039;materials_M06_002.csv&#039;&#039;&#039; from &amp;lt;u&amp;gt;[[Tutorial_M06#Materials_2 | TUFLOW Tutorial Module 6]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file. Roughness values (Manning&#039;s n) have been applied to the five new material IDs:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC1_materials_01b.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;These new material IDs have been assigned to allow different pollutant export properties to be specified to each material ID. This is discussed in the &amp;lt;u&amp;gt;[[#Pollutant_Export_Model | TUFLOW CATCH Control File]]&amp;lt;/u&amp;gt; section. &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= TUFLOW Soil File (.tsoilf) =&lt;br /&gt;
The soils (.tsoilf) file is similar to the materials file. A positive integer ID is assigned to each soil, then an infiltration method followed by the soil parameters. For this tutorial, there is only one soil type (ID 1) which is applied across the whole model. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Tutorial_Data&#039;&#039;&#039; folder. Copy the &#039;&#039;&#039;TC01_soils_001.tsoilf&#039;&#039;&#039; and paste it in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\model&#039;&#039;&#039; folder.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file. The Green-Ampt (GA) infiltration method has been used. For more information on infiltration methods, refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC1_soils_file_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
The following steps will require use of a text editor. The tutorial demonstration uses Notepad++. For its configuration information refer to &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips | Notepad++ Tips]]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
=== TUFLOW Geometry Control File (TGC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save a copy of &#039;&#039;&#039;M02_001.tgc&#039;&#039;&#039; as &#039;&#039;&#039;TC01_001.tgc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\model&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt; Open the &#039;&#039;&#039;TC01_001.tgc&#039;&#039;&#039; in a text editor and add the following line after the &#039;&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Read GIS Mat&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&#039; command to reference the new materials GIS layer.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Read GIS Mat&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;gis\2d_mat_TC01_001_R.shp  &amp;lt;font color=green&amp;gt;  ! Sets material values according to attributes in the GIS layer&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save the TGC.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Boundary Control File (TBC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;M06_003.tbc&#039;&#039;&#039; as &#039;&#039;&#039;TC01_001.tbc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\model&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt; Open the &#039;&#039;&#039;TC01_001.tbc&#039;&#039;&#039; in a text editor and remove or comment out the reference to the 2D boundaries using a &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;!&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; symbol.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=green&amp;gt;! Read GIS BC == gis\2d_bc_M01_001_L.shp    ! Reads in downstream 2D boundary&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Add the additional lines to reference the 1D/2D culvert connections:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;gis\2d_bc_M03_culverts_001_P.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Links the 1D culverts to the 2D domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;gis\2d_bc_M03_culverts_001_R.shp | gis\2d_bc_M03_culverts_001_L.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Links the 1D culverts to the 2D domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TBC.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW ESTRY Control File (ECF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\model&#039;&#039;&#039; folder, and open &#039;&#039;&#039;TC01_001.ecf&#039;&#039;&#039; in a text editor. This file was created using the TUFLOW CATCH plugin.&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;1D Time Control&#039; section, ensure the following command has been specified to set the 1D computational timestep:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Timestep &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;0.5&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specifies a 1D computational timestep of 0.5 seconds&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;1D Elements&#039; section, add the following command to define the culverts:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Network &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;gis\1d_nwk_M03_culverts_001_L.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Defines culverts&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt; Add the following command line to define the Advection Dispersion (AD) approach. For more information on Advection Dispersion, please refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;AD Approach&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;METHOD A  &amp;lt;font color=green&amp;gt;  ! Sets the modelling approach for the Advection Dispersion through 1D channels&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the ECF.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TUFLOW CATCH Control File (TCC) ==&lt;br /&gt;
A TUFLOW CATCH simulation is set up and executed by constructing a TUFLOW CATCH Control file (.tcc). TUFLOW Control file (.tcf) and TUFLOW FV Control file (.fvc) are not used. The .tcc has four command blocks:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Global commands&lt;br /&gt;
&amp;lt;li&amp;gt; Catchment Hydraulic Model (TUFLOW HPC) commands&lt;br /&gt;
&amp;lt;li&amp;gt; Catchment Pollutant Export Model &lt;br /&gt;
&amp;lt;li&amp;gt; Receiving Model (TUFLOW FV) commands&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
All blocks must be included in the above order, but the later three can be switched on and off with a single command. &lt;br /&gt;
&lt;br /&gt;
The TUFLOW CATCH plugin has created a .tcc template file in the &#039;&#039;&#039;TUFLOWCATCH\runs&#039;&#039;&#039; folder, &#039;&#039;&#039;TC01_001.tcc&#039;&#039;&#039;. This file has been populated with all the commands needed to execute a TUFLOW CATCH simulation. In this section, the template commands will be populated/updated for this tutorial model.&lt;br /&gt;
&lt;br /&gt;
=== Global Settings ===&lt;br /&gt;
This section contains information that is applied equally to both TUFLOW HPC and TUFLOW FV.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOWCATCH\runs&#039;&#039;&#039; folder and open &#039;&#039;&#039;TC01_001.tcc&#039;&#039;&#039; into a text editor.&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Simulation Settings&#039; section, update the time commands:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Start Time&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 10:00:00  &amp;lt;font color=green&amp;gt;  ! Specifies the simulation start time&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Time&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 13:00:00  &amp;lt;font color=green&amp;gt;  ! Specifies the simulation end time&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Boundary Condition Configuration&#039; section, update the BC and CSV output intervals:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Catch BC Output Interval Nodestring&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300  &amp;lt;font color=green&amp;gt;  ! Outputs BC nodestring data every 300 seconds&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Catch BC Output Interval Lateral&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300  &amp;lt;font color=green&amp;gt;  ! Outputs BC lateral data every 300 seconds&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;CSV Write Frequency Day&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.01  &amp;lt;font color=green&amp;gt;  ! Writes CSV output every 0.01 days&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Catchment Hydraulic Model (TUFLOW HPC) ===&lt;br /&gt;
This block contains commands that construct the TUFLOW HPC simulation. These commands are almost entirely those that would be used in setting up a standalone TUFLOW HPC control file (.tcf), with a small number of additional commands that relate to TUFLOW CATCH. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Set the catchment hydraulic model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Catchment Hydraulic Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;HPC  &amp;lt;font color=green&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Set the zero date. TUFLOW HPC does not support ISODATE format, while TUFLOW FV requires it. This command ensures compatibility by setting the date in TUFLOW FV ISODATE format that corresponds to zero hours in TUFLOW HPC boundary condition files.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Zero Date&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 10:00  &amp;lt;font color=green&amp;gt;  ! Specifies the simulation start time in TUFLOW FV ISODATE format&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;GIS&#039; section, remove or comment out the following command using a &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;!&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; symbol. The SHP projection has already been set in the &amp;lt;u&amp;gt;[[#Global_Settings |Global Settings]]&amp;lt;/u&amp;gt; section.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=green&amp;gt;! SHP Projection == ..\..\TUFLOW\model\gis\projection.shp&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;GIS&#039; section, set the projection for the output grid files: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;TIF Projection&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\grid\DEM.tif  &amp;lt;font color=green&amp;gt;  ! Sets the GIS projection for the output grid files&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Solver&#039; section, set the timestep maximum and time format:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Timestep Maximum&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;2.5  &amp;lt;font color=green&amp;gt;  ! Specifies a maximum timestep (seconds)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Time Format&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;TUFLOWFV  &amp;lt;font color=green&amp;gt;  ! Specifies the time format of output results&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;SGS&#039; section, set the sample target distance:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;SGS Sample Target Distance&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.5  &amp;lt;font color=green&amp;gt;  ! Sets SGS Sample Target Distance (meters)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Control Files&#039; section, ensure all control files are referenced.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Geometry Control File&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\TC01_001.tgc  &amp;lt;font color=green&amp;gt;  ! Reference the TUFLOW Geometry Control File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Control File&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\TC01_001.tbc  &amp;lt;font color=green&amp;gt;  ! Reference the TUFLOW Boundary Conditions Control File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Database&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\bc_dbase\bc_dbase_TC01_001.csv  &amp;lt;font color=green&amp;gt;  ! Reference the Boundary Conditions Database&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Read Materials File&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\materials_TC01_001.csv  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Reference the Materials Definition File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Rainfall Control File&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\M06_point2grid_003.trfc  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Reference the TUFLOW Rainfall Control File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;ESTRY Control File&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt; ..\..\TUFLOW\model\TC01_001.ecf &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Reference the ESTRY (1D) Control File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Soils&#039; section, reference the soils file (.tsoilf), and define the soil parameters:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Read Soils File&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\TC01_soils_001.tsoilf  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Reference the Soils File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Soil Negative Rainfall Approach&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;FACTOR  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Soil Negative Rainfall Factor&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;0.2  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Pollutant Configuration&#039; section, reference the receiving polygon and set the pollutants. In this tutorial, salinity, temperature, dissolved oxygen (WQ_DISS_OXYGEN_MG_L), alive and dead ecoli (WQ_PATH_ECOLI_ALIVE/DEAD_CFU_100ML) and clay sediment (SED_CLAY) are simulated.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Receiving Polygon&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\gis\2d_rp_TC01_001_R.shp  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! GIS layer defining the receiving polygon&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Pollutant&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;Salinity, Temperature, WQ_DISS_OXYGEN_MG_L, WQ_PATH_ECOLI_ALIVE_CFU_100ML, WQ_PATH_ECOLI_DEAD_CFU_100ML, SED_CLAY  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Specify the pollutant names &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Output Map Configuration&#039; section, update the following commands to set the map output formats, the map output interval, map cuttoff depth and to define the TIF output parameters. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Map Output Format&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;XMDF TIF  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Result file types&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Map Output Data Types&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;catch h v d  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Output data types&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Map Output Interval&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;30  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Interval of output map data (seconds)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Map Cutoff Depth&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;0.05  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Sets map cutoff depth (meters)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;TIF Map Output Interval&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;0  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Interval of output TIF map data (seconds)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;TIF Map Output Data Types&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;h d dt  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! TIF result file types&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Pollutant Export Model===&lt;br /&gt;
This block contains commands that control the pollutant export (and other constituent) simulation.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Set the pollutant export model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Catchment Pollutant Export Model&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;Mass Accumulation Release  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Constant Concentrations&#039; section, add the following commands. They set the pollutants &#039;Salinity&#039; and &#039;WQ_DISS_OXYGEN_MG_L&#039; (dissolved oxygen) to a constant concentration value that is applied equally to all boundaries and summary files where appropriate.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Constant Salinity&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;0.0  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; ! Specify the constant concentration of salinity&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Constant WQ_DISS_OXYGEN_MG_L&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;8.0  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; ! Specify the constant concentration of dissolved oxygen&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Time Series&#039; section, add the following command. It sets the pollutant &#039;Temperature&#039; to be a time-series input, and points to the name &#039;temp&#039; in the bc_dbase.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Time-Series Temperature&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;temp  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;! Specify temperature as a timeseries and the corresponding BC database name&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;In the &#039;Pollutant Export Properties&#039; section, add the material block &#039;&amp;lt;tt&amp;gt;ALL&amp;lt;/tt&amp;gt;&#039; (&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Material &amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; ALL&amp;lt;/tt&amp;gt;) from the page linked below. This code block defines the default pollutant export properties for each pollutant. Once uniform conditions are set, progressive specifications of material by material pollutant behaviour can be set. These specifications override previous settings on a spatial basis. Including the default (&amp;lt;tt&amp;gt;ALL&amp;lt;/tt&amp;gt;) material block is considered best practice, as it ensures that all pollutants have export properties defined across the entire TUFLOW HPC domain, otherwise an error will occur. For more information on the pollutant export parameters, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/manual/2025.0/SimulationConstruction-1.html#SCTCCPollExpPE-4 Section 4.5.3.3 of the TUFLOW CATCH Manual]&amp;lt;/u&amp;gt;. &lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Pollutant_Export#Default_.28ALL.29 | Pollutant Export Properties: ALL]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;To set the pollutant export properties for the different material IDs, blocks similar to the above (e.g. &amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Material &amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; 4&amp;lt;/tt&amp;gt;) can be used. The material IDs correspond to those defined in the &#039;&#039;&#039;2d_mat_TC01_001.shp&#039;&#039;&#039; and &#039;&#039;&#039;2d_mat_M01_001.shp&#039;&#039;&#039; GIS layers.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To estimate E. coli export rates for each paddock, the area of each paddock was calculated. Based on this, appropriate animal populations were assigned. Using these values, the E. coli rates were calculated. For more information on pollutant export calculations, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/manual/2025.0/ProcessDescriptions-1.html#ProcessDescriptionsMats-3 Section 3.2.3 of the TUFLOW CATCH Manual]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC1_aerial_with_paddocks_01a.png|left]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white; padding: 10px&amp;quot; |Material ID&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white; padding: 10px&amp;quot; |Paddock Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white; padding: 10px&amp;quot; |Area (ha)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white; padding: 10px&amp;quot; |Animals&lt;br /&gt;
|-&lt;br /&gt;
|6||paddockA||1.5|| 23 Sheep, 7 Lambs&lt;br /&gt;
|- &lt;br /&gt;
|7||paddockB||0.3||2 Cows&lt;br /&gt;
|-&lt;br /&gt;
|8||paddockC||1.2||20 Sheep&lt;br /&gt;
|- &lt;br /&gt;
|9||paddockD || 1||4 Cows, 2 Calves&lt;br /&gt;
|} &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Set the pollutant export properties for material ID 1. This is the material ID for all areas within the model domain not covered by a material region. These pollutant export properties define the release and deposition of clay sediment. Sediment pollutants generally use the &#039;Shear1&#039; method. For more information on &#039;Shear1&#039;, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/manual/2025.0/SimulationConstruction-1.html#SCTCCPollExpSS-5 Section 4.5.3.3.2 of the TUFLOW CATCH Manual]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Pollutant_Export#Model_Area_.281.29 | Pollutant Export Properties: 1]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Set the pollutant export properties for material ID 4 (waterholes, eddies, etc). These properties define settling (deposition velocity) of alive and dead E. coli to 2 meters per day (approx 25cm during the simulation).&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Pollutant_Export#Slow_Moving_Water_.284.29 | Pollutant Export Properties: 4]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Set the pollutant export properties for material ID&#039;s 6 (paddockA), 7 (paddockB), 8 (paddockC) and 9 (paddockD). These properties define the accumulation (rate) and washoff of alive and dead E. coli for the animals on the paddock.&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Pollutant_Export#Paddocks_.286.2C_7.2C_8_and_9.29 | Pollutant Export Properties: 6, 7, 8, 9]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; For this tutorial, leave all interventions commands as is. This section of the .tcc will be discussed in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M02 |TUFLOW CATCH Tutorial 02]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt; Save the .tcc.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Receiving Model (TUFLOW FV)===&lt;br /&gt;
For this tutorial, leave all commands as is. This section of the .tcc will be populated in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M03 | TUFLOW CATCH Tutorial 03]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Running the Simulation=&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOWCATCH\runs&#039;&#039;&#039; folder. The TUFLOW CATCH plugin created a batch file (.bat) that references the .tcc called &#039;&#039;&#039;Demonstration.bat&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;Demonstration.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TC01_CATCH.bat&#039;&#039;&#039; and open the file in a text editor. &lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the TUFLOW CATCH executable:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;set &amp;lt;/font&amp;gt;exe&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;=&amp;lt;/font&amp;gt;&amp;quot;..\..\..\..\exe\TUFLOWCATCH\2025.1.0\TUFLOWCATCH.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;%exe%&amp;lt;/font&amp;gt; TC01_001.tcc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Double click the batch file in file explorer to run the simulation.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Troubleshooting=&lt;br /&gt;
See tips on common mistakes and troubleshooting steps if the model doesn&#039;t run:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_Troubleshooting_QGIS | QGIS]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Check Files and Results Output=&lt;br /&gt;
Complete the steps outlined in the following links to review check files and simulation results from the TUFLOW CATCH pollutant export model simulation:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Check_Files_QGIS | TC01 - Check Files]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Results_QGIS | TC01 - Results]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Reviewing Model Performance=&lt;br /&gt;
There are a number of useful outputs from TUFLOW CATCH for reviewing the model performance. &lt;br /&gt;
&lt;br /&gt;
===TUFLOW CATCH Log File (.catchlog)===&lt;br /&gt;
The first file to review is the TUFLOW CATCH Log File (.catchlog). The &amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Log Folder&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;log&amp;lt;/tt&amp;gt; command in the .tcc controls where the .catchlog is written. &amp;lt;br&amp;gt;&lt;br /&gt;
Navigate to the &#039;&#039;&#039;Modelling\TUFLOWCATCH\runs\log&#039;&#039;&#039; folder and open the &#039;&#039;&#039;TC01_001.catchlog&#039;&#039;&#039; file in a text editor. It contains a summary of the TUFLOW CATCH simulation. The following are the key points to review: &amp;lt;br&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Global Settings:&#039;&#039;&#039; The commands from the &#039;Global Settings&#039; section of the .tcc are echoed here. Review these to confirm that the correct settings have been applied.&amp;lt;br&amp;gt;&lt;br /&gt;
:[[File: TC1_catchlog_01b.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Simulation Configuration:&#039;&#039;&#039; The .catchlog outlines which models have been used and what simulation configuration has been run. In this tutorial, the catchment hydraulic and pollutant export models have been applied, indicating a pollutant export configuration. &amp;lt;br&amp;gt;&lt;br /&gt;
:[[File: TC1_catchlog_02a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Run Status:&#039;&#039;&#039; At the end of the file, a message will confirm the simulation outcome. &lt;br /&gt;
:* If successful, it will state &#039;Run Successful&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
::[[File: TC1_catchlog_03b.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
:* If an issue occurred, the simulation will stop and an error message will be reported. An example error is shown in the image below. &lt;br /&gt;
::&#039;&#039;&#039;Note:&#039;&#039;&#039; Each TUFLOW CATCH error message has a corresponding wiki page that provides further details about the error, and suggestions for how to fix the issue. Refer to &amp;lt;u&amp;gt;[[5xxx_TUFLOW_Messages | 5xxx Messages]]&amp;lt;/u&amp;gt; for a list of all TUFLOW CATCH related error messages.&amp;lt;br&amp;gt;&lt;br /&gt;
::[[File: TC1_catchlog_04c.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Other Log Files===&lt;br /&gt;
Once the .catchlog has been reviewed, it is recommended to check the TUFLOW Log File (.tlf) if the catchment hydraulic model has been specified and to check the TUFLOW FV Log File (.log) if the receiving model has been specified. These files contain TUFLOW and TUFLOW FV specific check, warning and error messages.&lt;br /&gt;
&lt;br /&gt;
====TUFLOW Log File (.tlf)====&lt;br /&gt;
Since the catchment hydraulic model is specified in this tutorial, review the TUFLOW Log File. The &amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Log Folder&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;log&amp;lt;/tt&amp;gt; command in the .tcc defines where the .tlf is written&amp;lt;br&amp;gt;&lt;br /&gt;
Navigate to the &#039;&#039;&#039;Modelling\TUFLOWCATCH\runs\log&#039;&#039;&#039; folder and open the &#039;&#039;&#039;TC01_001_catchment_hydraulic.tlf&#039;&#039;&#039; file in a text editor. &lt;br /&gt;
* Scroll down to the bottom to &#039;Simulation Summary&#039;. This includes information about the computation time, messages, volume calculations and mass error.&lt;br /&gt;
* Review any check, warning or error messages. &lt;br /&gt;
* For more information on reviewing TUFLOW log outputs, refer to &amp;lt;u&amp;gt;[[HPC_Model_Review | HPC Model Review]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
====TUFLOW FV Log File (.log)====&lt;br /&gt;
The receiving model has not been specified in this tutorial, so no TUFLOW FV Log File (.log) has been created. The TUFLOW FV Log File will be reviewed in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M03#Reviewing_Model_Performance | TUFLOW CATCH Tutorial 03]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
* A TUFLOW CATCH Pollutant Export model was created. A downstream receiving polygon was used to track pollutants in the receiving waters.&lt;br /&gt;
* Check files were used to review the transfer from the Catchment Hydraulic model (TUFLOW HPC) into the receiving polygon.&lt;br /&gt;
* TUFLOW CATCH time series results and TUFLOW map outputs were assessed to observe the pollutant behaviours.&lt;br /&gt;
* For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_CATCH_Tutorial_Introduction| Back to Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_CATCH_Tutorial_M03&amp;diff=45180</id>
		<title>TUFLOW CATCH Tutorial M03</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_CATCH_Tutorial_M03&amp;diff=45180"/>
		<updated>2025-10-23T06:07:35Z</updated>

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

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In this module, a TUFLOW CATCH pollutant export model with interventions is developed. Interventions are representative of water quality pollutant treatment infrastructure. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TUFLOW CATCH Tutorial 02 is built from the pollutant export model created in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01 | TUFLOW CATCH Tutorial 01]]&amp;lt;/u&amp;gt;. The completed TUFLOW CATCH Tutorial 01 is provided in the &#039;&#039;&#039;TUFLOW_CATCH_Module_02\Modelling&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. &lt;br /&gt;
If unfamiliar with TUFLOW CATCH, it is recommended to complete &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01 | TUFLOW CATCH Tutorial 01]]&amp;lt;/u&amp;gt; prior to starting this tutorial.&lt;br /&gt;
&lt;br /&gt;
= GIS Inputs =&lt;br /&gt;
Create, import and view input data:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M02_GIS_Inputs_QGIS | TC02 - GIS Inputs]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Treatment Tables =&lt;br /&gt;
Treatment tables can be used in TUFLOW CATCH models with interventions. Treatment tables are one of the mass removal methods offered by TUFLOW CATCH. A treatment table is a two dimensional array that defines the proportion of pollutant mass removed from the incoming water based on:&lt;br /&gt;
* Incoming pollutant concentration: The concentration of a given pollutant entering the treatment device. &lt;br /&gt;
:&#039;&#039;Note:&#039;&#039; The concentration units depend on the pollutant. Refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/manual/2025.1/SimulationConstruction-1.html#SCTCCPollExpUnits-5 Section 4.5.3.3.3 of the TUFLOW CATCH Manual]&amp;lt;/u&amp;gt; for details on unit conventions. &lt;br /&gt;
* Flow rate: The volume of water passing through the treatment device (m³/s).&lt;br /&gt;
Treatment tables allow users to vary pollutant removal efficiency. This recognises that some intervention devices perform better when pollutants enter at higher concentrations and lower flow rates, rather than at lower concentrations with higher flow rates. For more information about treatment tables and their properties, please refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/manual/2025.1/ProcessDescriptions-1.html#ProcessDescriptionsIntervMatrix-4 Section 3.3.1.2 of the TUFLOW CATCH Manual]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
For this tutorial, treatment tables for E. coli and clay have been provided:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_02\Tutorial_Data&#039;&#039;&#039; folder. Copy the &#039;&#039;&#039;TC02_ecoli_treatment_001.csv&#039;&#039;&#039; and &#039;&#039;&#039;TC02_clay_treatment_001.csv&#039;&#039;&#039; and paste them in the &#039;&#039;&#039;TUFLOW_CATCH_Module_02\Modelling\TUFLOW\bc_dbase&#039;&#039;&#039; folder.&lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;&#039;&#039;TC02_ecoli_treatment_001.csv&#039;&#039;&#039;. The first row (below the title) defines the incoming concentration (cfu/100mL) and the first column defines the incoming flow rate (m³/s). The other values are the mass removal factors, which define the proportion of pollutant removed for a given concentration and flow rate. For example, for an incoming concentration of 200000 cfu/100mL and an incoming flow rate of 1 m³/s, the removal factor is 0.2. The concentration and flow ranges were determined from the outputs of the previous tutorial model (&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01 |TUFLOW CATCH Tutorial 01]]&amp;lt;/u&amp;gt;). &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC2_treatment_table_ecoli_01b.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the &#039;&#039;&#039;TC02_clay_treatment_001.csv&#039;&#039;&#039;. This file follows the same structure as the E. coli treatment table, however the incoming concentrations are in mg/L instead of cfu/100mL. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC2_treatment_table_clay_01b.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
The following steps will require use of a text editor. The tutorial demonstration uses Notepad++. For its configuration information refer to &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips | Notepad++ Tips]]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TUFLOW CATCH Control File (TCC) ==&lt;br /&gt;
=== Global Settings ===&lt;br /&gt;
For this tutorial, leave all commands as is. This section of the .tcc was populated in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01 | TUFLOW CATCH Tutorial 01]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Catchment Hydraulic Model ===&lt;br /&gt;
For this tutorial, leave all commands as is. This section of the .tcc was populated in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01 | TUFLOW CATCH Tutorial 01]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=== Pollutant Export Model ===&lt;br /&gt;
This block contains commands that control the pollutant export (and other constituent) simulation. For this tutorial, the pollutant export model block must be updated to include interventions. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save a copy of &#039;&#039;&#039;TC01_001.tcc&#039;&#039;&#039; as &#039;&#039;&#039;TC02_001.tcc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_CATCH_Module_02\Modelling\TUFLOWCATCH\runs&#039;&#039;&#039; folder. Open &#039;&#039;&#039;TC02_001.tcc&#039;&#039;&#039; in a text editor. &lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Interventions&#039; section, update the following command to reference the interventions (2d_im) layer created earlier in this tutorial. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Read GIS Intervention&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\gis\2d_im_TC02_001_L.shp  &amp;lt;font color=green&amp;gt;  ! GIS layer defining interventions&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;In the &#039;Mass Removal Properties&#039; section, add the following device block. This block defines the default mass removal properties for all pollutants across all devices. Including it is considered best practice, as it ensures that all devices have their mass export properties specified. For more information on the mass removal parameters, please refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/manual/2025.1/SimulationConstruction-1.html#SCTCCPollExpInter-4 Section 4.5.3.5 of the TUFLOW CATCH Manual]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Device&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;ALL &amp;lt;font color=green&amp;gt;  ! Default parameters for all devices&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;SED_CLAY, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Eqn, &amp;lt;font color=blue&amp;gt;Eqn &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Constant, &amp;lt;font color=blue&amp;gt;Coefficients &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; 1.0&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;WQ_PATH_ECOLI_ALIVE_CFU_100ML, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Eqn, &amp;lt;font color=blue&amp;gt;Eqn &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Constant, &amp;lt;font color=blue&amp;gt;Coefficients &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; 1.0&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;WQ_PATH_ECOLI_DEAD_CFU_100ML, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Eqn, &amp;lt;font color=blue&amp;gt;Eqn &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Constant, &amp;lt;font color=blue&amp;gt;Coefficients &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; 1.0&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Device&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Set the mass removal properties for intervention devices &#039;trench1&#039; and &#039;trench2&#039;. These devices are placed around the edges of paddocks C and D to manage the E. coli runoff. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Device&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;trench1, trench2 &amp;lt;font color=green&amp;gt;  ! Defines mass removal properties for trench1 and trench2&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;SED_CLAY, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Eqn, &amp;lt;font color=blue&amp;gt;Eqn &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Constant, &amp;lt;font color=blue&amp;gt;Coefficients &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; 0.4&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;WQ_PATH_ECOLI_ALIVE_CFU_100ML, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Eqn, &amp;lt;font color=blue&amp;gt;Eqn &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Constant, &amp;lt;font color=blue&amp;gt;Coefficients &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; 0.9&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;WQ_PATH_ECOLI_DEAD_CFU_100ML, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Eqn, &amp;lt;font color=blue&amp;gt;Eqn &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Constant, &amp;lt;font color=blue&amp;gt;Coefficients &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; 0.9&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Device&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Set the mass removal properties for intervention device &#039;retentionBasin&#039;. This device is place parallel to the road on the eastern side of the model. It has been placed between paddockB and the culvert under the road to minimise clay and E. coli runoff.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Device&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;retentionBasin &amp;lt;font color=green&amp;gt;  ! Defines mass removal properties for retentionBasin&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;SED_CLAY, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Eqn, &amp;lt;font color=blue&amp;gt;Eqn &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Constant, &amp;lt;font color=blue&amp;gt;Coefficients &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; 0.8&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;WQ_PATH_ECOLI_ALIVE_CFU_100ML, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Table, &amp;lt;font color=blue&amp;gt;Path &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; ..\..\TUFLOW\bc_dbase\TC02_ecoli_treatment_001.csv&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;WQ_PATH_ECOLI_DEAD_CFU_100ML, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Table, &amp;lt;font color=blue&amp;gt;Path &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; ..\..\TUFLOW\bc_dbase\TC02_ecoli_treatment_001.csv&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Device&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Set the mass removal properties for intervention devices &#039;bufferStrip1&#039; and &#039;bufferStrip2&#039;. These devices are placed strategically to manage clay sediment runoff. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Device&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;bufferStrip1, bufferStrip2&amp;lt;font color=green&amp;gt;  ! Defines mass removal properties for bufferStrip1 and bufferStrip2&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;SED_CLAY, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Table, &amp;lt;font color=blue&amp;gt;Path &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; ..\..\TUFLOW\bc_dbase\TC02_clay_treatment_001.csv&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;WQ_PATH_ECOLI_ALIVE_CFU_100ML, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Eqn, &amp;lt;font color=blue&amp;gt;Eqn &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Constant, &amp;lt;font color=blue&amp;gt;Coefficients &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; 0.4&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:&amp;lt;tt&amp;gt;WQ_PATH_ECOLI_DEAD_CFU_100ML, &amp;lt;font color=blue&amp;gt;Method &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Eqn, &amp;lt;font color=blue&amp;gt;Eqn &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; Constant, &amp;lt;font color=blue&amp;gt;Coefficients &amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt;==&amp;lt;/font&amp;gt; 0.7&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Device&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Save the .tcc.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Receiving Model ===&lt;br /&gt;
For this tutorial, leave all commands as is. This section of the .tcc will be populated in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M03 | TUFLOW CATCH Tutorial 03]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
= Running the Simulation =&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOWCATCH\runs&#039;&#039;&#039; folder. Save a copy of &#039;&#039;&#039;_run_TC01_CATCH.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TC02_CATCH.bat&#039;&#039;&#039; and open the file in a text editor. &lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the &#039;&#039;&#039;TC02_001.tcc&#039;&#039;&#039;:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;set &amp;lt;/font&amp;gt;exe&amp;lt;font color=red&amp;gt;=&amp;lt;/font&amp;gt;&amp;quot;..\..\..\..\exe\TUFLOWCATCH\2025.1.0\TUFLOWCATCH.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=orange&amp;gt;%exe%&amp;lt;/font&amp;gt; TC02_001.tcc&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Double click the batch file in file explorer to run the simulation. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Troubleshooting =&lt;br /&gt;
See tips on common mistakes and troubleshooting steps if the model doesn&#039;t run:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_Troubleshooting_QGIS | QGIS]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Check Files and Results Output =&lt;br /&gt;
Complete the steps outlined in the following links to review check files and simulation results from the TUFLOW CATCH pollutant export model simulation:&lt;br /&gt;
&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M02_Check_Files_QGIS | TC02 - Check Files]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M02_Results_QGIS | TC02 - Results]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Conclusion =&lt;br /&gt;
* Intervention devices were added to a TUFLOW CATCH Pollutant Export model. &lt;br /&gt;
* Check files were used to review the placement of intervention devices.&lt;br /&gt;
* TUFLOW CATCH interventions summary and TUFLOW map outputs were assessed to observe the mass removal for each intervention device.&lt;br /&gt;
* For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_CATCH_Tutorial_Introduction| Back to Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
	<entry>
		<id>https://wiki.tuflow.com/w/index.php?title=TUFLOW_CATCH_Tutorial_M01&amp;diff=45178</id>
		<title>TUFLOW CATCH Tutorial M01</title>
		<link rel="alternate" type="text/html" href="https://wiki.tuflow.com/w/index.php?title=TUFLOW_CATCH_Tutorial_M01&amp;diff=45178"/>
		<updated>2025-10-23T06:06:40Z</updated>

		<summary type="html">&lt;p&gt;Pavlina Monhartova: /* Conclusion */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;= Introduction =&lt;br /&gt;
In this module, a TUFLOW CATCH pollutant export model is developed. &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
TUFLOW CATCH Tutorial 01 is built from the model created in &amp;lt;u&amp;gt;[[Tutorial_M06#Part_3_-_Rainfall_Control_File | TUFLOW Tutorial Module 6 - Part 3]]&amp;lt;/u&amp;gt;. The completed TUFLOW Module 6 (part 3) is provided in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW&#039;&#039;&#039; folder of the download dataset as the starting point for this tutorial. If unfamiliar with TUFLOW, it is recommended to complete Modules 1, 2, 3 and 6 of the &amp;lt;u&amp;gt;[[Tutorial_Introduction | TUFLOW Tutorials]]&amp;lt;/u&amp;gt; to establish an understanding of 1D and 2D TUFLOW modelling, including direct rainfall models.&lt;br /&gt;
&lt;br /&gt;
= Project Initialisation =&lt;br /&gt;
TUFLOW CATCH models are separated into a series of folders which contain the input and output files. The recommended directory structure for TUFLOW CATCH models consists of a top-level folder, &#039;&#039;&#039;Modelling&#039;&#039;&#039;, which contains three subfolders:&lt;br /&gt;
* &#039;&#039;&#039;TUFLOW&#039;&#039;&#039;: Contains TUFLOW HPC input files.&lt;br /&gt;
* &#039;&#039;&#039;TUFLOWCATCH&#039;&#039;&#039;: Contains the TUFLOW CATCH Control file, as well as all check, results and log files.&lt;br /&gt;
* &#039;&#039;&#039;TUFLOWFV&#039;&#039;&#039;: Contains TUFLOW FV input files.&lt;br /&gt;
The third level subfolders are outlined below. For a more detailed description, refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/latest/ TUFLOW CATCH Manual]&amp;lt;/u&amp;gt;. For more information on TUFLOW HPC or TUFLOW FV folder structures, refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt; or the &amp;lt;u&amp;gt;[https://downloads.tuflow.com/TUFLOWFV/Releases/Latest/TUFLOW_FV_User_Manual.pdf TUFLOW FV Manual]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
[[File:TC1_folder_structure_01a.png|left]]&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; | Folder&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=10%| Sub-Folder (s)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white;&amp;quot; width=75%| Description&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;3&amp;quot; style=&amp;quot;text-align: center;&amp;quot;|TUFLOW&lt;br /&gt;
| bc_dbase&amp;lt;br&amp;gt;model|| Follows standard TUFLOW structure.&lt;br /&gt;
|-&lt;br /&gt;
| catch || Not used, but generated for internal use. It holds files that are produced during computation, but deleted when the simulation finishes successfully.&lt;br /&gt;
|-&lt;br /&gt;
| check&amp;lt;br&amp;gt;results&amp;lt;br&amp;gt;runs || Not used, but generated for internal use. &amp;lt;br&amp;gt;All TUFLOW check and results files are written to the &#039;&#039;&#039;TUFLOWCATCH\check&#039;&#039;&#039; folder and the &#039;&#039;&#039;TUFLOWCATCH\results&#039;&#039;&#039; folder respectively. &amp;lt;br&amp;gt;TUFLOW CATCH simulations are run from the .tcc file in the &#039;&#039;&#039;TUFLOWCATCH\runs&#039;&#039;&#039; folder.&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;6&amp;quot; style=&amp;quot;text-align: center;&amp;quot;|TUFLOWCATCH&lt;br /&gt;
| bc_dbase|| Contains the output boundary condition and time-series data.&lt;br /&gt;
|-&lt;br /&gt;
| check || Contains the GIS and other check files produced by TUFLOW CATCH, TUFLOW and TUFLOW FV to carry out quality control checks&lt;br /&gt;
|-&lt;br /&gt;
| model || Not used - generated for internal use.&lt;br /&gt;
|-&lt;br /&gt;
| results|| Contains the result files produced by TUFLOW CATCH, TUFLOW and TUFLOW FV.&lt;br /&gt;
|-&lt;br /&gt;
| runs|| Contains the .tcc simulation control file.&lt;br /&gt;
|-&lt;br /&gt;
| runs\log || Contains the log files (e.g. .catchlog, .tlf, .log, etc) and _messages.shp files produced by TUFLOW CATCH, TUFLOW and TUFLOW FV.&lt;br /&gt;
|-&lt;br /&gt;
|rowspan=&amp;quot;2&amp;quot; style=&amp;quot;text-align: center;&amp;quot;|TUFLOWFV&lt;br /&gt;
| bc_dbase&amp;lt;br&amp;gt;model&amp;lt;br&amp;gt;stm&amp;lt;br&amp;gt;wqm|| Follows standard TUFLOW FV structure.&lt;br /&gt;
|-&lt;br /&gt;
| check&amp;lt;br&amp;gt;results&amp;lt;br&amp;gt;runs || Not used, but generated for internal use. &amp;lt;br&amp;gt;All TUFLOW FV check and results files are written to the &#039;&#039;&#039;TUFLOWCATCH\check&#039;&#039;&#039; folder and the &#039;&#039;&#039;TUFLOWCATCH\results&#039;&#039;&#039; folder respectively. &amp;lt;br&amp;gt;TUFLOW CATCH simulations are run from the .tcc file in the &#039;&#039;&#039;TUFLOWCATCH\runs&#039;&#039;&#039; folder.&lt;br /&gt;
|}&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The TUFLOW CATCH folders can be set up manually, or automatically through the TUFLOW CATCH QGIS Plugin (recommended).&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Project_Initialisation_QGIS | TUFLOW CATCH Project Initialisation]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= GIS Inputs =&lt;br /&gt;
Create, import and view input data:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_GIS_Inputs_QGIS | TC01 - GIS Inputs]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= TUFLOW Boundary Condition Database (bc_dbase) =&lt;br /&gt;
Update the bc_dbase with a reference to the timeseries temperature data:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Tutorial_Data&#039;&#039;&#039; folder. Copy the &#039;&#039;&#039;temperature.csv&#039;&#039;&#039; and paste it in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\bc_dbase&#039;&#039;&#039; folder. This file contains the timeseries temperature data. &lt;br /&gt;
&amp;lt;li&amp;gt; Open the file. As this file will be read by TUFLOW CATCH, the first column must contain the date in ISODATE format (DD/MM/YYYY hh:mm:ss). It will also be read by TUFLOW HPC, and therefore must have a column specifying a time in hours from the beginning of the model. In this case, the &#039;TUFLOW_Time&#039; column contains the time in hours. For example, 01/01/2021 10:00:00 corresponds to 0, 01/01/2021 11:00:00 to 1, and so on. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC1_temperature_csv_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;&#039;&#039;TUFLOW\bc_dbase&#039;&#039;&#039; folder, save a copy of the &#039;&#039;&#039;bc_dbase_M06_001.csv&#039;&#039;&#039; as &#039;&#039;&#039;bc_dbase_TC01_001.csv&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt; Open the file and add the reference to the timeseries temperature data as shown below:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC1_bc_dbase_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save the bc_dbase.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Materials =&lt;br /&gt;
Surface roughness or bed resistance values (e.g. Manning’s n) are assigned to material IDs. To simulate a more complex catchment area, more material IDs have been specified. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Tutorial_Data&#039;&#039;&#039; folder. Copy the &#039;&#039;&#039;materials_TC01_001.csv&#039;&#039;&#039; and paste it in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\model&#039;&#039;&#039; folder. This file is a modified version of &#039;&#039;&#039;materials_M06_002.csv&#039;&#039;&#039; from &amp;lt;u&amp;gt;[[Tutorial_M06#Materials_2 | TUFLOW Tutorial Module 6]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file. Roughness values (Manning&#039;s n) have been applied to the five new material IDs:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC1_materials_01b.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;These new material IDs have been assigned to allow different pollutant export properties to be specified to each material ID. This is discussed in the &amp;lt;u&amp;gt;[[#Pollutant_Export_Model | TUFLOW CATCH Control File]]&amp;lt;/u&amp;gt; section. &lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= TUFLOW Soil File (.tsoilf) =&lt;br /&gt;
The soils (.tsoilf) file is similar to the materials file. A positive integer ID is assigned to each soil, then an infiltration method followed by the soil parameters. For this tutorial, there is only one soil type (ID 1) which is applied across the whole model. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Tutorial_Data&#039;&#039;&#039; folder. Copy the &#039;&#039;&#039;TC01_soils_001.tsoilf&#039;&#039;&#039; and paste it in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\model&#039;&#039;&#039; folder.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Open the file. The Green-Ampt (GA) infiltration method has been used. For more information on infiltration methods, refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC1_soils_file_01a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Simulation Control Files =&lt;br /&gt;
The following steps will require use of a text editor. The tutorial demonstration uses Notepad++. For its configuration information refer to &amp;lt;u&amp;gt;[[NotepadPlusPlus_Tips | Notepad++ Tips]]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
=== TUFLOW Geometry Control File (TGC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save a copy of &#039;&#039;&#039;M02_001.tgc&#039;&#039;&#039; as &#039;&#039;&#039;TC01_001.tgc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\model&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt; Open the &#039;&#039;&#039;TC01_001.tgc&#039;&#039;&#039; in a text editor and add the following line after the &#039;&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Read GIS Mat&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&#039; command to reference the new materials GIS layer.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Read GIS Mat&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;gis\2d_mat_TC01_001_R.shp  &amp;lt;font color=green&amp;gt;  ! Sets material values according to attributes in the GIS layer&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Save the TGC.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW Boundary Control File (TBC) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;M06_003.tbc&#039;&#039;&#039; as &#039;&#039;&#039;TC01_001.tbc&#039;&#039;&#039; in the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\model&#039;&#039;&#039; folder. &lt;br /&gt;
&amp;lt;li&amp;gt; Open the &#039;&#039;&#039;TC01_001.tbc&#039;&#039;&#039; in a text editor and remove or comment out the reference to the 2D boundaries using a &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;!&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; symbol.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=green&amp;gt;! Read GIS BC == gis\2d_bc_M01_001_L.shp    ! Reads in downstream 2D boundary&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Add the additional lines to reference the 1D/2D culvert connections:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;gis\2d_bc_M03_culverts_001_P.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Links the 1D culverts to the 2D domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS BC &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;gis\2d_bc_M03_culverts_001_R.shp | gis\2d_bc_M03_culverts_001_L.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Links the 1D culverts to the 2D domain&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the TBC.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== TUFLOW ESTRY Control File (ECF) ===&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOW\model&#039;&#039;&#039; folder, and open &#039;&#039;&#039;TC01_001.ecf&#039;&#039;&#039; in a text editor. This file was created using the TUFLOW CATCH plugin.&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;1D Time Control&#039; section, ensure the following command has been specified to set the 1D computational timestep:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Timestep &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;0.5&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Specifies a 1D computational timestep of 0.5 seconds&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;1D Elements&#039; section, add the following command to define the culverts:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;Read GIS Network &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;== &amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;black&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;gis\1d_nwk_M03_culverts_001_L.shp&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;  ! Defines culverts&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt; &lt;br /&gt;
&amp;lt;li&amp;gt; Add the following command line to define the Advection Dispersion (AD) approach. For more information on Advection Dispersion, please refer to the &amp;lt;u&amp;gt;[https://docs.tuflow.com/classic-hpc/manual/latest/ TUFLOW Manual]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;AD Approach&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;METHOD A  &amp;lt;font color=green&amp;gt;  ! Sets the modelling approach for the Advection Dispersion through 1D channels&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Save the ECF.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== TUFLOW CATCH Control File (TCC) ==&lt;br /&gt;
A TUFLOW CATCH simulation is set up and executed by constructing a TUFLOW CATCH Control file (.tcc). TUFLOW Control file (.tcf) and TUFLOW FV Control file (.fvc) are not used. The .tcc has four command blocks:&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Global commands&lt;br /&gt;
&amp;lt;li&amp;gt; Catchment Hydraulic Model (TUFLOW HPC) commands&lt;br /&gt;
&amp;lt;li&amp;gt; Catchment Pollutant Export Model &lt;br /&gt;
&amp;lt;li&amp;gt; Receiving Model (TUFLOW FV) commands&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
All blocks must be included in the above order, but the later three can be switched on and off with a single command. &lt;br /&gt;
&lt;br /&gt;
The TUFLOW CATCH plugin has created a .tcc template file in the &#039;&#039;&#039;TUFLOWCATCH\runs&#039;&#039;&#039; folder, &#039;&#039;&#039;TC01_001.tcc&#039;&#039;&#039;. This file has been populated with all the commands needed to execute a TUFLOW CATCH simulation. In this section, the template commands will be populated/updated for this tutorial model.&lt;br /&gt;
&lt;br /&gt;
=== Global Settings ===&lt;br /&gt;
This section contains information that is applied equally to both TUFLOW HPC and TUFLOW FV.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Navigate to the &#039;&#039;&#039;TUFLOW_CATCH_Module_01\Modelling\TUFLOWCATCH\runs&#039;&#039;&#039; folder and open &#039;&#039;&#039;TC01_001.tcc&#039;&#039;&#039; into a text editor.&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Simulation Settings&#039; section, update the time commands:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Start Time&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 10:00:00  &amp;lt;font color=green&amp;gt;  ! Specifies the simulation start time&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;End Time&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 13:00:00  &amp;lt;font color=green&amp;gt;  ! Specifies the simulation end time&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Boundary Condition Configuration&#039; section, update the BC and CSV output intervals:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Catch BC Output Interval Nodestring&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300  &amp;lt;font color=green&amp;gt;  ! Outputs BC nodestring data every 300 seconds&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Catch BC Output Interval Lateral&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;300  &amp;lt;font color=green&amp;gt;  ! Outputs BC lateral data every 300 seconds&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;CSV Write Frequency Day&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.01  &amp;lt;font color=green&amp;gt;  ! Writes CSV output every 0.01 days&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Catchment Hydraulic Model (TUFLOW HPC) ===&lt;br /&gt;
This block contains commands that construct the TUFLOW HPC simulation. These commands are almost entirely those that would be used in setting up a standalone TUFLOW HPC control file (.tcf), with a small number of additional commands that relate to TUFLOW CATCH. &lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Set the catchment hydraulic model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Catchment Hydraulic Model&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;HPC  &amp;lt;font color=green&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Set the zero date. TUFLOW HPC does not support ISODATE format, while TUFLOW FV requires it. This command ensures compatibility by setting the date in TUFLOW FV ISODATE format that corresponds to zero hours in TUFLOW HPC boundary condition files.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Zero Date&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;01/01/2021 10:00  &amp;lt;font color=green&amp;gt;  ! Specifies the simulation start time in TUFLOW FV ISODATE format&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;GIS&#039; section, remove or comment out the following command using a &#039;&amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;tt&amp;gt;!&amp;lt;/tt&amp;gt;&amp;lt;/font&amp;gt;&#039; symbol. The SHP projection has already been set in the &amp;lt;u&amp;gt;[[#Global_Settings |Global Settings]]&amp;lt;/u&amp;gt; section.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=green&amp;gt;! SHP Projection == ..\..\TUFLOW\model\gis\projection.shp&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;GIS&#039; section, set the projection for the output grid files: &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;TIF Projection&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\grid\DEM.tif  &amp;lt;font color=green&amp;gt;  ! Sets the GIS projection for the output grid files&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Solver&#039; section, set the timestep maximum and time format:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Timestep Maximum&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;2.5  &amp;lt;font color=green&amp;gt;  ! Specifies a maximum timestep (seconds)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Time Format&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;TUFLOWFV  &amp;lt;font color=green&amp;gt;  ! Specifies the time format of output results&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;SGS&#039; section, set the sample target distance:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;SGS Sample Target Distance&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;0.5  &amp;lt;font color=green&amp;gt;  ! Sets SGS Sample Target Distance (meters)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Control Files&#039; section, ensure all control files are referenced.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Geometry Control File&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\TC01_001.tgc  &amp;lt;font color=green&amp;gt;  ! Reference the TUFLOW Geometry Control File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Control File&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\TC01_001.tbc  &amp;lt;font color=green&amp;gt;  ! Reference the TUFLOW Boundary Conditions Control File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;BC Database&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\bc_dbase\bc_dbase_TC01_001.csv  &amp;lt;font color=green&amp;gt;  ! Reference the Boundary Conditions Database&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Read Materials File&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\materials_TC01_001.csv  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Reference the Materials Definition File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Rainfall Control File&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\M06_point2grid_003.trfc  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Reference the TUFLOW Rainfall Control File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;ESTRY Control File&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt; ..\..\TUFLOW\model\TC01_001.ecf &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Reference the ESTRY (1D) Control File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Soils&#039; section, reference the soils file (.tsoilf), and define the soil parameters:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Read Soils File&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\TC01_soils_001.tsoilf  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Reference the Soils File&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Soil Negative Rainfall Approach&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;FACTOR  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Soil Negative Rainfall Factor&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;0.2  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Pollutant Configuration&#039; section, reference the receiving polygon and set the pollutants. In this tutorial, salinity, temperature, dissolved oxygen (WQ_DISS_OXYGEN_MG_L), alive and dead ecoli (WQ_PATH_ECOLI_ALIVE/DEAD_CFU_100ML) and clay sediment (SED_CLAY) are simulated.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Receiving Polygon&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;..\..\TUFLOW\model\gis\2d_rp_TC01_001_R.shp  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! GIS layer defining the receiving polygon&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Pollutant&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;Salinity, Temperature, WQ_DISS_OXYGEN_MG_L, WQ_PATH_ECOLI_ALIVE_CFU_100ML, WQ_PATH_ECOLI_DEAD_CFU_100ML, SED_CLAY  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Specify the pollutant names &amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Output Map Configuration&#039; section, update the following commands to set the map output formats, the map output interval, map cuttoff depth and to define the TIF output parameters. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Map Output Format&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;XMDF TIF  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Result file types&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Map Output Data Types&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;catch h v d  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Output data types&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Map Output Interval&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;30  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Interval of output map data (seconds)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Map Cutoff Depth&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;0.05  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Sets map cutoff depth (meters)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;TIF Map Output Interval&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;0  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! Interval of output TIF map data (seconds)&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;TIF Map Output Data Types&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;h d dt  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;  ! TIF result file types&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Pollutant Export Model===&lt;br /&gt;
This block contains commands that control the pollutant export (and other constituent) simulation.&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt; Set the pollutant export model:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Catchment Pollutant Export Model&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;Mass Accumulation Release  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Constant Concentrations&#039; section, add the following commands. They set the pollutants &#039;Salinity&#039; and &#039;WQ_DISS_OXYGEN_MG_L&#039; (dissolved oxygen) to a constant concentration value that is applied equally to all boundaries and summary files where appropriate.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Constant Salinity&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;0.0  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; ! Specify the constant concentration of salinity&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Constant WQ_DISS_OXYGEN_MG_L&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;8.0  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt; ! Specify the constant concentration of dissolved oxygen&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; In the &#039;Time Series&#039; section, add the following command. It sets the pollutant &#039;Temperature&#039; to be a time-series input, and points to the name &#039;temp&#039; in the bc_dbase.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Time-Series Temperature&amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt; == &amp;lt;/font&amp;gt;temp  &amp;lt;font color=&amp;quot;green&amp;quot;&amp;gt;! Specify temperature as a timeseries and the corresponding BC database name&amp;lt;/font&amp;gt;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;In the &#039;Pollutant Export Properties&#039; section, add the material block &#039;&amp;lt;tt&amp;gt;ALL&amp;lt;/tt&amp;gt;&#039; (&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Material &amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; ALL&amp;lt;/tt&amp;gt;) from the page linked below. This code block defines the default pollutant export properties for each pollutant. Once uniform conditions are set, progressive specifications of material by material pollutant behaviour can be set. These specifications override previous settings on a spatial basis. Including the default (&amp;lt;tt&amp;gt;ALL&amp;lt;/tt&amp;gt;) material block is considered best practice, as it ensures that all pollutants have export properties defined across the entire TUFLOW HPC domain, otherwise an error will occur. For more information on the pollutant export parameters, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/manual/2025.0/SimulationConstruction-1.html#SCTCCPollExpPE-4 Section 4.5.3.3 of the TUFLOW CATCH Manual]&amp;lt;/u&amp;gt;. &lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Pollutant_Export#Default_.28ALL.29 | Pollutant Export Properties: ALL]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;To set the pollutant export properties for the different material IDs, blocks similar to the above (e.g. &amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;Material &amp;lt;/font&amp;gt;&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;==&amp;lt;/font&amp;gt; 4&amp;lt;/tt&amp;gt;) can be used. The material IDs correspond to those defined in the &#039;&#039;&#039;2d_mat_TC01_001.shp&#039;&#039;&#039; and &#039;&#039;&#039;2d_mat_M01_001.shp&#039;&#039;&#039; GIS layers.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
To estimate E. coli export rates for each paddock, the area of each paddock was calculated. Based on this, appropriate animal populations were assigned. Using these values, the E. coli rates were calculated. For more information on pollutant export calculations, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/manual/2025.0/ProcessDescriptions-1.html#ProcessDescriptionsMats-3 Section 3.2.3 of the TUFLOW CATCH Manual]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
[[File: TC1_aerial_with_paddocks_01a.png|left]]&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white; padding: 10px&amp;quot; |Material ID&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white; padding: 10px&amp;quot; |Paddock Name&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white; padding: 10px&amp;quot; |Area (ha)&lt;br /&gt;
! style=&amp;quot;background-color:#005581; font-weight:bold; color:white; padding: 10px&amp;quot; |Animals&lt;br /&gt;
|-&lt;br /&gt;
|6||paddockA||1.5|| 23 Sheep, 7 Lambs&lt;br /&gt;
|- &lt;br /&gt;
|7||paddockB||0.3||2 Cows&lt;br /&gt;
|-&lt;br /&gt;
|8||paddockC||1.2||20 Sheep&lt;br /&gt;
|- &lt;br /&gt;
|9||paddockD || 1||4 Cows, 2 Calves&lt;br /&gt;
|} &lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; Set the pollutant export properties for material ID 1. This is the material ID for all areas within the model domain not covered by a material region. These pollutant export properties define the release and deposition of clay sediment. Sediment pollutants generally use the &#039;Shear1&#039; method. For more information on &#039;Shear1&#039;, refer to &amp;lt;u&amp;gt;[https://docs.tuflow.com/catch/manual/2025.0/SimulationConstruction-1.html#SCTCCPollExpSS-5 Section 4.5.3.3.2 of the TUFLOW CATCH Manual]&amp;lt;/u&amp;gt;.&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Pollutant_Export#Model_Area_.281.29 | Pollutant Export Properties: 1]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Set the pollutant export properties for material ID 4 (waterholes, eddies, etc). These properties define settling (deposition velocity) of alive and dead E. coli to 2 meters per day (approx 25cm during the simulation).&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Pollutant_Export#Slow_Moving_Water_.284.29 | Pollutant Export Properties: 4]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Set the pollutant export properties for material ID&#039;s 6 (paddockA), 7 (paddockB), 8 (paddockC) and 9 (paddockD). These properties define the accumulation (rate) and washoff of alive and dead E. coli for the animals on the paddock.&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Pollutant_Export#Paddocks_.286.2C_7.2C_8_and_9.29 | Pollutant Export Properties: 6, 7, 8, 9]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt; For this tutorial, leave all interventions commands as is. This section of the .tcc will be discussed in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M02 |TUFLOW CATCH Tutorial 02]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&amp;lt;li&amp;gt; Save the .tcc.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Receiving Model (TUFLOW FV)===&lt;br /&gt;
For this tutorial, leave all commands as is. This section of the .tcc will be populated in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M03 | TUFLOW CATCH Tutorial 03]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Running the Simulation=&lt;br /&gt;
&amp;lt;ol&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In Windows File Explorer, navigate to the &#039;&#039;&#039;TUFLOWCATCH\runs&#039;&#039;&#039; folder. The TUFLOW CATCH plugin created a batch file (.bat) that references the .tcc called &#039;&#039;&#039;Demonstration.bat&#039;&#039;&#039;.&lt;br /&gt;
&amp;lt;li&amp;gt;Save a copy of &#039;&#039;&#039;Demonstration.bat&#039;&#039;&#039; as &#039;&#039;&#039;_run_TC01_CATCH.bat&#039;&#039;&#039; and open the file in a text editor. &lt;br /&gt;
&amp;lt;li&amp;gt;Update the batch file to reference the TUFLOW CATCH executable:&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;blue&amp;quot;&amp;gt;set &amp;lt;/font&amp;gt;exe&amp;lt;font color=&amp;quot;red&amp;quot;&amp;gt;=&amp;lt;/font&amp;gt;&amp;quot;..\..\..\..\exe\TUFLOWCATCH\2025.1.0\TUFLOWCATCH.exe&amp;quot;&amp;lt;/tt&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;tt&amp;gt;&amp;lt;font color=&amp;quot;orange&amp;quot;&amp;gt;%exe%&amp;lt;/font&amp;gt; TC01_001.tcc&amp;lt;/tt&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Double click the batch file in file explorer to run the simulation.&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Troubleshooting=&lt;br /&gt;
See tips on common mistakes and troubleshooting steps if the model doesn&#039;t run:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[Tutorial_Troubleshooting_QGIS | QGIS]]&amp;lt;/u&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Check Files and Results Output=&lt;br /&gt;
Complete the steps outlined in the following links to review check files and simulation results from the TUFLOW CATCH pollutant export model simulation:&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Check_Files_QGIS | TC01 - Check Files]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
:*&amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M01_Results_QGIS | TC01 - Results]]&amp;lt;/u&amp;gt;&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Reviewing Model Performance=&lt;br /&gt;
There are a number of useful outputs from TUFLOW CATCH for reviewing the model performance. &lt;br /&gt;
&lt;br /&gt;
===TUFLOW CATCH Log File (.catchlog)===&lt;br /&gt;
The first file to review is the TUFLOW CATCH Log File (.catchlog). The &amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Log Folder&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;log&amp;lt;/tt&amp;gt; command in the .tcc controls where the .catchlog is written. &amp;lt;br&amp;gt;&lt;br /&gt;
Navigate to the &#039;&#039;&#039;Modelling\TUFLOWCATCH\runs\log&#039;&#039;&#039; folder and open the &#039;&#039;&#039;TC01_001.catchlog&#039;&#039;&#039; file in a text editor. It contains a summary of the TUFLOW CATCH simulation. The following are the key points to review: &amp;lt;br&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Global Settings:&#039;&#039;&#039; The commands from the &#039;Global Settings&#039; section of the .tcc are echoed here. Review these to confirm that the correct settings have been applied.&amp;lt;br&amp;gt;&lt;br /&gt;
:[[File: TC1_catchlog_01b.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Simulation Configuration:&#039;&#039;&#039; The .catchlog outlines which models have been used and what simulation configuration has been run. In this tutorial, the catchment hydraulic and pollutant export models have been applied, indicating a pollutant export configuration. &amp;lt;br&amp;gt;&lt;br /&gt;
:[[File: TC1_catchlog_02a.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
* &#039;&#039;&#039;Run Status:&#039;&#039;&#039; At the end of the file, a message will confirm the simulation outcome. &lt;br /&gt;
:* If successful, it will state &#039;Run Successful&#039;&amp;lt;br&amp;gt;&lt;br /&gt;
::[[File: TC1_catchlog_03b.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
:* If an issue occurred, the simulation will stop and an error message will be reported. An example error is shown in the image below. &lt;br /&gt;
::&#039;&#039;&#039;Note:&#039;&#039;&#039; Each TUFLOW CATCH error message has a corresponding wiki page that provides further details about the error, and suggestions for how to fix the issue. Refer to &amp;lt;u&amp;gt;[[5xxx_TUFLOW_Messages | 5xxx Messages]]&amp;lt;/u&amp;gt; for a list of all TUFLOW CATCH related error messages.&amp;lt;br&amp;gt;&lt;br /&gt;
::[[File: TC1_catchlog_04c.png]]&amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Other Log Files===&lt;br /&gt;
Once the .catchlog has been reviewed, it is recommended to check the TUFLOW Log File (.tlf) if the catchment hydraulic model has been specified and to check the TUFLOW FV Log File (.log) if the receiving model has been specified. These files contain TUFLOW and TUFLOW FV specific check, warning and error messages.&lt;br /&gt;
&lt;br /&gt;
====TUFLOW Log File (.tlf)====&lt;br /&gt;
Since the catchment hydraulic model is specified in this tutorial, review the TUFLOW Log File. The &amp;lt;tt&amp;gt;&amp;lt;font color=blue&amp;gt;Log Folder&amp;lt;/font&amp;gt;&amp;lt;font color=red&amp;gt; == &amp;lt;/font&amp;gt;log&amp;lt;/tt&amp;gt; command in the .tcc defines where the .tlf is written&amp;lt;br&amp;gt;&lt;br /&gt;
Navigate to the &#039;&#039;&#039;Modelling\TUFLOWCATCH\runs\log&#039;&#039;&#039; folder and open the &#039;&#039;&#039;TC01_001_catchment_hydraulic.tlf&#039;&#039;&#039; file in a text editor. &lt;br /&gt;
* Scroll down to the bottom to &#039;Simulation Summary&#039;. This includes information about the computation time, messages, volume calculations and mass error.&lt;br /&gt;
* Review any check, warning or error messages. &lt;br /&gt;
* For more information on reviewing TUFLOW log outputs, refer to &amp;lt;u&amp;gt;[[HPC_Model_Review | HPC Model Review]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
====TUFLOW FV Log File (.log)====&lt;br /&gt;
The receiving model has not been specified in this tutorial, so no TUFLOW FV Log File (.log) has been created. The TUFLOW FV Log File will be reviewed in &amp;lt;u&amp;gt;[[TUFLOW_CATCH_Tutorial_M03#Reviewing_Model_Performance | TUFLOW CATCH Tutorial 03]]&amp;lt;/u&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
=Conclusion=&lt;br /&gt;
* A TUFLOW CATCH Pollutant Export model was created. A downstream receiving polygon was used to track pollutants in the receiving waters.&lt;br /&gt;
* Check files were used to review the transfer from the Catchment Hydraulic model (TUFLOW HPC) into the receiving polygon.&lt;br /&gt;
* TUFLOW CATCH time series results and TUFLOW map outputs were assessed to observe the pollutant behaviours.&lt;br /&gt;
*For further training opportunities see &amp;lt;u&amp;gt;[https://tuflow.com/training/training-course-catalogue/ TUFLOW Training Catalogue]&amp;lt;/u&amp;gt; and/or contact &amp;lt;u&amp;gt;[mailto:training@tuflow.com training@tuflow.com]&amp;lt;/u&amp;gt;. &amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
{{Tips Navigation&lt;br /&gt;
|uplink=[[TUFLOW_CATCH_Tutorial_Introduction| Back to Tutorial Introduction Main Page]]&lt;br /&gt;
}}&lt;/div&gt;</summary>
		<author><name>Pavlina Monhartova</name></author>
	</entry>
</feed>