Releases: Dewberry/ripple1d
Release v0.6.3
Bugfix Release 0.6.3
Users Changelog
This release of ripple1d
fixes several bugs identified during testing.
Bug Fixes
- Technical Documentation has been updated with high level summary of package functionality.
- The ID column was removed from geopackage layers. All code dependencies on the ID column have been removed.
- Now only reaches that are connected via the "to_id" are considered eclipsed reaches.
- Precision has been added to the rating curves used to inform the incremental normal depth runs by reducing the amount of rounding.
- CRS is now stored as WKT instead of EPSG in the ripple.json file to more robustly represent all possible CRSs; e.g., ESRI.
Release v0.6.2
Bugfix Release 0.6.2
This Release fixes several bugs associated with conflation. To aid in identifying and fixing these bugs, improvements were made in the logging for the conflation endpoint. In summary, the fixes and changes incorporated in this PR improve the consistency and quality of the conflation process, computations, and metrics in genera with special attention for handling junctions and headwater reaches.
Release v0.6.1
Bugfix Release 0.6.1
Users Changelog
This release of ripple1d
fixes several bugs identified during testing.
Features Added
- A minor change was added to the logging behavior to improve error tracking.
Bug Fixes
-
A bug causing increasing processing time when calling
creat_ras_terrain
in parallel mode. -
A bug in the
extract_submodel
endpoint which failed when trying to grab the upstream cross section. A check was added for the eclipsed parameter, where if true no geopackage will be created. -
Several bugs associated with the
create_fim_lib endpoint
:- The library_directory arg was not being implemented correctly in the function.
- If a fim.db already exists append fuctionality has been implemented.
- If the directory containing the raw RAS depth grids is empty the clean up function will not be invoked.
-
Resolves issues introduced when a concave hull from a source model where cross section existed in the wrong direction (resulting in a multipart polygon). A check was added to correct direction and reverses the cross section if it was drawn incorrectly. This is limited to the development of the concave hull and does not modify the cross section direction for use in the modeling.
Release v0.6.0
Feature Release 0.6.0
Users Changelog
This release of ripple1d
adds 2 args to the create_fim_lib endpoint, adds a concave hull of the cross sections to the geopackage, and fixes a bug associated with the depth grids.
Features Added
New library directory argument
A new required arg, "library_directory", has been added to the create_fim_lib endpoint. This new arg specifies where the output directory for the FIM grids and database.
New cleanup argument
A new required arg, "cleanup", has been added to the create_fim_lib endpoint. If this arg is True the raw HEC-RAS depth grids are deleted. If False they are not deleted.
Concave hull of cross sections
A layer representing the concave hull of the cross sections has been added to the geopackage for the source model and the network based model. It also improves how the concave hull is handled at junctions by explicitly creating a junction concave hull and then merging it in with the xs concave hull.
Bug Fixes
- An error was arising when all normal depth runs resulted in water surface elevations that were below the mapping terrain which means no resulting depth grids were being produced. Previously the code assumed at least 1 depth grid would be present. This has been fixed by obtaining the "terrain part" of the raw RAS grid from the RAS terrain instead of the first depth grid in the raw RAS result folder.
Developers Changelog
- Feature/concave hulls by @mdeshotel in #175
- Feature/delete raw ras grids by @mdeshotel in #179
- Bug/depth grids by @mdeshotel in #180
- Feature/fim directory by @mdeshotel in #182
Release v0.5.0
Feature Release 0.5.0
Users Changelog
This release of ripple1d
incorporates geometry extraction, conflation, and conflation metrics into the API, and fixes several bugs.
Features Added
Conflation improvements
- The source HEC-RAS river centerline is now clipped to the most upstream and most downstream cross sections prior to starting conflation. This helps prevent identifying network reaches that are far away from the cross sections and improves the accuracy of the conflation.
- Overlapped reaches are now tracked and documented in the conflation json file
- A bbox column has been added to the network parquet file for faster reading. This was especially needed for the new conflation endpoint since each request needs to load the parquet file. Load times without the bbox column were between 5-20 seconds; this is reduced to 1-2 seconds witht the bbox column.
- The conflation function now reads locally instead of from s3.
- The conflation function no longer creates a STAC item.
- RAS metadata is now added to the conflation json.
- The source network's metadata is now added to the conflation json.
- Length and flow units are now documented in the conflation json file.
Conflation Metrics
Three metrics are computed to asses the qualitiy of the conflation.
- Coverage: The the start and end location of the reach coverage is computed as a ratio of the length of the network reach.
- Lengths: The lengths between the most upstream cross section and most downstream cross section along the network reach and source HEC-RAS Model's centerline is computed. The ratio of the two lengths is also provided.
- XS: The distance between where the network reach and HEC-RAS Model's centerline intersects the cross sections is computed. A similar comparison is performed using the cross section's thalweg location and the network reaches intersection location with the cross sections. The mean, min, max, std, and quartiles are provided as a summary for both comparisons.
Geometry Extraction improvements
- A new function to verify .prj file is a HEC-RAS file has been added.
- The extracted geopackage now contians a non-spatial metadata table for the souce HEC-RAS model.
- Tests have been added for extracting geopackage from HEC-RAS model.
- Additional attributes are added to the source model gpkg for downstream use.
- Units are extracted from the source RAS model and added to metadata.
API
- An endpoint was added for extracting geometry and relevant metdata for the soure HEC-RAS models and storing it in in a geopackage.
- An endpoint to compute conflation metric was added.
- An endpoint for conflation (which includes metrics calculations) was added.
- Tests were added for the conflation, conflation metrics, and geopackage endpoints.
Bug Fixes
- Reaches whose conflation results indicate upstream and downstream cross sections are the same are now considered a failed conflation.
- The function to create a concave hull for the cross sections has been improved when junctions are present.
- Eclipsed reaches are now better identified and are documented in the conflation json with a boolean.
- A check is now performed to ensure cross sections intersect the source HEC-RAS model's river centerline. If cross sections do not intersect the centerline they are dropped.
- A conflation json is no longer written for source HEC-RAS models that fail to conflate.
- Handling has been added to subset gpkg endpoint for river stationings of interpolated. These river stations contain an "*" to indicate interpolated cross section.
- Several issues with the automated API tests were identified and fixed.
- API tests no longer re-run gpkg_from_ras and conflate_model for every reach; just once per source test model.
- When API tests pass the resulting files are now removed automatically. Resulting files for tests that fail are not removed so that the tester can better trouble shoot.
Developers Changelog
- Update to incorporate v0.4.1 changes by @slawler in #144
- Merge main to dev after 0.4.2 release by @ar-siddiqui in #146
- Feature/src gpkg endpoint by @slawler in #155
- Feature/conflation metric by @slawler in #154
- Bugfix/extract submodel by @mdeshotel in #159
- Bugfix/conflation tests by @mdeshotel in #158
- Bugfix/stationing handle river stationing of interpolated cross sections by @mdeshotel in #162
- Bugfix/conflation by @mdeshotel in #161
- Bugfix/compute metrics by @mdeshotel in #164
Closes #92
Closes #117
Closes #137
Closes #147
Closes #148
Closes #149
Closes #150
Closes #160
Release v0.4.2
Bugfix Release 0.4.2
This release fixes a bug which caused a failure when calling subset_gpkg
in cases where the model geometries are simple (no structures / no junctions). This was not caught with test models because test models all have structures.
Release v0.4.1
Bugfix Release 0.4.1
Users Changelog
This release of ripple1d
fixes several bugs identified during testing.
Features Added
No features added in this version.
API
ripple_version
is no longer an option for the body of any endpoints.
Bug Fixes
- A bug due to a hard coded terrain path name causing an error on
create_fim_lib
has been resolved. - A bug associated with the
ripple_version
parameter has been resolved by removing the parameter from the body of requests (see note in API above). - An issue with including lateral structures (not yet implemented) in the ras geometry files causing hang ups has been resolved. This fix resolved another issue where stationing was mis-applied in the newly created ras geometry files.
Developers Changelog
In order to perform tests locally an additional dependency pytest-json-report has been added. This package is not included in the pyproj manifest as it is not required to ship with the software. As a reminder, for users wishing to run tests, pytest and build are additional required dependencies not included in the build manifest.
Updated test coverage
- All NWM reaches in the Baxter model are now inluded in the tests.
- Bugfix for hard coded DEM part in file name by @mdeshotel in #139
- Add release branch by @ar-siddiqui in #136
- Bugfix/ripple version api by @mdeshotel in #135
- Bugfix/structures by @mdeshotel in #141
Release v0.4.0
Feature Release 0.4.0
Users Changelog
This release of ripple1d
incorporates preliminary support for hydraulic structures in HEC-RAS, improves the installation and setup process, and fixes several bugs.
Features Added
Hydraulic Structures
-
All data associated with 1D structures that HEC-RAS supports is now included in the geometry extraction functions. (Endpoint exposing this will come in a future release). The extraction of data from the source models is now more robust and better handles different versions of RAS which wrote files slightly different.
-
NWM reach models built from HEC-RAS source models that have the following structures will have structure data included:
- Inline Structures
- Bridges
- Culverts
- Multiple Opening
Not included are lateral structures. Handling of lateral structures (wiers) will require additional assumptions/considerations to account for excess discharge (storage area, 2d area, another reach, etc).
Conflation improvements
- The conflation algorithm has been improved to accommodate models containing junctions. Where junctions exist, HEC-RAS rivers will be joined and the down stream XS (downstream of the junction) will be captured in the upstream model.
- Conflation now incorporates an additional downstream XS if available, extending beyond the NWM reach length to prevent gaps in FIM coverage.
API
ripple_version
is no longer a required argument for any endpoint.
Bug Fixes
Numerous small bug fixes were made to enable the support of hydraulic structures. Other notable bugs include:
- HEC-RAS stations with length > 8 characters are now supported.
- Mangled profile names resulting from negative elevations producing FIM libraries has been fixed.
Developers Changelog
- Add contributing guideline by @ar-siddiqui in #119
- Feature/add structures by @mdeshotel in #120 Ripple should now support all 1D structures that HEC-RAS supports with the exception of lateral structures. Handling of lateral structures may require additional assumptions/thought as lateral structures require something to receive any excess discharge (storage area, 2d area, another reach, etc). The extraction of data from the source models is now more robust and better handles different versions of RAS which wrote files slightly different.
- Feature/conflation improvements 1d by @mdeshotel in #121 The conflation algorithm has been greatly improved for models containing junctions.
- Structure testing by @mdeshotel in #124 Bug fixes that were identified after adding additional test models to cover all supported structure types. The bug fixes were not actually related to structures. The first one was related to stationing limitations and the second was related to negative elevations when producing FIM libraries.
- Docs/add user dev sections by @slawler in #125
- add import os to rasfim by @slawler in #127
Closes #114
Closes #113
Closes #97
Closes #77
Closes #80
Closes #85
Closes #96
Release v0.3.11
bump release
Release v0.3.10
Summary
This release renames the package from ripple
to ripple1d
and adds an executable for the ripple manager (flask and huey) and fixes a startup bug. Several patches were included from the v0.3.0 release involving automation of docs, builds, and other ci related updates not impacting the core software.
Changes
-
Package Name:
- Updated
pyproject.toml
to reflect the new package name. - Changed all import statements from
ripple
toripple1d
.
- Updated
-
Installation and API
- Added build setup for PyPi.
- Removed start-up scripts, replaced with a pre-built command-line executable.
- Documentation:
- Added build the docs.