Skip to main content

A Python package for estimating environmental flow requirements using hydrological methods.

Project description

eflowpy

eflowpy is a Python package for estimating environmental flow requirements using hydrological methods based on streamflow time series data. It provides a consistent and extensible interface for calculating commonly used flow-based environmental indicators.

Features

  • Calculate environmental flow recommendations using:
    • Tennant Method
    • Flow Duration Curve (FDC)
    • GEFC (Generalized Environmental Flow Criteria)
    • 7Q10 Method
    • Tessman Method
  • Built-in plotting support:
    • Time series plots
    • Flow threshold overlays

Installation

To install eflowpy from PyPI:

pip install eflowpy

How to Use

Quick Start Example

import pandas as pd
from eflowpy.hydrological.tennant import Tennant
from eflowpy.utils.data_reader import read_streamflow_data

# Load streamflow time series from file
flow_series = read_streamflow_data("gauge_12013059_daily.csv", folder="path/to/your/data")

# Run Tennant method
tennant = Tennant(flow_series)
tennant.print_summary()
result = tennant.calculate()
print(result)

# Plot bar chart and streamflow overlay
tennant.plot()
tennant.plot_with_levels()

Method Applicability

The table below shows which environmental flow methods in eflowpy can be applied to daily or monthly streamflow datasets:

Method Daily Data Monthly Data Notes
Tennant ✅ Yes ✅ Yes Uses mean flow → works for both temporal scales
FDC ✅ Yes ✅ Yes Based on sorting values by exceedance probability
GEFC ✅ Yes ✅ Yes Relies on mean flow thresholds (30%, 60%, 100%)
7Q10 ✅ Yes ❌ No Requires 7-day rolling min, so daily data is mandatory
Tessman ✅ Yes ✅ Yes Designed for monthly flow but also works with daily (via resampling)

License

This project is licensed under the MIT License.

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

eflowpy-1.0.1.tar.gz (9.4 kB view details)

Uploaded Source

Built Distribution

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

eflowpy-1.0.1-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file eflowpy-1.0.1.tar.gz.

File metadata

  • Download URL: eflowpy-1.0.1.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.11

File hashes

Hashes for eflowpy-1.0.1.tar.gz
Algorithm Hash digest
SHA256 ff673a8365f84dfabbb0fbeaa3d51236f716164d1f7fdc1e8b3b61fd30faadcd
MD5 a8c948d3919d25f63a110f1bbf558938
BLAKE2b-256 8cc1459df6fb9bb38ced4d8a8db8265c57784574430477346b281576b57d542a

See more details on using hashes here.

File details

Details for the file eflowpy-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: eflowpy-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 12.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.11

File hashes

Hashes for eflowpy-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 42852139bf377ffb5cb6ece25d1124980549f9917bf121d10abfaa238f1c67d8
MD5 25fd5235c735ca4f99d203b8b529314f
BLAKE2b-256 51070132a7d65a621ec70824d2a0accb099e025765f140e341b137fc2992f5af

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