Description
This example model illustrates the operation of a collection of real hydropower dams along the Missouri River in Great Falls, Montana. The objective of this particular exercise is to evaluate the effects of different operations scenarios on the water flow through the system, on requirements for minimum flows through the system, on reservoir pool elevations, and on the generation of electrical power, given various constraints and simplifying assumptions. This is a real world example, used in an Environmental Impact Statement that was required in order to evaluate the effects of proposed changes in the Great Falls hydropower dam operations under the constraint that minimum flows for fish populations be maintained in the Missouri River below the dams.
The principal constraints of the operations are:

A minimum flow of water is to be maintained at the outlet of the last dam (Morony) in order to establish sufficient flow for fish populations. This flow rate can be set by the user in the OperationsControl dashboard, but in the EIS it was assumed to be 5000 cfs.

Otherwise, runoftheriver flows are to be maintained for the system, meaning that the flow downstream of the last dam into the Missouri river must equal the flow from upstream.

Pool elevations for two of the reservoirs (Black Eagle and Ryan) are to be kept constant, and the pool of Rainbow is to be kept within a narrow range, but the elevations of the Cochrane and Morony reservoirs may fluctuate (in coordination) in order to maximize power output to meet peak power demands (this is called peaking operation).
The principal modeling assumptions are:

The volume of water through the system is conserved. As a basic tenet of physical modeling, the assumption of the conservation of mass is adopted.

No flow routing was used between or within the reservoirs. This simplification is justified since the reservoirs are very close to one another and are relatively small in length.

Evaporation, precipitation, bank storage, and other gains or losses within each reservoir were ignored (except for inflow from Giant Springs into Rainbow). This simplification is justified since the reservoirs have a relatively small surface area and are either kept at a constant pool elevation or have relatively impermeable banks.

Flow through the Great Falls developments is set by the inflow to the upstream reach of the Missouri River, above Black Eagle reservoir plus inflow from Giant Springs.

Inflow into Rainbow from Giant Springs is assumed to be stochastic within a narrow range. This assumption is necessary since there is a lack of data to quantify the Giant Springs inflow, and is justified since the inflow is relatively small compared to the flow in the Missouri River (about 5% of the average historical flow).

All reservoirs have a level pool, with no wedge storage. This simplification is justified since the reservoirs are relatively small in length.

Outflow from a given reservoir is given preference to the turbines up to the maximum turbine capacity, with the remainder being spilled.

Net head across the turbines is constant.

Turbine flow is independent of pool elevation.

The power coefficients (MW/cfs) do not vary with pool elevation. This assumption was necessary since no power curves (power production as a function of flow) were provided by the licensee.
The duration of the simulation is constrained by available river flow data. The model is populated with Missouri River discharge data measured at an upstream USGS gauge, beginning on 1 August 1957, and continuing 50 years through 31 July 2006. While all 50 years may be chosen for the model simulation (in order to better define longterm averages, for example), the important variations in discharge and its effects on hydropower operations can be seen in a single year. Setting a model duration over more than a few years results in graphs that are crowded with data and difficult to read.
Note also that since operations vary by the hour that the most appropriate time step is one hour, or 0.041666667 days.