Dispatch Methods
Each object in RiverWare has one or more Dispatch Methods. The Dispatch Methods represent the various combinations of inputs and outputs which are valid states for solving the object’s physical process equations. Each Dispatch Method has a list of Dispatch Conditions, a set of slots with required known values and slots with required unknown values. When the required knowns and unknowns are both satisfied, the Dispatch Method can execute.
Table 1.1 lists some Dispatch Methods and their conditions for the Level Power Reservoir object.
Note: For all Dispatch Methods to be able to solve, the previous storage must also be known. This is not in the Dispatch Conditions, but is checked when the object solves.
Table 1.1
Method | Knowns | Unknowns |
---|
Solve given Inflow, Outflow | Inflow Outflow | Storage Pool Elevation |
Solve given Inflow, Storage | Inflow Storage | Pool Elevation Outflow Energy |
Solve given Outflow, Storage | Outflow Storage | Pool Elevation Inflow |
Solve given Inflow, Pool Elevation | Inflow Pool Elevation | Storage Outflow Energy |
Solve given Outflow, Pool Elevation | Outflow Pool Elevation | Storage Inflow |
Solve given Outflow, Storage | Outflow Storage | Pool Elevation Inflow |
Solve given Energy, Storage | Energy Storage | Pool Elevation Inflow |
Solve given Energy, Pool Elevation | Energy Pool Elevation | Storage Inflow |
Solve given Energy, Inflow | Energy Inflow | Pool Elevation Storage |
User Method-dependent Dispatch Methods
Dispatch Methods are registered with the controller and added to the method table at the beginning of each run. The method table contains a list of all of the potential dispatch methods for an object. Sometimes, the decision as to which Dispatch Methods to add to the method table depends on the selected User Methods. For example, the Dispatch Method listed in
Table 1.2 is only added to the dispatch table when the Solve Hydrologic Inflow user method is selected.
In this case, knowing the Inflow, Outflow and Storage does not make the object overdetermined. As long as the Hydrologic Inflow is unknown, the object can dispatch the method to solve for it.
Table 1.2
Method | Knowns | Unknowns |
---|
Solve given Inflow, Outflow, Storage | Inflow Outflow Storage | Pool Elevation Hydrologic Inflow |