Setting up a coastal model

To build a coastal flood model with h (waterlevel) and p (precipitation) but no q (discharge) boundary conditions, the model region is typically defined by a bounding box, see example below, or a geometry file.

A typical workflow to setup a coastal model schematization is provided in the sfincs_coastal.ini and shown below. Each section corresponds to one of the model Setup components and the [global] section can be used to pass additional arguments to the SfincsModel. initialization. An example is provided in Examples section.

hydromt build sfincs /path/to/model_root "{'bbox': [xmin, ymin, xmax, ymax]}" -i sfincs_coastal.ini -vv
[setup_config]
tref = 20100201 000000
tstart = 20100201 000000
tstop = 20100210 000000
alpha = 0.5
zsini = 0.5

[setup_topobathy]
topobathy_fn = merit_hydro       # topobathy basemaps ['elevtn']
crs = utm                       # model CRS (must be UTM zone)

[setup_merge_topobathy]
topobathy_fn = gebco            # bathymetry ['elevtn']
mask_fn = osm_coastlines        # sea polygon describing where we want to use the new data
offset_fn = dtu10mdt_egm96      # mean dynamic topography to account for the difference in vertical datum between the current and new data
merge_method = first            # use valid new data where the current data has invalid (nodata) values
merge_buffer = 2                # buffer (cells) between elevation and bathymetry data filled with 'linear' interpolation

[setup_mask]
elv_min = -5                    # minimum elevation for valid cells

[setup_cn_infiltration]
cn_fn = gcn250                  # curve number source
antecedent_runoff_conditions = avg # for gcn250: {'dry', 'avg', 'wet'}

[setup_manning_roughness]
lulc_fn = vito                  # land-use land-cover source
map_fn = None                   # mapping file. read from hydromt/data/lulc/{lulc_fn}_mapping.csv if None

[setup_bounds]
btype = waterlevel              # boundary type ['waterlevel', 'outflow']
mask_fn = osm_coastlines        # sea polygon

[setup_h_forcing]
geodataset_fn = data/gtsm_locations.csv  # waterlevel gauge locations
timeseries_fn = data/gtsm_timeseries.csv  # waterlevel time series 
buffer = 1e4                    # buffer around model region to select gauges

[setup_p_forcing_from_grid]
precip_fn = era5_hourly         # gridded precipitation data ['precip']
dst_res = None                  # output resolution (m)
aggregate = True                # if True return the aggregated mean as spatially uniform precip