Skip to main content

Python package for mesoscale Hydrological Model

Project description

PymHM - Python Mesoscale Hydrological Model

Python Version License: GPL v2 PyPI version

A Python package for mesoscale hydrological modeling, designed to work both as a standalone library and as a QGIS plugin.

Features

  • Hydrological Modeling: Core functionality for mesoscale hydrological processes
  • QGIS Integration: Seamless integration with QGIS 3.0+ as a plugin
  • Data Processing: Tools for handling hydrological data and model inputs
  • Visualization: Built-in plotting and visualization capabilities
  • Extensible: Modular design for easy extension and customization

Installation

From PyPI (Recommended)

pip install pymhm

From Source

git clone https://github.com/SanjeevBashyal/pymhm.git
cd pymhm
pip install -e .

For QGIS Plugin

  1. Download the plugin from the QGIS Plugin Manager
  2. Or install manually by copying the pymhm folder to your QGIS plugins directory

Quick Start

As a Python Package

import pymhm

# Initialize the model
model = pymhm.HydrologicalModel()

# Run simulation
results = model.run_simulation()

As a QGIS Plugin

  1. Open QGIS
  2. Go to Plugins → Manage and Install Plugins
  3. Search for "PymHM"
  4. Install and activate the plugin
  5. Access the plugin from the Plugins menu

Documentation

Requirements

  • Python 3.8+
  • NumPy >= 1.20.0
  • SciPy >= 1.7.0
  • Pandas >= 1.3.0
  • For QGIS plugin: QGIS 3.0+

Development

Setting up Development Environment

git clone https://github.com/SanjeevBashyal/pymhm.git
cd pymhm
pip install -e .[dev]

Running Tests

pytest

Building Documentation

pip install -e .[docs]
sphinx-build -b html docs/ docs/_build/

Contributing

We welcome contributions! Please see our Contributing Guide for details.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License

This project is licensed under the GNU General Public License v2.0 - see the LICENSE file for details.

Citation

If you use PymHM in your research, please cite:

@software{pymhm2025,
  title={PymHM: Python Mesoscale Hydrological Model},
  author={Sanjeev Bashyal},
  year={2025},
  url={https://github.com/SanjeevBashyal/pymhm},
  version={0.1.0}
}

Support

Changelog

See CHANGELOG.md for a list of changes and version history.

Acknowledgments

  • QGIS Development Team for the excellent platform
  • Python Scientific Community for the amazing tools
  • Contributors and users of PymHM

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

pymhm-0.1.1.tar.gz (26.7 MB view details)

Uploaded Source

Built Distribution

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

pymhm-0.1.1-py3-none-any.whl (4.5 MB view details)

Uploaded Python 3

File details

Details for the file pymhm-0.1.1.tar.gz.

File metadata

  • Download URL: pymhm-0.1.1.tar.gz
  • Upload date:
  • Size: 26.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for pymhm-0.1.1.tar.gz
Algorithm Hash digest
SHA256 5f57f52e9f1d8b0cf29b04f96df4b7b332fe7ff6aa484a69ad8c28e2efaa8364
MD5 c253ff8f4be65d88b33364c56f94db02
BLAKE2b-256 4a6694f99455876d0ca1e663db66b84fadf471c58a177d9d583d07474e0854ec

See more details on using hashes here.

File details

Details for the file pymhm-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: pymhm-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 4.5 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.3

File hashes

Hashes for pymhm-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a8db7fec0bd7662b9e3fc76e8040b0aedb6cfe89b1e75a0133408699fe360d47
MD5 770123ede06b57226ce7e96a17cb8b6c
BLAKE2b-256 7c2834781e4ccda2b8082347568d90d645b88b5c8867f3191f1641c65f42cd5c

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