Model Methods#

As mentioned before, each component of the SFINCS model has a read, write and a create() method. The create() method is used to generate or update the component data from external data sources, such as GIS data or other model outputs. An overview of the most used SFINCS model methods is provided in the tables below. When using HydroMT from the command line, only the create methods are exposed. Click on a specific method to see its documentation.

General methods#

SfincsModel Method

Explanation

read()

Read SFINCS model component from file.

write()

Write SFINCS model component to file.

build()

Build the complete SFINCS model by creating all components from yaml file.

update()

Update SFINCS model component with new data from yaml file.

plot_basemap()

Plot a basemap of the SFINCS model grid with optional components overlayed.

plot_forcing()

Plot time series of the forcing data for the SFINCS model.

Config methods#

SfincsModel Method

Explanation

update.config

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

Grid create methods#

SfincsModel Method

Explanation

grid.create

This component generates a user-defined model grid.

grid.create_from_region

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

elevation.create

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

mask.create_active

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

mask.create_boundary

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

roughness.create

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.

infiltration.create_constant

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

infiltration.create_cn

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

infiltration.create_cn_with_recovery

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).

storage_volume.create

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

subgrid.create

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

Geometries create methods#

SfincsModel Method

Explanation

observation_points.create

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

cross_sections.create

This component adds cross-sections to the model (crsfile).

thin_dams.create

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

weirs.create

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

drainage_structures.create

This component adds drainage structures (pump, culvert, one-way-valve) to the model (drnfile).

Forcing create methods#

SfincsModel Method

Explanation

water_level.create

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

water_level.create_boundary_points_from_mask

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

water_level.create_timeseries

This component adds synthetic waterlevel timeseries (bzsfile) to existing waterlevel boundary points (bndfile).

discharge_points.create

This component adds discharge source points (srcfile) from a geodataset (geospatial point timeseries) or a tabular timeseries dataframe.

discharge_points.create_from_grid

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

discharge_points.create_timeseries

This component adds synthetic discharge timeseries (disfile) to existing discharge source points (srcfile).

rivers.create_inflow

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

precipitation.create_uniform

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

precipitation.create

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

pressure.create

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

wind.create_uniform

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

wind.create

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