4.6 Simulation Class: DO

If no simulation class is specified then a simulation will be automatically constructed using this DO class, and populated with library defaults for all parameters. Computed variables will be:

  • Dissolved oxygen
  • Pathogens (optional, potentially multiple)

4.6.1 Prerequisites

The DO simulation class requires simulation of the following in TUFLOW FV:

  • Hydrodynamics, in either two or three dimensions (including any internal one dimensional structures if present)
  • Salinity
  • Temperature
  • Heat module on (i.e. meteorological forcing is required)

Simulation of suspended sediment (via TUFLOW FV’s sediment transport module) is optional, unless attached pathogens are simulated.

4.6.2 Part 1: Simulation specification

The DO simulation class is set via

Simulation Class == DO

The other commands in this part are not specific to this simulation class. See section 4.5.1.

4.6.3 Part 2: Constituent model specification

As per Tables 2.2 and 2.3, oxygen is the only mandatory constituent model class available within the DO simulation class, and there is only one oxygen constituent model within that class, with code O2. Pathogens may be optionally simulated (in any simulation class).

4.6.3.1 Model class: Oxygen

4.6.3.1.1 Constituent model: O2

This constituent model is specified as:

Oxygen Model == O2

Minimum and maximum concentrations are specified as:

Oxygen Min Max == \(\left[DO\right]_{min}^{O_2}\), \(\left[DO\right]_{max}^{O_2}\)

Global benthic parameters (used in Equation (D.6)) are specified as:

Oxygen Benthic == \(K_{sed-O_2}^{O_2}\), \(\theta_{sed}^{O_2}\)

The oxygen piston model to be used (in either Equation (D.2) or Equation (D.3)) is specified as:

Oxygen Piston Model == Wanninkhof92

or

Oxygen Piston Model == Ho16

The argument (either “Wanninkhof92” or “Ho16”) activates a different oxygen piston model (Equation (D.2) or Equation (D.3), respectively).

Although not strictly necessary, the use of “oxygen” to prefix these block commands is deliberate so as to maintain consistency of command style with other constituent model blocks that include more than one computed variable, such as nitrogen, phosphorus and organics. Nonetheless, if the “oxygen” prefix is omitted within this constituent model block, the WQ Module will still interpret the above commands correctly.

This constituent model block must be terminated using the command:

End Oxygen Model

4.6.3.2 Model class: Pathogens (optional)

This model class is optional.

4.6.3.2.1 Constituent model: Free

This constituent model is specified as:

Pathogen Model == Free, <pathname>

<pathname> is any user specified pathogen group name that:

  • Uses only alphanumeric characters
  • Has no spaces
  • Excludes the keyword ‘PATH’, and
  • Is not the same as any other group name

Minimum and maximum concentrations are specified as:

Alive Min Max == \(\left[PTH_a\right]_{min}^{pth}\), \(\left[PTH_a\right]_{max}^{pth}\)

Mortality parameters are specified as:

Mortality == \(k_{d}^{pth}\), \(C_{SM}^{pth}\), \(\alpha\), \(\beta\), \(\theta_{mor}^{pth}\)

\(\beta\) is not currently used but must be retained as a placeholder in this command for future use.

Light inactivation parameters are specified in three separate but related commands, with one command per light band (visible, UV-A and UV-B):

Visible Inactivation == \(k_{vis}\), \(c_{S_{vis}}^{pth}\), \(K_{DO_{vis}}^{pth}\)

UVA Inactivation == \(k_{uva}\), \(c_{S_{uva}}^{pth}\), \(K_{DO_{uva}}^{pth}\)

UVB Inactivation == \(k_{uvb}\), \(c_{S_{uvb}}^{pth}\), \(K_{DO_{uvb}}^{pth}\)

Settling of non-attached pathogens is specified as follows, with a negative number being a downwards velocity:

Settling == \(V_{settle}^{pth}\)

This constituent model block must be terminated using the command:

End Pathogen Model

4.6.3.2.2 Constituent model: Attached

This constituent model must be accompanied by simulation of at least one sediment fraction within the TUFLOW FV sediment transport (ST) module, and is specified as:

Pathogen Model == Attached, <pathname>

<pathname> is any user specified pathogen group name that:

  • Uses only alphanumeric characters
  • Has no spaces
  • Excludes the keyword ‘PATH’, and
  • Is not the same as any other group name

The commands are the same as those specified within a free pathogen constituent model block (Section 4.6.3.2.1), with the following modification or additions.

Settling is specified for both free and attached pathogens:

Settling == \(V_{settle}^{pth}\), \(V_{settle}^{pth_t}\)

The target attached pathogen fraction is specified as:

Target Attached Fraction == \(f_{att}^{pth}\)

This constituent model block must be terminated using the command:

End Pathogen Model

4.6.4 Part 3: Material specification

Oxygen benthic flux (used in Equation (D.6)) is specified within both default and numbered material blocks as:

Oxygen Flux == \(F_{sed}^{O_2}\)

4.6.5 Constituent ordering

Dissolved oxygen is the only mandatory constituent simulated by the WQ Module for this simulation class, and therefore oxygen concentration is specified as the first variable (shown in symbolic form below):

Initial WQ Concentration == \(\left[ DO \right]\)

Similarly, in a BC Header == command within a BC block, oxygen is expected to be the first and only mandatory water quality variable after hydrodynamic boundary conditions.

BC Header == Time, Water_Elev, Sal, Temp, Clay, Sand, DO_mgL

DO_mgL is the header used to designate oxygen in the related boundary condition file, noting that the DO_mgL column in the boundary condition file can appear in any column in the boundary condition file, and that it does not need to be the seventh column. The header text “DO_mgL” is just an example, and it can be any header desired, as long as it matches the correct column header in the boundary condition file.

4.6.5.1 Pathogens (optional)

If pathogens are simulated, then their headers are required at the end of any lists, regardless of the other hydrodynamic and water quality constituents simulated. This therefore applies to all simulation classes from DO to organics. Alive and dead pathogens are always required to be specified, in that order, and if attached pathogens are simulated then that attached pathogens header is listed between those of alive and dead. This pattern is repeated for each specified pathogen group, in the order in which pathogen groups are defined via pathogen constituent model blocks in the water quality control file. For example, where two pathogen groups are simulated (called ECOLI and CRYPTO, and defined in that order in the corresponding water quality control file), with ECOLI including attachment, the above BC header would be extended to the following:

BC Header == Time, Water_Elev, Sal, Temp, Clay, Sand, DO_mgL, ECOLI_alive, ECOLI_att, ECOLI_dead, CRYPTO_al, CRYPTO_de

4.6.6 Example

Following is an example of all the available WQ Module Simulation Class == DO commands. A single material applied as zeros everywhere as the default, other than for materials 1 and 4 where the default flux is overwritten. One (optional) pathogen constituent model block has been included, but is not required.

Simulation Class == DO
WQ dt == 600
WQ Units == MgL

Oxygen Model == O2
  Oxygen Benthic == 4.0, 1.05
  Oxygen Min Max == 0.0, 15.0
End Oxygen Model

! Optional Pathogen Constituent Model Block
Pathogen Model == Free, Crypto
  Alive Min Max == 0.0, 1e7
  Mortality == 0.08, 2e-12, 6.1, 1.0, 1.11
  Visible Inactivation == 0.082, 0.0067, 0.5
  UVA Inactivation == 0.5, 0.0067, 0.5
  UVB Inactivation == 1.0, 0.0067, 0.5
  Settling == -0.03
End Pathogen Model

Material == Default
  Oxygen Flux == 0
End Material

Material == 1, 4
  Oxygen Flux == -137.0
End Material