Personal tools

Difference between revisions of "Module DrainageNetwork"

From MohidWiki

Jump to: navigation, search
(References)
(Output)
 
(32 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
=Overview=
  
 +
This module can be used by two models: [[Mohid_Land|MOHID Land]], and [[Mohid_River_Network|MOHID River Network]]. Like other modules, it has a specific input file, called '''DrainageNetwork_X.dat''', where X is the simulation number. The following tables describe the keywords that can be used, their data type, and the default values (in case of omission).
  
 +
==DrainageNetwork_X.dat Keywords==
  
 
+
===General===
 
 
==Creatig a drainage network file==
 
*Obtain a drainage network with MOHID GIS in [[MOHID_GIS#Delineate_Basins|Delineate Basins]]
 
 
 
*Alternatively can also obtain a drainage network with program BasinDelimiter (from SourceSafe) with a basin.dat with the keywords, adapted to the study watershed:
 
 
 
TOPOGRAPHIC_FILE              : ..\..\GeneralData\DTM\MDT200mSD.dat
 
TRESHOLD_AREA                : 100000
 
DELINEATE_BASIN              : 1
 
OUTLET_I                      : 1
 
OUTLET_J                      : 44
 
WRITE_REACHES                : 1
 
REACHES_FILE                  : ..\..\GeneralData\DrainageNetwork\DrainageNetwork.dnt
 
 
 
*Define the cross sections for the drainage network file in [[Mohid_GIS#Auto_Cross_Sections|MOHID GIS]].
 
DO NOT FORGET TO SELECT SAVE ALL IN MOHID GIS TO UPDATE THE FILE!!!
 
 
 
(Currently in this version of the cross sections program keyword TERRAIN_LEVEL is not written, instead is written BOTTOM_LEVEL (old version). TERRAIN LEVEL = BOTTOM_LEVEL + HEIGHT. Change it for example with excel, new program should be written)
 
 
 
*Define the network file just created in the drainage network data file with:
 
NETWORK_FILE : ..\..\GeneralData\DrainageNetwork\DrainageNetwork.dnt
 
 
 
 
 
 
 
 
 
 
 
==Data File ==
 
 
 
DrainageNetwork_X.dat is the input file to this module, where X is the simulation number. The following tables describe the keywords that can be used, their data type, and the default values (in case of omission)
 
 
 
===General Keywords===
 
  
 
  Keyword                  : Data Type        Default    !Comment
 
  Keyword                  : Data Type        Default    !Comment
Line 41: Line 13:
 
  GLOBAL_MANNING            : real              -          !Rugosity in Channels
 
  GLOBAL_MANNING            : real              -          !Rugosity in Channels
 
  GEO_CONVERSATION_FACTOR  : real              [1.]        !Lat to Meters rough estimation
 
  GEO_CONVERSATION_FACTOR  : real              [1.]        !Lat to Meters rough estimation
OUTPUT_TIME              : int int...        [-]
 
  
 +
===Stabilization===
  
===Time Series Keywords===
+
  Keyword                  : Data Type         Default    !Comment
 
 
The file specified in TIME_SERIE_LOCATION has to have the numbers of the nodes to output time series between blocks <BeginNodeTimeSerie>  / <EndNodeTimeSerie>.
 
 
 
TIME_SERIE_LOCATION      : char              -          !Path to time serie especification nodes
 
MAX_BUFFER_SIZE          : 1000
 
COMPUTE_RESIDUAL          : 1
 
DT_OUTPUT_TIME            : 1200
 
TIME_SERIE_BY_NODES      : 0/1              [0]         !Keyword to see if the user wants the time series to be written by nodes, i.e.,
 
                                                          !One file per node, with all variables in the headers list
 
                                                          !if FALSE, its one file per variable with nodes in the headers.
 
===Stabilization Keyword===
 
 
 
 
  STABILIZE                : 0/1              [0]        !Restart time iteration if high volume gradients
 
  STABILIZE                : 0/1              [0]        !Restart time iteration if high volume gradients
 
  STABILIZE_FACTOR          : real              [0.1]      !max gradient in time steps as fraction of old volume
 
  STABILIZE_FACTOR          : real              [0.1]      !max gradient in time steps as fraction of old volume
Line 63: Line 23:
 
  MAX_DT_FLOOD              : real              [10.0]      !Max DT if channel water level exceeds full bank
 
  MAX_DT_FLOOD              : real              [10.0]      !Max DT if channel water level exceeds full bank
  
===Hydrodynamic Keywords===
+
===Hydrodynamic===
  
 +
Keyword                  : Data Type        Default    !Comment
 
  HYDRODYNAMIC_APROX        : int              [1]        !1 - KinematicWave, 2 - DiffusionWave, 3 - DynamicWave
 
  HYDRODYNAMIC_APROX        : int              [1]        !1 - KinematicWave, 2 - DiffusionWave, 3 - DynamicWave
 
  NUMERICAL_SCHEME          : int              [0]        !0 - ExplicitScheme, 1 - ImplicitScheme
 
  NUMERICAL_SCHEME          : int              [0]        !0 - ExplicitScheme, 1 - ImplicitScheme
Line 72: Line 33:
 
  MINIMUM_SLOPE            : real              [0.0]      !Minimum Slope for Kinematic Wave
 
  MINIMUM_SLOPE            : real              [0.0]      !Minimum Slope for Kinematic Wave
  
 +
===Downstream Boundary===
 +
 +
Keyword                  : Data Type        Default    !Comment
 +
DOWNSTREAM_BOUNDARY      : int              [1]        !0 - Dam, 1 - ZDG, 2 - CD, 3 - ImposedWaterDepth, 3 - ImposedVelocity
 +
DEFAULTVALUE              : real              -          !Default value at downstream boundary
 +
FILE_IN_TIME              : char              [NONE]      !If DOWNSTREAM_BOUNDARY = ImposedWaterDepth, this can be NONE or TIMESERIE
 +
FILENAME                  : char              -          !If FILE_IN_TIME = TIMESERIE, this is the name of timeserie file for the downstream boundary
 +
DATA_COLUMN              : int              -          !Number of column with data in FILE_IN_TIME
 +
 +
===Output===
  
===Processes Keywords===
+
Output is given for all nodes in HDF5 format, and also as time series for the specified nodes in TIME_SERIE_LOCATION file. These nodes are identified by their IDS (see Network file) and have to be inside the block  '''<BeginNodeTimeSerie>  / <EndNodeTimeSerie>'''.
  
 +
Keyword                  : Data Type        Default    !Comment
 +
OUTPUT_TIME              : int int...        [-]        !time interval between outputs for all nodes, in HDF5 format.
 +
TIME_SERIE_LOCATION      : char              -          !Path to time serie file with the specified nodes (can be this file)
 +
MAX_BUFFER_SIZE          : 1000
 +
COMPUTE_RESIDUAL          : 1
 +
DT_OUTPUT_TIME            : 1200
 +
TIME_SERIE_BY_NODES      : 0/1              [0]        !Keyword to see if the user wants the time series to be written by nodes, i.e.,
 +
                                                          !One file per node, with all variables in the headers list
 +
                                                          !if FALSE, its one file per variable with nodes in the headers.
 +
 +
 +
channel water depth - height (m) from bottom channel to surface water in the selected nodes.
 +
 +
channel water level - altitude (m) of surface water in the selected nodes.
 +
 +
channel flow - flow (m3/s) in the selected nodes/reaches.
 +
 +
flow to channels - flow (m3/s) from runoff to river in the selected nodes.
 +
 +
GW flow to channels - flow (m3/s) from groundwater to river in the selected nodes.
 +
 +
each property transported will have an output with its concentration (mg/L) in the selected nodes. If property is particulated aslso will have a series named Bottom_[PropertyName] (kg/m2).
 +
 +
[http://screencast.com/t/I8We0B4j2uJ Check Mohid Land Heights and Levels to understand the difference between level and height results]
 +
 +
===Processes===
 +
 +
Keyword                  : Data Type        Default    !Comment
 
  MIN_WATER_DEPTH_PROCESS  : real              [0.01]      !Water Quality Process / Surface Fluxes shutdown
 
  MIN_WATER_DEPTH_PROCESS  : real              [0.01]      !Water Quality Process / Surface Fluxes shutdown
 
  DISCHARGES                : 0/1              [0]        !Use module discharges (WWTP, etc)
 
  DISCHARGES                : 0/1              [0]        !Use module discharges (WWTP, etc)
Line 87: Line 86:
 
  GLOBAL_TOXICITY          : char              ['SUM']    !Global Toxicity Computation Method : SUM,MAX,RISKRATIO
 
  GLOBAL_TOXICITY          : char              ['SUM']    !Global Toxicity Computation Method : SUM,MAX,RISKRATIO
 
   
 
   
===Downstream Boundary Keywords===
 
  
DOWNSTREAM_BOUNDARY      : int              [1]        !0 - Dam, 1 - ZDG, 2 - CD, 3 - ImposedWaterDepth, 3 - ImposedVelocity
+
===Properties===
DEFAULTVALUE              : real              -          !Default value at downstream boundary
 
FILE_IN_TIME              : char              [NONE]      !If DOWNSTREAM_BOUNDARY = ImposedWaterDepth, this can be NONE or TIMESERIE
 
FILENAME                  : char              -          !If FILE_IN_TIME = TIMESERIE, this is the name of timeserie file for the downstream boundary
 
DATA_COLUMN              : int              -          !Number of column with data in FILE_IN_TIME
 
  
===Properties Keywords===
+
Each property keywords must be inside a block '''<beginproperty>/<endproperty>'''.
  
 +
Keyword                    : Data Type        Default      !Comment
 
  <beginproperty>
 
  <beginproperty>
  NAME                   : cohesive sediment
+
NAME                       : char              [-]          !Property name, must be on of [[Properties_names]]
  UNITS                   : mg/L
+
UNITS                     : char              [-]          !usually mg/L (see IS_COEF)
  DESCRIPTION             : cohesive sediment
+
IS_COEF                    : real              [1.e-3]      !Conversion factor to the International System
  INITIAL_VALUE          : 100.00
+
DESCRIPTION               : char              [-]          !Property description
  MIN_VALUE               : 0.0
+
DEFAULT_VALUE              : real              [0.0]        !Property initial concentration
  ADVECTION_DIFUSION     : 1
+
MIN_VALUE                 : real              [0.0]        !Property minimum concentration
      ADVECTION_SCHEME   : 1       !Upwind
+
OVERLAND_CONCENTRATION    : real              [0.0]        !Concentration discharged from overland
      DIFFUSION_SCHEME   : 5       !CentralDif
+
GROUNDWATER_CONCENTRATION  : real              [0.0]        !Concentration discharged from ground water
      DIFFUSIVITY         : 1E-8   !m2/s
+
DIFFUSEWATER_CONCENTRATION : real              [0.0]
       VIRTUAL_COEF       : 0.01
+
ADVECTION_DIFUSION         : 0/1              [1]          !1 - want to transport property; 0 - no transport
   WATER_QUALITY           : 0
+
    ADVECTION_SCHEME       : int              [1]          !1 - UpwindOrder1 (currently no more options)
  BENTHOS                 : 0
+
    DIFFUSION_SCHEME       : int              [5]          !5 - CentralDiff  (currently no more options)
  Decay                   : 0      !uses T90 decay model for fecal coliform
+
    DIFFUSIVITY           : real              [1e-8]      !Molecular diffusivity of property in m2/s
  TIME_SERIE              : 1
+
DISCHARGES                : 0/1              [0]          !1 - property is discharged; 0 - no discharges
 +
TOXICITY                  : 0/1              [0]          !1 - property has an associated toxicity   
 +
    TOX_EVOLUTION          : int              [1]          !1 - Saturation, 2 - Linear, 3 - RiskRatio
 +
    EC50                  : real              [0.5]        !If TOX_EVOLUTION = Saturation or RiskRatio,
 +
                                                            !EC50 is the concentration that causes 50% of effect (Tox = 0.5)
 +
                                                            !in fraction of initial concentration units [%]
 +
    SLOPE                  : real              [1.0]        !If TOX_EVOLUTION = Linear
 +
DECAY                      : 0/1              [0]          !1- want to use bacterial decay model. 0 - no use. Must have DISCHARGES = 1 and [[Mohid_River_Network|atmosphere]].
 +
SURFACE_FLUXES            : 0/1              [0]          !Property has surface fluxes (e.g. evaporation). Needs [[Mohid_River_Network|atmosphere]].
 +
BOTTOM_FLUXES              : 0/1              [0]          !Property has bottom fluxes. Must be [[Properties_names|particulate]].
 +
    BOTTOM_CONC            : real              [0.0]       !Bottom Initial Concentration
 +
    BOTTOM_MIN_CONC       : real              [0.0]        !Bottom Minimum Concentration
 +
    EROSION                : 0/1              [1]          !Compute erosion fluxes
 +
        CRIT_SS_EROSION   : real              [0.2]        !Critical Erosion Shear Stress [Pa]
 +
        EROSION_COEF      : real              [5.0E-4]    !Erosion Coefficient [kg m-2 s-1]
 +
    DEPOSITION            : 0/1              [1]          !Compute deposition fluxes
 +
        CRIT_SS_DEPOSITION : real              [0.1]        !Critical Deposition Shear Stress [Pa]
 +
        CHS                : real              [4.0]        !Hindered settling [kg m-3] - See [[Module_FreeVerticalMovement]].
 +
        WS_TYPE            : int              [1]          !Settling type: WSConstant = 1, SPMFunction = 2
 +
        WS_VALUE          : real              [0.0001]    !Constant settling velocity [m s-1]
 +
        KL                : real              [0.1]        !See [[Module_FreeVerticalMovement]].
 +
        KL1                : real              [0.1]        !See [[Module_FreeVerticalMovement]].
 +
        ML                : real              [4.62]      !See [[Module_FreeVerticalMovement]].
 +
        M                  : real              [1.0]        !See [[Module_FreeVerticalMovement]].
 +
WATER_QUALITY             : 0/1              [0]          !1 - use [[Module_WaterQuality|Water Quality Model]] for property transformation; 0 - no use
 +
BENTHOS                   : 0/1              [0]          !1 - use [[Module_Benthos|Benthos Model]] for property transformation; 0 - no use
 +
CEQUALW2                   : 0/1              [0]          !1 - use [[Module_CEQUALW2|CEQUALW2 Model]] for property transformation; 0 - no use
 +
LIFE                      : 0/1              [0]          !1 - use [[Module_Life|Life Model]] for property transformation; 0 - no use
 +
EXTINCTION_PARAMETER       : real              [1.0]        !LIGHT EXTINCTION COEFFICIENT
 +
TIME_SERIE                 : 0/1              [0]          !Output this property in time series files.
 +
OUTPUT_NAME                : char             [NAME]      !Can be NAME or DESCRIPTION.
 +
COMPUTE_LOAD              : 0/1              [0]          !Output concentration (in UNITS) x Flow [m3 s-1]
 +
SUMTOTALCONC              : 0/1               [0] 0        !Checks if user wants to calculate total Concentration (Column + Bottom).
 
  <endproperty>
 
  <endproperty>
  
 +
====Toxicity Model====
 +
*The formulation is to associate an eco-toxiciy value to the property (From project ECORIVER 2002).
 +
*Every toxic property must be discharged.
 +
*Its concentration in the river network is set to 0.0.
 +
*Discharge concentration must be equal to 1, because we are measuring the dilution D = 1 - C_new / C_ini
 +
*The variable property%toxicity%concentration represents C/c_ini so it starts by being 1.
 +
*This is not even close to a final version. For more details, or sugestions/corrections, contact MARETEC (Rosa Trancoso).
 +
*EC50 - Concentration that causes 50% of effect (Tox = 0.5)
 +
 +
==Network file==
 +
 +
The Network file specified in '''NETWORK_FILE''' keyword has two types of blocks:
 +
* '''<BeginNode>/ <EndNode>'''
 +
* '''<BeginReach>/<EndReach>'''
  
Network file:
+
===Keywords===
  
 
  <BeginNode>
 
  <BeginNode>
Line 144: Line 185:
 
  <EndReach>
 
  <EndReach>
  
===Sample===
+
===Creating a Network file===
 +
 
 +
*Obtain a drainage network with MOHID GIS in [[MOHID_GIS#Delineate_Basins|Delineate Basins]]
 +
*Alternatively obtain a drainage network with program BasinDelimiter (from SourceSafe) with a '''basin.dat''' file such as:
  
  NETWORK_FILE             : ..\..\GeneralData\DrainageNetwork\DrainageNetworkAlcabrichel_100ha_terrain.dnt
+
  TOPOGRAPHIC_FILE             : ..\..\GeneralData\DTM\MDT200mSD.dat
  CHECK_NODES               : 1
+
TRESHOLD_AREA                : 100000
  CHECK_REACHES            : 1
+
  DELINEATE_BASIN               : 1
  HYDRODYNAMIC_APROX        : 1
+
  OUTLET_I                      : 1
  MASS_ERR                 : 0.001
+
  OUTLET_J                      : 44
GLOBAL_MANNING            : 0.06
+
WRITE_REACHES                : 1
MIN_WATER_DEPTH          : 0.01
+
  REACHES_FILE                 : ..\..\GeneralData\DrainageNetwork\DrainageNetwork.dnt
INITIAL_WATER_DEPTH      : 0.0
+
 
XS_CALC                  : 1
+
*Define the cross sections for each node (see [[Mohid_GIS#Auto_Cross_Sections|MOHID GIS]]).
DOWNSTREAM_BOUNDARY      : 1
+
**'''Warning 1''': Remember to select "Save All" in MOHID GIS to update the file.
TIME_SERIE_LOCATION      : ..\..\GeneralData\Timeseries\TimeSerieLocation_200_new.dat
+
**'''Warning 2''': Currently, this program writes a BOTTOM_LEVEL keyword for each node instead of the keyword TERRAIN_LEVEL needed by the Drainage Network module. BOTTOM_LEVEL was replaced by TERRAIN_LEVEL in the latest version of this module because of the introduction of the tabular (irregular) cross-section type, generalizing the formulation of cross-sections. The pre-processor tool is not yet adapted. Nevertheless, for regular cross-sections, TERRAIN LEVEL = BOTTOM_LEVEL + HEIGHT. It can be changed manually or with this perl script [http://docs.google.com/leaf?id=0B_xtWE4qvkq8Y2FhNjk5NTQtZTdhZC00N2I1LWE3Y2YtM2QwYzIyMjhhZDRj&sort=name&layout=list&num=50].
+
 
OUTPUT_TIME              : 0 864000
+
 
+
===Irregular Cross Section===
DISCHARGES                : 1 (1-if have a discharge file; 0 if not discharging)
+
 
CONTINUOUS                : 0
+
It's possible to create an irregular cross section setting the CROSS_SECTION_TYPE to 3 (Tabular).
+
The N_STATIONS is the number of "points" that will be used. A minimun of 3 points is needed, to make a triangular cross section.
MAX_DT_FLOOD              : 100
+
The STATION keyword is where you put the horizontal distance of the point to the origin point.
STABILIZE                : 1
+
The ELEVATION/LEVEL is where you put the vertical distances. The first and the last point must be at the same elevation (same values).
DT_FACTOR                : 0.75
+
The LEVEL is currently the distance from the bottom of the channel to the point.
STABILIZE_FACTOR          : 0.05
+
 
+
Observe the irregular cross section image below:
MINIMUM_SLOPE            : 0.0001
+
 
 +
[[Image:Irregular cross section image.jpg|center]]
 +
 
 +
The numbers represent each point, the upper case letters represent the horizontal pointers position and the lower case letters represent the pointers level (red dashed lines).
 +
 
 +
If the horizontal distances are like this:
 +
 
 +
A - B = 1.0 m
 +
 
 +
B - C = 2.5 m
 +
 
 +
C - D = 2.2 m
 +
 
 +
D - E = 2.5 m
 +
 
 +
E - F = 0.8 m
 +
 
 +
And if the LEVELS are:
 +
 
 +
a = 3.0 m
 +
 
 +
b = 1.3 m
 +
 
 +
c = 1.0 m
 +
 
 +
d = 0.0 m
 +
 
 +
e = 1.2 m
 +
 
 +
f = 3.0 m
  
====If want to model Properties ====
+
The cross section of a node can be represented like this:
  
Than additionaly to the above options need to define properties to be modelled. One block for each property (see a list
+
<BeginNode>
 +
  ...
 +
  CROSS_SECTION_TYPE      : 3
 +
      N_STATIONS          : 6         
 +
      STATION            : 0.0 1.0 3.5 5.7 8.2 9.0
 +
      LEVEL              : 3.0 1.3 1.0 0.0 1.2 3.0
 +
<EndNode>
  
<beginproperty>
+
Note that the STATION distances are always relative to the origen, so, the distance from point C to A is the sum of the A-B and B-C distances and so on.
NAME                    : salinity
 
UNITS                  : psu
 
DESCRIPTION            : salinity
 
DEFAULT_VALUE          : 0.3
 
MIN_VALUE              : 0.0
 
ADVECTION_DIFUSION      : 1      !1-want to transport property; 0 - no transport
 
DISCHARGES              : 0      !1-property is discharged;0 - no discharges
 
TIME_SERIE              : 1
 
WATER_QUALITY          : 0      !1-use water quality model for property transformation;0-no transformation
 
<endproperty>
 

Latest revision as of 10:07, 27 October 2011

Overview

This module can be used by two models: MOHID Land, and MOHID River Network. Like other modules, it has a specific input file, called DrainageNetwork_X.dat, where X is the simulation number. The following tables describe the keywords that can be used, their data type, and the default values (in case of omission).

DrainageNetwork_X.dat Keywords

General

Keyword                   : Data Type         Default     !Comment
NETWORK_FILE              : char              -           !Path to drainage network file
CHECK_NODES               : 0/1               [1]         !Ckeck nodes consistency
CHECK_REACHES             : 0/1               [1]         !Check reaches consistency
GLOBAL_MANNING            : real              -           !Rugosity in Channels
GEO_CONVERSATION_FACTOR   : real              [1.]        !Lat to Meters rough estimation

Stabilization

Keyword                   : Data Type         Default     !Comment
STABILIZE                 : 0/1               [0]         !Restart time iteration if high volume gradients
STABILIZE_FACTOR          : real              [0.1]       !max gradient in time steps as fraction of old volume
MAX_ITERATIONS            : int               [100]       !Max iterations for stabilized check
DT_FACTOR                 : real              [0.8]       !Factor for DT Prediction
MAX_DT_FLOOD              : real              [10.0]      !Max DT if channel water level exceeds full bank

Hydrodynamic

Keyword                   : Data Type         Default     !Comment
HYDRODYNAMIC_APROX        : int               [1]         !1 - KinematicWave, 2 - DiffusionWave, 3 - DynamicWave
NUMERICAL_SCHEME          : int               [0]         !0 - ExplicitScheme, 1 - ImplicitScheme
MASS_ERR                  : real(8)           [0.001]     !Max error in mass conservation
MIN_WATER_DEPTH           : real              [0.001]     !Min water depth in nodes (For h < MIN_WATER_DEPTH water stops flowing)
INITIAL_WATER_DEPTH       : real              [0.0]       !Initial water depth
MINIMUM_SLOPE             : real              [0.0]       !Minimum Slope for Kinematic Wave

Downstream Boundary

Keyword                   : Data Type         Default     !Comment
DOWNSTREAM_BOUNDARY       : int               [1]         !0 - Dam, 1 - ZDG, 2 - CD, 3 - ImposedWaterDepth, 3 - ImposedVelocity
DEFAULTVALUE              : real              -           !Default value at downstream boundary
FILE_IN_TIME              : char              [NONE]      !If DOWNSTREAM_BOUNDARY = ImposedWaterDepth, this can be NONE or TIMESERIE
FILENAME                  : char              -           !If FILE_IN_TIME = TIMESERIE, this is the name of timeserie file for the downstream boundary
DATA_COLUMN               : int               -           !Number of column with data in FILE_IN_TIME

Output

Output is given for all nodes in HDF5 format, and also as time series for the specified nodes in TIME_SERIE_LOCATION file. These nodes are identified by their IDS (see Network file) and have to be inside the block <BeginNodeTimeSerie> / <EndNodeTimeSerie>.

Keyword                   : Data Type         Default     !Comment
OUTPUT_TIME               : int int...        [-]         !time interval between outputs for all nodes, in HDF5 format.
TIME_SERIE_LOCATION       : char              -           !Path to time serie file with the specified nodes (can be this file)
MAX_BUFFER_SIZE           : 1000
COMPUTE_RESIDUAL          : 1
DT_OUTPUT_TIME            : 1200
TIME_SERIE_BY_NODES       : 0/1               [0]         !Keyword to see if the user wants the time series to be written by nodes, i.e.,
                                                          !One file per node, with all variables in the headers list
                                                          !if FALSE, its one file per variable with nodes in the headers.


channel water depth - height (m) from bottom channel to surface water in the selected nodes.

channel water level - altitude (m) of surface water in the selected nodes.

channel flow - flow (m3/s) in the selected nodes/reaches.

flow to channels - flow (m3/s) from runoff to river in the selected nodes.

GW flow to channels - flow (m3/s) from groundwater to river in the selected nodes.

each property transported will have an output with its concentration (mg/L) in the selected nodes. If property is particulated aslso will have a series named Bottom_[PropertyName] (kg/m2).

Check Mohid Land Heights and Levels to understand the difference between level and height results

Processes

Keyword                   : Data Type         Default     !Comment
MIN_WATER_DEPTH_PROCESS   : real              [0.01]      !Water Quality Process / Surface Fluxes shutdown
DISCHARGES                : 0/1               [0]         !Use module discharges (WWTP, etc)
TRANSMISSION_LOSSES       : 0/1               [0]         !If user wants to use transmission losses
HYDRAULIC_CONDUCTIVITY    : real              -           !Hydraulic Conductivity to calculate transmission losses
REMOVE_OVERTOP            : 0/1               [0]         !Removes Water if channels are overtoped
AERATION_METHOD           : int               [-]         !1 - PoolAndRifle, 2 - ChannelControled_
T90_DECAY_MODEL           : 0                 [1]         !0 - Constant, 1 - Canteras, 2 - Chapra
T90                       : real              [7200.]     !if T90_DECAY_MODEL = Constant
SHADING_FACTOR            : real              [1.]        !0-1 fraction of riparian shading
FRACTION_SEDIMENT         : 0/1               [0]
GLOBAL_TOXICITY           : char              ['SUM']     !Global Toxicity Computation Method : SUM,MAX,RISKRATIO

Properties

Each property keywords must be inside a block <beginproperty>/<endproperty>.

Keyword                    : Data Type         Default      !Comment
<beginproperty>
NAME                       : char              [-]          !Property name, must be on of Properties_names
UNITS                      : char              [-]          !usually mg/L (see IS_COEF)
IS_COEF                    : real              [1.e-3]      !Conversion factor to the International System
DESCRIPTION                : char              [-]          !Property description
DEFAULT_VALUE              : real              [0.0]        !Property initial concentration
MIN_VALUE                  : real              [0.0]        !Property minimum concentration
OVERLAND_CONCENTRATION     : real              [0.0]        !Concentration discharged from overland
GROUNDWATER_CONCENTRATION  : real              [0.0]        !Concentration discharged from ground water
DIFFUSEWATER_CONCENTRATION : real              [0.0]
ADVECTION_DIFUSION         : 0/1               [1]          !1 - want to transport property; 0 - no transport
    ADVECTION_SCHEME       : int               [1]          !1 - UpwindOrder1 (currently no more options)
    DIFFUSION_SCHEME       : int               [5]          !5 - CentralDiff  (currently no more options)
    DIFFUSIVITY            : real              [1e-8]       !Molecular diffusivity of property in m2/s
DISCHARGES                 : 0/1               [0]          !1 - property is discharged; 0 - no discharges
TOXICITY                   : 0/1               [0]          !1 - property has an associated toxicity     
    TOX_EVOLUTION          : int               [1]          !1 - Saturation, 2 - Linear, 3 - RiskRatio
    EC50                   : real              [0.5]        !If TOX_EVOLUTION = Saturation or RiskRatio,
                                                            !EC50 is the concentration that causes 50% of effect (Tox = 0.5)
                                                            !in fraction of initial concentration units [%]
    SLOPE                  : real              [1.0]        !If TOX_EVOLUTION = Linear
DECAY                      : 0/1               [0]          !1- want to use bacterial decay model. 0 - no use. Must have DISCHARGES = 1 and atmosphere.
SURFACE_FLUXES             : 0/1               [0]          !Property has surface fluxes (e.g. evaporation). Needs atmosphere.
BOTTOM_FLUXES              : 0/1               [0]          !Property has bottom fluxes. Must be particulate.
    BOTTOM_CONC            : real              [0.0]        !Bottom Initial Concentration
    BOTTOM_MIN_CONC        : real              [0.0]        !Bottom Minimum Concentration
    EROSION                : 0/1               [1]          !Compute erosion fluxes
        CRIT_SS_EROSION    : real              [0.2]        !Critical Erosion Shear Stress [Pa]
        EROSION_COEF       : real              [5.0E-4]     !Erosion Coefficient [kg m-2 s-1]
    DEPOSITION             : 0/1               [1]          !Compute deposition fluxes
        CRIT_SS_DEPOSITION : real              [0.1]        !Critical Deposition Shear Stress [Pa]
        CHS                : real              [4.0]        !Hindered settling [kg m-3] - See Module_FreeVerticalMovement.
        WS_TYPE            : int               [1]          !Settling type: WSConstant = 1, SPMFunction = 2
        WS_VALUE           : real              [0.0001]     !Constant settling velocity [m s-1]
        KL                 : real              [0.1]        !See Module_FreeVerticalMovement.
        KL1                : real              [0.1]        !See Module_FreeVerticalMovement.
        ML                 : real              [4.62]       !See Module_FreeVerticalMovement.
        M                  : real              [1.0]        !See Module_FreeVerticalMovement.
WATER_QUALITY              : 0/1               [0]          !1 - use Water Quality Model for property transformation; 0 - no use
BENTHOS                    : 0/1               [0]          !1 - use Benthos Model for property transformation; 0 - no use
CEQUALW2                   : 0/1               [0]          !1 - use CEQUALW2 Model for property transformation; 0 - no use
LIFE                       : 0/1               [0]          !1 - use Life Model for property transformation; 0 - no use
EXTINCTION_PARAMETER       : real              [1.0]        !LIGHT EXTINCTION COEFFICIENT
TIME_SERIE                 : 0/1               [0]          !Output this property in time series files.
OUTPUT_NAME                : char              [NAME]       !Can be NAME or DESCRIPTION.
COMPUTE_LOAD               : 0/1               [0]          !Output concentration (in UNITS) x Flow [m3 s-1]
SUMTOTALCONC               : 0/1               [0] 0        !Checks if user wants to calculate total Concentration (Column + Bottom).
<endproperty>

Toxicity Model

  • The formulation is to associate an eco-toxiciy value to the property (From project ECORIVER 2002).
  • Every toxic property must be discharged.
  • Its concentration in the river network is set to 0.0.
  • Discharge concentration must be equal to 1, because we are measuring the dilution D = 1 - C_new / C_ini
  • The variable property%toxicity%concentration represents C/c_ini so it starts by being 1.
  • This is not even close to a final version. For more details, or sugestions/corrections, contact MARETEC (Rosa Trancoso).
  • EC50 - Concentration that causes 50% of effect (Tox = 0.5)

Network file

The Network file specified in NETWORK_FILE keyword has two types of blocks:

  • <BeginNode>/ <EndNode>
  • <BeginReach>/<EndReach>

Keywords

<BeginNode>
  ID                      : int               -           !Node ID number
  COORDINATES             : real real         -           !Node coordinates
  GRID_I                  : int               -           !I position of node, if grid
  GRID_J                  : int               -           !J position of node, if grid
  TERRAIN_LEVEL            : real              -           !Bottom level of cross section
  MANNING_CHANNEL         : real         GLOBAL_MANNING   !Node rugosity
  WATER_DEPTH             : real      INITIAL_WATER_DEPTH !Node initial water depth
  CROSS_SECTION_TYPE      : int               [1]         !1 - Trapezoidal, 2 - TrapezoidalFlood, 3 - Tabular
  1 - Trapezoidal, 2 - TrapezoidalFlood
      BOTTOM_WIDTH        : real              -           !Bottom width of cross section
      TOP_WIDTH           : real              -           !Top width of cross section
      HEIGHT              : real              -           !Max height of cross section
  2 - TrapezoidalFlood
      MIDDLE_WIDTH        : real              -           !Middle width of cross section
      MIDDLE_HEIGHT       : real              -           !Middle height of cross section
  3 - Tabular
      N_STATIONS          : integer           -           !number os stations that define the cross section
      STATION             : real real ...     -           !station values
      ELEVATION/LEVEL     : real real ...     -           !elevation values
<EndNode>
<BeginReach>
  ID                      : int               -           !Reach ID Number
  DOWNSTREAM_NODE         : int               -           !Downstream node ID
  UPSTREAM_NODE           : int               -           !Upstream node ID
<EndReach>

Creating a Network file

  • Obtain a drainage network with MOHID GIS in Delineate Basins
  • Alternatively obtain a drainage network with program BasinDelimiter (from SourceSafe) with a basin.dat file such as:
TOPOGRAPHIC_FILE              : ..\..\GeneralData\DTM\MDT200mSD.dat
TRESHOLD_AREA                 : 100000
DELINEATE_BASIN               : 1
OUTLET_I                      : 1
OUTLET_J                      : 44
WRITE_REACHES                 : 1
REACHES_FILE                  : ..\..\GeneralData\DrainageNetwork\DrainageNetwork.dnt
  • Define the cross sections for each node (see MOHID GIS).
    • Warning 1: Remember to select "Save All" in MOHID GIS to update the file.
    • Warning 2: Currently, this program writes a BOTTOM_LEVEL keyword for each node instead of the keyword TERRAIN_LEVEL needed by the Drainage Network module. BOTTOM_LEVEL was replaced by TERRAIN_LEVEL in the latest version of this module because of the introduction of the tabular (irregular) cross-section type, generalizing the formulation of cross-sections. The pre-processor tool is not yet adapted. Nevertheless, for regular cross-sections, TERRAIN LEVEL = BOTTOM_LEVEL + HEIGHT. It can be changed manually or with this perl script [1].


Irregular Cross Section

It's possible to create an irregular cross section setting the CROSS_SECTION_TYPE to 3 (Tabular). The N_STATIONS is the number of "points" that will be used. A minimun of 3 points is needed, to make a triangular cross section. The STATION keyword is where you put the horizontal distance of the point to the origin point. The ELEVATION/LEVEL is where you put the vertical distances. The first and the last point must be at the same elevation (same values). The LEVEL is currently the distance from the bottom of the channel to the point.

Observe the irregular cross section image below:

Irregular cross section image.jpg

The numbers represent each point, the upper case letters represent the horizontal pointers position and the lower case letters represent the pointers level (red dashed lines).

If the horizontal distances are like this:

A - B = 1.0 m

B - C = 2.5 m

C - D = 2.2 m

D - E = 2.5 m

E - F = 0.8 m

And if the LEVELS are:

a = 3.0 m

b = 1.3 m

c = 1.0 m

d = 0.0 m

e = 1.2 m

f = 3.0 m

The cross section of a node can be represented like this:

<BeginNode>
  ...
  CROSS_SECTION_TYPE      : 3
      N_STATIONS          : 6           
      STATION             : 0.0 1.0 3.5 5.7 8.2 9.0
      LEVEL               : 3.0 1.3 1.0 0.0 1.2 3.0
<EndNode>

Note that the STATION distances are always relative to the origen, so, the distance from point C to A is the sum of the A-B and B-C distances and so on.