Skip to content

Order_Control

At a glance…

The order_control node allows the modeller to manipulate orders at a point in the network. This includes setting the orders (replacing the values) or applying minimum or maximum values, using dynamic expressions.

[node.fish_passage_demand]
type = order_control
loc = 20, 30
min_order = if(sim.month >= 6 && sim.month <= 8, 50, 0)
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.walker_confluence]
type (compulsory) The node type, which is “gauge” in this case. type = gauge
loc (compulsory) The location of the node in cartesian coordinates. Example: loc = 20, 30
min_order (optional) A dynamic expression setting the minimum value for the order at this point in the network. Example min_order = data.file_csv.by_index.1
max_order (optional) A dynamic expression setting the maximum value for the order at this point in the network. Example max_order = data.file_csv.by_index.1
set_order (optional) A dynamic expression setting the order at this point in the network. This replaces the order value completely. Example set_order = data.file_csv.by_index.1
delay_order_steps (optional) This property allows the modeller to delay downstream orders by the specified number of timesteps. This is an advanced feature allowing the modeller to manually delay orders on regulated pathways if they would otherwise deliver too early. Example delay_order_steps = 2
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

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 Orders on the ds_1 link [ML]
min_order Value of the min_order property [ML]
max_order Value of the max_order property [ML]
set_order Value of the set_order property [ML]
order The order sent upstream [ML]
order_due The order previously sent which is due this timestep [ML]

How the node works

If the modeller has specified set_order, then this value is ordered this timestep regardless of the downstream orders. In this case, this is all the node does.

Otherwise, if this modeller has specified delay_order_steps, then the downstream orders are lagged by this many steps. The downstream orders are subsequently subject to bounds specified by min_order and max_order . The min order functionality is useful for implementing environmental demands (or other non-consumptive demands). The max order functionality is useful for implementing operational constraints in the regulated network.

References

None.

Changelog

Formerly known as “Order_Constraint” up to Kalix v0.3.2.