disstans

Package repository for the Decomposition and Inference of Sources through Spatiotemporal Analysis of Network Signals (DISSTANS) toolbox.

GPL-3.0 License

Downloads
450
Stars
22

Bot releases are hidden (Show)

disstans - DISSTANS Version 2.1.1 Latest Release

Published by tobiscode 3 months ago

Minor release addressing the scipy.sparse.spmatrix.A deprecation.

Full Changelog: https://github.com/tobiscode/disstans/compare/v2.1...v2.1.1

disstans - DISSTANS Version 2.1

Published by tobiscode 4 months ago

This is the release addressing Python 3.12 compatibility and other upcoming deprecations in upstream packages. The user-facing changes are the following:

  • okada-wrapper is now an optional dependency, i.e., DISSTANS can be installed without it but some functions in disstans.earthquakes will fail if the package is not found. The environment*.yml files still contain okada-wrapper however to maintain feature parity with past versions.
  • New functions for the Network object: remove_models and copy_timeseries convenience shorthands.
  • Timeseries covariances can now be verified using Timeseries.check_covariances and there is a new cleaning option std_bad in processing.clean.
  • The decompose function can now detrend input data and fill missing values.

Full Changelog: https://github.com/tobiscode/disstans/compare/v2.0.1...v2.1

disstans - DISSTANS Version 2.0.1

Published by tobiscode 7 months ago

This is a minor release including bugfixes in various places as well as changes to address deprecations in upstream packages.

Full Changelog: https://github.com/tobiscode/disstans/compare/v2.0...v2.0.1

disstans - DISSTANS Version 2.0

Published by tobiscode 11 months ago

This is the final release for the massively-overhauled DISSTANS Version 2.

The major change introduced is the increased numerical stability for L0 solutions. As a downside, all penalty, eps, and scale parameters of lasso_regression and ReweightingFunction will have to be updated. This is because of a change in the cost function that is optimized. A good initial starting point is to increase penalty by a factor of 10, decrease eps by one order of magnitude, and compensate scale by increasing it by one order of magnitude. All tutorials and examples have been updated to reflect this change and can be seen as a helping hand in the transition. Specifying reweighting functions has become mandatory now, and the spatial/local keyword names have been changed for increased clarity.

Other major changes (continued from the 1.2 Beta) include:

  1. Python 3.11-style type annotations directly in the source code.
  2. A Frequently Asked Questions section in the documentation.
  3. Network.gui() can now take a latitude/longitude bounding box as input.
  4. Multiple timescales for individual Exponential & Logarithmic models, including an option for (all of) the solvers to enforce sign constraints.
  5. A DecayingSplineSet that is one-sided (becoming a child class of the new parent BaseSplineSet class).
  6. Network availability plots for regular Network objects.
  7. Added support for UNR's highrate timeseries file format .kenv.
  8. The model functions creating the mapping columns, i.e., the model coefficients, are now explicitly documented in the Model.get_mapping_single methods.

Minimum dependencies have also been updated. As a result and the major changes above, a complete reinstall of the environment and the package is recommended. Compared to the v2.0rc0 release candidate, only minor bugfixes and documentation improvements were added.

Full Changelog: https://github.com/tobiscode/disstans/compare/v1.1.2...v2.0

disstans - DISSTANS Version 2.0 Release Candidate

Published by tobiscode about 1 year ago

This is the first release candidate for the massively-overhauled DISSTANS Version 2.

The major change introduced is the increased numerical stability for L0 solutions. As a downside, all penalty, eps, and scale parameters of lasso_regression and ReweightingFunction will have to be updated. This is because of a change in the cost function that is optimized. A good initial starting point is to increase penalty by a factor of 10, decrease eps by one order of magnitude, and compensate scale by increasing it by one order of magnitude. All tutorials and examples have been updated to reflect this change and can be seen as a helping hand in the transition. Specifying reweighting functions has become mandatory now, and the spatial/local keyword names have been changed for increased clarity.

Other major changes (continued from the 1.2 Beta) include:

  1. Python 3.11-style type annotations directly in the source code.
  2. A Frequently Asked Questions section in the documentation.
  3. Network.gui() can now take a latitude/longitude bounding box as input.
  4. Multiple timescales for individual Exponential & Logarithmic models, including an option for (all of) the solvers to enforce sign constraints.
  5. A DecayingSplineSet that is one-sided (becoming a child class of the new parent BaseSplineSet class).
  6. Network availability plots for regular Network objects.
  7. Added support for UNR's highrate timeseries file format .kenv.
  8. The model functions creating the mapping columns, i.e., the model coefficients, are now explicitly documented in the Model.get_mapping_single methods.

Minimum dependencies have also been updated. As a result and the major changes above, a complete reinstall of the environment and the package is recommended. This version will remain in pre-release state for a while to see if there are any leftover bugs. Please continue to report them either through a GitHub issue or via email.

Full Changelog: https://github.com/tobiscode/disstans/compare/v1.1.2...v2.0rc0

disstans - DISSTANS Version 1.1.2

Published by tobiscode over 1 year ago

This is a bugfix release. It addresses some minor as well as not-so-minor issues, notably:

  • It fixes #1 by pinning the pandas version to <1.5, something that will be reversed in release 1.2.
  • The trends shown in the GUI and calculated by Station.get_trend() apparently used to throw just wrong solutions, which were traced back to the use of scipy.sparse.linalg.lsqr (possibly related due to the fact that the code was only using dense data). The switch to numpy.linalg.lstsq fixes this.
  • Showing trends in the GUI also failed when some stations did not have the required Timeseries or Model, now those stations are just ignored.
  • UNRTimeseries no longer fails when loading data with multiple reference longitudes, a sign for bad data.

Full Changelog: https://github.com/tobiscode/disstans/compare/v1.1.1...v1.1.2

disstans - DISSTANS Version 1.2 Beta

Published by tobiscode almost 2 years ago

This is a beta release of version 1.2 which includes a couple of notable changes, including:

  • Multiple timescales for individual Exponential & Logarithmic models, including an option for the lasso_regression solver to enforce sign constraints. (Support for other solvers is planned.)
  • A DecayingSplineSet that is one-sided (becoming a child class of the new parent BaseSplineSet class).
  • Network availability plots for regular Network objects.
  • Added support for UNR's highrate timeseries file format .kenv.

Most of these changes are barely tested, and will therefore be in beta stage for now.

Full Changelog: https://github.com/tobiscode/disstans/compare/v1.1.1...v1.2-beta

disstans - DISSTANS Version 1.1.1

Published by tobiscode almost 2 years ago

The paper describing DISSTANS is now accepted and published by Computers & Geosciences: Decomposition and Inference of Sources through Spatiotemporal Analysis of Network Signals: The DISSTANS Python package. This version adds the updated links, and fixes some documentation issues. Please consider this version as the final version for the published study.

Full Changelog: https://github.com/tobiscode/disstans/compare/v1.1...v1.1.1

disstans - DISSTANS Version 1.1

Published by tobiscode over 2 years ago

This version includes the code and documentation for the revisions suggested in the review process of the submitted manuscript.

Most notably, this version includes two methods to calculate average velocity fields from station velocities, updates dependencies, and adds smaller helper functions.

Full Changelog: https://github.com/tobiscode/disstans/compare/v1.0.2...v1.1

disstans - DISSTANS now available on PyPI with v1.0.2

Published by tobiscode over 2 years ago

This release adds the necessary configuration changes to enable publishing the package to the Python Package Index (PyPI), where pip gets its packages from. Check out the project homepage there: https://pypi.org/project/disstans/

The installation instructions have been updated accordingly; PyPI is now the recommended minimal installation method.

Full Changelog: https://github.com/tobiscode/disstans/compare/v1.0.1...v1.0.2

disstans - Minor bugfix release v1.0.1

Published by tobiscode over 2 years ago

This release addresses a locale bugfix in parse_unr_steps() and a DeprecationWarning in StepDetector.

Full Changelog: https://github.com/tobiscode/disstans/compare/v1.0...v1.0.1

disstans - First full DISSTANS release

Published by tobiscode over 2 years ago

I'm happy to officially release the first full version of DISSTANS.

This version contains the code with which the data, fits, and figures were created that were used in the submitted manuscript. (You can find a preprint here.)

If you find any bugs, please raise a GitHub issue.