Phil Weinstein / Accomplishments -- April 2015 -- Edit 5-04-2015 (a)
General Development Accomplishments |
--------------------------------------------
[I.A] New/Enhanced Software / TVA
Min/Max/Bound Semantics revisions
--------------------------------------------
The semantics of Series and Table Slots "minimum" and "maximum" value properties were changed to be more specific and consistent with the actual use of those values in RiverWare, primarily with Optimization. This included changes to: (a) the user interface, (b) relevant diagnostics messages, and (c) internally within C++ code, e.g. with different names for fields and accessor methods. The old "min" and "max" properities are now presented as "bounds" or as "optimization limits for table verification."
--------------------------------------------
[I.A] New/Enhanced Software / USACE-ABQ #5
RiverWare Model Report Enhancements
--------------------------------------------
Model Reports: (a) Image Items, and (b) Rich Text support for Text Items.
Model Reports now support Image Items. The image data for these items is imported from an image file (JPEG, PNG or GIF) when the item is created. That image data is then retained within the model report configuration (an "output device" which, generally, is maintained within the RiverWare model file). Image Items support optional caption text which generally appears in the generated model report HTML document, horizontally centered, below the image.
Model Report Text Items now support two text modes: Plain Text or Rich Text. When in the new Rich Text mode, text item content is edited by the user using a new, more advanced editor dialog supporting basic text attributes (Font family selection, font size, text color, bold, italics, underline), some formatting operations (e.g. horizontal alignment and list formatting), and multiple-level "Undo/Redo". Simply formatted text content from external applications (e.g. web browsers or Microsoft Word) can be imported or copied and pasted into the rich text editor. The implementation makes use of an existing Qt widget which provides this basic rich text editing; it is not a full-blown HTML editor, and has some limitations.
These two enhancements are described further in this document:
RiverWare 6.7 Model Report Enhancements: Image Items and Rich Text
R:\doc\Output\ModelReport\2015\ModRepImagesAndRichText-Features-May2015.docx
R:\doc\Output\ModelReport\2015\ModRepImagesAndRichText-Features-May2015-04.pdf [link]
Maintenance Accomplishments / April 2015 |
--------------------------------------------
[II] RiverWare Software Maintenance / Software Updates / Bug Fixes
--------------------------------------------
The following bugs were fixed:
--------------------------------------------
[II] RiverWare Software Maintenance / Software Updates / Other Maintenance
--------------------------------------------
RiverWare Unit Conversion Utility API Maintenance
In the course of addressing a problem with the Time Aggregation Series Slot (Gnats 5614), it became apparent that we were not correctly converting standard flow values within an annual series to "per month" units (e.g. acre-ft/month). Furthermore, our convention of supplying the unit conversion methods with a timestep Date_Time to accommodate irregular time units wasn't actually sufficient for this particular case. For correctly handling irregular time units, also needed is the symbolic timestep size (a DeltaTime) for which the unit conversion is being done.
Beyond the application code changes which were needed to directly address Gnats 5614, we also took this opportunity to greatly simplify common uses of unit conversion, both within the unit conversion library, and notibly the many uses of that library in application code (especially in the EngrObjs library). This primarily involved standard unit conversions between Flow and Volume values. Making use of the knowledge that the standard units for the Flow and Volume unit types are always related by the number of seconds in the relevant timestep, we were able to replace calls to functions taking seven (7) parameters (where the result is returned in the 4th parameter) to functions taking two (2) parameters, with the result returned as the function value. This greatly improves the readibility of EngrObjs source code. (This maintenance was applied to about 85% of the EngrObjs code. The remainder will be completed probably before the RiverWare 6.7 release).
After completing this maintenance, the Gnats 5614 solution was revisited, and was found to also need some further adjustments. This included fixes for incomplete time aggregations at the beginning and end of the series slot being aggregated. That was also completed this month.
--- (end) ---