The Release Function rule type is one of the two most flexible rule types available in ResSim (the other being the Downstream Control Function rule). Most of the rules you create for your reservoirs will be Release Function rules.

With this rule type, you can define a wide array of "function of" rules—meaning rules whose desired release (limit) is a function of the current date or pool elevation or inflow or pretty much whatever you can think of. A rule of this type can be assigned to any of the release elements — the reservoir (pool), the dam, an outlet, or an outlet group. And, this rule allows you to specify the maximum, minimum, or specified flow to be released through the release element.

The simplest Release Function rules are defined as a function of Date. A function-of-date release rule describes a seasonally-varying release limit whose seasonal pattern, which always starts on 1 January, repeats annually.

A constant release rule is usually specified as a function-of-date rule where only one date and its associated value is entered in the function table.

The more complex Release Function rules are defined as a function of a time-series variable. The time-series variable types are internal (model) variables, external variables, and state (scripted) variables.

A function-of-external-variable release rule is a little more abstract than a function-of-model-variable rule simply because the variable itself is provided as input and is not computed by ResSim. The variable and its relationship to the release is limited only by your imagination and the time-series data available.

Since state variables are user-defined variables whose value is computed in each timestep of the simulation by a Jython script written by the modeler, a Function of State Variable Release Function rule could represent almost any operating constraint.

Here are some example release function rules that could be found in a water control manual or reservoir regulation plan:

  • "The maximum release from the reservoir during the growing season is 6,500 cfs and 8,500 cfs during the non-growing season" is an example of a seasonally-varying operating constraint. This can be represented with a function-of-date release rule.
  • "The reservoir must release at least 3 cfs or 10 percent of inflow up to a maximum of 100 cfs, whichever is greater" is an example of a more complex operating constraint. Since inflow to the reservoir is one of several model variables computed by ResSim, this constraint could be defined as a function-of-model-variable release rule.
  • "During spawning season, releases from the reservoir should be guided by Table 7.3, which relates the forecasted maximum daily air temperature at the spawning grounds to releases from the low level outlets" is a more abstract complex operating constraint that could be modeled with a function-of-external-variable release rule. Since ResSim cannot compute or forecast air or water temperature, a time-series record that describes the predicted or observed values for that variable would be required in order to determine each timestep's the release limit based on the function you define.
  • "The reservoir must release at least 4800 cfs unless system drought operations have been declared whereby the minimum release is 4000 for drought level 1, 3800 for drought level 2, and 3600 for drought level 3" is an example of an operating constraint that would need a state variable and an associated release function rule to represent it. The state variable would calculate the current drought level and the rule would use that value to determine the rule's desired release limit for each timestep.

To define or edit a Release Function rule:

  • Create a new rule as described in "Creating New Rules". Be sure to select Release Function for the Rule Type in the New Operating Rule dialog.
  • Or, if necessary, select the Release Function rule you want to define/edit from the Zone-Rules Tree.

The edit panel of the Operations tab of the Reservoir Editor will display the Release Function Rule editor ("Figure: Reservoir Editor - Operations Tab - New Release Function Rule").

Figure: Reservoir Editor - Operations Tab - New Release Function Rule

The following sections describe each field, option, or attribute of the Release Function Rule editor and how to define the associated data.