Build a Wflow Sediment model#
This notebook demonstrates how to prepare a Wflow Sediment model using the command line interace (CLI).
All lines in this notebook which start with !
are executed from the command line. Within the notebook environment the logging messages are shown after completion. You can also copy these lines and paste these in your shell to get more direct feedback.
HydroMT CLI build interface#
Lets first check if the Wflow sediment model is recognized by HydroMT
[1]:
# this should return "wflow, wflow_sediment"
# as well as hydromt generic models "grid_model, lumped_model, network_model (mesh_model)"
!hydromt --models
model plugins:
- wflow (hydromt_wflow 1.0.0rc1)
- wflow_sediment (hydromt_wflow 1.0.0rc1)
generic models (hydromt 0.10.1):
- grid_model
- vector_model
- network_model
Using the HydroMT build API we can setup a complete model from scratch. Let’s get an overview of all the available options:
[2]:
!hydromt build --help
Usage: hydromt build [OPTIONS] MODEL MODEL_ROOT
Build models from scratch.
Example usage: --------------
To build a wflow model for a subbasin using a point coordinates snapped to
cells with upstream area >= 50 km2 hydromt build wflow /path/to/model_root
-i /path/to/wflow_config.yml -r "{'subbasin': [-7.24, 62.09], 'uparea':
50}" -d deltares_data -d /path/to/data_catalog.yml -v
To build a sfincs model based on a bbox hydromt build sfincs
/path/to/model_root -i /path/to/sfincs_config.yml -r "{'bbox':
[4.6891,52.9750,4.9576,53.1994]}" -d /path/to/data_catalog.yml -v
Options:
--opt TEXT Method specific keyword arguments, see the method
documentation of the specific model for more
information about the arguments.
-i, --config PATH Path to hydroMT configuration file, for the model
specific implementation.
-r, --region TEXT Set the region for which to build the model, e.g.
{'subbasin': [-7.24, 62.09]}
-d, --data TEXT Path to local yaml data catalog file OR name of
predefined data catalog.
--dd, --deltares-data Flag: Shortcut to add the "deltares_data" catalog
--fo, --force-overwrite Flag: If provided overwrite existing model files
--cache Flag: If provided cache tiled rasterdatasets
-v, --verbose Increase verbosity.
-q, --quiet Decrease verbosity.
--help Show this message and exit.
Model setup configuration#
The HydroMT configuration file (YAML) contains the model setup configuration and determines which methods are used to prepare the different components of a Wflow Sediment model and in which order and optionally sets non-default arguments for each method. This configuration is passed to HydroMT using -i <path_to_config_file>
. We have prepared several example files which are available in the model repository examples folder and
from the docs (building a model).
Each header (without indent) (e.g. setup_basemaps:
) corresponds to a model method. All model methods are explained in the docs (model methods).
We will load the default wflow sediment build configuration yaml file for inspection:
[3]:
fn_config = "wflow_sediment_build.yml"
with open(fn_config, "r") as f:
txt = f.read()
print(txt)
setup_config: # options parsed to wflow toml file <section>.<option>
time.starttime: "2010-02-02T00:00:00"
time.endtime: "2010-02-10T00:00:00"
time.timestepsecs: 86400
output.netcdf_grid.path: output.nc
output.netcdf_grid.compressionlevel: 1
output.netcdf_grid.variables.soil_erosion__mass_flow_rate: soil_loss
output.netcdf_grid.variables.river_water_sediment~suspended__mass_concentration: suspended_solids
setup_basemaps:
hydrography_fn: merit_hydro # source hydrography data {merit_hydro, merit_hydro_1k}
basin_index_fn: merit_hydro_index # source of basin index corresponding to hydrography_fn
upscale_method: ihu # upscaling method for flow direction data, by default 'ihu'
res: 0.00833 # build the model at a 30 arc sec (~1km) resolution
setup_rivers:
hydrography_fn: merit_hydro # source hydrography data, should correspond to hydrography_fn in setup_basemaps
river_geom_fn: hydro_rivers_lin # river source data with river width and bankfull discharge
river_upa: 30 # minimum upstream area threshold for the river map [km2]
min_rivwth: 30 # minimum river width [m]
slope_len: 2000 # length over which tp calculate river slope [m]
smooth_len: 5000 # length over which to smooth river depth and river width [m]
setup_reservoirs:
reservoirs_fn: hydro_reservoirs # source for reservoirs shape and attributes
min_area: 1.0 # minimum lake area to consider [km2]
trapping_default: 1.0 # default trapping efficiency for reservoirs [0-1]
setup_lakes:
lakes_fn: hydro_lakes # source for lakes based on hydroLAKES: {hydro_lakes}
min_area: 1.0 # minimum reservoir area to consider [km2]
setup_riverbedsed:
setup_lulcmaps:
lulc_fn: globcover_2009 # source for lulc maps: {globcover, vito, corine}
lulc_mapping_fn: globcover_mapping_default # default mapping for lulc classes
setup_canopymaps:
canopy_fn: simard # source for vegetation canopy height: {simard}
setup_soilmaps:
soil_fn: soilgrids # source for soilmaps: {soilgrids}
usle_k_method: renard # method to compute the USLE K factor: {renard, epic}
add_aggregates: True # if True add small and large aggregates to soil composition
setup_outlets:
river_only: True
setup_gauges:
gauges_fn: grdc # If not None add gaugemap. Either a path or known gauges_fn: {grdc}
snap_to_river: True # If True snaps gauges from source to river
derive_subcatch: False # if True derive subcatch map based on gauges.
setup_constant_pars: # constant parameters values
river_water_sediment__bagnold_transport_capacity_coefficient: 0.0000175
river_water_sediment__bagnold_transport_capacity_exponent: 1.4
soil_erosion__answers_overland_flow_factor: 0.9
soil_erosion__eurosem_exponent: 2.0
sediment__particle_density: 2650
clay__mean_diameter: 2
silt__mean_diameter: 10
"sediment_aggregates~small__mean_diameter": 30
sand__mean_diameter: 200
"sediment_aggregates~large__mean_diameter": 500
gravel__mean_diameter: 2000
Setup Wflow Sediment model from scratch#
[4]:
# NOTE: copy this line (without !) to your shell for more direct feedback
# NOTE: as of hydromt version 0.7.0 the region argument is optional and should be preceded by -r or --region
# NOTE: the resolution argument has been removed since hydromt v0.7.0 and can now only be configured from the configuration file under the setup_basemap header
!hydromt build wflow_sediment "./wflow_test_sediment" -r "{'subbasin': [12.2051, 45.8331], 'strord': 4, 'bounds': [11.70, 45.35, 12.95, 46.70]}" -i wflow_sediment_build.yml -d artifact_data -vv
2025-06-26 14:07:54,690 - build - log - DEBUG - Writing log messages to new file /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_sediment/hydromt.log.
2025-06-26 14:07:54,691 - build - log - INFO - HydroMT version: 0.10.1
2025-06-26 14:07:54,691 - build - main - INFO - Building instance of wflow_sediment model at /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_sediment.
2025-06-26 14:07:54,691 - build - main - INFO - User settings:
2025-06-26 14:07:54,773 - build - data_catalog - INFO - Reading data catalog artifact_data latest
2025-06-26 14:07:54,773 - build - data_catalog - INFO - Parsing data catalog from /home/runner/.hydromt_data/artifact_data/v0.0.9/data_catalog.yml
2025-06-26 14:07:55,334 - build - model_api - INFO - Initializing wflow_sediment model from hydromt_wflow (v1.0.0rc1).
2025-06-26 14:07:55,334 - build - data_catalog - INFO - Parsing data catalog from /home/runner/work/hydromt_wflow/hydromt_wflow/hydromt_wflow/data/parameters_data.yml
2025-06-26 14:07:55,348 - build - wflow - INFO - Supported Wflow.jl version v1+
2025-06-26 14:07:55,355 - build - model_api - DEBUG - Default config read from /home/runner/work/hydromt_wflow/hydromt_wflow/hydromt_wflow/data/wflow_sediment/wflow_sediment.toml
2025-06-26 14:07:55,356 - build - model_api - DEBUG - Setting model config options.
2025-06-26 14:07:55,357 - build - model_api - INFO - setup_basemaps.region: {'subbasin': [12.2051, 45.8331], 'strord': 4, 'bounds': [11.7, 45.35, 12.95, 46.7]}
2025-06-26 14:07:55,357 - build - model_api - INFO - setup_basemaps.hydrography_fn: merit_hydro
2025-06-26 14:07:55,357 - build - model_api - INFO - setup_basemaps.basin_index_fn: merit_hydro_index
2025-06-26 14:07:55,357 - build - model_api - INFO - setup_basemaps.res: 0.00833
2025-06-26 14:07:55,357 - build - model_api - INFO - setup_basemaps.upscale_method: ihu
2025-06-26 14:07:55,357 - build - model_api - INFO - setup_basemaps.output_names: {'basin__local_drain_direction': 'local_drain_direction', 'subbasin_location__count': 'subcatchment', 'land_surface__slope': 'land_slope'}
2025-06-26 14:07:55,357 - build - wflow - INFO - Preparing base hydrography basemaps.
2025-06-26 14:07:55,359 - build - rasterdataset - INFO - Reading merit_hydro raster data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/merit_hydro/{variable}.tif
2025-06-26 14:07:55,463 - build - basin_mask - DEBUG - Parsed region (kind=subbasin): {'strord': 4, 'bounds': [11.7, 45.35, 12.95, 46.7], 'xy': [12.2051, 45.8331]}
2025-06-26 14:07:58,842 - build - basin_mask - INFO - subbasin bbox: [11.7750, 45.8042, 12.7450, 46.6900]
2025-06-26 14:07:58,901 - build - wflow - DEBUG - Adding basins vector to geoms.
2025-06-26 14:07:58,902 - build - basemaps - DEBUG - Mask in dataset assumed to represent subbasins.
2025-06-26 14:07:58,902 - build - basemaps - DEBUG - (Sub)basin at original resolution has 664756 cells.
2025-06-26 14:07:58,963 - build - basemaps - DEBUG - Burn subbasin outlet in upstream area data.
2025-06-26 14:07:59,037 - build - basemaps - INFO - Upscale flow direction data: 10x, ihu method.
2025-06-26 14:08:13,721 - build - basemaps - DEBUG - Derive stream order.
2025-06-26 14:08:13,899 - build - basemaps - DEBUG - Map shape: (106, 116); active cells: 6637.
2025-06-26 14:08:13,899 - build - basemaps - DEBUG - Outlet coordinates (1/1): (12.20750,45.83583).
2025-06-26 14:08:14,114 - build - wflow - DEBUG - Adding region vector to geoms.
2025-06-26 14:08:14,118 - build - model_api - INFO - setup_rivers.hydrography_fn: merit_hydro
2025-06-26 14:08:14,118 - build - model_api - INFO - setup_rivers.river_geom_fn: hydro_rivers_lin
2025-06-26 14:08:14,118 - build - model_api - INFO - setup_rivers.river_upa: 30
2025-06-26 14:08:14,118 - build - model_api - INFO - setup_rivers.slope_len: 2000
2025-06-26 14:08:14,118 - build - model_api - INFO - setup_rivers.min_rivlen_ratio: 0.0
2025-06-26 14:08:14,118 - build - model_api - INFO - setup_rivers.min_rivwth: 30
2025-06-26 14:08:14,118 - build - model_api - INFO - setup_rivers.smooth_len: 5000
2025-06-26 14:08:14,118 - build - model_api - INFO - setup_rivers.output_names: {'river_location__mask': 'river_mask', 'river__length': 'river_length', 'river__width': 'river_width', 'river__slope': 'river_slope'}
2025-06-26 14:08:14,118 - build - wflow_sediment - INFO - Preparing river maps.
2025-06-26 14:08:14,120 - build - rasterdataset - INFO - Reading merit_hydro raster data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/merit_hydro/{variable}.tif
2025-06-26 14:08:14,197 - build - rasterdataset - DEBUG - Clip to [11.778, 45.807, 12.745, 46.690] (epsg:4326))
2025-06-26 14:08:14,206 - build - river - DEBUG - Set river mask (min uparea: 30 km2) and prepare flow dirs.
2025-06-26 14:08:14,355 - build - river - DEBUG - Derive river length.
2025-06-26 14:08:17,680 - build - river - DEBUG - Derive river slope.
2025-06-26 14:08:18,303 - build - river - DEBUG - Derive rivwth from hydrography dataset.
2025-06-26 14:08:18,349 - build - geodataframe - INFO - Reading hydro_rivers_lin vector data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/rivers_lin2019_v1.gpkg
2025-06-26 14:08:18,358 - build - geodataframe - DEBUG - Clip intersects [11.778, 45.807, 12.745, 46.690] (EPSG:4326)
2025-06-26 14:08:18,770 - build - river - DEBUG - Derive ['rivwth', 'qbankfull'] from shapefile.
2025-06-26 14:08:18,819 - build - river - DEBUG - Valid for 381/655 river cells (max dist: 392 m).
2025-06-26 14:08:21,585 - build - wflow_sediment - DEBUG - Adding rivers vector to geoms.
2025-06-26 14:08:22,453 - build - model_api - INFO - setup_reservoirs.reservoirs_fn: hydro_reservoirs
2025-06-26 14:08:22,453 - build - model_api - INFO - setup_reservoirs.min_area: 1.0
2025-06-26 14:08:22,453 - build - model_api - INFO - setup_reservoirs.trapping_default: 1.0
2025-06-26 14:08:22,453 - build - model_api - INFO - setup_reservoirs.output_names: {'reservoir_area__count': 'reservoir_area_id', 'reservoir_location__count': 'reservoir_outlet_id', 'reservoir_surface__area': 'reservoir_area', 'reservoir_water_sediment~bedload__trapping_efficiency': 'reservoir_trapping_efficiency'}
2025-06-26 14:08:22,454 - build - model_api - INFO - setup_reservoirs.geom_name: reservoirs
2025-06-26 14:08:22,454 - build - wflow - INFO - Preparing reservoir maps.
2025-06-26 14:08:22,454 - build - geodataframe - INFO - Reading hydro_reservoirs vector data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/hydro_reservoirs.gpkg
2025-06-26 14:08:22,471 - build - geodataframe - DEBUG - Clip contains [11.775, 45.804, 12.745, 46.690] (EPSG:4326)
2025-06-26 14:08:22,473 - build - geodataframe - DEBUG - Convert units for 5 columns.
2025-06-26 14:08:22,475 - build - wflow - WARNING - No reservoirs of sufficient size found within region! Skipping reservoir procedures!
2025-06-26 14:08:22,475 - build - wflow_sediment - INFO - Skipping method, as no data has been found
2025-06-26 14:08:22,475 - build - model_api - INFO - setup_lakes.lakes_fn: hydro_lakes
2025-06-26 14:08:22,475 - build - model_api - INFO - setup_lakes.min_area: 1.0
2025-06-26 14:08:22,475 - build - model_api - INFO - setup_lakes.output_names: {'lake_area__count': 'lake_area_id', 'lake_location__count': 'lake_outlet_id', 'lake_surface__area': 'lake_area'}
2025-06-26 14:08:22,475 - build - model_api - INFO - setup_lakes.geom_name: lakes
2025-06-26 14:08:22,475 - build - wflow - INFO - Preparing lake maps.
2025-06-26 14:08:22,476 - build - geodataframe - INFO - Reading hydro_lakes vector data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/hydro_lakes.gpkg
2025-06-26 14:08:22,486 - build - geodataframe - DEBUG - Clip contains [11.775, 45.804, 12.745, 46.690] (EPSG:4326)
2025-06-26 14:08:22,488 - build - geodataframe - DEBUG - Convert units for 1 columns.
2025-06-26 14:08:22,489 - build - wflow - INFO - 1 lake(s) of sufficient size found within region.
2025-06-26 14:08:22,493 - build - waterbodies - DEBUG - Setting lake outlet map based maximum upstream area.
2025-06-26 14:08:22,517 - build - model_api - INFO - setup_riverbedsed.bedsed_mapping_fn: None
2025-06-26 14:08:22,517 - build - model_api - INFO - setup_riverbedsed.strord_name: meta_streamorder
2025-06-26 14:08:22,517 - build - model_api - INFO - setup_riverbedsed.output_names: {'river_bottom-and-bank_sediment__median_diameter': 'river_bed_sediment_d50', 'river_bottom-and-bank_clay__mass_fraction': 'river_bed_clay_fraction', 'river_bottom-and-bank_silt__mass_fraction': 'river_bed_silt_fraction', 'river_bottom-and-bank_sand__mass_fraction': 'river_bed_sand_fraction', 'river_bottom-and-bank_gravel__mass_fraction': 'river_bed_gravel_fraction', 'river_water_sediment__kodatie_transport_capacity_a-coefficient': 'river_kodatie_a', 'river_water_sediment__kodatie_transport_capacity_b-coefficient': 'river_kodatie_b', 'river_water_sediment__kodatie_transport_capacity_c-coefficient': 'river_kodatie_c', 'river_water_sediment__kodatie_transport_capacity_d-coefficient': 'river_kodatie_d'}
2025-06-26 14:08:22,517 - build - wflow_sediment - INFO - Preparing riverbedsed parameter maps.
2025-06-26 14:08:22,517 - build - dataframe - INFO - Reading riverbedsed_mapping_default csv data from /home/runner/work/hydromt_wflow/hydromt_wflow/hydromt_wflow/data/wflow_sediment/riverbedsed_mapping.csv
2025-06-26 14:08:22,524 - build - landuse - INFO - Deriving river_bed_sediment_d50 using average resampling (nodata=-999.0).
2025-06-26 14:08:22,530 - build - landuse - INFO - Deriving river_bed_clay_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:22,535 - build - landuse - INFO - Deriving river_bed_silt_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:22,540 - build - landuse - INFO - Deriving river_bed_sand_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:22,545 - build - landuse - INFO - Deriving river_bed_gravel_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:22,550 - build - landuse - INFO - Deriving river_kodatie_a using average resampling (nodata=nan).
2025-06-26 14:08:22,556 - build - landuse - INFO - Deriving river_kodatie_b using average resampling (nodata=nan).
2025-06-26 14:08:22,561 - build - landuse - INFO - Deriving river_kodatie_c using average resampling (nodata=nan).
2025-06-26 14:08:22,566 - build - landuse - INFO - Deriving river_kodatie_d using average resampling (nodata=nan).
2025-06-26 14:08:22,589 - build - model_api - INFO - setup_lulcmaps.lulc_fn: globcover_2009
2025-06-26 14:08:22,589 - build - model_api - INFO - setup_lulcmaps.lulc_mapping_fn: globcover_mapping_default
2025-06-26 14:08:22,590 - build - model_api - INFO - setup_lulcmaps.planted_forest_fn: None
2025-06-26 14:08:22,590 - build - model_api - INFO - setup_lulcmaps.lulc_vars: {'landuse': None, 'soil_compacted_fraction': 'soil~compacted__area_fraction', 'erosion_usle_c': 'soil_erosion__usle_c_factor', 'land_water_fraction': 'land~water-covered__area_fraction'}
2025-06-26 14:08:22,590 - build - model_api - INFO - setup_lulcmaps.planted_forest_c: 0.0881
2025-06-26 14:08:22,590 - build - model_api - INFO - setup_lulcmaps.orchard_name: Orchard
2025-06-26 14:08:22,590 - build - model_api - INFO - setup_lulcmaps.orchard_c: 0.2188
2025-06-26 14:08:22,590 - build - model_api - INFO - setup_lulcmaps.output_names_suffix: None
2025-06-26 14:08:22,590 - build - wflow - INFO - Preparing LULC parameter maps.
2025-06-26 14:08:22,591 - build - rasterdataset - INFO - Reading globcover_2009 raster data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/globcover.tif
2025-06-26 14:08:22,602 - build - rasterdataset - DEBUG - Clip to [11.778, 45.807, 12.745, 46.690] (epsg:4326))
2025-06-26 14:08:22,603 - build - dataframe - INFO - Reading globcover_mapping_default csv data from /home/runner/work/hydromt_wflow/hydromt_wflow/hydromt_wflow/data/lulc/globcover_mapping.csv
2025-06-26 14:08:22,612 - build - landuse - INFO - Deriving landuse using nearest resampling (nodata=230).
2025-06-26 14:08:22,634 - build - landuse - INFO - Deriving soil_compacted_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:22,655 - build - landuse - INFO - Deriving erosion_usle_c using average resampling (nodata=-999.0).
2025-06-26 14:08:22,676 - build - landuse - INFO - Deriving land_water_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:22,705 - build - model_api - INFO - setup_canopymaps.canopy_fn: simard
2025-06-26 14:08:22,705 - build - model_api - INFO - setup_canopymaps.output_name: vegetation_height
2025-06-26 14:08:22,705 - build - wflow_sediment - INFO - Preparing canopy height map.
2025-06-26 14:08:22,706 - build - rasterdataset - INFO - Reading simard raster data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/simard.tif
2025-06-26 14:08:22,716 - build - rasterdataset - DEBUG - Clip to [11.778, 45.807, 12.745, 46.690] (epsg:4326))
2025-06-26 14:08:22,747 - build - model_api - INFO - setup_soilmaps.soil_fn: soilgrids
2025-06-26 14:08:22,748 - build - model_api - INFO - setup_soilmaps.usle_k_method: renard
2025-06-26 14:08:22,748 - build - model_api - INFO - setup_soilmaps.add_aggregates: True
2025-06-26 14:08:22,748 - build - model_api - INFO - setup_soilmaps.output_names: {'soil_clay__mass_fraction': 'soil_clay_fraction', 'soil_silt__mass_fraction': 'soil_silt_fraction', 'soil_sand__mass_fraction': 'soil_sand_fraction', 'soil_aggregates~small__mass_fraction': 'soil_sagg_fraction', 'soil_aggregates~large__mass_fraction': 'soil_lagg_fraction', 'soil_erosion__rainfall_soil_detachability_factor': 'erosion_soil_detachability', 'soil_erosion__usle_k_factor': 'erosion_usle_k', 'land_surface_sediment__median_diameter': 'soil_sediment_d50', 'land_surface_water_sediment__govers_transport_capacity_coefficient': 'land_govers_c', 'land_surface_water_sediment__govers_transport_capacity_exponent': 'land_govers_n'}
2025-06-26 14:08:22,748 - build - wflow_sediment - INFO - Preparing soil parameter maps.
2025-06-26 14:08:22,749 - build - rasterdataset - INFO - Reading soilgrids raster data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/soilgrids/{variable}.tif
2025-06-26 14:08:23,105 - build - rasterdataset - DEBUG - Clip to [11.778, 45.807, 12.745, 46.690] (epsg:4326))
2025-06-26 14:08:23,116 - build - rasterdataset - DEBUG - Convert units for 21 variables.
2025-06-26 14:08:23,703 - build - soilgrids - INFO - Interpolate NAN values for erosion_soil_detachability
2025-06-26 14:08:23,728 - build - soilgrids - INFO - Interpolate NAN values for usle_k
2025-06-26 14:08:23,763 - build - soilgrids - INFO - Interpolate NAN values for soil_sediment_d50
2025-06-26 14:08:23,801 - build - soilgrids - INFO - Interpolate NAN values for land_govers_c
2025-06-26 14:08:23,840 - build - soilgrids - INFO - Interpolate NAN values for land_govers_n
2025-06-26 14:08:23,859 - build - soilgrids - INFO - Interpolate NAN values for soil_clay_fraction
2025-06-26 14:08:23,877 - build - soilgrids - INFO - Interpolate NAN values for soil_silt_fraction
2025-06-26 14:08:23,896 - build - soilgrids - INFO - Interpolate NAN values for soil_sagg_fraction
2025-06-26 14:08:23,920 - build - soilgrids - INFO - Interpolate NAN values for soil_sand_fraction
No numerical nodata value found, skipping set_nodata
2025-06-26 14:08:23,966 - build - soilgrids - INFO - Interpolate NAN values for soil_lagg_fraction
2025-06-26 14:08:23,987 - build - model_api - INFO - setup_outlets.river_only: True
2025-06-26 14:08:23,987 - build - model_api - INFO - setup_outlets.toml_output: csv
2025-06-26 14:08:23,988 - build - model_api - INFO - setup_outlets.gauge_toml_header: ['suspended_solids']
2025-06-26 14:08:23,988 - build - model_api - INFO - setup_outlets.gauge_toml_param: ['river_water_sediment~suspended__mass_concentration']
2025-06-26 14:08:23,988 - build - wflow - INFO - Gauges locations set based on river outlets.
2025-06-26 14:08:23,994 - build - wflow - INFO - Gauges map based on catchment river outlets added.
2025-06-26 14:08:23,994 - build - wflow - INFO - Adding ['river_water_sediment~suspended__mass_concentration'] to csv section of toml.
2025-06-26 14:08:23,995 - build - model_api - INFO - setup_gauges.gauges_fn: grdc
2025-06-26 14:08:23,995 - build - model_api - INFO - setup_gauges.index_col: None
2025-06-26 14:08:23,995 - build - model_api - INFO - setup_gauges.snap_to_river: True
2025-06-26 14:08:23,995 - build - model_api - INFO - setup_gauges.mask: None
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.snap_uparea: False
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.max_dist: 10000.0
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.wdw: 3
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.rel_error: 0.05
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.abs_error: 50.0
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.fillna: False
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.derive_subcatch: False
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.basename: None
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.toml_output: csv
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.gauge_toml_header: ['river_q', 'suspended_solids']
2025-06-26 14:08:23,996 - build - model_api - INFO - setup_gauges.gauge_toml_param: ['river_water__volume_flow_rate', 'river_water_sediment~suspended__mass_concentration']
2025-06-26 14:08:23,997 - build - geodataframe - INFO - Reading grdc csv data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/grdc.csv
2025-06-26 14:08:24,002 - build - geodataframe - DEBUG - Clip intersects [11.778, 45.807, 12.745, 46.690] (EPSG:4326)
2025-06-26 14:08:24,002 - build - wflow - INFO - 3 grdc gauge locations found within domain
2025-06-26 14:08:24,364 - build - wflow - INFO - Adding ['river_water__volume_flow_rate', 'river_water_sediment~suspended__mass_concentration'] to csv section of toml.
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.river_water_sediment__bagnold_transport_capacity_coefficient: 1.75e-05
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.river_water_sediment__bagnold_transport_capacity_exponent: 1.4
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.soil_erosion__answers_overland_flow_factor: 0.9
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.soil_erosion__eurosem_exponent: 2.0
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.sediment__particle_density: 2650
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.clay__mean_diameter: 2
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.silt__mean_diameter: 10
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.sediment_aggregates~small__mean_diameter: 30
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.sand__mean_diameter: 200
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.sediment_aggregates~large__mean_diameter: 500
2025-06-26 14:08:24,366 - build - model_api - INFO - setup_constant_pars.gravel__mean_diameter: 2000
2025-06-26 14:08:24,369 - build - wflow - INFO - Write model data to /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_sediment
2025-06-26 14:08:24,394 - build - wflow - INFO - Write grid to /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_sediment/staticmaps.nc
2025-06-26 14:08:24,482 - build - wflow - INFO - Writing model staticgeom to file.
2025-06-26 14:08:24,529 - build - wflow - INFO - Writing model config to /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_sediment/wflow_sediment.toml
The example above means the following: run hydromt build with:
wflow_sediment
: i.e. build a wflow sediment model./wflow_test_sediment
: output model folder-r "{'subbasin': [12.2051, 45.8331], 'strord': 4, 'bounds': [11.70, 45.35, 12.95, 46.70]}"
: derive a subbasin with its outlet at the given x,y coordinates and within the given bounds [xmin, ymin, xmax, ymax] (WGS84) snapped to a river with minimum stream order (strord) of 4. All REGION options are described in the docs-i wflow_sediment_build.yml
: model setup configuration file-d artifact_data
: use pre-defined artifact_data catalog.-vv
: give some extra verbosity (2 * v) to display feedback on screen. Now debug messages are provided.
Next we check which files have been created. The model root should contain two netcdf (.nc) files, one for the staticmaps and one for the forcing data, a wflow run configuration (.toml) file. These files are sufficient to run the wflow sediment model. In addition several geometry (.geojson) files are saved in the staticgeoms folder. Finally, the setup process is logged in the hydromt.log file.
[5]:
import os
root = "wflow_test_sediment"
for path, _, files in os.walk(root):
print(path)
for name in files:
if name.endswith(".xml"):
continue
print(f" - {name}")
wflow_test_sediment
- hydromt.log
- hydromt_data.yml
- staticmaps.nc
- wflow_sediment.toml
wflow_test_sediment/staticgeoms
- rivers.geojson
- basins.geojson
- region.geojson
- basins_highres.geojson
- lakes.geojson
- gauges_grdc.geojson
- outlets.geojson
Visualize and/or inspect model schematization#
You can (copy and) adapt the following example notebooks in order to visualize your Wflow Sediment model:
The wflow plot example notebook contains scripts to visualize your model
The wflow nc to raster files example notebook contains scripts to write the nc model files to a netcdf which can be used to inspect (and modify) the model layers in e.g. QGIS.
Add Wflow Sediment layers to an existing Wflow model#
If you already have a hydrological Wflow model and you want to extend it in order to include sediment as well, then you do not need to build the wflow_sediment from scratch. You can instead update the wflow model with the additional components needed by wflow_sediment.
These components are available in the template wflow_extend_sediment.yml:
[6]:
fn_config = "wflow_extend_sediment.yml"
with open(fn_config, "r") as f:
txt = f.read()
print(txt)
read_config: # read a template config file for wflow sediment to be able to extend from a sbm model
config_fn: data/wflow_sediment.toml
setup_config: # options parsed to wflow toml file <section>.<option>
time.starttime: 2010-01-01T00:00:00
time.endtime: 2010-03-31T00:00:00
time.timestepsecs: 86400
output.netcdf_grid.path: output.nc
output.netcdf_grid.compressionlevel: 1
output.netcdf_grid.variables.soil_erosion__mass_flow_rate: soil_loss
output.netcdf_grid.variables.river_water_sediment~suspended__mass_concentration: suspended_solids
setup_riverbedsed:
bedsed_mapping_fn: # path to a mapping csv file from streamorder to river bed particles characteristics if any, else default is used
# # If you do have data on trapping efficiency, you can re-run setup_reservoirs to add it
# Else you can use a default of 1 via setup_constant_pars below
# setup_reservoirs:
# reservoirs_fn: hydro_reservoirs # source for reservoirs shape and attributes
# min_area: 1.0 # minimum lake area to consider [km2]
# trapping_default: 1.0 # default trapping efficiency for reservoirs [0-1]
setup_lulcmaps:
lulc_fn: globcover_2009 # source for lulc maps: {globcover, vito, corine}
lulc_mapping_fn: globcover_mapping_default # default mapping for lulc classes
setup_canopymaps:
canopy_fn: simard # source for vegetation canopy height: {simard}
setup_soilmaps:
soil_fn: soilgrids # source for soilmaps: {soilgrids}
usle_k_method: renard # method to compute the USLE K factor: {renard, epic}
add_aggregates: True # if True add small and large aggregates to soil composition
setup_outlets:
river_only: True
setup_gauges:
gauges_fn: grdc # If not None add gaugemap. Either a path or known gauges_fn: {grdc}
snap_to_river: True # If True snaps gauges from source to river
derive_subcatch: False # if True derive subcatch map based on gauges.
setup_constant_pars: # constant parameters values
river_water_sediment__bagnold_transport_capacity_coefficient: 0.0000175
river_water_sediment__bagnold_transport_capacity_exponent: 1.4
soil_erosion__answers_overland_flow_factor: 0.9
soil_erosion__eurosem_exponent: 2.0
sediment__particle_density: 2650
clay__mean_diameter: 2
silt__mean_diameter: 10
"sediment_aggregates~small__mean_diameter": 30
sand__mean_diameter: 200
"sediment_aggregates~large__mean_diameter": 500
gravel__mean_diameter: 2000
"reservoir_water_sediment~bedload__trapping_efficiency": 1.0
Note that because we are starting from a sbm model, we start here with a read_config
step in order to get a default wflow_sediment.toml that contains the minimum config options of the sediment model including variables names of the already present maps (eg slope, river mask…). You may have to modify this template if the staticmaps name do not correspond to the names in your own wflow sbm model.
Let’s update the hydrological Wflow model available from our example for the Piave subbasin:
[7]:
# NOTE: copy this line (without !) to your shell for more direct feedback
!hydromt update wflow_sediment "wflow_piave_subbasin" -o "./wflow_test_extend_sediment" -i wflow_extend_sediment.yml -d artifact_data -vv
2025-06-26 14:08:27,194 - update - log - DEBUG - Writing log messages to new file /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_extend_sediment/hydromt.log.
2025-06-26 14:08:27,194 - update - log - INFO - HydroMT version: 0.10.1
2025-06-26 14:08:27,194 - update - main - INFO - Updating wflow_sediment model at /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_piave_subbasin (r).
2025-06-26 14:08:27,194 - update - main - INFO - Output dir: /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_extend_sediment
2025-06-26 14:08:27,194 - update - main - INFO - User settings:
2025-06-26 14:08:27,273 - update - data_catalog - INFO - Reading data catalog artifact_data latest
2025-06-26 14:08:27,273 - update - data_catalog - INFO - Parsing data catalog from /home/runner/.hydromt_data/artifact_data/v0.0.9/data_catalog.yml
2025-06-26 14:08:27,834 - update - log - DEBUG - Writing log messages to new file /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_piave_subbasin/hydromt.log.
2025-06-26 14:08:27,834 - update - model_api - INFO - Initializing wflow_sediment model from hydromt_wflow (v1.0.0rc1).
2025-06-26 14:08:27,834 - update - data_catalog - INFO - Parsing data catalog from /home/runner/work/hydromt_wflow/hydromt_wflow/hydromt_wflow/data/parameters_data.yml
2025-06-26 14:08:27,846 - update - wflow - INFO - Supported Wflow.jl version v1+
2025-06-26 14:08:27,846 - update - model_api - ERROR - Model config file not found at /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_piave_subbasin/wflow_sediment.toml
2025-06-26 14:08:27,846 - update - model_api - ERROR - Model config file not found at /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_piave_subbasin/wflow_sediment.toml
2025-06-26 14:08:27,847 - update - wflow - INFO - Read grid from /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_piave_subbasin/staticmaps.nc
2025-06-26 14:08:28,557 - update - wflow - INFO - Reading model staticgeom files.
2025-06-26 14:08:28,606 - update - wflow - INFO - Read forcing from /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_piave_subbasin/inmaps.nc
2025-06-26 14:08:28,625 - update - wflow - INFO - Reading model table files.
2025-06-26 14:08:28,626 - update - wflow - INFO - Model read
2025-06-26 14:08:28,626 - update - log - DEBUG - Appending log messages to file /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_extend_sediment/hydromt.log.
2025-06-26 14:08:28,630 - update - model_api - INFO - read_config.config_fn: /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/data/wflow_sediment.toml
2025-06-26 14:08:28,638 - update - model_api - DEBUG - User defined config read from /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/data/wflow_sediment.toml
2025-06-26 14:08:28,639 - update - model_api - DEBUG - Setting model config options.
2025-06-26 14:08:28,640 - update - model_api - INFO - setup_riverbedsed.bedsed_mapping_fn: None
2025-06-26 14:08:28,640 - update - model_api - INFO - setup_riverbedsed.strord_name: meta_streamorder
2025-06-26 14:08:28,640 - update - model_api - INFO - setup_riverbedsed.output_names: {'river_bottom-and-bank_sediment__median_diameter': 'river_bed_sediment_d50', 'river_bottom-and-bank_clay__mass_fraction': 'river_bed_clay_fraction', 'river_bottom-and-bank_silt__mass_fraction': 'river_bed_silt_fraction', 'river_bottom-and-bank_sand__mass_fraction': 'river_bed_sand_fraction', 'river_bottom-and-bank_gravel__mass_fraction': 'river_bed_gravel_fraction', 'river_water_sediment__kodatie_transport_capacity_a-coefficient': 'river_kodatie_a', 'river_water_sediment__kodatie_transport_capacity_b-coefficient': 'river_kodatie_b', 'river_water_sediment__kodatie_transport_capacity_c-coefficient': 'river_kodatie_c', 'river_water_sediment__kodatie_transport_capacity_d-coefficient': 'river_kodatie_d'}
2025-06-26 14:08:28,640 - update - wflow_sediment - INFO - Preparing riverbedsed parameter maps.
2025-06-26 14:08:28,641 - update - dataframe - INFO - Reading riverbedsed_mapping_default csv data from /home/runner/work/hydromt_wflow/hydromt_wflow/hydromt_wflow/data/wflow_sediment/riverbedsed_mapping.csv
2025-06-26 14:08:28,649 - update - landuse - INFO - Deriving river_bed_sediment_d50 using average resampling (nodata=-999.0).
2025-06-26 14:08:28,653 - update - landuse - INFO - Deriving river_bed_clay_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:28,658 - update - landuse - INFO - Deriving river_bed_silt_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:28,662 - update - landuse - INFO - Deriving river_bed_sand_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:28,667 - update - landuse - INFO - Deriving river_bed_gravel_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:28,671 - update - landuse - INFO - Deriving river_kodatie_a using average resampling (nodata=nan).
2025-06-26 14:08:28,676 - update - landuse - INFO - Deriving river_kodatie_b using average resampling (nodata=nan).
2025-06-26 14:08:28,680 - update - landuse - INFO - Deriving river_kodatie_c using average resampling (nodata=nan).
2025-06-26 14:08:28,684 - update - landuse - INFO - Deriving river_kodatie_d using average resampling (nodata=nan).
2025-06-26 14:08:28,709 - update - model_api - INFO - setup_lulcmaps.lulc_fn: globcover_2009
2025-06-26 14:08:28,709 - update - model_api - INFO - setup_lulcmaps.lulc_mapping_fn: globcover_mapping_default
2025-06-26 14:08:28,709 - update - model_api - INFO - setup_lulcmaps.planted_forest_fn: None
2025-06-26 14:08:28,709 - update - model_api - INFO - setup_lulcmaps.lulc_vars: {'landuse': None, 'soil_compacted_fraction': 'soil~compacted__area_fraction', 'erosion_usle_c': 'soil_erosion__usle_c_factor', 'land_water_fraction': 'land~water-covered__area_fraction'}
2025-06-26 14:08:28,709 - update - model_api - INFO - setup_lulcmaps.planted_forest_c: 0.0881
2025-06-26 14:08:28,709 - update - model_api - INFO - setup_lulcmaps.orchard_name: Orchard
2025-06-26 14:08:28,709 - update - model_api - INFO - setup_lulcmaps.orchard_c: 0.2188
2025-06-26 14:08:28,709 - update - model_api - INFO - setup_lulcmaps.output_names_suffix: None
2025-06-26 14:08:28,709 - update - wflow - INFO - Preparing LULC parameter maps.
2025-06-26 14:08:28,712 - update - rasterdataset - INFO - Reading globcover_2009 raster data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/globcover.tif
2025-06-26 14:08:28,733 - update - rasterdataset - DEBUG - Clip to [11.775, 45.808, 12.742, 46.692] (epsg:4326))
2025-06-26 14:08:28,734 - update - dataframe - INFO - Reading globcover_mapping_default csv data from /home/runner/work/hydromt_wflow/hydromt_wflow/hydromt_wflow/data/lulc/globcover_mapping.csv
2025-06-26 14:08:28,745 - update - landuse - INFO - Deriving landuse using nearest resampling (nodata=230).
2025-06-26 14:08:28,777 - update - landuse - INFO - Deriving soil_compacted_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:28,799 - update - landuse - INFO - Deriving erosion_usle_c using average resampling (nodata=-999.0).
2025-06-26 14:08:28,819 - update - landuse - INFO - Deriving land_water_fraction using average resampling (nodata=-999.0).
2025-06-26 14:08:28,849 - update - model_api - INFO - setup_canopymaps.canopy_fn: simard
2025-06-26 14:08:28,849 - update - model_api - INFO - setup_canopymaps.output_name: vegetation_height
2025-06-26 14:08:28,849 - update - wflow_sediment - INFO - Preparing canopy height map.
2025-06-26 14:08:28,852 - update - rasterdataset - INFO - Reading simard raster data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/simard.tif
2025-06-26 14:08:28,862 - update - rasterdataset - DEBUG - Clip to [11.775, 45.808, 12.742, 46.692] (epsg:4326))
2025-06-26 14:08:28,910 - update - model_api - INFO - setup_soilmaps.soil_fn: soilgrids
2025-06-26 14:08:28,910 - update - model_api - INFO - setup_soilmaps.usle_k_method: renard
2025-06-26 14:08:28,910 - update - model_api - INFO - setup_soilmaps.add_aggregates: True
2025-06-26 14:08:28,911 - update - model_api - INFO - setup_soilmaps.output_names: {'soil_clay__mass_fraction': 'soil_clay_fraction', 'soil_silt__mass_fraction': 'soil_silt_fraction', 'soil_sand__mass_fraction': 'soil_sand_fraction', 'soil_aggregates~small__mass_fraction': 'soil_sagg_fraction', 'soil_aggregates~large__mass_fraction': 'soil_lagg_fraction', 'soil_erosion__rainfall_soil_detachability_factor': 'erosion_soil_detachability', 'soil_erosion__usle_k_factor': 'erosion_usle_k', 'land_surface_sediment__median_diameter': 'soil_sediment_d50', 'land_surface_water_sediment__govers_transport_capacity_coefficient': 'land_govers_c', 'land_surface_water_sediment__govers_transport_capacity_exponent': 'land_govers_n'}
2025-06-26 14:08:28,911 - update - wflow_sediment - INFO - Preparing soil parameter maps.
2025-06-26 14:08:28,914 - update - rasterdataset - INFO - Reading soilgrids raster data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/soilgrids/{variable}.tif
2025-06-26 14:08:29,255 - update - rasterdataset - DEBUG - Clip to [11.775, 45.808, 12.742, 46.692] (epsg:4326))
2025-06-26 14:08:29,267 - update - rasterdataset - DEBUG - Convert units for 21 variables.
2025-06-26 14:08:29,904 - update - soilgrids - INFO - Interpolate NAN values for erosion_soil_detachability
2025-06-26 14:08:29,928 - update - soilgrids - INFO - Interpolate NAN values for usle_k
2025-06-26 14:08:29,968 - update - soilgrids - INFO - Interpolate NAN values for soil_sediment_d50
2025-06-26 14:08:30,013 - update - soilgrids - INFO - Interpolate NAN values for land_govers_c
2025-06-26 14:08:30,057 - update - soilgrids - INFO - Interpolate NAN values for land_govers_n
2025-06-26 14:08:30,075 - update - soilgrids - INFO - Interpolate NAN values for soil_clay_fraction
2025-06-26 14:08:30,092 - update - soilgrids - INFO - Interpolate NAN values for soil_silt_fraction
2025-06-26 14:08:30,113 - update - soilgrids - INFO - Interpolate NAN values for soil_sagg_fraction
2025-06-26 14:08:30,138 - update - soilgrids - INFO - Interpolate NAN values for soil_sand_fraction
No numerical nodata value found, skipping set_nodata
2025-06-26 14:08:30,195 - update - soilgrids - INFO - Interpolate NAN values for soil_lagg_fraction
2025-06-26 14:08:30,219 - update - model_api - INFO - setup_outlets.river_only: True
2025-06-26 14:08:30,220 - update - model_api - INFO - setup_outlets.toml_output: csv
2025-06-26 14:08:30,220 - update - model_api - INFO - setup_outlets.gauge_toml_header: ['suspended_solids']
2025-06-26 14:08:30,220 - update - model_api - INFO - setup_outlets.gauge_toml_param: ['river_water_sediment~suspended__mass_concentration']
2025-06-26 14:08:30,220 - update - wflow - INFO - Gauges locations set based on river outlets.
2025-06-26 14:08:31,074 - update - model_api - WARNING - Replacing geom: outlets
2025-06-26 14:08:31,075 - update - wflow - INFO - Gauges map based on catchment river outlets added.
2025-06-26 14:08:31,075 - update - wflow - INFO - Adding ['river_water_sediment~suspended__mass_concentration'] to csv section of toml.
2025-06-26 14:08:31,076 - update - model_api - INFO - setup_gauges.gauges_fn: grdc
2025-06-26 14:08:31,076 - update - model_api - INFO - setup_gauges.index_col: None
2025-06-26 14:08:31,076 - update - model_api - INFO - setup_gauges.snap_to_river: True
2025-06-26 14:08:31,076 - update - model_api - INFO - setup_gauges.mask: None
2025-06-26 14:08:31,076 - update - model_api - INFO - setup_gauges.snap_uparea: False
2025-06-26 14:08:31,076 - update - model_api - INFO - setup_gauges.max_dist: 10000.0
2025-06-26 14:08:31,076 - update - model_api - INFO - setup_gauges.wdw: 3
2025-06-26 14:08:31,076 - update - model_api - INFO - setup_gauges.rel_error: 0.05
2025-06-26 14:08:31,077 - update - model_api - INFO - setup_gauges.abs_error: 50.0
2025-06-26 14:08:31,077 - update - model_api - INFO - setup_gauges.fillna: False
2025-06-26 14:08:31,077 - update - model_api - INFO - setup_gauges.derive_subcatch: False
2025-06-26 14:08:31,077 - update - model_api - INFO - setup_gauges.basename: None
2025-06-26 14:08:31,077 - update - model_api - INFO - setup_gauges.toml_output: csv
2025-06-26 14:08:31,077 - update - model_api - INFO - setup_gauges.gauge_toml_header: ['river_q', 'suspended_solids']
2025-06-26 14:08:31,077 - update - model_api - INFO - setup_gauges.gauge_toml_param: ['river_water__volume_flow_rate', 'river_water_sediment~suspended__mass_concentration']
2025-06-26 14:08:31,077 - update - geodataframe - INFO - Reading grdc csv data from /home/runner/.hydromt_data/artifact_data/v0.0.9/data.tar/grdc.csv
2025-06-26 14:08:31,082 - update - geodataframe - DEBUG - Clip intersects [11.775, 45.808, 12.742, 46.692] (EPSG:4326)
2025-06-26 14:08:31,082 - update - wflow - INFO - 3 grdc gauge locations found within domain
2025-06-26 14:08:31,953 - update - model_api - WARNING - Replacing geom: gauges_grdc
2025-06-26 14:08:31,954 - update - wflow - INFO - Adding ['river_water__volume_flow_rate', 'river_water_sediment~suspended__mass_concentration'] to csv section of toml.
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.river_water_sediment__bagnold_transport_capacity_coefficient: 1.75e-05
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.river_water_sediment__bagnold_transport_capacity_exponent: 1.4
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.soil_erosion__answers_overland_flow_factor: 0.9
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.soil_erosion__eurosem_exponent: 2.0
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.sediment__particle_density: 2650
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.clay__mean_diameter: 2
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.silt__mean_diameter: 10
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.sediment_aggregates~small__mean_diameter: 30
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.sand__mean_diameter: 200
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.sediment_aggregates~large__mean_diameter: 500
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.gravel__mean_diameter: 2000
2025-06-26 14:08:31,956 - update - model_api - INFO - setup_constant_pars.reservoir_water_sediment~bedload__trapping_efficiency: 1.0
2025-06-26 14:08:31,959 - update - wflow - INFO - Write model data to /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_extend_sediment
2025-06-26 14:08:32,020 - update - wflow - INFO - Write grid to /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_extend_sediment/staticmaps.nc
2025-06-26 14:08:32,093 - update - wflow - INFO - Writing model staticgeom to file.
2025-06-26 14:08:32,186 - update - wflow - INFO - Write forcing file
2025-06-26 14:08:32,190 - update - wflow - WARNING - Not all dates found in precip_fn changing starttime to 2010-02-02 00:00:00 and endtime to 2010-02-10 00:00:00 in the toml.
2025-06-26 14:08:32,195 - update - wflow - INFO - Process forcing; saving to /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_extend_sediment/output_grid_sbm.nc
[########################################] | 100% Completed | 100.67 ms
2025-06-26 14:08:32,307 - update - wflow - INFO - Writing model config to /home/runner/work/hydromt_wflow/hydromt_wflow/docs/_examples/wflow_test_extend_sediment/wflow_sediment.toml
The example above means the following: run hydromt update with:
wflow_sediment
: i.e. update a wflow_sediment model (in our case a wflow model but with wflow_sediment components)wflow_piave_subbasin
: hydrological wflow model folder-o "./wflow_test_extend_sediment"
: output combined wflow hydrology+sediment models-i wflow_extend_sediment.yml
: setup configuration file containing wflow sediment specific components-d artifact_data
: use the pre-defined artifact_data catalog-vv
: give some extra verbosity (2 * v) to display feedback on screen. Now debug messages are provided.