Skip to content

Releases: respec/HSPsquared

0.11.0a1: HSP2 with Testing Framework and Python Packaging

19 Jun 14:53
0caedc5
Compare
Choose a tag to compare

DOI

The Hydrologic Simulation Program–Python (HSP2) model is being developed by an open source team led by RESPEC.

This release was prepared by a team of collaborators including @timcera, @austinorr, @rburghol, and @aufdenkampe who contributed their expertise in making the project compatible with the Python Packaging Index (PyPI) and automated testing. It also includes more Special Actions capabilities and GENER operations.

What's Changed

New Contributors

Full Changelog: 0.11.0...0.11.0a1

v0.11.0: HSP2 with Special Actions Prototype and Other Minor Fixes

27 Oct 19:19
b676700
Compare
Choose a tag to compare

DOI

The Hydrologic Simulation Program–Python (HSP2) model is being developed by an open source team led by RESPEC.

This release contains a prototype of the Special Actions capability contributed by @rburghol and team at VA DEQ, including dynamic python code loading for hsp2 runtime customization. See issues #90 , #99, and #113 for more details on those enhancements.

Small fixes in this release include the following:

  • Improved Celsius conversion precision in PSTEMP
  • Improved AGWO precision in PWATER
  • Proper conversion of GWVS cut off in PWATER
  • Atmospheric Deposition properly added to totals in NUTRX and PLANK
  • Correct linkage of PKIF inflow
  • Proper implementation of PQUAL/IQUAL REMQOP calculation
  • QPREC improved with conversion factor changed to be same as used by HSPF
  • Constant value GENER operations

Downloads

  • HSP2_Driver.zip
    • HSP2_Driver contains an .exe for running HSP2, enabling a user to run HSP2 without needing to do anything with python code or notebooks. The driver uses the PyQt5 file dialog to prompt for the name of the HDF5 file to run, or if that doesn’t exist yet you can give it the name of a UCI or WDM file to import. It also runs with the H5 file name on the command line.

v0.10.1: HSP2 with Additional Documentation & Fixes

28 Jun 17:19
f9555f2
Compare
Choose a tag to compare

DOI

New in v0.10.1: Additional Documentation & Fixes

The Hydrologic Simulation Program–Python (HSP2) model is being developed by an open source team led by RESPEC, in collaboration with LimnoTech, with support from the U.S. Army Corps of Engineers, Engineer Research and Development Center (ERDC), Environmental Laboratory.

For more details, see the closed issues in our completed v0.10.1: Additional Documentation & Fixes Milestone.

Downloads

  • HSP2_Driver.zip
    • HSP2_Driver contains an .exe for running HSP2, enabling a user to run HSP2 without needing to do anything with python code or notebooks. The driver uses the PyQt5 file dialog to prompt for the name of the HDF5 file to run, or if that doesn’t exist yet you can give it the name of a UCI or WDM file to import. It also runs with the H5 file name on the command line.

v0.10.0: HSP2 including WQ w/ Improved Performance, Abstracted I/O, Updated Docs

14 Jan 18:38
Compare
Choose a tag to compare

DOI

New in v0.10.0: HSP2 including WQ w/ Improved Performance, Abstracted I/O, Updated Docs

The Hydrologic Simulation Program–Python (HSP2) model is being developed by an open source team led by RESPEC, in collaboration with LimnoTech, with support from the U.S. Army Corps of Engineers, Engineer Research and Development Center (ERDC), Environmental Laboratory.

For more details, see the closed issues in our completed v0.10.0: WQ w/ Improved Performance, Abstracted I/O, Updated Docs Milestone.

Downloads

  • HSP2_Driver.zip (coming soon)
    • HSP2_Driver contains an .exe for running HSP2, enabling a user to run HSP2 without needing to do anything with python code or notebooks. The driver uses the PyQt5 file dialog to prompt for the name of the HDF5 file to run, or if that doesn’t exist yet you can give it the name of a UCI or WDM file to import. It also runs with the H5 file name on the command line.

v0.9.3: HSP2 Detailed Water Quality Modules (RQUAL) as Classes

12 Nov 20:22
Compare
Choose a tag to compare

DOI

New in v0.9.3: HSP2 Detailed Water Quality Modules (RQUAL) as Classes

This important release adds to HSP2 detailed RQUAL water quality module sections (OXRX, NUTRX, PLANK, and PHCARB), implements those RQUAL modules as Numba classes, and improves the testing system to include these use cases.

The Hydrologic Simulation Program–Python (HSP2) model is being developed by an open source team led by RESPEC, in collaboration with LimnoTech, with support from the U.S. Army Corps of Engineers, Engineer Research and Development Center (ERDC), Environmental Laboratory.

New Features

  • Port RQUAL water quality module sections from HSPF #58
    • The dissolved oxygen (OXRX), nutrients (NUTRX), plankton (PLANK), and carbonate buffering system (PHCARB) sections for surface waters (RCHRES) are the last of the commonly used HSPF modules that needed to be ported to HSP2. With this release, >95% of HSPF use cases can now be supported with HSP2.
    • All RQUAL sections implemented Numba classes, as a first step and template for migrating HSP2 from Fortran 77 functional programming code structures to object-oriented class structures used in modern programming.
    • Class structures enable inheritance of attributes and methods by objects and the passing of attributes among objects.
    • Numba classes enable just-in-time (JIT) compiling for enhanced performance.
  • Implemented GENER and related operations #57
    • The GENER module is used extensively to compute (within the model) constituent loads based on input flow and concentration, with one or both being a time series. These capabilities are used extensively several of our HSP2 use cases

Improvements

  • Substantially improved the performance of the testing system (LimnoTech#46 (comment)), while also expanded to support additional use cases for RQUAL (LimnoTech#46)
  • General performance enhancements from implementing Numba jitclasses.
  • Updates to UCI reader to support all GENER operations, as described in #57 (comment).

Fixes

  • Many minor fixes to get all HSP2 results to exactly match HSPF results (within the rounding errors that naturally occur from the switch from float32 to float64, especially for operations that include subtractions).

For more details, see the closed issues in our completed v0.9.3 RQUAL Water Quality Modules as Classes + Expand Testing Milestone.

Downloads

  • HSP2_Driver.zip
    • HSP2_Driver contains an .exe for running HSP2, enabling a user to run HSP2 without needing to do anything with python code or notebooks. The driver uses the PyQt5 file dialog to prompt for the name of the HDF5 file to run, or if that doesn’t exist yet you can give it the name of a UCI or WDM file to import. It also runs with the H5 file name on the command line.

v0.9.2: HSP2 with Water Quality Modules not including RQUAL

20 Sep 19:53
Compare
Choose a tag to compare

DOI

The Hydrologic Simulation Program–Python (HSP2) model is being developed by RESPEC as part of an internally funded research and development (R&D) project. 

This release continues development of HSP2, including better-tested water quality modules, improved performance with Numba, support for metric units, and a few minor bug fixes (h/t to LimnoTech for continued collaboration). This release includes modules thru PQUAL/IQUAL/GQUAL (not yet including the AGCHEM modules nor RQUAL).

See the develop branch for ongoing development efforts to include full HSPF water quality.

Change Log

For a detailed list of changes, see the conversation and commits associated with Pull Request #60

Downloads

  • HSP2_Driver.zip
    • HSP2_Driver contains an .exe for running HSP2, enabling a user to run HSP2 without needing to do anything with python code or notebooks. The driver uses the PyQt5 file dialog to prompt for the name of the HDF5 file to run, or if that doesn’t exist yet you can give it the name of a UCI or WDM file to import. It also runs with the H5 file name on the command line.

v0.9.1: HSP2 with Draft Water Quality Modules and Improved WDM Reader

30 Apr 18:03
2f03d02
Compare
Choose a tag to compare

DOI

The Hydrologic Simulation Program–Python (HSP2) model is being developed by RESPEC as part of an internally funded research and development (R&D) project. 

This release continues development of HSP2, adding draft water quality modules, improved testing infrastructure, and an improved WDM reader that can handle a much broader range of WDM files (h/t LimnoTech for the WDM reader). This release includes modules thru PQUAL/IQUAL/GQUAL (not yet including the AGCHEM modules nor RQUAL).

See the develop branch for ongoing development efforts to include full HSPF water quality.

Downloads

  • HSP2_Driver.zip
    • HSP2_Driver contains an .exe for running HSP2, enabling a user to run HSP2 without needing to do anything with python code or notebooks. The driver uses the PyQt5 file dialog to prompt for the name of the HDF5 file to run, or if that doesn’t exist yet you can give it the name of a UCI or WDM file to import. It also runs with the H5 file name on the command line.

Change Log

New Features

Improvements

  • Improved WDM reader is capable of reading more sophisticated WDM files (71a88bb).
  • Improved testing infrastructure (c556ff7).

Bug Fixes

  • Small fixes in PWATER and HYDR (06da636) to more precisely match HSPF results.
  • Fixed subscript in SEDTRN Colby method and SNOW initialization (4138f52).

For a detailed list of changes, see the conversation and commits associated with Pull Release #50.

v0.8.2: HSP2 Expand Tests and Improve Read UCI, WDM, HBN

31 Mar 02:16
f848f8c
Compare
Choose a tag to compare

DOI

The Hydrologic Simulation Program–Python (HSP2) model is being developed by RESPEC as part of an internally funded research and development (R&D) project. 

This release, from 11/20/2020, continues development of the Python 3 codebase HSP2 hydrology modules, by improving readHBN, readUCI, and readWDM utilities and adding a number of additional test cases.

See the develop branch for ongoing development efforts to include full HSPF water quality.

Downloads

  • HSP2_Driver_June2020.zip
    • HSP2_Driver contains an .exe for running HSP2, enabling a user to run HSP2 without needing to do anything with python code or notebooks. The driver uses the PyQt5 file dialog to prompt for the name of the HDF5 file to run, or if that doesn’t exist yet you can give it the name of a UCI or WDM file to import. It also runs with the H5 file name on the command line.

Change Log

New Features

  • Added Tutorial (d2f3423)
  • Added many new test cases. #31

Improvements

  • Streamlined installation instructions, removing Setup.py in favor of using conda commands (commit 5b1f7ba).
  • Updated Conda environment.yml to specify Python 3.8 (a529de7)
  • Added new testing files and results (f112f9e)
  • Refined readHBN.py, readUCI.py, and readWDM.py to work with a larger range of file configurations (c1da377, ce4952d, f53c8df).

Bug Fixes

v0.8.1: HSP2 Add Python 3 Executable, Setup, Demos, and Docs

31 Mar 01:29
3b9f894
Compare
Choose a tag to compare

DOI

The Hydrologic Simulation Program–Python (HSP2 or HSPsquared) model is being developed by RESPEC as part of an internally funded research and development (R&D) project.

This release of HSP2, from 6/13/2020, is Python 3.x compatible and supports the major hydrology modules of HSPF -- PWATER, IWATER and HYDR. HSP2 is designed to work with Python 3.6, 3.7 and 3.8.

This release adds an executable file, setup instructions, demonstration Jupyter notebooks, and and other documentation developed during and after the March 24-25, 2020, collaborative workshop with LimnoTech.

Change Log

New Features

  • Installation instructions for Python 3 version, with Setup.py or with a conda environment.yml file.
  • A HSP2_Driver Windows executable (HSP2_Driver.exe, and associated files)
    • This allows a user to run HSP2 from the command line, similar to HSPF, enabling a user to run HSP2 without needing to do anything with python code or notebooks. The driver uses the PyQt5 file dialog to prompt for the name of the HDF5 file to run, or if that doesn’t exist yet you can give it the name of a UCI or WDM file to import. It also runs with the H5 file name on the command line.
  • Added a number Jupyter notebooks (Introduction.ipynb, Demo2.ipynb, Demo3.ipynb) and associated TutorialData to an updated Demo1.ipynb notebook, all tested with the new Python 3 codebase for HSP2.

Improvements

  • Updated conda environment (environment.yml) to use Python 3.7.
  • Git-track notebooks as binary. #35

Bug Fixes

  • Fixed issues in HSP2 hydrology to fully agree with HSPF (9a56943)

v0.8.0: HSP2 Rewritten for Python 3 and HSPF naming conventions

31 Mar 01:19
Compare
Choose a tag to compare

DOI

The Hydrologic Simulation Program–Python (HSP2 or HSPsquared) model is being developed by RESPEC as part of an internally funded research and development (R&D) project.

This is a major rewrite of the HSP2 model for use in a Python 3.6+ environment, completed 4/5/2020. All modules were renamed and rewritten to reflect the naming conventions of HSPF Modules, Sections, and Subroutines.

This release was shared in advance of a collaborative HSP2 development kickoff workshop with LimnoTech staff, on March 24-25, 2020.