Model:TopoFlow-Channels-Dynamic Wave: Difference between revisions

From CSDMS
Created page with '{{Modeler information |First name=Scott |Last name=Peckham |Type of contact=Model developer |Institute / Organization=CSDMS, INSTAAR, University of Colorado |Postal address 1=156…'
 
No edit summary
Line 17: Line 17:
|Spatial dimensions=2D
|Spatial dimensions=2D
|Spatialscale=Landscape-Scale, Watershed-Scale
|Spatialscale=Landscape-Scale, Watershed-Scale
|One-line model description=Dynamic Wave process component for a D8-based, spatial hydrologic model  
|One-line model description=Dynamic Wave process component for a D8-based, spatial hydrologic model
|Extended model description=This process component is part of a spatially-distributed hydrologic model called TopoFlow, but it can now be used as a stand-alone model. The dynamic wave method is the most complete and complex method for modeling flow in open channels. This method retains all of the terms in the full, 1D momentum equation, including the gravity, friction and pressure gradient terms (as used by the diffusive wave method) as well as local and convective acceleration (or momentum flux) terms. This full equation is known as the St. Venant equation. In the current version of TopoFlow it is assumed that the flow directions are static and given by a D8 flow grid. In this case, integral vs. differential forms of the conservation equations for mass and momentum can be used.  
|Extended model description=This process component is part of a spatially-distributed hydrologic model called TopoFlow, but it can now be used as a stand-alone model. The dynamic wave method is the most complete and complex method for modeling flow in open channels. This method retains all of the terms in the full, 1D momentum equation, including the gravity, friction and pressure gradient terms (as used by the diffusive wave method) as well as local and convective acceleration (or momentum flux) terms. This full equation is known as the St. Venant equation. In the current version of TopoFlow it is assumed that the flow directions are static and given by a D8 flow grid. In this case, integral vs. differential forms of the conservation equations for mass and momentum can be used.
}}
}}
{{Model technical information
{{Model technical information
Line 38: Line 38:
{{Input - Output description
{{Input - Output description
|Describe input parameters=The input variables used for the Dynamic Wave method of routing flow in channels are defined as follows. These inputs must be provided as grids:
|Describe input parameters=The input variables used for the Dynamic Wave method of routing flow in channels are defined as follows. These inputs must be provided as grids:
*flow_codes = D8 flow codes (Jenson convention)
*flow_codes = D8 flow codes (Jenson convention),        (NE,E,SE,S,SW,W,NW,N) → (1,2,4,8,16,32,64,128)
        (NE,E,SE,S,SW,W,NW,N) → (1,2,4,8,16,32,64,128)
*bed_slope = slope of the channel bed or hillslope (m / m)
*bed_slope = slope of the channel bed or hillslope (m / m)
*Manning_n = Manning roughness parameter (s / m1/3)
*Manning_n = Manning roughness parameter (s / m1/3)
Line 49: Line 48:
These inputs can be provided as scalars or grids:
These inputs can be provided as scalars or grids:


    * sinuosity = channel sinuosity (m/m) (along-channel / straight length)
*sinuosity = channel sinuosity (m/m) (along-channel / straight length)
    * init_depth = initial water depth (m) (See HTML help)  
*init_depth = initial water depth (m) (See HTML help)  


Grids must be saved in binary files with no header. All variables should be stored as 4-byte, floating-point numbers (IEEE standard) except flow codes, which are unsigned, 1-byte integers.
Grids must be saved in binary files with no header. All variables should be stored as 4-byte, floating-point numbers (IEEE standard) except flow codes, which are unsigned, 1-byte integers.


The behavior of this component is controlled with a configuration (CFG) file, which may point to other files that contain input data. Here is a sample configuration (CFG) file for this component:
The behavior of this component is controlled with a configuration (CFG) file, which may point to other files that contain input data. Here is a sample configuration (CFG) file for this component:
|Pre-processing software needed?=No
 
|Post-processing software needed?=No
Method code:            3
|Visualization software needed?=No
Method name:            Dynamic_Wave
Manning flag:          1
Law of Wall flag:      0
Time step:              Scalar        6.00000000              (sec)
D8 flow code:          Grid          Treynor_flow.rtg        (none)
D8 slope:              Grid          Treynor_slope.rtg      (m/m)
Manning N:              Grid          Treynor_chan-n.rtg      (s/m^(1/3))
Bed width:              Grid          Treynor_chan-w.rtg      (m)
Bank angle:            Grid          Treynor_chan-a.rtg      (deg)
Init. depth:            Scalar        0.00000000              (m)
Sinuosity:              Scalar        1.00000000              (m/m)
Save grid timestep:    Scalar        60.00000000            (sec)
Save Q grids:          1              Case5_2D-Q.rts          (m^3/s)
Save u grids:          0              Case5_2D-u.rts          (m/s)
Save d grids:          0              Case5_2D-d.rts          (m)
Save f grids:          0              Case5_2D-f.rts          (none)
Save pixels timestep:  Scalar        60.00000000            (sec)
Save Q pixels:          1              Case5_0D-Q.txt          (m^3/s)
Save u pixels:          0              Case5_0D-u.txt          (m/s)
Save d pixels:          0              Case5_0D-d.txt          (m)
Save f pixels:          0              Case5_0D-f.txt          (none)
|Input format=ASCII, Binary
|Describe output parameters=This component computes the following variables, as grids:
Q  = discharge (m^3/s)
u  = flow velocity (m/s)
d  = flow depth (m)
f  = friction factor (none)
Rh = hydraulic radius (m)
S_free = free-surface slope (m/m)
The user can choose which, if any, of these to save. Each may be saved as a grid sequence, indexed by time, in a netCDF file, at a specified sampling rate. Each may also be saved for a set of "monitored" grid cells, each specified as a (row,column) pair in a file with the name: <case_prefix>_outlets.txt.  With this option, computed values are saved in a multi-column text file at a specified sampling rate. Each column in this file corresponds to a time series of values for a particular grid cell.  For both options the sampling rate must no smaller than the process timestep.
|Output format=ASCII, Binary
|Pre-processing software needed?=Yes
|Describe pre-processing software=Another program must be used to create the input grids. This includes a D8 flow grid derived from a DEM for the region to be modeled.  The earlier, IDL version of TopoFlow can be used to create some of these.
|Post-processing software needed?=Yes
|Describe post-processing software=None, except visualization software. Grid sequences saved in netCDF files can be viewed as animations and saved as movies using VisIt.
|Visualization software needed?=Yes
|Other visualization software=VisIt
}}
{{Process description model
|Describe processes represented by the model=The dynamic wave method for flow routing in the channels of a D8-based river network.
|Describe key physical parameters and equations=Main equations used by this component:
ΔV(i,t) =  Δt * [ R(i,t) Δx Δy - Q(i,t) + Σk Q(k,t) ] = change in water volume [m3]  (mass cons.)
d =  {[ w2 + 4 tan(θ) V / L]1/2 - w } / [2 tan(θ)]  = mean water depth in channel segment [m]  (if θ > 0)
d =  V / [w * L] = mean water depth in channel segment [m]  (if θ = 0)
Δv(i,t) =  Δt * (T1 + T2 + T3 + T4 + T5) / [ d(i,t) * Aw ]  = change in mean velocity [m / s]  (mom. cons.)
T1 =  v(i,t) * Q(i,t) * (C - 1) = efflux term in equation for Δv
T2 =  Σk [v(k,t) - v(i,t) * C] * Q(k,t) = influx term in equation for Δv
T3 =  -v(i,t) * C * R(i,t) * Δx * Δy = "new mass" momentum term in equation for Δv
T4 =  Aw * [g * d(i,t) * S(i,t)] = gravity term in equation for Δv
T5 =  -Aw * [f(i,t) * v(i,t)2] = friction term in equation for Δv
Q =  v * Aw = discharge of water [m3 / s]
f(i,t) =  [ κ / LN ( a * d(i,t) / z0) ]2 = friction factor [unitless]  (for law of the wall)
f(i,t) =  g * n2 / Rh(i,t)1/3 = friction factor [unitless]  (for Manning's equation)
C =  Aw / At = area ratio appearing in equation for Δv
At =  wt * L = top surface area of a channel segment [m2]  (L = length)
wt =  w + [ 2 * d * tan(θ) ] = top width of a wetted trapezoidal cross-section [m]
Rh =  Aw / Pw = hydraulic radius [m]
Aw =  d * [w + (d * tan(θ))] = wetted cross-sectional area of a trapezoid [m2]
Pw =  w + [2 * d / cos(θ)] = wetted perimeter of a trapezoid [m]
Vw =  d2 * [ L * tan(θ) ] + d * [L * w] = wetted volume of a trapezoidal channel [m]
}}
}}
{{Process description model}}
{{Model testing}}
{{Model testing}}
{{Users groups model}}
{{Users groups model}}

Revision as of 13:09, 16 February 2010

Contact

Name Scott Peckham
Type of contact Model developer
Institute / Organization CSDMS, INSTAAR, University of Colorado
Postal address 1 1560 30th street
Postal address 2
Town / City Boulder
Postal code 80305
State Colorado
Country USA"USA" is not in the list (Afghanistan, Albania, Algeria, Andorra, Angola, Antigua and Barbuda, Argentina, Armenia, Australia, Austria, ...) of allowed values for the "Country" property.
Email address Scott.Peckham@colorado.edu
Phone 303-492-6752
Fax



TopoFlow-Channels-Dynamic Wave


Metadata

Summary

Also known as
Model type Single
Model part of larger framework
Note on status model
Date note status model

Technical specs

Supported platforms
Unix, Linux, Mac OS, Windows
Other platform
Programming language

Python

Other program language None (but uses NumPy package)
Code optimized Single Processor
Multiple processors implemented
Nr of distributed processors
Nr of shared processors
Start year development 2001
Does model development still take place? Yes
If above answer is no, provide end year model development
Code development status
When did you indicate the 'code development status'?
Model availability As code, As teaching tool
Source code availability
(Or provide future intension)
Through CSDMS repository
Source web address
Source csdms web address
Program license type Apache public license
Program license type other
Memory requirements Standard
Typical run time Minutes to hours


In/Output

Describe input parameters The input variables used for the Dynamic Wave method of routing flow in channels are defined as follows. These inputs must be provided as grids:
  • flow_codes = D8 flow codes (Jenson convention), (NE,E,SE,S,SW,W,NW,N) → (1,2,4,8,16,32,64,128)
  • bed_slope = slope of the channel bed or hillslope (m / m)
  • Manning_n = Manning roughness parameter (s / m1/3)
  • bed_width = bed width for trapezoidal cross-section (m)
  • bank_angle = bank angle for trapezoid (deg) (from vertical)
  • sinuosity = channel sinuosity (unitless) (along-channel / straight length)
  • init_depth = initial water depth (m) (See Notes below)

These inputs can be provided as scalars or grids:

  • sinuosity = channel sinuosity (m/m) (along-channel / straight length)
  • init_depth = initial water depth (m) (See HTML help)

Grids must be saved in binary files with no header. All variables should be stored as 4-byte, floating-point numbers (IEEE standard) except flow codes, which are unsigned, 1-byte integers.

The behavior of this component is controlled with a configuration (CFG) file, which may point to other files that contain input data. Here is a sample configuration (CFG) file for this component:

Method code:            3
Method name:            Dynamic_Wave
Manning flag:           1
Law of Wall flag:       0
Time step:              Scalar         6.00000000              (sec)
D8 flow code:           Grid           Treynor_flow.rtg        (none)
D8 slope:               Grid           Treynor_slope.rtg       (m/m)
Manning N:              Grid           Treynor_chan-n.rtg      (s/m^(1/3))
Bed width:              Grid           Treynor_chan-w.rtg      (m)
Bank angle:             Grid           Treynor_chan-a.rtg      (deg)
Init. depth:            Scalar         0.00000000              (m)
Sinuosity:              Scalar         1.00000000              (m/m)
Save grid timestep:     Scalar         60.00000000             (sec)
Save Q grids:           1              Case5_2D-Q.rts          (m^3/s)
Save u grids:           0              Case5_2D-u.rts          (m/s)
Save d grids:           0              Case5_2D-d.rts          (m)
Save f grids:           0              Case5_2D-f.rts          (none)
Save pixels timestep:   Scalar         60.00000000             (sec)
Save Q pixels:          1              Case5_0D-Q.txt          (m^3/s)
Save u pixels:          0              Case5_0D-u.txt          (m/s)
Save d pixels:          0              Case5_0D-d.txt          (m)
Save f pixels:          0              Case5_0D-f.txt          (none)
Input format ASCII, Binary
Other input format
Describe output parameters This component computes the following variables, as grids:
Q  = discharge (m^3/s)
u  = flow velocity (m/s)
d  = flow depth (m)
f  = friction factor (none)
Rh = hydraulic radius (m)
S_free = free-surface slope (m/m)

The user can choose which, if any, of these to save. Each may be saved as a grid sequence, indexed by time, in a netCDF file, at a specified sampling rate. Each may also be saved for a set of "monitored" grid cells, each specified as a (row,column) pair in a file with the name: <case_prefix>_outlets.txt. With this option, computed values are saved in a multi-column text file at a specified sampling rate. Each column in this file corresponds to a time series of values for a particular grid cell. For both options the sampling rate must no smaller than the process timestep.

Output format ASCII, Binary
Other output format
Pre-processing software needed? Yes
Describe pre-processing software Another program must be used to create the input grids. This includes a D8 flow grid derived from a DEM for the region to be modeled. The earlier, IDL version of TopoFlow can be used to create some of these.
Post-processing software needed? Yes
Describe post-processing software None, except visualization software. Grid sequences saved in netCDF files can be viewed as animations and saved as movies using VisIt.
Visualization software needed? Yes
If above answer is yes
Other visualization software VisIt


Process

Describe processes represented by the model The dynamic wave method for flow routing in the channels of a D8-based river network.
Describe key physical parameters and equations [[Describe key physical parameters::Main equations used by this component:
ΔV(i,t) 	 =   Δt * [ R(i,t) Δx Δy - Q(i,t) + Σk Q(k,t) ] 	 = change in water volume [m3]   (mass cons.)
d 	=   {[ w2 + 4 tan(θ) V / L]1/2 - w } / [2 tan(θ)]   	= mean water depth in channel segment [m]   (if θ > 0)
d 	=   V / [w * L] 	= mean water depth in channel segment [m]   (if θ = 0)
Δv(i,t) 	=   Δt * (T1 + T2 + T3 + T4 + T5) / [ d(i,t) * Aw ]   	= change in mean velocity [m / s]   (mom. cons.)
T1 	=   v(i,t) * Q(i,t) * (C - 1) 	= efflux term in equation for Δv
T2 	=   Σk [v(k,t) - v(i,t) * C] * Q(k,t) 	= influx term in equation for Δv
T3 	=   -v(i,t) * C * R(i,t) * Δx * Δy 	= "new mass" momentum term in equation for Δv
T4 	=   Aw * [g * d(i,t) * S(i,t)] 	= gravity term in equation for Δv
T5 	=   -Aw * [f(i,t) * v(i,t)2] 	= friction term in equation for Δv
Q 	=   v * Aw 	= discharge of water [m3 / s]
f(i,t) 	=   [ κ / LN ( a * d(i,t) / z0) ]2 	= friction factor [unitless]   (for law of the wall)
f(i,t) 	=   g * n2 / Rh(i,t)1/3 	= friction factor [unitless]   (for Manning's equation)
C 	=   Aw / At 	= area ratio appearing in equation for Δv
At 	=   wt * L 	= top surface area of a channel segment [m2]   (L = length)
wt 	=   w + [ 2 * d * tan(θ) ] 	= top width of a wetted trapezoidal cross-section [m]
Rh 	=   Aw / Pw 	= hydraulic radius [m]
Aw 	=   d * [w + (d * tan(θ))] 	= wetted cross-sectional area of a trapezoid [m2]
Pw 	=   w + [2 * d / cos(θ)] 	= wetted perimeter of a trapezoid [m]
Vw 	=   d2 * [ L * tan(θ) ] + d * [L * w] 	= wetted volume of a trapezoidal channel [m]]]
Describe length scale and resolution constraints
Describe time scale and resolution constraints
Describe any numerical limitations and issues


Testing

Describe available calibration data sets
Upload calibration data sets if available:
Describe available test data sets
Upload test data sets if available:
Describe ideal data for testing


Other

Do you have current or future plans for collaborating with other researchers?
Is there a manual available? No
Upload manual if available:
Model website if any
Model forum / discussion board
Comments

Introduction

History

Papers

Issues

Help

Input Files

Output Files

Download

Source