CADSWES Maintenance Accomplishment Report Compilation -- July 2017
Phil Weinstein, edit 10-10-2017, initial writing in progress
July 2017 Maintenance Highlights:
Report contributors:
(II) RiverWare Software Maintenance
|
The following releases were generated this month:
Release 7.1
The RiverWare 7.1 Release was sent to all users on 7/12/2017. This involved writing release notes, regenerating the help PDFs, updating the builds areas, creating the release executable, updating the website, and sending out the release notification. Release notes can be found on the RiverWare.org website.
RiverWare 7.1.1 (7-26-2017) Release Notes:
Database DMI on/off States:
Inline Power - Specify Units Generating: Unit Turbine Release is now included
New Reservoir Diversion Power Categories:
Bugs
|
The following eleven bugs were fixed:
*Bug 5973, more information: In our upgrade from Qt 4.8.5 to Qt 5.5.1, a new Qt bug was causing a dialog to be raised each time the user moused-over a widget having a Tool Tip (popup help message). This bug (QTBUG-39147) was only recently fixed, for Qt 5.9.2. But we were able to apply that fix to Qt 5.5.1 source code, and rebuild that one Qt component. (We did this only for the 64-bit distribution of RiverWare; not the 32-bit distribution).
Additionally, analysis was done on the following bug:
Inline Power Specify Units Generating Method:
A new method, Specify Units Generating, was added to the Inline Power category on the Inline Power object. In the original version of this method implemented for RiverWare 7.1, the user specifies the generating capacity for each unit in the Unit Capacity slot (table slot) and the fraction of capacity at which each unit is generating in the Unit Generation Fraction slot (agg series slot). The method then calculates the Unit Power and Unit Energy (agg series slots) as well as the total plant Power and Energy. For the RiverWare 7.1.1 patch release, a further enhancement was added to the method to allow the user to optionally specify the unit turbine capacity in the Unit Capacity table slot. The user can then optionally specify the Unit Turbine Release (agg series slot) and let the method calculate the Unit Generation Fraction and Unit Power or specify the Unit Generation Fraction and let the method calculate Unit Turbine Release and Unit Power. If neither Unit Turbine Release nor Unit Generation Fraction is specified, then the Unit Generation Fraction defaults to 1, and the unit operates as full capacity. The method now also calculates total plant Turbine Release and Bypass in addition to total plant Power and Energy. Documentation for the new method was added to the RiverWare Help for release 7.1 and patch release 7.1.1.
Reservoir Diversion Power, Tailwater and Power Bypass Methods:
Three new categories were added to the Reservoir objects to allow for the modeling of power on the reservoir Diversion. One new method was added in each category. These new methods and categories (described below) were implemented for the RiverWare 7.1.1 patch release.
The Diversion Power Efficiency Curve method in the Diversion Power category is analogous to the Plant Efficiency Curve method on the primary power plant. It uses a 3-D table to calculate Diversion Power as a function of Diversion Turbine Flow and Diversion Operating Head. Diversion Operating Head is calculated as the difference between the average Pool Elevation and the Diversion Tailwater Elevation. The Diversion Power Efficiency Curve method is more limited than the existing Plant Efficiency Curve method. It does not allow Energy or Power to be input or set by rules. It does not include Plant Power Limit or Plant Failure methods.
The Diversion Base Value Plus Lookup method in the Diversion Tailwater category is analogous to Base Value Plus Lookup Table method for the standard Tailwater category. Diversion Tailwater is a function of Diversion (from the Diversion Tailwater Table slot) added to the Diversion Tailwater Base Value, which can be linked or defaults to zero if not input or set by rules.
The Diversion Power Bypass Capacity Table method in the Diversion Power Bypass category is analogous to the Regulated Spill method in the standard Spill category. If not input or set by rules, Diversion Power Bypass is set to Diversion minus Diversion Turbine Flow. It is limited to the max bypass interpolated from the Diversion Power Bypass Table (analogous to the Regulated Spill Table). It is not permitted for both Diversion Turbine Flow and Diversion Power Bypass to be specified (input or set by rules).
The method in the new Diversion Power category is called from each of the reservoir dispatch methods, at the end of the dispatch method. When the Diversion Power method is called, Diversion is already known. The new methods do nothing to affect mass balance or dispatching. They are calculated "after the fact." The Diversion Power method calls the Diversion Tailwater and Diversion Power Bypass methods.
Documentation for the new Diversion Power, Tailwater and Power Bypass categories and methods was added to the RiverWare Help for the 7.1.1 patch release.
Changes to RiverWare model file numeric precision:
Last month (in June 2017), the writing of RiverWare model files was modified with the goal of mitigating the risk of loss of information when floating point values. Most floating point values are now written with full precision (17 digits). Through RiverWare 7.1 the default precision was 12 digits, so in order to balance the potential increase in file size due to the general increase in precision, users can now choose to use a lower precision for simulation results (defined series slot values with the Output or Rule flag). As part of this work the Model Save Confirmation dialog was modified in accordance with the new options.
In July 2017, further testing was conducted and addition refinements to the Model Save Confirmation dialog were designed.
Complete OK/Cancel/Apply button order on remaining dialogs:
We had recently standardized the order of common buttons along the bottom of most RiverWare dialogs. In July, we finished four remaining dialogs (or panels) which had some tricky issues in making this change:
- Geospatial View Canvas Config
- Diagnostics Settings
- Plotting Axis Config
- GUS (object/account/slot selector) pane
The regression tests continue to be maintained on a daily basis. This involves updating the regression tests to exercise new developments in the code. Also, as new code is added to the development area, the model comparisons performed in the nightly regression tests usually show differences (for example, because a new method category may have been added). When this occurs, the regression tests need to be updated to reflect the current state of the development area so model comparisons do not fail. In addition, every week, the daily history of each regression test is analyzed to determine if the run time or model size has significantly changed because of new development.
In July the regression tests were watched closely during the 7.1 release period. They were updated with new version numbers and histories were monitored closely.
None reported for July 2017.
--- (end) ---