# OptiDamTool
| <big>Status</big> | <big>Description</big> |
| --- | --- |
| **PyPI**|     |
| **GitHub** |   [](https://github.com/debpal/OptiDamTool/actions/workflows/linting.yml) [](https://github.com/debpal/OptiDamTool/actions/workflows/typing.yml) [](https://github.com/debpal/OptiDamTool/actions/workflows/testing.yml) |
| **Codecov** | [](https://codecov.io/gh/debpal/OptiDamTool) |
| **Read** _the_ **Docs** |  |
| **PePy** |  |
| **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](https://github.com/debpal/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](https://github.com/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](https://livingatlas.arcgis.com/landcover/).
* 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.
* Identifies connectivity between adjacent upstream and downstream dams.
* Computes the effective upstream drainage area values for selected dam locations within a stream network.
* Estimates sediment inflow to dams based on effective upstream drainage areas.
### `OptiDamTool.Analysis`
Provides methods for analyzing simulation outputs and generating insights.
* Integrates sediment delivery to stream segments.
* Generates stream shapefiles with comprehensive information of each segment's drainage area and sediment input.
* Summarizes total sediment dynamics for the model region.
* Assigns a Coordinate Reference System and the default `GTiff` driver to output Idrisi raster files from a WaTEM/SEDEM simulation.
## Easy Installation
To install, use pip:
```bash
pip install OptiDamTool
```
## Quickstart
A brief example of how to start:
```python
>>> import OptiDamTool
>>> watemsedem = OptiDamTool.WatemSedem()
>>> network = OptiDamTool.Network()
```
## Documentation
For detailed information, see the [documentation](https://optidamtool.readthedocs.io/en/latest/).
## 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.
[](https://www.buymeacoffee.com/debasish_pal)
Raw data
{
"_id": null,
"home_page": null,
"name": "OptiDamTool",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10",
"maintainer_email": null,
"keywords": "Erosion, Sedimentation, Hydrologic modeling, Dam management, Optimization, Decision support",
"author": null,
"author_email": "Debasish Pal <bestdebasish@gmail.com>",
"download_url": "https://files.pythonhosted.org/packages/b3/39/c05b54b909ec6795bd5f8e93f9c66faa32b406eaa80ef297fec2738c9ca1/optidamtool-0.2.2.tar.gz",
"platform": null,
"description": "# OptiDamTool\r\n\r\n| <big>Status</big> | <big>Description</big> |\r\n| --- | --- |\r\n| **PyPI**|     |\r\n| **GitHub** |   [](https://github.com/debpal/OptiDamTool/actions/workflows/linting.yml) [](https://github.com/debpal/OptiDamTool/actions/workflows/typing.yml) [](https://github.com/debpal/OptiDamTool/actions/workflows/testing.yml) |\r\n| **Codecov** | [](https://codecov.io/gh/debpal/OptiDamTool) |\r\n| **Read** _the_ **Docs** |  |\r\n| **PePy** |  |\r\n| **License** |  |\r\n\r\n\r\n`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.\r\n\r\n\r\nLeveraging functionalities from the open-source [GeoAnalyze](https://github.com/debpal/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.\r\n\r\n## Classes\r\n\r\n### `OptiDamTool.WatemSedem`\r\n\r\nProvides tools to prepare inputs for the [WaTEM/SEDEM](https://github.com/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.\r\n\r\n* Converts Digital Elevation Model (DEM) data into the stream files required for the WaTEM/SEDEM model with the `river routing = 1` extension enabled.\r\n* Extends input rasters beyond the model region and fills NoData cells with valid values, as WaTEM/SEDEM does not support NoData.\r\n* Performs reprojection, clipping, resolution rescaling, and reclassification of rasters.\r\n* Processes open-source [Esri land cover data](https://livingatlas.arcgis.com/landcover/).\r\n* Generates a land management factor raster from land cover inputs.\r\n* Computes the product of soil erodibility and rainfall erosivity factors.\r\n* Converts raster files to the Idrisi raster format, with the `.rst` file extension.\r\n* Generates effective upstream drainage area polygons for selected dam locations within a stream network.\r\n\r\n\r\n### `OptiDamTool.Network` \r\nOffers methods for establishing hydrological and sedimentation flow connectivity between dams using the stream network.\r\n\r\n* Identifies connectivity between adjacent upstream and downstream dams.\r\n* Computes the effective upstream drainage area values for selected dam locations within a stream network.\r\n* Estimates sediment inflow to dams based on effective upstream drainage areas.\r\n\r\n\r\n### `OptiDamTool.Analysis` \r\nProvides methods for analyzing simulation outputs and generating insights.\r\n\r\n* Integrates sediment delivery to stream segments.\r\n* Generates stream shapefiles with comprehensive information of each segment's drainage area and sediment input.\r\n* Summarizes total sediment dynamics for the model region.\r\n* Assigns a Coordinate Reference System and the default `GTiff` driver to output Idrisi raster files from a WaTEM/SEDEM simulation.\r\n\r\n\r\n## Easy Installation\r\n\r\nTo install, use pip:\r\n\r\n```bash\r\npip install OptiDamTool\r\n```\r\n\r\n\r\n## Quickstart\r\nA brief example of how to start:\r\n\r\n```python\r\n>>> import OptiDamTool\r\n>>> watemsedem = OptiDamTool.WatemSedem()\r\n>>> network = OptiDamTool.Network()\r\n```\r\n\r\n\r\n## Documentation\r\n\r\nFor detailed information, see the [documentation](https://optidamtool.readthedocs.io/en/latest/).\r\n\r\n## Support\r\n\r\nIf 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.\r\n\r\n\r\n[](https://www.buymeacoffee.com/debasish_pal)\r\n\r\n\r\n",
"bugtrack_url": null,
"license": null,
"summary": "A Python package for analytics in dam management workflows.",
"version": "0.2.2",
"project_urls": {
"Documentation": "https://optidamtool.readthedocs.io/en/latest/",
"Homepage": "https://github.com/debpal/OptiDamTool"
},
"split_keywords": [
"erosion",
" sedimentation",
" hydrologic modeling",
" dam management",
" optimization",
" decision support"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "ba0af0f38b391f621178db86889469ee8d8ab1d48c6301d2151de6a4b479bd09",
"md5": "84149d5ecc89858e3df402571b8fc35b",
"sha256": "97be5b30d24efbb5f3e760220e939a43a6ee310594c16edae59406f98a87bcb4"
},
"downloads": -1,
"filename": "optidamtool-0.2.2-py3-none-any.whl",
"has_sig": false,
"md5_digest": "84149d5ecc89858e3df402571b8fc35b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.10",
"size": 20255,
"upload_time": "2025-07-10T11:47:26",
"upload_time_iso_8601": "2025-07-10T11:47:26.327123Z",
"url": "https://files.pythonhosted.org/packages/ba/0a/f0f38b391f621178db86889469ee8d8ab1d48c6301d2151de6a4b479bd09/optidamtool-0.2.2-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "b339c05b54b909ec6795bd5f8e93f9c66faa32b406eaa80ef297fec2738c9ca1",
"md5": "ef3edbf66c7121b03e6190cdd36afb9d",
"sha256": "ef9344a71070a099d9def957ee8841600b6cd54850fa7ca4faed812db6611e3f"
},
"downloads": -1,
"filename": "optidamtool-0.2.2.tar.gz",
"has_sig": false,
"md5_digest": "ef3edbf66c7121b03e6190cdd36afb9d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10",
"size": 21409,
"upload_time": "2025-07-10T11:47:28",
"upload_time_iso_8601": "2025-07-10T11:47:28.338510Z",
"url": "https://files.pythonhosted.org/packages/b3/39/c05b54b909ec6795bd5f8e93f9c66faa32b406eaa80ef297fec2738c9ca1/optidamtool-0.2.2.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-07-10 11:47:28",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "debpal",
"github_project": "OptiDamTool",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "optidamtool"
}