Release Notes Version 6.5
Special Attention Notes
Following are special attention notes, indicating that:
• Functionality has changed that requires you to update models, or
• Results may differ.
If you have any questions, contact RiverWare-support@colorado.edu.
Category and Method Name Changes
Modifications were made to many category and method names on objects and accounts in order to adhere to a standard naming format. See the appendix,
“Appendix - Category and Method Name Changes”, for a complete list of the changes. Expect many warning messages notifying you of the name changes the first time a model is loaded in RiverWare 6.5. There should be no change in model behavior or results.
Heron Inflow calculation
If you use the
Heron Inflow calculation
Reservoir Account Slot Inflow method, see
“Heron Inflow calculation” for model changes and updates.
K Factor Unit Type
The unit type was changed for the K Factor slot in the Pan and Ice Evap reservoir method from LengthPerTemperature_F to VelocityPerTemperature_F. These are automatically updated on model load and the scheme is set to display previously shown units. RPL expressions that reference this slot must be updated or unit type inconsistencies will occur.
Workspace Background Colors
Previously configured background colors are no longer used, you must reset them.The color will be saved in the model file instead of a user setting. See
“Background Colors Saved with Model File” for more information.
Modifications to Water User and Agg Diversion Site Dispatch conditions
The dispatch conditions when solving given
Diversion for these two objects was modified. Under certain situations, you could have additional results, but existing results should not be modified. Also, the error checks are less restrictive, so a run might succeed when it previously failed. See
“Dispatch methods” for more information on the Water User.
Accounting
Open Account Dialog
The Methods tab on the Open Account dialog now supports display of method categories in a default order. In this order, dependent categories/methods appear below the superior categories. A new Order menu appears below the list.
Water Rights Solver
Improved Performance
The following improvements were made to the Water Rights allocation solver for performance improvements:
• The copying of values to cloned accounts is limited to only those that are needed in the water rights solution.
• The equal priority water right algorithm does not solve for accounts with no demand.
• Diversion accounts solution mechanism was improved to not solve unnecessarily.
• Accounts are prevented from solving recursively.
In the test model (22 year daily planning model), the total run time was reduced by 45%.
Negative Flow Appropriation
You can now allow negative flows in the water rights solver. This includes a new category,
Negative Flow Appropriation and method,
Allow Negative Flows, on the passthrough account on reaches, reservoirs and control points. When this method is selected, a new slot
Temp Available Before Appropriation is added. It tracks the available water before each right is visited. If there are negative flows, upstream allocations cannot make a downstream senior more negative, but doesn't try to fix the negatives. See
“Negative Flow Appropriation” for more information.
Batch Mode
Output to Console
In batch mode, the command line keyword console was added to the --log argument. Using --log console shows a console window when RiverWare sends text to 'standard out' or 'standard error' when no log file is specified. Either --log console or --log <file> (OR no --log argument) can be used.
RequireVersion RCL Command
In batch mode, the following RCL command was added:
RequireVersion <major>.<minor>[.patch]This command tests the version of RiverWare. It fails with an error if the current version is less than the specified version. See
“RequireVersion” in Automation Tools for more information.
Data Management Interface
HDB Server
The HDB Server has been eliminated and Oracle connect code for HDB is now incorporated into RiverWare. The communications with HDB are faster and more robust. As a result, some configuration settings for HDB datasets are no longer relevant and have been removed. More information on the HDB interface can be found
“HDB Datasets” in Data Management Interface (DMI).
Control File-Executable - Limit Output to Run Range
Control File-Executable DMIs can now be limited to only write output data for the run range (Start Timestep to Finish Timestep). Check the Limit Output to Run Range toggle on the DMI Editor.
Diagnostics
Output Window
Filter Statistics
A Show Filter Statistics option was added to the Settings menu. When enabled, a single-line filter statistics panel appears below the message list. This indicates the total number of diagnostics messages and how many are shown and hidden due to message filtering.
Open Dialogs from Context
The Diagnostics Output Window now supports the following three right-click context menu operations:
• Open Context Object: Open the dialog for the listed Object, Account, Slot, RPL Set, Rule, Goal, or Group.
• Copy Context Timestep: Copy the datetime to the clipboard
• Global Scroll to Context Timestep: Global scroll to the datetime
The Diagnostic Output Window's Message Popup Dialog previously supported an Open Selected Named Item... button which opened up the dialog for that object, account or slot. This capability was extended to support RPL Objects (Sets, Groups, Blocks, User-defined Functions).
Performance Improvements
Performance has been improved when running with the diagnostics output window open. Also, during filtering operations that are expected to take more than four seconds, a progress bar and abort button are shown.
Tool Tips are Wrapped
In the diagnostics output, long diagnostic messages are shown as a wrapped tooltip when mousing over individual messages.
Dispatch Solution Diagnostics
Diagnostics were added in the Dispatch Management Controller category. After a method executes (and does not abort) one of the following two messages is posted, as appropriate:
• The dispatch method “Solve Given Inflow” successfully solved.
• The dispatch method “Solve Given Inflow” executed but did not solve.
This enables you to better diagnose when a dispatch method completes.
Multiple Run Management
Distributed MRM
Batch mode
When a Distributed Multiple Run is executed from batch mode, the MRM controller no longer shows a user interface. If you still wish to show the user interface, use the --showui argument.
Environment Variables
The distributed MRM working directory and configuration file now allow the use of environment variables.
Iterative MRM
In the
MRM Configuration dialog, on the
Iterative Runs tab, the label
Priority was changed to
Index. Iterative MRM rules are not strictly prioritized like Rulebased Simulation Rules, but they are indexed for organization. See
“Index vs Priority” to below
Ensembles in MRM
The capability to use ensembles as input and output was added to Multiple Run Management. A check box for using input ensembles now appears on the Input tab of the MRM Configuration dialog, which will add a new Ensembles tab to the dialog. You select input and output ensembles for use with the multiple run, and can choose particular traces for the input ensembles. The number of traces in input ensembles determine the number of runs in the multiple run.
Note: In the initial implementation, only HDB datasets in Database DMIs will function as input ensembles. HDB datasets have a radio button to make the dataset an ensemble type, allowing you to select an ensemble from the HDB database to associate with the dataset. See
“Ensembles” in Solution Approaches for more information.
Object Interface
Export Object
You can now export an object using the File Export Object... menu from the Open Object dialog.
Objects
Agg Diversion Site
When solving given Diversion, (processSequential_givenDiversion and processLumped_givenDiversion) Incoming Available Water was removed from the required knowns in the dispatch conditions.This isn't necessary to solve. Also, Total Depletion, Total Diversion, and Total Unused Water were added to the potential governing slots.
Inline Power Plant
Inline Turbine Release and Bypass method
A new
Inline Turbine Release and Bypass category was added to the Inline Power Plant. The default
Specify Flows method uses the previous approach to compute the
Bypass and
Turbine Release. The new
Flow Tables approach uses two new tables
Flow vs Min Bypass and
Flow vs Turbine Release. This method performs lookups to get the appropriate flow values. See
“Flow Tables” in Objects and Methods for more information.
On the
Flow vs Power Table, the zeroth column label has been changed from
Turbine Release (or very old
Inflow) to
Flow to make it generic. Old models will be updated automatically. Any RPL expression that reference this column by name will need to be modified. See
“Flow vs Power Table” in Objects and Methods for more information.
Power Reservoir
Peak Power with Off Peak Spill - New Slots
The following slots were added to the Peak Power Equation with Off Peak Spill power method.
• Minimum Elevation for Power Operations: This is an optional series slot with periodic input that provides elevation constraints that are applied within the HydropowerRelease RPL function. This function now computes the outflow necessary to get to the Minimum Elevation for Power Operations as part of the computation of the proposed outflow.
• Plant Power Limit: If the Plant Power Limit is valid and the computed power is greater than the Plant Power Limit, the power is reset to the Plant Power Limit. The Turbine Release and Energy are also cutback.
Plant Power Equation - Additional Functionality
The following slots were added to the Plant Power Equation power method.
• Net Head vs Plant Efficiency: This slot is an alternative way to specify the plant efficiency. The method computes the efficiency as follows:
– If the 1X1 table slot Plant Efficiency Value is valid, it is used in all computations. This is the previous behavior and will not affect existing models.
– Otherwise, the Plant Efficiency Value is not valid, so the method interpolates the efficiency on the Net Head vs Plant Efficiency table using previous timestep Operating Head minus Head Loss.
• Plant Power Limit: If the Plant Power Limit is valid and the computed power is greater than the Plant Power Limit, the power is reset to the Plant Power Limit. The Turbine Release and Energy are also cutback.
In addition, the Input Energy Adjustment category and Reduce Input Energy method are now available when the Plant Power Equation Release method is selected. If Energy is input and the resulting Turbine Release is greater than the maximum turbine release, the Max flag is set on Energy and the reservoir will recompute the maximum energy possible.
See
“Level Power Reservoir” in Objects and Methods for more information on the
Reduce Input Energy method.
Reach
Default Routing Method - No Routing
Previously the default method in the
Routing category was
No Method, which was actually an invalid method and would produce an error. Now the default method is
No Routing,
“No Routing” in Objects and MethodsKinematic Reach Routing
On the Reach Routing category, there are now two versions of the Kinematic method:
• Kinematic Improved: This modified version of the Kinematic method allows a smaller computational element length and reduces the mass balance error. It is described in more detail
“Kinematic Improved” in Objects and Methods.
Reservoir
Allow Excess Specified Outflows
A new method Allow Excess Specified Outflow was added to the Input Outflow Adjustment category on the Reservoirs. This method allows you to specify (I or Z) an Outflow that is larger than the computed (Turbine) Release plus Spill. When this happens, the extra outflow is set on the new Outflow Exceeding Max series slot.
Anticipated Storage Calculation
In the calculation of Anticipated Storage as part of the Cumulative Storage Value Table calculation in Simulation or Rulebased Simulation, if an intransit flow value (inflow on an upstream lagged reach) was missing, it could previously cause the run to abort with an error message. A missing intransit flow value could also result in the calculation of Anticipated Storage using Storage only without accounting for intransit water. Now a missing intransit flow value will result in Anticipated Storage remaining unsolved (NaN), and an informational diagnostic message will be posted in the User Methods diagnostic category. The run will no longer abort.
Heron Inflow calculation
The following changes were made to the
Heron Inflow calculation Reservoir Account Slot Inflow method
“Heron Inflow” in Accounting• The Heron Inflow Values slot had the number of columns, column labels and units modified at one time. However, not all models had been converted to the new labels, and thus the old labels persisted in some model files:. A mechanism was added to check for the number of columns, column labels and units and correct them if necessary.
• The slots Heron Inflow Totals and Heron Cumulative Inflow Values columns with unit type of flow were changed to volume as these represent sums of flows.- Within the heronInflowCalc and findHeronRGInflow methods, cumulative values are now calculated as volumes rather than flows.
• A correction was made to the calculation of cumulNetGain when the inflow ratio is less than or equal to zero. Now the inflowRatio (which is negative or zero) is added. This actually cancels out any negative inflowRatio from the calculation of cumulNetGain (inflowRatio is subtracted in an earlier step). This change makes the calculation consistent with the analogous version in findHeronRGInflow. Note, this could change model results from previous versions.
K Factor Unit Type
The unit type was changed for the K Factor slot in the Pan and Ice Evap reservoir method from LengthPerTemperature_F to VelocityPerTemperature_F. These are automatically updated on model load and the scheme is set to display previously shown units. RPL expressions that reference this slot must be updated or unit type inconsistencies will occur.
Water User
Dispatch methods
In the solveSequential_givenDiversion and solveStandAlone_givenDiversion, Incoming Available Water was removed from the required knowns. This isn't necessary to solve. Also, Depletion and Outgoing Available Water were added to the potential governing slots.
For these two dispatch methods, the error checks if Diversion > Incoming Available Water and if Diversion > Diversion Requested were removed. These two checks made these dispatch methods unnecessarily restrictive.
This could affect existing models as it no longer errors in the above cases. Under certain situations, you could have additional results, but existing results should not be modified.
Specify Scheduled Requests
On the Water User, a new method was added to the
Diversion and Depletion Request category called
Specify Scheduled Requests. This method allows you to specify an initial scheduled amount (as either a series or periodic relationship) and then reduce the schedule to the requests. For more information, see
“Specify Scheduled Requests” in Objects and Methods.
Optimization
Documentation and Help
The Optimization section of the RiverWare Help was enhanced. See
“Optimization Overview” in Optimizationto access the help. Information was added to the following sections:
• Introduction and Overview
• Linearization, Approximation and Replacement
• RPL Goal Set
• Post-optimization Rulebased Simulation
Table Data Verification
The table data verification has been improved for optimization tables. Certain tables are checked for increasing values. Sometimes, these tables meet the more stringent requirements of optimization when a reservoir is within a “normal” operating region, but violate these conditions on the extreme parts of the curve, such as for a Probable Maximum Flood (PMF) when optimization would not be used. This enhancement allows you to limit optimization data checking to the normal region. If you have specified a minimum limit for data checking, data checking is skipped until the table exceeds the minimum value. If you have specified a maximum limit for data checking, the data checking ends once that limit is reached. For 3-dimensional tables, this logic may be applied both to the range of z values and to x or y within a block of constant z values. The following linearization and other tables used in optimization are now checked for this limited range.
Auto Max Turbine Q | Plant Power Table |
Bypass Capacity Table | Regulated Spill Capacity Table |
Bypass Table | Regulated Spill Table |
Convolved Stage Flow Tailwater Table | Stage Flow Tailwater Table |
Elevation Volume Table | Tailwater Table |
Energy In Storage Table | Unregulated Spill Linearization Table |
Marginal Storage Value Table | Unregulated Spill Table |
Maximum Turbine Q | Volume Area Table |
For Table Slots that are verified, you can configure the Min/Max from the
Slot Configuration dialog
“Optimization Limits for Data Verification” in User Interface or the
Configure Existing Slots dialog
“Global Slot Configuration Options” in User Interface. To locate the slots, use the selector’s new
Supports Opt Limits filter
“Selecting Slots” in User Interface.
You can also use Control File-Executable based DMIs to bring in the Min/Max from data files. Use the
scale,
unit,
opt_min,
opt_max data file keywords,
“Data Files” in Data Management Interface (DMI).
Priority Oriented Optimization Solution Analysis Tool
In a typical policy, most problem solutions are immediately followed by the freezing of solution limiting variables and constraints. This freezing occurs automatically but only for solutions that occurs during execution of a
Repeated Maximin statement; for freezing to occur after solutions caused by statements of other types, the policy must contain an explicit
Freeze statement. When a problem solution is not immediately followed by a freeze before the next solution, it is sometimes useful to know which constraints and variables would have been frozen had a
Freeze statement been executed. The solution analysis tool has been enhanced to report this information. When more than two solutions occur before a freeze, a single variable or constraint might have been frozen at multiple solutions, but is reported for only the earliest solution. For more information on the Priority-Oriented Optimization Solution Analysis Tool, see
“Priority-oriented Optimization Solution Analysis Tool” in Optimization.
Output, Plotting, and Model Reports
Model Reports
Model Reports
“Model Report” in Output Utilities and Data Visualization allow you to generate a customized HTML document describing various aspects of a model including the configuration, RPL policy, slots, and plots. In the
Model Report, the following new
Item Types have been added:
• Output Device: Pie Chart
• Output Device: Tabular Series Slot Report
• Account System Information
• Account Section
• Account Table
• Supply Table
• Account Method Table
Periodic Slot Improved Plotting of Time Range
The plotting of Periodic slots has been improved so you no longer have to configure a time range to plot. Now, the periodic curve is shown for whatever range is plotted. If no other slots are plotted, the range defaults to the run range. Use the zooming tools to define the range including the
Scale to Specified button
to enter your desired range dates and apply it to many plots at once. This is describe more
“Pie Charts”.
Pie Charts
The following improvements were made to the
Pie Chart output device
“Chart” in Output Utilities and Data Visualization:
• Controls were added to animate the pie chart over the run.
• Background colors are now configurable for both the display and when exported/printed.
• Radial scale circles are dashed instead of solid.
• Commas are shown as the thousands separator.
• A right-click context menu was added to the configuration to allow you to Copy Slots and Paste Slots from/to the slot list.
• Pie charts were separated from their configuration dialogs; if the configuration is closed, the other is not.
• Redundant Pie Charts dialogs are no longer created when regenerating. Only one chart per device is shown.
• The stability of the pie chart was improved when the dialog is resized or changed to show a different timestep
Printing and Exporting
Plot Pages now have configurations options for the headers and footers that are shown when printed. Use the
File Print Printed Header/Footer Configuration... For more information, see
“Printing and Exporting Plots” in Output Utilities and Data Visualization.
Redundant Plots
When regenerating a plot from the Output Manager, duplicate plots are no longer created. The existing plot is updated.
Scale to Specified Time Range
The Scale to Specified Time Range button is shown to the right. Clicking the button opens the dialog below. Now there is the option to Apply to All Open Plots. This sets the visible range of all open plots to the specified range. Each plot would need to be saved to preserve that range.
RiverWare Policy Language
Diagnostics and Debugging
WITH Statement Diagnostics
For WITH statements, the variable name is shown in the rule execution diagnostics.
Index vs Priority
The term index is now used to indicate the order of RPL rules/methods when the order of the rule/method in the set does not determine the priority or when there is no priority associated with the rule. The index is displayed in a new Index column of the RPL set editor for the following RPL sets:
• The Iterative MRM Rules set
• Object-level User Defined Accounting Method sets
The RPL set editor no longer displays the priority column for sets to which the concept of priority does not apply:
• The Iterative MRM Rules set
• Object-level User Defined Accounting Method sets
Initialization Rule Changes
The approach used by Initialization rules was modified to show which rule set a particular slot value. The Initialization Rules set editor now shows an Index, Flag and Priority column display.
• The Index is a unique identifier of the rule as described above.
• The Flag column indicates the flag which will be associated with the values set by that rule, R or Z, according to the rule configuration.
• The Priority column shows one of the following
– 0 if the rule is configured to set the DMI Input (Z) flag,
– IR if the rule is configured to set the Rules (R) flag. IR will be shown on the slot values indicating it was set by an Init Rule.
You can now see a tool tip on any slot value display showing the Rule or Initialization Rule that set that value. See
“Series Slot Value Information” for more information.
RPL Expression Editing
Canceling Empty Expression
Canceling editing of an empty expression is easier to cancel. You can now cancel these edits by pressing Esc, Enter or clicking away from the in-line editor menu.
Slot Lookups are Easier to Edit
When a slot lookup expression is selected, Slot[ ], Slot [E,E], or Slot [E], the slot expression is automatically selected, so you can immediately select the slot without an additional click.
Slot Name Selector
The RPL Palette Slot Selector now preserves your filter settings and prior selections.
RPL Comment Wrapping
The wrapping from the comment editor dialog is now retained and shown in the RPL editors. That is, when you hit enter in the comment editor OR the line wraps, the comment in the RPL editor will appear the same. See
“Comments” in RiverWare Policy Language (RPL) for more information.
RPL Object Display
The display of OBJECTS in RPL was improved not to show the % symbol or quotation marks.
Predefined Functions
ColumnLabels and RowLabels
The following functions were added. They return a list containing all of the column or row labels of the input slot, respectively.
GetColumnIndex and ColumnLabel
The following functions now support Agg Series slots:
Get3DTableVals
A new function, Get3DTableVals was added. The function returns the values from a 3D table in a list. For more information, see
“Get3DTableVals” in RiverWare Policy Language (RPL).
HasRuleFiredSuccessfully
The HasRuleFiredSuccessfully was enhanced to behave as follows:
• Rulebased Simulation rules: has rule fired in current timestep.
• Initialization Rules: has rule fired in current single run.
• MRM rules: has rule fired in current MRM iteration (single run).
• Global functions set: the behavior for the caller's application.
• Other: not applicable, abort with an error message.
RPL User Interface
Add to Report Group
RPL set and group editors have a new Add To Report Group... operation. A RPL object selector is presented for you to identify the destination Report Group.
Move RPL item to the first priority
When dragging at item to the first item within the list, the confirmation dialog now provides an additional option to place the dragged item in the first position.
RPL Object Selector
A name filter was added to the RPL Object Selector dialog. This dialog is used when selecting rules/goals from diagnostics and when selecting RPL objects in a model report.
RPL Set Analysis Tool
Index and Flag columns were added to the RPL set analysis tool under the Window Columns menu
RPL Set Name Colors
You can now change the color of the text shown for RPL Objects (Rule, Group, Function, etc) in a RPL set. Rules and functions inherit their color from the group unless they are explicitly changed.
Run Control
Resume Run Functionality Removed
The Resume Run capability has been removed from the user interface. Note, it is still possible to Pause and Continue a run. But it is no longer possible to Resume a run after the run aborted or after clicking the Stop button.
Script Management
Scripts are an exciting new feature that allow you to automate many of the tasks involved in operating your model. Scripts are organized sequences of actions that you configure and execute.
Create a script to update your operations model to a new water year. Use a script to convert an accounting model to a planning model. Run a script to prepare your model for a run by setting the time range, importing values, and even executing the run. The opportunities are endless.
Scripts are created by a model developer in the Script Manager and the Script Editor. They are executed by a model user through the Script Dashboard which provides an interface where the user can set values through sliders, buttons and editors. Actions can even be hidden from the dashboard so only the desired pieces of information are shown.
In the initial implementation, there are over twenty action types you can add to your scripts. This framework is extensible so additional actions can be added in the future.
For more information on Scripts, see
“Script Management” in Automation Tools.
SCT
6-hour Time Dividers
The SCT has supported optional time dividers between the common time intervals. Now 6-hour time dividers are supported within hourly models. They use the same user-configurable color as 4-hour dividers. Note, 4-hour or 6-hour dividers can be shown, but not both.
Aggregation Label Row Alignment
The SCT's aggregated, horizontal timestep view now supports an alignment option for detail row header text. That row header text used to be just right aligned; now it can be left aligned.
Confirmation dialog during Close
When closing the SCT, the confirmation dialog is no longer shown if the SCT is locked and hasn't been unlocked during that session.
Flag button appearance
The Flag buttons were improved so it is clear when they are enabled and disabled.
Flag Letters for Accounting Slots
The SCT now shows 'P', 'm' and 'A' series flag letters for accounting outputs.
Navigation and Import Paste for Horizontal Orientation
When in Horizontal Timestep Axis Orientation, the navigation was modified so that when you hit Enter, it goes to the next cell in the series. This is not necessarily the cell immediately below.
Similarly, when you import paste a column (or row) of data, there is now an option to Paste clipboard column into Series Slot. When this option is selected, the pasted data will go only into the specified series regardless of the aggregation. Uncheck the box to paste across multiple cells instead of within a single series.
Series Slot Value Information
Tool tips now provide additional information about how individual values were set. In particular, when you hover the mouse over a value for which the relevant information is available, tool tips display which rule, DMI, or other method set the value. For rules, right-click and choose to
Open Rule N from the menu. See
“Series Slot Value Information” for more information.
Show Slot Descriptions
The SCT was enhanced to show slot descriptions from the SCT:
• Tooltips on slot names/labels: Hover over the slot’s name or label and the slot’s description, when defined, will be displayed as a tooltip.
• Open Slot Description... context menu: Right-click and choose to Open Slot Description. This shows the slot's Open Slot dialog with the Description panel open. This is where slot descriptions are provided by the user.
Timestep Size
If all existing series slots within the SCT have the same timestep size, the following adjustments are automatically made to the SCT configuration's Timestep Size Override.
• If the common slot timestep size differs from the model's timestep size, the Timestep Size Override is set to that common slot timestep size, and the override is turned on.
• If the common slot timestep size matches the model's timestep size, the Timestep Size Override is turned off.
Selector
Filters
The following enhancements were made to the slot selector filters:
• The Slot Column Label filter was enhanced to hide the multiple-column slots not having any columns with labels matching the specified wildcard pattern.
• A Table (Multiple Cell) selection option was added to the Slot Type filter.
• The Slot Timestep filter now also matches Periodic Slots configured with a regular time interval.
Copy List of Slots from the Selector
The selector panels now allow you to right-click and choose to Copy Selected <Items>. This copies the list of selected items to the clipboard. Also, on the most specific panel, you can Trim Selection. It deselects items in the superior parts of the selection which don't contribute to the final selection.
Slots
Agg Series Slot Columns
It is now possible to insert a column in an agg series slot including before the first column.
Series Slot Value Information
For dialogs that display Series Slot values, like the Open Slot, Open Account and SCT dialogs, tool tips now provide additional information about individual values. In particular, when you hover over a value for which the relevant information is available, one of the following tool tips is displayed:
• Set by DMI: <DMI name> The value was set by an input DMI that was configured to record invocations. Example: Set by DMI: Import Lake Levels
• Set by Initialization Rule: (<rule index>) <rule name> The value was set by the listed Initialization Rule. Example: Set by Initialization Rule: (3) Provide Default Hydrology
• Set by Rule: (<rule priority>) <rule name> The value was set by the listed rule Example: Set by Rule: (18) Long Lake Fishery Releases
• Rule (<rule priority>) <rule name> Displayed when the value was solved for as a result of a rule setting a value elsewhere in the system. That is, the value was set during dispatching because a rule set a value somewhere. Example: “Rule: (18) Long Lake Fishery Releases”.
For the last three two rule items, right-click and choose to “Open Rule N” from the menu. See
“Tooltips” in User Interface for more information.
Table Slot Row/Column Labels
A right-click context menu was added to the Table Slot Row/Column Label Editor Dialog. It is used for editing either Row or Column labels for a particular Table Slot. The dialog presents a single column of editable cells, one cell per Table Slot row or column. You can use the new menu to copy, paste, or clear the labels.
Timestep Navigation
Datetime Controls and Global Time Scroll
Timestep navigation was improved by re-implementing the datetime controls in many dialogs including series slots, plots, and the run control. The controls now include left and right arrows (instead of up and down arrows) and a new global icon used to global scroll to the selected timestep. The screenshot shows the controls available on the plot In addition, every datetime control has a right-click context menu allowing you to Global Time Scroll, Select All, and Copy/Paste the datetime.
Units
Units Added
The following units were added:
• Length: survey_ft (US Survey Foot)
• Volume:
– survey_acreft (US Survey Acre-foot)
– MCM (Million Cubic Meters)
– TCM (Thousand Cubic Meters)
• Flow:
– survey_acreft/day, survey_acreft/month, survey_acreft/year
– MCM/day, MCM/month, MCM/year,
– TCM/day, TCM/month, TCM/year
Water Quality
Reach Simple Well-Mixed Salinity
The Reach's Simple Well-Mixed Salinity methods were enhanced for better handling of salt mass for flows near zero. Also, the methods allow Diversion Salt Mass to be greater than Inflow Salt Mass to accommodate modeling techniques employed by some users.
Improved Simple Well-Mixed Reach Salinity Modeling when solving upstream. Previously, the
Return Flow Salt Mass could only be linked to the same object to which the
Diversion Salt Concentration was linked or an error would occur. Now, this is allowed, but the
Return Flow Salt Mass must be known or the reach will exit the dispatch method and wait for more information. For more information, see
“Solve In Salt Given Out Salt” in Water Quality.
Workspace
Arrows on Links
It is now possible to show arrow heads on links on all three canvases. Link
Arrows are controlled through user-defined
Link Display Groups. See
“Link Groups” in User Interface for more information.
Background Colors Saved with Model File
Workspace background colors for the Simulation and Accounting Views are no longer user-based settings. Instead, the background color is saved with the model. Previously set background colors are no longer used, you must reset them.
Export Full Workspace Image
The Export Full Workspace Image function now supports a Background Image Only option.
Extended Selection
The Workspace now provides the following object selection behavior:
• Select objects by dragging a rectangle around one or more objects.
• Control-click an object to toggle the clicked object in and out of the selection
• Shift-click and drag a rectangle to the add objects to the selection.
• Right-click an object (to show its context menu) also adds the object to the selection.
Icon Colors Saved with Model File
The setting for the RiverWare window icon, which is set from the Workspace
Utilities Windows Window Icon menu (four options), is now saved with the RiverWare model file. See
“Icon Colors” in User Interface for more information.
Object Clusters
Object Clusters allow you to group together simulation objects on the workspace and show only a single icon. Clusters are for display purposes only, they have no effect on the model solution. It is easy to switch between showing the objects or the cluster. See
“Object Clusters” in User Interface for more information.
Text / Images on the Canvas
You can now add
Text or small
Images on the Simulation and Accounting Canvases. Use the right-click context menu and choose
Add Text... or
Add Image... Specify the text or an image, respectively. In the screenshot, the rafting icon and label have been added as an image and text, respectively. For more information, see
“Add Text or Add Image” in User Interface.
Appendix - Category and Method Name Changes
Modifications were made to a large number of category and method names on objects and accounts in order to adhere to a standard naming format. This included formatting all names in title case, including spaces between all words, removing terms such as “category”, “calculation” or “calc” from the names and in some cases making the name more descriptive of what the method does. Expect a large number of warning messages notifying you of the name changes the first time a model is loaded in RiverWare 6.5. These messages will include the text “Replacing old category name” or “Replacing old method name” for each changed name on each object. There should be no change in model behavior or results. Once the model is saved in RiverWare 6.5, the warning messages will not appear for subsequent model loads.
All name changes are listed below in the following six tables:
• Name Changes on All Reservoir Object Types,
“”
Table 11.1 Name Changes on All Reservoir Object Types
What | Previous Name | New Name |
---|
Category | hydrologicInflowCalculationCategory | Hydrologic Inflow |
Method | noHydrologicInflow | None |
Method | No Forecast | None |
Method | Coefficient and Exponent Hydrology | Coefficient and Exponent |
Category | Calculate Incremental Hydrologic Inflows on Subbasin | Incremental Hydrologic Inflows on Subbasin |
Method | Compute Forecast Period Incremental Hydrologic Inflows | Forecast Period |
Method | Compute Full Run Incremental Hydrologic Inflows | Full Run |
Category | Sediment Calculation | Sediment |
Method | CRSS Sediment Calc | CRSS Sediment |
Category | bankStorageCalcCategory | Bank Storage |
Method | NoBankStorage | None |
Method | InputBankStorage | Input Bank Storage |
Method | CRSSBankStorageCalc | CRSS Bank Storage |
Method | AveStageChangeBankStorage | Average Stage Change |
Category | Seepage Calculation | Seepage |
Method | No Seepage | None |
Method | Linear Seepage Calc | Linear Seepage |
Category | spillCalculationCategory | Spill |
Method | noSpillCalc | None |
Method | monthlySpillCalc | Monthly Spill |
Method | unregulatedSpillCalc | Unregulated |
Method | regulatedSpillCalc | Regulated |
Method | regPlusUnregSpillCalc | Regulated and Unregulated |
Method | regPlusBypassSpillCalc | Regulated and Bypass |
Method | regPlusBypassPlusUnregSpillCalc | Regulated, Bypass and Unregulated |
Method | Bypass, Reg, and Unreg Spill | Bypass, Regulated and Unregulated |
Category | Optimization Spill Computation | Optimization Spill |
Method | optNoSpillCalc | None |
Method | optMonthlySpillCac | Opt Monthly Spill |
Method | optUnregulatedSpillCalc | Opt Unregulated |
Method | optRegulatedSpillCalc | Opt Regulated |
Method | optRegPlusUnregSpillCalc | Opt Regulated and Unregulated |
Method | optRegPlusBypassSpillCalc | Opt Regulated and Bypass |
Method | optRegPlusBypassPlusUnregSpillCalc | Opt Regulated, Bypass and Unregulated |
Method | optBypass, Reg, and Unreg SpillCalc | Opt Bypass, Regulated and Unregulated |
Category | FutureValueCalcCategory | Future Value |
Method | noFutureValueCalc | None |
Method | calculateFutureValue | Cumulative Storage Value Table |
Category | Optimization Future Value Computation | Optimization Future Value |
Method | optNoFutureValueCalc | None |
Method | optCalculateFutureValue | Opt Cumulative Storage Value Table |
Method | No Evaporation | None |
Category | Optimization Evaporation Computation | Optimization Evaporation |
Method | No Diversion | None |
Category | targetOperationCalculationCategory | Target Operation |
Method | noTargetCalc | None |
Method | simpleTarget | Simple Target |
Method | laggedTarget | Lagged Target |
Category | Sediment Transport Calculations | Sediment Transport |
Category | surfaceFluxCalculationCategory | Surface Heat Flux |
Method | noCalcSurfaceFlux | None |
Method | defaultCalcSurfaceFlux | Energy Balance |
Category | Surcharge Release Calculation | Surcharge Release |
Category | Elevation Maximum Duration Constraints | Elevation Max Duration Constraints |
Category | Flood Control Release Calculation | Flood Control Release |
Method | Heron Inflow Calculation | Heron Inflow |
Method | Heron Gain Loss Calculation | Heron Gain Loss |
Method | El Vado Loss Calculation | El Vado Gain Loss |
Method | Nambe Falls Loss Calculation | Nambe Falls Gain Loss |
Method | Elephant Butte Loss Calculation | Elephant Butte Gain Loss |
Method | Abiquiu Loss Calculation | Abiquiu Gain Loss |
Method | Jemez Loss Calculation | Jemez Gain Loss |
Method | Cochiti Loss Calculation | Cochiti Gain Loss |
Category | Bank Storage Salt Category | Bank Storage Salt |
Method | No Bank Storage Salt | None |
Table 11.2 Name Changes on All Power Reservoir Object Types
What | Previous Name | New Name |
---|
Category | powerCalculationCategory | Power |
Method | noPowerCalc | None |
Method | plantPowerCalc | Plant Power Coefficient |
Method | plantEfficiencyCurve | Plant Efficiency Curve |
Method | plantPowerEquation | Plant Power Equation |
Method | unitGeneratorPowerCalc | Unit Generator Power |
Method | PeakBasePowerCalc | Peak and Base |
Method | PeakPowerCalc | Peak Power |
Method | PeakPowerEquation | Peak Power Equation |
Method | LCRPowerCalc | LCR Power |
Method | Unit Power | Unit Power Table |
Category | Optimization Power Computation | Optimization Power |
Method | independentLinearizations | Independent Linearizations |
Method | lambdaMethod | Lambda Method |
Category | powerReleaseCalcCategory | Power Release |
Method | getNoPowerRelease | None |
Method | getPlantPowerRelease | Plant Power Coefficient Release |
Method | getPlantEfficiencyRelease | Plant Efficiency Curve Release |
Method | getPlantPowerEqnRelease | Plant Power Equation Release |
Method | get Peak Power Equation with Off Peak Spill Release | Peak Power Equation with Off Peak Spill Release |
Method | getLCRPowerRelease | LCR Power Release |
Method | getUnitGeneratorPowerRelease | Unit Generator Power Release |
Method | get Unit Power Release | Unit Power Table Release |
Method | No Energy Adjustment | None |
Category | tailwaterCalculationCategory | Tailwater |
Method | noTailwaterCalc | None |
Method | TWValueOnly | Linked or Input |
Method | TWbaseValueOnly | Base Value Only |
Method | TWbaseValuePlusLookupTable | Base Value Plus Lookup Table |
Method | TWstageFlowLookupTable | Stage Flow Lookup Table |
Method | tailwaterCompare | Compare to Avg Base Value |
Method | hooverTailwater | Hoover Tailwater |
Category | Optimization Tailwater Computation | Optimization Tailwater |
Method | optTWValueOnly | Opt Linked or Input |
Method | optTWBaseValueOnly | Opt Base Value Only |
Method | optTWBaseValuePlusLookupTable | Opt Base Value Plus Lookup Table |
Method | optTWStageFlowLookupTable | Opt Stage Flow Lookup Table |
Category | Ramping Modeling | Ramping |
Method | trackRamping | Track Ramping |
Category | Additional Hydropower Release Calculation | Additional Hydropower Release |
Method | No Additional Release | None |
Method | noEstimatedHead | None |
Method | estimatedHead | Estimated Head |
Method | variableHead | Variable Head |
Table 11.3 Name Changes on Storage, Slope and Pumped Storage Reservoir Objects
Where | What | Previous Name | New Name |
---|
Storage Reservoir | Category | Tailwater Calculation | Tailwater |
Method | Cubic Bank Storage Calc | Cubic Bank Storage |
Slope Power Reservoir | Category | slopeStorageCategory | Slope Storage |
Method | noSlopeStorageCalc | None |
Method | SlopeStorageCalc | Storage Segments |
Category | slopeStorageCoefficientsCategory | Slope Storage Coefficients |
Method | Impulse Response Coeffs | Impulse Response |
Method | Weighting Coeffs | Weighting Coefficients |
Category | Optimization Partition Category | Optimization Partition |
Category | targetSlopeStorageCategory | Target Slope Storage |
Method | TargetSlopeStorageCalc | Lumped Mass Balance |
Category | Optimization Backwater Computation | Optimization Backwater |
Method | independentLinearizations | Independent Linearizations |
Method | lambdaMethod | Lambda Method |
Category | Backwater Lambda Computation | Optimization Backwater Lambda |
Pumped Storage Reservoir | Category | pumpPowerCalculationCategory | Pump Power |
Method | noCalcUnitPumpPower | None |
Method | calcUnitPumpPower | Unit Pump Power |
Method | No Gate Setting Calc | None |
Method | Calculate Gate Setting | Best Gate Setting Table |
Table 11.4 Name Changes on Reach Objects
What | Previous Name | New Name |
---|
Method | No Parameters | None |
Category | Local Inflow Solution Direction | Local Inflow and Solution Direction |
Method | No Local Inflow | No Local Inflow, Solve Inflow or Outflow |
Method | No Local Inflow, Downstream Only | No Local Inflow, Solve Outflow |
Method | Input Local Inflow | Specify Local Inflow, Solve Inflow or Outflow |
Method | Local Inflow Downstream Only | Specify Local Inflow, Solve Outflow |
Method | Calc Local Inflow | Solve Inflow, Outflow or Local Inflow |
Method | Calc Local Inflow or Solve Downstream | Solve Local Inflow or Outflow |
Method | Contingent Local Inflow | Contingent Local Inflow or Solve Outflow |
Method | No Forecast Local Inflows | None |
Method | Coefficient and Exponent Forecast Inflow | Coefficient and Exponent |
Category | Evaporation Calculation | Reach Evaporation |
Method | No Evaporation | None |
Method | Inflow Exponent Pan Evap | Inflow Exponent Pan Evaporation |
Category | depthtoFlowMethod | Depth to Flow |
Method | noDepthtoFlowMethod | None |
Method | depthtoFlowManningTrapezoid | Manning Trapezoid |
Method | depthtoFlowManningWideRect | Manning Wide Rectangle |
Method | depthtoFlowPowerFunction | Power Function |
Category | Stage Calculation | Stage |
Method | No Stage Calc | None |
Category | Volume Calculation | Volume |
Method | No Volume Calc | None |
Category | GainLoss Calculation | Gain Loss |
Method | No GainLoss | None |
Method | Constant GainLoss | Constant Gain Loss |
Method | Variable GainLoss | Variable Gain Loss |
Method | Seasonal GainLoss Flow Table | Seasonal Gain Loss Flow Table |
Method | Interpolated Flow GainLoss | Interpolated Flow Gain Loss |
Method | Periodic GainLoss | Periodic Gain Loss |
Category | Apply GainLoss | Apply Gain Loss |
Category | Seepage Calc | Reach Seepage |
Method | No Seepage | None |
Category | Reach Conductance Specification | Reach Conductance |
Category | Drain Elevation Calc | Drain Elevation |
Method | No Drain Elevation | None |
Method | Drain Flow/Elev Interpolation | Flow Elevation Interpolation |
Method | Reach/Drain Elev Interpolation | Stage Elevation Interpolation |
Category | Reach Bank Storage Calculation | Reach Bank Storage |
Method | No Bank Storage | None |
Method | No Adjustment | None |
Method | No Diversion | None |
Category | Minimum Diversion Bypass | Min Diversion Bypass |
Method | Input Diversion Bypass | Input Min Bypass |
Method | Periodic Minimum Bypass | Periodic Min Bypass |
Category | WQ Routing | Water Quality Routing |
Method | TimeLagTempModel | Time Lag; Temperature |
Method | TimeLagSaltTempModel | Time Lag; Salt and Temperature |
Method | TimeLagTempDOModel | Time Lag; Temperature and DO |
Method | TimeLagSaltTempDOModel | Time Lag; Salt, Temperature and DO |
Method | NoRoutingTempModel | No Routing; Temperature |
Method | NoRoutingSaltTempModel | No Routing; Salt and Temperature |
Method | NoRoutingTempDOModel | No Routing; Temperature and DO |
Method | NoRoutingSaltTempDOModel | No Routing; Salt, Temperature and DO |
Method | ControlVolumeExplicitTemp | Control Volume Explicit; Temperature |
Method | ControlVolumeExplicitSalt | Control Volume Explicit; Salt |
Method | ControlVolumeExplicitSaltTemp | Control Volume Explicit; Salt and Temp |
Method | ControlVolumeImplicitTemp | Control Volume Implicit; Temperature |
Method | ControlVolumeImplicitSalt | Control Volume Implicit; Salt |
Method | ControlVolumeImplicitSaltTemp | Control Volume Implicit; Salt and Temp |
Category | Seepage WQ | Reach Seepage Water Quality |
Table 11.5 Name Changes on Other Objects
Where | What | Previous Name | New Name |
---|
Aggregate Diversion Site | Method | noStructure | No Structure |
Method | sequentialStructure | Sequential Structure |
Method | lumpedStructure | Lumped Structure |
Category | conjunctiveUse | Aggregate Conjunctive Use |
Method | No Conjunctive Use | None |
Category | Optimization Requests Category | Aggregate Optimization Requests |
Method | optInputRequests | Opt Input Requests |
Method | optPolicyRequests | Opt Policy Requests |
Method | Return Flow Salt Calculation | Return Flow Salt |
Category | salt Pickup Category | Salt Pickup |
Method | Variable Salt Pickup with Debting | Variable Salt Pickup with Debt |
Method | Salt Mass Removal With Debt | Salt Mass Removal with Debt |
Category | Maximum Supplemental Request | Aggregate Max Supplemental Request |
Method | Input Maximum Request | Input Max Request |
Method | GW Elevation Maximum Request | GW Elevation Max Request |
Aggregate Reach | Method | noWQ | None |
Bifurcation | Category | Outflow Calculation | Bifurcation Outflow |
Canal | Category | CanalFlowCalculationCategory | Canal Flow |
Method | noCanalFlow | None |
Method | TellicoCanalEquation | Tellicao Canal Equation |
Method | BarkleyCanalEquation | Barkley Canal Equation |
Computational Subbasin | Method | No Method | None |
Category | Diversions From Reservoirs | Diversions from Reservoirs |
Method | Share Proportionally With Limits | Share Proportionally with Limits |
Category | Account Initial Request Calculation | Account Initial Request |
Category | GroundWater Computation | Groundwater Computation |
Category | Reach GainLoss | Reach Gain Loss |
Category | GroundWater Elevation | Groundwater Elevation |
Category | GroundWater Lateral Flux | Groundwater Lateral Flux |
Category | Calculate Incremental Local Inflows | Incremental Local Inflows |
Control Point | Category | Local Inflow Calculation | Local Inflow |
Method | No Local Inflow | None |
Method | No Forecast Local Inflow | None |
Method | Flooding does not constrain hydropower releases | Releases Not Constrained by Flooding |
Distribution Canal | Category | Canal Maximum Capacity | Canal Max Capacity |
Method | Maximum Capacity | Input Max Capacity |
Category | Storage Calculation | Canal Storage |
Method | Seepage Calc | Proportional Seepage |
Method | Variable Seepage Calc | Variable Seepage |
Diversion Object | Method | Solve For Outflow | Solve for Outflow |
Category | Available Flow Calculation | Available Flow |
Method | none | None |
Category | Diversion Request Calculation | Diversion Request |
Category | Energy Calculation | Diversion Pump Energy |
Method | Energy Calc | Energy Equation and Cost |
Groundwater Storage Object | Category | Groundwater Outflow Calculation | Groundwater Outflow |
Method | Impulse Response Outflow | Impulse Response |
Category | Negative Outflow Adjust | Negative Outflow Adjustment |
Method | No Adjustment | None |
Method | Excess Storage To Outflow | Excess Storage to Outflow |
Category | Previous Elevation Calc | Previous Elevation |
Method | Storage Elevation Table Interpolation | Storage Elevation Interpolation |
Category | Pumping Calc | Groundwater Pumping |
Method | No Pumping | None |
Method | No Percolation | None |
Category | Groundwater Conductance Specification | Groundwater Conductance |
Category | Evapotranspiration | Groundwater Evapotranspiration |
Method | No Evapotranspiration | None |
Category | Evaporation | Groundwater Evaporation |
Method | No Evaporation | None |
Inline Power Plant | Category | Solution Direction | Inline Power Solution Direction |
Category | Power Calculation | Inline Power |
Method | No Power Calc | None |
Category | Turbine Ramping | Inline Turbine Ramping |
Method | No Ramping | None |
Method | No Spill Cost | None |
Method | Spill Cost Calc | Unit Spill Cost |
Method | holeCuts | Use Hole Cuts |
Inline Pump | Method | No Hydraulics | None |
Category | Energy Calculations | Inline Pump Energy |
Method | No Energy Calculations | None |
Pipe Junction | Method | No Hydraulics | None |
Pipeline | Category | Head Loss Calculation | Pipeline Head Loss |
Method | No Head Loss | None |
Method | Hazen-Williams Head Loss | Hazen-Williams Equation |
Stream Gage | Category | Conditional Flow Calc | Conditional Flow |
Thermal | Category | LoadCategory | Load |
Method | No Load | None |
Method | Use Hourly Load | Hourly Load |
Category | Modified Load Evaluation | Modified Load |
Method | No Evaluation | None |
Method | No Preferred Customers | None |
Method | No Method | None |
Method | No Objective | None |
Category | Smooth Energy Category | Smooth Energy |
Method | No Smoothing | None |
Water User | Category | returnFlowCalculation | Return Flow |
Method | Limit By Reservoir Level | Limit by Reservoir Level |
Method | No Routing | None |
Category | returnFlowSplitCalculation | Return Flow Split |
Method | No Split | None |
Method | No Conjunctive Use | None |
Method | Input Maximum Request | Input Max Request |
Method | GW Elevation Maximum Request | GW Elevation Max Request |
Category | Optimization WU Requests Category | Optimization Requests |
Method | optInputRequests | Opt Input Requests |
Method | optPolicyRequests | Opt Policy Requests |
Table 11.6 Name Changes on Accounts
Where | What | Previous Name | New Name |
---|
Diversion Account | Category | Calculation of Initial Request | Initial Request |
Method | Initial Request is Input | Specify Initial Request |
Method | Maximum Permitted | Max Permitted |
Category | Minimum Bypass | Min Bypass |
Method | No Minimum Bypass | None |
Method | Fraction of Flow above Minimum Flow | Fraction of Flow Above Min |
Method | Diversion minus Depletion | Diversion Minus Depletion |
Method | Return Flow Is Input | Specify Return Flow |
Category | Maximum Legal Request | Max Legal Request |
In Stream Flow Account | Category | Calculation of Initial Request | Initial Request |
Method | Initial Request is Input | Specify Initial Request |
Storage Account | Category | Calculation of Initial Request | Initial Request |
Method | Initial Request is Input | Specify Initial Request |
Method | Fill Conservation Pool With Diversions | Fill Conservation Pool with Diversions |
Category | Minimum Bypass | Min Bypass |
Method | No Minimum Bypass | None |
Method | Fraction of Flow above Minimum Flow | Fraction of Flow Above Min |
Category | Cons Pool Fill Factor | Conservation Pool Fill Factor |
Closed Bug Reports
The following bugs have been closed for this release. For more information on any bug, see the CADSWES website. The bugs are listed in order by bug number:
418 | 626 | 775 | 793 | 809 | 856 | 888 |
956 | 1008 | 1251 | 1834 | 1841 | 2011 | 2248 |
2322 | 2548 | 2574 | 2592 | 2653 | 2699 | 2826 |
2903 | 2945 | 2991 | 3015 | 3062 | 3133 | 3204 |
3274 | 3300 | 3316 | 3511 | 3542 | 3612 | 3693 |
3718 | 3734 | 3771 | 3864 | 3960 | 3975 | 3977 |
4178 | 4184 | 4247 | 4252 | 4413 | 4425 | 4977 |
5033 | 5067 | 5071 | 5106 | 5122 | 5284 | 5346 |
5381 | 5399 | 5405 | 5406 | 5408 | 5409 | 5410 |
5411 | 5412 | 5414 | 5415 | 5417 | 5418 | 5419 |
5420 | 5421 | 5422 | 5423 | 5424 | 5425 | 5426 |
5427 | 5428 | 5429 | 5430 | 5431 | 5432 | 5433 |
5435 | 5436 | 5437 | 5438 | 5439 | 5440 | 5441 |
5442 | 5443 | 5444 | 5445 | 5446 | 5448 | 5449 |
5450 | 5451 | 5452 | 5453 | 5454 | 5455 | 5456 |
5458 | 5459 | 5460 | 5461 | 5462 | 5463 | 5464 |
5465 | 5466 | 5468 | 5469 | 5470 | 5471 | 5472 |
5473 | 5474 | 5475 | 5477 | 5479 | 5480 | 5482 |
5483 | 5484 | 5485 | 5486 | 5487 | 5489 | 5490 |
5492 | 5493 | 5494 | | | | |