Skip to content

Unregulated_User

At a glance…

The unregulated_user node represents a water user whose access is opportunistic. The user diverts water subject to licence conditions to satisfy their demands. If the demand cannot be fully satisfied, this is called a shortfall.

[node.water_harvester]
type = unregulated_user
loc = 20, 30
pump = 20
demand = data.extendeddataset.by_name.unrestricted_demand
ds_1 = my_other_node

Node properties

Property Description
[node.?] (compulsory) Start of node declaration. This says we are creating a node, and also defines the name of the node. Node naming conventions are discussed at . Example: [node.urban_user]
type (compulsory) The node type, which is “unregulated_user” in this case. type = user
loc (compulsory) The location of the node in cartesian coordinates. Example: loc = 20, 30
demand (optional) Demand data [ML]. Example: demand = data.extendeddataset.by_name.urban_demand
pump (optional) Use this to limit the amount of water the user can extract each timestep. Example: pump = 86.4
flow_threshold (optional) Use this to leave a certain amount of flow in the river (not extract it). This can be used to set flow conditions as may be associated with unregulated licence conditions. Example: flow_threshold = 100.0
annual_cap (optional) Use this to set an annual diversion limit. Specify the cap volume (ML), and the month in which the annual cap resets. Example: annual_cap = 2250, 7
demand_carryover (optional) Turn on/off demand carryover. This behaviour is off be default. Set this to “true” if you want the user to carryover unmet demands to the following timestep. Example: demand_carryover = true And if you want the carryover to reset each year, then also specify the month when that should happen. Example: demand_carryover = true, 7
ds_1 (optional) Name of the downstream node. This property defines a downstream link. Inflow nodes may only have 1 downstream link. Example: ds_1 = my_other_node
account (...)

Results associated with this node

Result Description
dsflow Downstream flow [ML]
usflow Upstream flow [ML]
ds_1 Downstream flow on link ds_1 [ML]
ds_1_order Order on link ds_1 [ML]
order Zero (0) for unregulated users
order_due Zero (0) for unregulated users
demand Demand at this node [ML]
diversion Diverted volume [ML]
pump Pump capacity value [ML] which may vary due to functions
flow_threshold Flow threshold value [ML] which may vary due to functions
demand_carryover Total demand carried over to the next timestep [ML].

How the node works

Demands and diversions must be positive. The user node extract flows to meet the demand as specified in the user node.

Pump capacity

Flow available for diversion is limited by the specified pump capacity.

available=min(usflow,pump capacity)

Flow threshold

available=max(usflow−threshold,0)

Annual cap

Limits diversions on an annual basis. Diversion accounting starts on the first timestep of the specified month.

Demand carryover

If demand carryover is allowed, then unmet demands will be carried forward with the hope of satisfying them in the next timestep. If a reset month is been specified, the carryover will be reset to 0 at the start of the first timestep on that calendar month each year.

Diversion

diversion=min(usflow,demand)

dsflow=usflow−diversion

References

None.