Objects
Canal
Canal Flow Solution
An iterative, modified bisection algorithm has replaced the previous use of the Newton-Raphson Method when solving for canal flow. Testing has shown the new method to be more stable, quicker to converge and to have smaller error in the final calculation of Canal Flow. Full details regarding the new method can be found Solve given Elevation 1, Elevation 2 in Objects and Methods.
The new method requires that the slot minimum and maximum in the Pool Elevation slot configuration be set for both linked reservoirs (previously only required if the linked reservoir was a Sloped Power Reservoir). Also it is recommended that the slot convergence value in the slot configuration for all series slots on the Canal object be set to 0.00001 Percent. The quality of the Canal solution is sensitive to this slot convergence, and setting the slot convergence to this recommended value can significantly improve the quality of the solution.
The new method will produce model differences as the new solution will tend to converge on slightly different values than the old solution.
Power Reservoir
Peak Power Equation with Off Peak Spill
The Power Plant Cap Fraction slot was added to the Peak Power Equation with Off Peak Spill method in the Power Calculation Category. If the slot value is not between 0 and 1, the run will abort. If no value is input, the Power Plant Cap Fraction defaults to 1.
Also, a correction was made to how Unregulated Spill gets incorporated into the calculation of Tailwater Elevation, Operating Head and Peak Release. These changes could produce different model results. Full details about this method can be found Peak Power Equation with Off Peak Spill in Objects and Methods.
Peak Power Equation
A correction was made to how Spill and Power Plant Cap Fraction get incorporated into the calculation of Tailwater Elevation, Operating Head and Peak Release. Also, the method previously could return a non-zero value for Power when Outflow was zero (though Energy was always zero when Outflow was zero). Now Power will always be zero if Outflow is zero. These changes could produce different model results. Full details about this method can be found Level Power Reservoir in Objects and Methods.
Reach
Local Inflow Solution Direction methods
A new method, Calc Local Inflow or Solve Downstream was added to the Local Inflow Solution Direction category. This method enables the two following dispatch conditions:
• solve for Outflow given Inflow and Local Inflow
• solve for Local Inflow given Inflow and Outflow
Reach Kinematic Routing Method
In the Kinematic routing method, flow at a given segment is, in part, a function of the celerity (wave velocity) at that segment. In the finite difference approximation, the celerity used in this calculation was based on the flow at the previous timestep. Now celerity is calculated using the average of the previous timestep flow and the current timestep flow at the upstream segment. This improvement reduces the error in the mass balance calculation that is a result of using a finite difference approximation. Also, a correction was made in the calculation of Distributed Volume Output. These changes will produce differences in model results when this method is used. Details on this method can be found Kinematic Improved in Objects and Methods.
Reach Default Routing Method
The default method for the Routing category on Reach objects is now No Routing. Previously the default was noMethod, which required you to select one of the other Routing methods to avoid receiving an error message. Existing models will not be affected.
Thermal Object
Calculate Block Economic Value: Number of Hydro Blocks slot
A new scalar slot, Number of Hydro Blocks, was added to the Calculate Block Economic Value method. The value in this slot should be equal to the number of columns with valid values in the Hydro Block Costs slot. If Number of Hydro Blocks is greater than the number of Hydro Block Costs columns with valid values, the run will abort with an error message. The addition of this slot allows for more useful diagnostic messages to be returned when this method is used.
Revised: 08/02/2021