hydromt_wflow.workflows.reservoirs.reservoir_id_maps#

reservoir_id_maps(gdf: GeoDataFrame, ds_like: Dataset, min_area: float = 0.0, uparea_name: str = 'uparea', exclude_outside_reservoirs: bool = False, fraction: float | None = 0.1) tuple[Dataset | None, GeoDataFrame | None][source]#

Return reservoir location maps (see list below) at model resolution.

Based on gridded upstream area data input or outlet coordinates. The following reservoir maps are calculated:

  • reservoir_area_id : reservoir areas mask [ID]

  • reservoir_outlet_id : reservoir outlets [ID]

Parameters:
  • gdf (geopandas.GeoDataFrame) – GeoDataFrame containing reservoirs/lakes geometries and attributes.

  • ds_like (xarray.Dataset) – Dataset containing existing data layers (e.g., river network, topography) at model resolution, serving as a template for rasterization.

  • min_area (float, optional) – Minimum reservoir area threshold [km2], by default 0.0 km2.

  • uparea_name (str, optional) – Name of uparea variable in ds_like. If None then database coordinates will be used to setup outlets.

  • exclude_outside_reservoirs (bool, optional) – Whether to exclude reservoirs that are outside the river network, by default False.

  • fraction (float | None, optional) – Minimum fraction of reservoir area within a grid cell, by default 0.1. Use None to skip the fraction mask and rely only on all_touched rasterization.

Returns:

  • ds_out (xarray.Dataset) – Dataset containing gridded reservoir data

  • gdf (geopandas.GeoDataFrame) – GeoDataFrame containing (updated) reservoir outlet coordinates.