Skip to main content

A Python package for analytics in dam management workflows.

Project description

OptiDamTool

Status Description
PyPI PyPI - Version PyPI - Status PyPI - Python Version PyPI - Wheel
GitHub GitHub commit activity GitHub last commit flake8 mypy pytest
Codecov codecov
Read the Docs Read the Docs
PePy Pepy Total Downloads
License GitHub License

OptiDamTool is a Python package designed for analytics and decision-making in dam management. Conceptualized and released on May 29, 2025, the package offers tools for modeling and analyzing hydrological flow across a network of connected dams.

Leveraging functionalities from the open-source GeoAnalyze package, OptiDamTool provides classes that that assist users in preparing inputs for simulating water erosion and sediment transport, and supports decision-making in dam network deployment aimed at environmental sustainability.

Classes

OptiDamTool.WatemSedem

Provides tools to prepare inputs for the WaTEM/SEDEM model, which simulates soil erosion, sediment transport capacity, and sediment delivery to stream networks at the watershed scale. While this class includes built-in methods for generating most required inputs, it is still recommended to consult the GeoAnalyze documentation for any geospatial operations not covered by its methods.

  • Converts Digital Elevation Model (DEM) data into the stream files required for the WaTEM/SEDEM model with the river routing = 1 extension enabled.
  • Extends input rasters beyond the model region and fills NoData cells with valid values, as WaTEM/SEDEM does not support NoData.
  • Performs reprojection, clipping, resolution rescaling, and reclassification of rasters.
  • Processes open-source Esri land cover data.
  • Generates a land management factor raster from land cover inputs.
  • Computes the product of soil erodibility and rainfall erosivity factors.
  • Converts raster files to the Idrisi raster format, with the .rst file extension.
  • Generates effective upstream drainage area polygons for selected dam locations within a stream network.

OptiDamTool.Network

Offers methods for establishing hydrological and sedimentation flow connectivity between dams using the stream network. This class provides the following feature:

  • Identifies connectivity between adjacent upstream and downstream dams.
  • Computes the effective upstream drainage area values for selected dam locations within a stream network.

Easy Installation

To install, use pip:

pip install OptiDamTool

Quickstart

A brief example of how to start:

>>> import OptiDamTool
>>> watemsedem = OptiDamTool.WatemSedem()
>>> network = OptiDamTool.Network()

Documentation

For detailed information, see the documentation.

Support

If this project has been helpful and you'd like to contribute to its development, consider sponsoring with a coffee! Support will help maintain, improve, and expand this open-source project, ensuring continued valuable tools for the community.

Buy Me a Coffee

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

optidamtool-0.2.1.tar.gz (17.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

optidamtool-0.2.1-py3-none-any.whl (16.0 kB view details)

Uploaded Python 3

File details

Details for the file optidamtool-0.2.1.tar.gz.

File metadata

  • Download URL: optidamtool-0.2.1.tar.gz
  • Upload date:
  • Size: 17.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.3

File hashes

Hashes for optidamtool-0.2.1.tar.gz
Algorithm Hash digest
SHA256 c0de927629d55df51b846cf4a528079bb4d7f65c1b8b561a632f1d0bb647e11e
MD5 18977cfe710e33075555ad2403e2951a
BLAKE2b-256 8ad8587bc64eaea8412bcb86a8c263e7919a675841d5a66c3a52df2650f24300

See more details on using hashes here.

File details

Details for the file optidamtool-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: optidamtool-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 16.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.3

File hashes

Hashes for optidamtool-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 998c398d4ea21be65062987aa7eb8586e8abe29c8d66e1d3091b16e1691c5d71
MD5 65aee103b5fb5c981188966d46a2ce73
BLAKE2b-256 8d1d41ed406489ba5981daf46fd74338cb645023e34f9fb4c5e19a910b4e9ba8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page