hydromt.workflows.rivers.river_depth#
- hydromt.workflows.rivers.river_depth(data: Union[Dataset, DataFrame, GeoDataFrame], method: str, flwdir: Optional[Union[Flwdir, FlwdirRaster]] = None, min_rivdph: float = 1.0, manning: float = 0.03, qbankfull_name: str = 'qbankfull', rivwth_name: str = 'rivwth', rivzs_name: str = 'rivzs', rivdst_name: str = 'rivdst', rivslp_name: str = 'rivslp', rivman_name: str = 'rivman', **kwargs) Union[DataArray, ndarray] [source]#
Derive river depth estimates based bankfull discharge.
- Parameters:
data (xr.Dataset, pd.DataFrame, gpd.GeoDataFrame) – Dataset/DataFrame containing required variables
method ({'powlaw', 'manning', 'gvf'}) –
Method to estimate the river depth:
powlaw [1] [2]: power-law hc*Qbf**hp, requires bankfull discharge (Qbf) variable in data. Optionally, hc (default = 0.27) and hp (default = 0.30) set through kwargs.
manning [3]: river depth for kinematic conditions, requires bankfull discharge, river width, river slope in data; the river manning roughness either in data or as constant and optionally min_rivslp (default = 1e-5) set through kwargs.
gvf [4]: gradually varying flow, requires bankfull discharge, river width, river surface elevation in data; the river manning roughness either in data or as constant and optionally min_rivslp (default = 1e-5) set through kwargs.
flwdir (Flwdir, FlwdirRaster, optional) – Flow directions, required if method is not powlaw
min_rivdph (float, optional) – Minimum river depth [m], by default 1.0
manning (float, optional) – Constant manning roughness [s/m^{1/3}] used if rivman_name not in data, by default 0.03
qbankfull_name (str, optional) – Name for variables in data: bankfull discharge [m3/s], river width [m], bankfull water surface elevation profile [m+REF], distance to river outlet [m], river slope [m/m] and river manning roughness [s/m^{1/3}]
rivwth_name (str, optional) – Name for variables in data: bankfull discharge [m3/s], river width [m], bankfull water surface elevation profile [m+REF], distance to river outlet [m], river slope [m/m] and river manning roughness [s/m^{1/3}]
rivzs_name (str, optional) – Name for variables in data: bankfull discharge [m3/s], river width [m], bankfull water surface elevation profile [m+REF], distance to river outlet [m], river slope [m/m] and river manning roughness [s/m^{1/3}]
rivdst_name (str, optional) – Name for variables in data: bankfull discharge [m3/s], river width [m], bankfull water surface elevation profile [m+REF], distance to river outlet [m], river slope [m/m] and river manning roughness [s/m^{1/3}]
rivslp_name (str, optional) – Name for variables in data: bankfull discharge [m3/s], river width [m], bankfull water surface elevation profile [m+REF], distance to river outlet [m], river slope [m/m] and river manning roughness [s/m^{1/3}]
rivman_name (str, optional) – Name for variables in data: bankfull discharge [m3/s], river width [m], bankfull water surface elevation profile [m+REF], distance to river outlet [m], river slope [m/m] and river manning roughness [s/m^{1/3}]
- Returns:
rivdph – River depth [m]. A DataArray is returned if the input data is a Dataset, otherwise a array with the shape of one input data variable is returned.
- Return type:
xr.DataArray, np.ndarray
References
See also
pyflwdir.FlwdirRaster.river_depth