Versions Compared


  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Edit through the REST API

e Minimum Flow Requirement node is used to ensure that there is a minimum flow rate at a point in a river system to meet various demands (stock, domestic or environmental needs). It is also used to generate transfers between an upstream and downstream storage. This node imposes a constraint which must be met at that point in the river model, even if additional water must be released from a storage. The requirement can be specified as:

  • A single value;
  • A time series using Data Sources;
  • Via a function using the Function Editor;
  • As monthly values in megalitres under Monthly Pattern; or
  • Setting up a rule using Rule Curves (this is described in further detail below).
Figure 1. Minimum flow requirement node

You can enter the monthly pattern manually or load the data from a file. Table 1 shows the format of a comma-separated (*.csv) file for importing monthly pattern data.

Table 1. Minimum Flow Requirement node, monthly pattern (data file format)


Column (comma-separated)





Daily Minimum Requirement (ML)

Rule curves

These allow you to manage releases based on the output of another model component (i.e. a sensor) using a lookup table (Figure 2). The first column in the rule curve table, the trigger, is the output of interest from the sensor, eg. the water volume in a storage. The rest of the columns are the minimum flow requirement (as a flow or volume) given the month and sensor output. The rule curve is linked to the sensor output using the Trigger Function. For example, if $TriggerFunction = $ModelledVar_StorVol, where $ModelledVar_StorVol is a modelled variable equal to the storage nodes' storage volume, then the minimum flow requirement generated will depend on the month and the storage's volume. 

You can enter the rule curve manually or load a *.csv file with the format shown in Table 2.

Table 2. Minimum Flow Requirement node, rule curve (data file format)


Column (comma-separated)


2 … 13




2 … n




desc is a title, it is ignored during import.

month is the month of the current time step, it is ignored during import; it is assumed that column 2 is January, column 3 is February, ..., column 13 is December.

y is the lookup value

value is the result that will be returned for the corresponding month and y. 


Note: Units for the Trigger Function are not specified. These can be changed using the units buttons next to each month. 

The Interpolate checkbox calculates the releases based on an interpolation method. For instance, assume that the output of the trigger function is 3400 in July and the Interpolate checkbox has been enabled. Then, flow will be calculated based on two trigger values in the table (2587 and 3472) for July.

Figure 2. Minimum Flow requirement node, Rule curves

Ordering and ownership

In the ordering phase, when the amount of ordered water expected (ie. forecast) to flow down the river past a minimum flow requirement is less than the requirement, then an order is placed such that the forecasted flow meets the requirement. If orders are more than the value specified by the requirement, no adjustment is made. In the flow phased, orders cannot be adjusted, so where the actual amount of water flowing down the river past a minimum flow requirement is more than forecast, there may be more water than is required to meet orders.

When ownership is enabled, you can define a sharing hierarchy to control how the constraint is apportioned between downstream owners. Refer to Ownership for more information.

Checking constraints

When a minimum flow requirement is enforced, there may be a difference between the amount of water ordered and water released. The differences are recorded by the Recording Manager. For more information, see Identifying Constraints.