Compute all hydraulic data from Q for T-NET calculations
Source:R/TNET_computeHydraulic.R
TNET_computeHydraulic.Rd
Calculate rivers width (\(Bm\)), depth (\(H\)) and water travel time (\(TPS\)) with Discharge as input data, using EstimKart formulas. Rivers width can be recalibrate using observed width at a specific discharge quantile.
Usage
TNET_computeHydraulic(path_data, shapefile, shapefile_largeur = NULL, calcul.Bm = 'EK',quantile.calc = NULL)
Arguments
- path_data
Path to the folder containing Q created by
TNET_computeQ()
- shapefile
Path to the shapefile with all info on segments. It must contain the following columns:
\(gid\_new\) ID of the Topage segment \(Longueur\_m\) Length of the river segment (in meter) - calcul.Bm
Method to calculate width: 'EK' use EstimKart, 'EKrecal' will use estimekart and recalibrate all segments in
shapefile_largeur
using discharge quantile inquantile.calc
.- shapefile_largeur
Use only if
calcul.Bm
= 'EKrecal'. Path to a shapefile with all segments to recalibrate and the width. It must contain the following columns:\(gid\_new\) ID of the Topage segment \(largeur\) Width to recalibrate the river segment (in meter) - quantile.calc
Use only if
calcul.Bm
= 'EKrecal'. Quantile of discharge to use for observed river width inshapefile_largeur
.
Details
EstimKart formulas are the following:
River segment width (\(Bm\)): $$Bm = ad \cdot (Qmean)^{bd} \cdot \left(\frac{Qaval}{Qmean}\right)^{b}$$ with \(ad = 7.482\), \(bd = 0.477\), \(b = 0.148\)
River segment depth (\(H\)): $$H = cd \cdot (Qmean)^{fd} \cdot \left(\frac{Qaval}{Qmean}\right)^{f}$$ with \(cd = 0.340\), \(fd = 0.259\), \(f = 0.292\)
Water travel time in river segment (\(TPS\)): $$TPS = \frac{Longueur\_m}{\left(\frac{Qaval}{H \cdot Bm}\right)} \div 3600$$
where:
\(Longueur\_m\) is the length of the river segment in meters.
\(Qaval\) is the flow rate at the segment's outlet.
\(Qmean\) is the mean flow rate.
\(Bm\) formulas use on recalibrate segments is the following:
$$Bm = largeur \cdot \left(\frac{Qaval}{Qquantile}\right)^{b}$$
with \(b = 0.148\)
where:
\(largeur\) is the width of the river segment in meters provided by
shapefile_largeur
.\(Qquantile\) is the flow quantile given at the quantile
quantile.calc
See also
For more information on EstimKart formulas: https://doi.org/10.1016/j.jhydrol.2019.124292, TNET_initializeSim()
, TNET_readJ2K()
, TNET_computeQ()
Examples
## If we want to calculate width the normal way
TNET_computeHydraulic(path_data = path/to/data,
shapefile = path/to/shapefile.shp)
#> Largeur calculé avec la méthode EstimKart non modifié/n
#> Error: object 'to' not found
## If we want to calculate width and recalibrate some segments with width at quantile = 0.99
TNET_computeHydraulic(path_data = path/to/data,
shapefile = path/to/shapefile.shp,
calcul.Bm = 'EKrecal',
shapefile_largeur = path/to/shapefile_width.shp,
quantile.calc = 0.99)
#> Error: object 'to' not found
############################################################
## Using this function with TNET_initializeSim() function ##
############################################################
infoSimu <- TNET_initializeSim(...)
#> Error: '...' used in an incorrect context
TNET_readJ2K(...) #Read ReachLoop.dat file
#> Error: '...' used in an incorrect context
TNET_computeQ(...)
#> Error: '...' used in an incorrect context
TNET_computeHydraulic(path_data = infoSimu$hydroPath,
shapefile = infoSimu$TOPAGE_shape,
shapefile_largeur = infoSimu$Largeur_shape,
calcul.Bm = infoSimu$Bm_method,
quantile.calc = infoSimu$Bm_quantile)
#> Error: object 'infoSimu' not found