current version 1.0 - 5th October 2011
version | date | comment |
---|---|---|
1.0 | 05/Oct/2011 | Original code |
license: GNU GPL http://www.gnu.org/licenses/
compute sediment erosion and deposition The interril and channelerosion are computed according to Sun et al. (2002), which combines the use of USLE data source with storm-based, distributed hydrological model
References:
Sun, H., P. S. Cornish, and T. M. Daniell, Contour-based digital elevation modeling of watershed erosion and sedimentation: Erosion and sedimentation estimation tool (EROSET), Water Resour. Res., 38(11), 1233, doi:10.1029/2001WR000960, 2002.
Imported variables:
Imported variables:
Imported routines:
Description:
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(grid_real), | public | :: | QoutSed |
output sediment discharge |
|||
type(grid_real), | public | :: | channelErosion |
channel sediment detachment rate (kg/m2/s) |
|||
type(grid_real), | public | :: | deltaSed |
variation of sediment storage (10^6 kg) |
|||
type(grid_real), | public | :: | interrillErosion |
interrill sediment detachment rate (kg/m2/s) |
|||
logical, | public | :: | routeSediment |
flag to route sediment |
|||
type(grid_integer), | public | :: | sedFlowDirection |
map of flow direction to route sediment |
|||
type(NetworkSediment), | public | :: | sedReach |
drainage network to route sediment |
|||
type(grid_real), | private | :: | PinBL |
input discharge of bed load at time t-1 |
|||
type(grid_real), | private | :: | PinSS |
input discharge of suspended sediment at time t-1 |
|||
type(grid_real), | private | :: | PoutBL |
output discharge of bed load at time t-1 |
|||
type(grid_real), | private | :: | PoutSS |
output discharge of suspended sediment at time t-1 |
|||
type(grid_real), | private | :: | QinBL |
input discharge of bed load sediment at time t |
|||
type(grid_real), | private | :: | QinSS |
input discharge of suspended sediment at time t |
|||
type(grid_real), | private | :: | QoutBL |
output discharge of bed load at time t |
|||
type(grid_real), | private | :: | QoutSS |
output discharge of suspended sediment at time t |
|||
type(grid_real), | private | :: | rusleC |
crop and management factor (-) |
|||
type(grid_real), | private | :: | rusleK |
soil erodibility factor ( ( tons h) / ( MJ mm)) |
|||
type(grid_real), | private | :: | slope |
local slope (radians) |
|||
type(grid_real), | private | :: | slopeFactor |
slope dactor computed by routine ComputeSlopeFactor |
compute sediment detachment rate per second in channel element (kg/s) using simplified approach by Sun et al. (2002).
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=float), | intent(in) | :: | flow |
water discharge in channel (m3/s) |
||
real(kind=float), | intent(in) | :: | s |
channel slope (m/m) |
||
real(kind=float), | intent(in) | :: | k |
soil erodibility factor ((tons h) / (MJ mm)) |
||
real(kind=float), | intent(in) | :: | c |
crop and management factor (-) |
compute critical velocity for incipient motion (m/s)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=float), | intent(in) | :: | d |
particle size of bed material (mm) |
||
real(kind=float), | intent(in) | :: | dp |
water depth (m) |
||
real(kind=float), | intent(in) | :: | s |
channel slope (m/m) |
critical velocity (m/s)
compute fall velocity of sediment (m/s)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=float), | intent(in) | :: | d |
particle size of bed material (mm) |
fall velocity (m/s)
compute shear velocity (m/s)
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=float), | intent(in) | :: | dp |
water depth (m) |
||
real(kind=float), | intent(in) | :: | s |
channel slope (m/m) |
shear velocity (m/s)
compute sediment transport capacity using Yang (1973) approach (kg/s) limitation: Yang1973 equation can be applied for noncohesive natural beds with particle sizes between 0.062 mm and 2 mm, a specific gravity of 2.65 g/cm3, and a shape factor of 0.7
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=float), | intent(in) | :: | flow |
water discharge in channel (m3/s) |
||
real(kind=float), | intent(in) | :: | s |
channel slope (m/m) |
||
real(kind=float), | intent(in) | :: | v |
water flow velocity in channel (m/s) |
||
real(kind=float), | intent(in) | :: | d |
particle size of bed material (mm) |
||
real(kind=float), | intent(in) | :: | dp |
water depth (m) |
computed transport capacity (kg/s)
compute sediment transport capacity using Yang (1979) approach (kg/s) limitation: Yang1979 equation can be applied when the dimensionless unit stream power is relatively small with respect to the prevailing value of unit stream power. Used for finer suspended sediment trasnport in the Yellow River with median particle diameter of 0.067 mm.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
real(kind=float), | intent(in) | :: | flow |
water discharge in channel (m3/s) |
||
real(kind=float), | intent(in) | :: | s |
channel slope (m/m) |
||
real(kind=float), | intent(in) | :: | v |
water flow velocity in channel (m/s) |
||
real(kind=float), | intent(in) | :: | d |
particle size of bed material (mm) |
||
real(kind=float), | intent(in) | :: | dp |
water depth (m) |
computed transport capacity (kg/s)
compute sediment detachment rate (kg/s). Interril area detachment is considered to be due to the raindrop impact, which breaks the cohesive bonds between particles, making them available for transport.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(grid_real), | intent(in) | :: | pRate |
precipitation rate (m/s) |
Initialize sediment related variables
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=300), | intent(in) | :: | iniFile |
file containing configuration information |
||
integer(kind=short), | intent(out) | :: | dtRoute |
time step for sediment routing |
||
character(len=300), | intent(out) | :: | fileOutSedimentRouting |
compute sediment routing in channelized drainage network using Muskingum-Cunge method. Interrill erosion is supposed to act as suspended sediment so deposition is not contemplated. Bedload sediment is divided in different grainsize classes and routing is performed for each class separately. Deposition is contemplated comparing sediment discharge to transport capacity. Flow Routing method code remind: 0 --> hillslope, water flow rate is not defined 1,2,3,11,30 --> channel routing, water flow is computed according to different schemes 5 --> Instantaneous mass transferring inside lakes (infinitive celerity) 1000:2000 --> reservoir
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=short) | :: | dt |
routing time step |
|||
type(grid_real), | intent(in) | :: | flow | |||
type(grid_real), | intent(in) | :: | v |
water flow velocity in channel (m/s) |
||
type(grid_real), | intent(in) | :: | dp |
water depth (m) |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(grid_real), | intent(in) | :: | slope |