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"