Different model configurations

Enabling snow and glacier processes

[model]
snow__flag = true
snow_gravitional_transport__flag = true
glacier__flag = true

[input.static]
atmosphere_air__snowfall_temperature_threshold = "TT"
atmosphere_air__snowfall_temperature_interval = "TTI"
snowpack__melting_temperature_threshold = "TTM"
snowpack__degree-day_coefficient = "Cfmax"
snowpack__liquid_water_holding_capacity =  "WHC"
glacier_surface__area_fraction = "wflow_glacierfrac"
glacier_ice__degree-day_coefficient = "G_Cfmax"
glacier_ice__melting_temperature_threshold = "G_TT"
"glacier_firn_accumulation__snowpack~dry_leq-depth_fraction"  = "G_SIfrac"
glacier_ice__initial_leq-depth = "wflow_glacierstore" # initial glacier liquid-water equivalent depth

[state.variables]
"snowpack~dry__leq-depth" = "snow"
"snowpack~liquid__depth" = "snowwater"
glacier_ice__leq-depth = "glacierstore"

Enabling reservoirs

[model]
reservoir__flag = true

[input]
reservoir_area__count = "wflow_reservoirareas"
reservoir_location__count = "wflow_reservoirlocs"

[input.static]
reservoir_surface__area = "ResSimpleArea"
"reservoir_water_demand~required~downstream__volume_flow_rate" = "ResDemand"
reservoir_water_release-below-spillway__max_volume_flow_rate = "ResMaxRelease"
reservoir_water__max_volume = "ResMaxVolume"
"reservoir_water~full-target__volume_fraction" = "ResTargetFullFrac"
"reservoir_water~min-target__volume_fraction" = "ResTargetMinFrac"

[state.variables]
reservoir_water__instantaneous_volume = "volume_reservoir"

Enabling lakes

[model]
lake__flag = true

[input]
lake_area__count = "wflow_lakeareas"
lake_location__count = "wflow_lakelocs"

[input.static]
lake_surface__area = "lake_area"
lake_water__rating_curve_coefficient = "lake_b"
lake_water__rating_curve_exponent = "lake_e"
lake_water__rating_curve_type_count = "lake_outflowfunc"
lake_water__storage_curve_type_count  = "lake_storfunc"
lake_water_flow_threshold-level__elevation  = "lake_threshold"
lake_water_surface__initial_elevation = "lake_waterlevel"

[state.variables]
lake_water_surface__instantaneous_elevation = "waterlevel_lake"

Enabling floodplain routing

As part of the local inertial model for river flow.

1D floodplains

[model]
river_routing = "local-inertial"
floodplain_1d__flag = true

[input.static]
floodplain_water__sum_of_volume-per-depth = "floodplain_volume"
floodplain_water_flow__manning_n_parameter = "floodplain_n"

[state.variables]
floodplain_water__instantaneous_volume_flow_rate = "q_floodplain"
floodplain_water__instantaneous_depth = "h_floodplain"

2D floodplains

[model]
river_routing = "local-inertial"
land_routing = "local-inertial"

[input.static]
river_bank_water__elevation = "RiverZ"
land_surface_water_flow__ground_elevation = "FloodplainZ"

[state.variables]
land_surface_water__instantaneous_depth = "h_land"
land_surface_water__x_component_of_instantaneous_volume_flow_rate = "qx_land"
land_surface_water__y_component_of_instantaneous_volume_flow_rate = "qy_land"

Enabling water demand and allocation

The model types sbm and sbm_gwf support water demand and allocation computations, in combination with the kinematic wave and local inertial runoff routing scheme for river and overland flow.

# example of water demand and allocation input parameters as cyclic data
[model.water_demand]
domestic__flag = true     # optional, default is "false"
industry__flag = true     # optional, default is "false"
livestock__flag = true    # optional, default is "false"
paddy__flag = true        # optional, default is "false"
nonpaddy__flag = true     # optional, default is "false"

[input.cyclic]
"land~domestic__gross_water_demand_volume_flux" = "dom_gross"
"land~domestic__net_water_demand_volume_flux" = "dom_net"
"land~industry__gross_water_demand_volume_flux" = "ind_gross"
"land~industry__net_water_demand_volume_flux" = "ind_net"
"land~livestock__gross_water_demand_volume_flux" = "lsk_gross"
"land~livestock__net_water_demand_volume_flux" = "lsk_net"
"land~irrigated-paddy__irrigation_trigger_flag" = "irrigation_trigger"
"land~irrigated-non-paddy__irrigation_trigger_flag" = "irrigation_trigger"

[input.static]
land_water_allocation_area__count = "allocation_areas"
land_surface_water__withdrawal_fraction = "SurfaceWaterFrac"
"land~irrigated-paddy_area__count" = "paddy_irrigation_areas"
"land~irrigated-non-paddy_area__count" = "nonpaddy_irrigation_areas"

# required if paddy is set to "true"
[state.variables]
"land_surface_water~paddy__depth" = "h_paddy"
Back to top