Model components and methods#

When making a SFINCS model, you need to create multiple input files. With the HydroMT SFINCS plugin, you can easily make these SFINCS model schematizations. This plugin helps you preparing or updating several model components of a SFINCS model such as topography/bathymetry, roughness, infiltration maps and dynamic waterlevel and discharge forcing.

Model components#

The following table provides an overview of which SfincsModel model data component (attribute) contains which SFINCS in- and output files. The files are read and written with the associated read- and write- methods, i.e. read_config() and write_config() for the config component.

For more information about each file, see the SFINCS documentation.

SfincsModel attribute

SFINCS files

config

sfincs.inp

grid

depfile, mskfile, indexfile, manningfile, qinffile, scsfile, smaxfile, sefffile, krfile

subgrid

sbgfile

geoms

obsfile, thdfile, weirfile, drnfile

forcing

bndfile, bzsfile, srcfile, disfile, precipfile, netbndbzsbzifile, netsrcdisfile, netamprfile, netampfile, netamuamvfile

states

inifile, rstfile (not yet implemented)

results

sfincs_his.nc, sfincs_map.nc

Please be aware that the indexfile is not included in the grid dataset. Instead, it is generated during the writing process based on the mskfile, and it is utilized for the purpose of reading grid variables.

Model setup methods#

An overview of the available SFINCS model setup methods is provided in the table below. When using HydroMT from the command line, only the setup methods are exposed. Click on a specific method see its documentation.

General setup methods#

SfincsModel Method

Explanation

setup_config()

Update SFINCS config (sfincs.inp) with a dictionary.

setup_grid()

This component generates a user-defined model grid.

setup_grid_from_region()

This component automatically generates a model grid covering the region of interest with a given resolution.

Grid setup methods#

SfincsModel Method

Explanation

setup_dep()

This component interpolates topobathy (depfile) data to the model grid.

setup_mask_active()

This component generates a mask (mskfile) defining which part of the model grid is active based on elevation criteria and/or polygons.

setup_mask_bounds()

This component adds boundary cells in the model mask (mskfile) based on elevation criteria and/or polygons.

setup_river_outflow()

This component adds boundary cells in the model mask (mskfile) where a river flows out of the model domain.

setup_manning_roughness()

This component adds a Manning roughness map (manningfile) to the model grid based on gridded Manning roughness data or a combinataion of gridded land-use/land-cover map and a Manning roughness mapping table.

setup_constant_infiltration()

This component adds a spatially varying constant infiltration rate map (qinffile) to the model grid.

setup_cn_infiltration()

This component adds a potential maximum soil moisture retention map (scsfile) to the model grid based on a gridded curve number map.

setup_cn_infiltration_with_ks()

This component adds a three layers related to the curve number (maximum and effective infiltration capacity; seff and smax) and saturated hydraulic conductivity (ks, to account for recovery) to the model grid based on landcover, Hydrological Similarity Group and saturated hydraulic conductivity (Ksat).

setup_storage_volume~()

This component adds a storage volume map (volfile) to the model grid to account for green-infrastructure.

setup_subgrid()

This component generates subgrid tables (sbgfile) for the model grid based on a list of elevation and Manning roughness datasets

Geoms setup methods#

SfincsModel Method

Explanation

setup_observation_points()

This component adds observation points to the model (obsfile).

setup_structures()

This component adds line element structures to the model (thdfile, weirfile).

setup_drainage_structures()

This component adds drainage structures (pump, culvert) to the model (drnfile).

Forcing setup methods#

SfincsModel Method

Explanation

setup_waterlevel_bnd_from_mask()

This component adds waterlevel boundary points (bndfile) along model waterlevel boundary (msk=2).

setup_waterlevel_forcing()

This component adds waterlevel forcing (bndfile, bzsfile) from a geodataset (geospatial point timeseries) or a tabular timeseries dataframe.

setup_river_inflow()

This component adds discharge points (srcfile) where a river enters the model domain.

setup_discharge_forcing()

This component adds discharge forcing (srcfile, disfile) from a geodataset (geospatial point timeseries) or a tabular timeseries dataframe.

setup_discharge_forcing_from_grid()

This component adds discharge forcing (srcfile, disfile) based on a gridded discharge dataset.

setup_precip_forcing()

This component adds spatially uniform precipitation forcing from timeseries/constants (precipfile).

setup_precip_forcing_from_grid()

This component adds precipitation forcing from a gridded spatially varying data source (netamprfile).

setup_pressure_forcing_from_grid()

This component adds pressure forcing from a gridded spatially varying data source (netampfile).

setup_wind_forcing()

This component adds spatially uniform wind forcing from timeseries/constants (wndfile).

setup_wind_forcing_from_grid()

This component adds wind forcing from a gridded spatially varying data source (netamuamvfile).

Other setup methods#

SfincsModel Method

Explanation

setup_tiles()

This component generates webmercator index and topobathy tiles for visualization of the SFINCS model.