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

From CSDMS
No edit summary
m (Text replacement - "{{End headertab}}" to "{{End headertab}} {{{{PAGENAME}}_autokeywords}}")
 
Line 195: Line 195:
{{End a table}}
{{End a table}}
{{End headertab}}
{{End headertab}}
{{{{PAGENAME}}_autokeywords}}
<!-- PLEASE USE THE &quot;EDIT WITH FORM&quot; BUTTON TO EDIT ABOVE CONTENTS; CONTINUE TO EDIT BELOW THIS LINE -->
<!-- PLEASE USE THE &quot;EDIT WITH FORM&quot; BUTTON TO EDIT ABOVE CONTENTS; CONTINUE TO EDIT BELOW THIS LINE -->



Latest revision as of 20:15, 16 September 2020



TopoFlow-Channels-Kinematic Wave


Metadata

Also known as
Model type Single
Model part of larger framework
Note on status model
Date note status model
Incorporated models or components:
Spatial dimensions 2D
Spatial extent Landscape-Scale, Watershed-Scale
Model domain Hydrology
One-line model description Kinematic Wave process component for flow routing in 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 kinematic wave method (Lighthill and Whitham, 1955) is the simplest method for modeling flow in open channels. This method combines mass conservation with the simplest possible treatment of momentum conservation, namely that all terms in the general momentum equation (pressure gradient, local acceleration and convective acceleration) are neglible except the friction and gravity terms. A flow in which gravitational acceleration is exactly balanced by friction is referred to as steady, uniform flow. For these flows the water surface slope, energy slope and bed slope are all equal.
Keywords:

basins,

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 United States
Email address Scott.Peckham@colorado.edu
Phone 303-492-6752
Fax


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? No
If above answer is no, provide end year model development
Code development status Active
When did you indicate the 'code development status'? 2020
Model availability As code, As teaching tool
Source code availability
(Or provide future intension)
Through web repository
Source web address https://github.com/peckhams/topoflow
Source csdms web address
Program license type Apache public license
Program license type other
Memory requirements Standard
Typical run time Minutes to hours


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 / m^1/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:            1
Method name:            Kinematic_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


Describe processes represented by the model The kinematic 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 (m^3),   mass conservation
d 		 =   {( w^2 + 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)
Q 		 =   v * A_w 	= discharge of water (m3 / s)
v 	  	 =   n^-1 * R_h^2/3 * S^1/2 	= section-averaged velocity (m / s), Manning's formula
v 		 =   ( g * Rh * S)^1/2 * LN( a * d / z_0) / κ 	= section-averaged velocity (m / s), Law of the Wall
R_h 		 =   A_w / P_w 	= hydraulic radius (m)
A_w 		 =   d * (w + (d * tan(θ))) 	= wetted cross-sectional area of a trapezoid (m2)
P_w 		 =   w + (2 * d / cos(θ)) 	= wetted perimeter of a trapezoid (m)
V_w 		 =   d^2 * ( L * tan(θ) ) + d * (L * w) 	= wetted volume of a trapezoidal channel (m)
Describe length scale and resolution constraints Recommended grid cell size is around 100 meters, but can be parameterized to run with a wide range of grid cell sizes. DEM grid dimensions are typically less than 1000 columns by 1000 rows.
Describe time scale and resolution constraints The basic stability condition is: dt < (dx / u_min), where dt is the timestep, dx is the grid cell size and u_min is the smallest velocity in the grid. This ensures that flow cannot cross a grid cell in less than one time step. Typical timesteps are on the order of seconds to minutes. Model can be run for a full year or longer, if necessary.
Describe any numerical limitations and issues This model/component needs more rigorous testing.


Describe available calibration data sets This model/component is typically not calibrated to fit data, but is run with a best guess or measured value for each input parameter.
Upload calibration data sets if available:
Describe available test data sets Available test data sets:
  • Treynor watershed, in the Nishnabotna River basin, Iowa, USA.
  • (Two large rainfall events.)
  • Small basin in Kentucky.
  • Inclined plane for testing.
  • Arctic watershed data from Larry Hinzman (UAF).
  • See /data/progs/topoflow/3.0/data on CSDMS cluster.
Upload test data sets if available:
Describe ideal data for testing Several test datasets are stored on the CSDMS cluster at: /data/progs/topoflow/3.0/data.


Do you have current or future plans for collaborating with other researchers? Collaborators include: Larry Hinzman (UAF), Bob Bolton, Anna Liljedahl (UAF), Stefan Pohl, Tom Over and others
Is there a manual available? Yes
Upload manual if available:
Model website if any This site.
Model forum / discussion board
Comments About this component:
  • This component was developed as part of the TopoFlow hydrologic model, which was originally written in IDL and had a point-and-click GUI. For more information on TopoFlow, please goto: https://csdms.colorado.edu/wiki/Model:TopoFlow.
  • When used from within the CSDMS Modeling Tool (CMT), this component has "config" button which launches a graphical user interface (GUI) for changing input parameters. The GUI is a tabbed dialog with a Help button at the bottom that displays HTML help in a browser window.
  • This component also has a configuration (CFG) file, with a name of the form: <case_prefix>_channels_diff_wave.cfg. This file can be edited with a text editor.
  • The Numerical Python module (numpy) is used for fast, array-based processing.
  • This model has an OpenMI-style interface, similar to OpenMI 2.0. Part of this interface is inherited from "CSDMS_base.py".


Model info
Nr. of publications: 1
Total citations: 11
h-index: 1
m-quotient: 0.07
Qrcode TopoFlow-Channels-Kinematic Wave.png
Link to this page



Introduction

History

References




Nr. of publications: 1
Total citations: 11
h-index: 1
m-quotient: 0.07



Issues

Help

Model help:TopoFlow-Channels-Kinematic Wave

Input Files

Output Files