hydromt_sfincs.workflows.get_river_bathymetry#

hydromt_sfincs.workflows.get_river_bathymetry(ds: ~xarray.core.dataset.Dataset, flwdir: ~pyflwdir.pyflwdir.FlwdirRaster, gdf_riv: ~geopandas.geodataframe.GeoDataFrame | None = None, gdf_qbf: ~geopandas.geodataframe.GeoDataFrame | None = None, rivdph_method: str = 'gvf', rivwth_method: str = 'mask', river_upa: float = 100.0, river_len: float = 1000.0, min_rivdph: float = 1.0, min_rivwth: float = 50.0, segment_length: float = 5000.0, smooth_length: float = 10000.0, min_convergence: float = 0.01, max_dist: float = 100.0, rivbank: bool = True, rivbankq: float = 25, constrain_estuary: bool = True, constrain_rivbed: bool = True, elevtn_name: str = 'elevtn', uparea_name: str = 'uparea', rivmsk_name: str = 'rivmsk', logger=<Logger hydromt_sfincs.workflows.bathymetry (WARNING)>, **kwargs) Tuple[GeoDataFrame, DataArray][source]#

Estimate river bedlevel zb using gradually varying flow (gvf), manning’s equation (manning) or a power-law relation (powlaw) rivdph_method. The river is based on flow directions with and minimum upstream area threshold.

Parameters:
  • ds (xr.Dataset) – Model map layers containing elevnt_name, uparea_name and rivmsk_name (optional) variables.

  • flwdir (pyflwdir.FlwdirRaster) – Flow direction object

  • gdf_riv (gpd.GeoDataFrame, optional) – River attribute data with “qbankfull” and “rivwth” data, by default None

  • gdf_qbf (gpd.GeoDataFrame, optional) – Bankfull river discharge data with “qbankfull” column, by default None

  • rivdph_method ({'gvf', 'manning', 'powlaw', 'geom'}) – River depth estimate method, by default ‘gvf’

  • rivwth_method ({'geom', 'mask'}) – River width estimate method, by default ‘mask’

  • river_upa (float, optional) – Minimum upstream area threshold for rivers [km2], by default 100.0

  • river_len (float, optional) – Mimimum river length [m] within the model domain to define river cells, by default 1000.

  • min_rivwth (float, optional) – Minimum river width [m] (by default 50.0 m) and depth [m] (by default 1.0 m)

  • min_rivdph (float, optional) – Minimum river width [m] (by default 50.0 m) and depth [m] (by default 1.0 m)

  • segment_length (float, optional) – Approximate river segment length [m], by default 5e3

  • smooth_length (float, optional) – Approximate smoothing length [m], by default 10e3

  • min_convergence (float, optional) – Minimum width convergence threshold to define estuaries [m/m], by default 0.01

  • max_dist (float, optional) – Maximum distance threshold to spatially merge gdf_riv and gdf_qbf, by default 100.0

  • rivbank (bool, optional) – If True (default), approximate the reference elevation for the river depth based on the river bankfull elevation at cells neighboring river cells. Otherwise use the elevation of the local river cell as reference level.

  • rivbankq (float, optional) – quantile [1-100] for river bank estimation, by default 25

  • constrain_estuary (bool, optional) – If True (default) fix the river depth in estuaries based on the upstream river depth.

  • constrain_rivbed (bool, optional) – If True (default) correct the river bed level to be hydrologically correct

Returns:

  • gdf_riv (gpd.GeoDataFrame) – River segments with bed level (zb) estimates

  • da_msk (xr.DataArray:) – River mask