Model Run Mechanism
To compute both regulated and unregulated flows, two simulations are required. This section describes an approach for USACE‑SWD.
• Computation of flows for a fully unregulated system. Any model can be configure to compute unregulated flows by simulating the system without the effects of the reservoirs in a separate run using scripts. Snapshots will be used to compare results.
• Computation of flows for a partially unregulated system. A subset of the reservoirs can be disabled to represent a partially unregulated system. This will allow the user to make a run with the partially regulated system using Rulebased Simulation. Snapshots will be used to compare results.
Although these two applications are similar and use the same approach, they will use different scripts. The fully unregulated system is essentially a pure simulation with no rules needed. For the partially unregulated system, rules are necessary and those rules and the flood control algorithm must know how to deal with a disabled reservoir. The partially unregulated run requires the user to select or describe what they want to model, so is more complex and warrants a different script.
The following sections describe the design for these two approaches
Computation of Flows for a Fully Unregulated System
When you want to compute the flows at any point in the system without the effect of any reservoir, two simulations will be run. The first run computes the unregulated flows, the second computes the standard regulated flows using rulebased simulation. Results can be analyzed using snapshots. Simple scripts will be used to modify the system and make the runs.
Following is the conceptual approach.
a. Set a method on each reservoir indicating it should Pass Inflows, as described above.
b. Set the run controller to Simulation.
c. Run the model. With the new method, the reservoirs will still forecast hydrologic inflows, but no other physical processes will be made. When the reservoirs dispatch, they will set
, thus propagating the flows downstream.
d. Create snapshots of desired slots.
Figure 4.2
2. You could then look at the results if desired.
3. Compute regulated flows by executing a script that does the following.
a. Set the method on each reservoir to its normal regulated mode (None method in the Disable Reservoir Processes category).
b. Set the run control to Rulebased Simulation.
c. Load the RBS ruleset set if necessary.
d. Run the model.
4. At this point, the regulated results are in the objects and slots. They can be compared with the snapshots from the unregulated run.
The process above assumes two scripts:
Step 1. and
Step 3.; these could be combined into one script that fully automates the runs if desired. With this approach it is easy for the user to run just the regulated system, the unregulated system or both.
Computation of Flows for a Partially Unregulated System
Computation of flows for a partially unregulated system will be performed in a separate run and results can be analyzed using snapshots. Again, scripts will be used to modify the model and make the run. Following is the conceptual approach for a POR model.
1. Execute a script that does the following to “Unregulate” specific reservoirs.
b. Disable any rules that reference the reservoir (In particular, the Surcharge rule for the disabled reservoir must be disabled).
c. Run the model in rulebased simulation. The unregulated reservoir will still do its hydrologic inflow forecasting, but no other physical processes. When it dispatches, it will set
, thus propagating the flows downstream.
d. Take Snapshots of key results to preserve their values.
2. Execute a script that does the following to undo the script above and impose the “Regulation” again.
a. Set a method on the reservoir indicating it is back to its normal “Regulated”.
b. Enable any rules that reference the reservoir (Surcharge).
c. Make a run model.
3. Compare the resulting flows with the snapshots from the unregulated run.