Skip to main content

Python tools for MRR-PRO loading, RaProMPro processing, plotting, and analysis.

Project description

mrrpropy

MRR PRO code for processing and analysis.

Scientific references

The retained RaProMPro processing implementation used for MRR-PRO data is associated with:

  • Garcia-Benadi A, Bech J, Gonzalez S, Udina M, Codina B. A New Methodology to Characterise the Radar Bright Band Using Doppler Spectral Moments from Vertically Pointing Radar Observations. Remote Sensing. 2021;13(21):4323. https://doi.org/10.3390/rs13214323

The corresponding original code repository is:

For MRR-2 data, a related implementation is distributed separately as RaProM.py:

  • Garcia-Benadi A, Bech J, Gonzalez S, Udina M, Codina B, Georgis JF. Precipitation Type Classification of Micro Rain Radar Data Using an Improved Doppler Spectral Processing Methodology. Remote Sensing. 2020;12(24):4113. https://doi.org/10.3390/rs12244113

Repository workflow

This repository keeps the scientific processing code intact while standardizing the developer workflow around it.

  • Install the project in editable mode with uv sync --group dev or pip install -e ..
  • Import the package as mrrpropy.
  • Use the optional CLI entry point as mrrpropy version.
  • Keep scientific algorithm changes confined to the processing modules and treat workflow, packaging, tests, and CI as separate concerns.

Development

Typical local commands:

uv sync --group dev
uv run python -c "import mrrpropy"
uv run pytest -m "not slow"
uv run pytest -m slow
uv run mypy
uv run black --check mrrpropy tests
uv run python scripts/benchmark_raprompro.py --quick --repeats 1

Production

Before using the package in production, follow the release checklist in PRODUCTION.md.

Releasing

To build and publish the package, follow RELEASING.md. The repository includes GitHub Actions workflows for release validation and Trusted Publishing to PyPI.

Tests

The test suite is organized into:

  • fast checks for import and basic data access,
  • integration checks for end-to-end workflow behavior,
  • slow plotting regressions that write figures under tests/figures/,
  • generated NetCDF and other non-figure test outputs under tests/generated/.

Bundled NetCDF files under tests/data/ remain the reference fixtures. Generated outputs should go to ignored test output directories, not back into tracked fixture paths.

Benchmarking

For quick performance checks of the canonical processing path, use the bundled 10-minute RAW subset:

uv run python scripts/benchmark_raprompro.py --quick --repeats 1

For the full one-hour fixture, pass --raw-path explicitly or omit --quick.

Documentation

The repository includes a static documentation site for GitHub Pages.

  • Build locally with python scripts/build_docs.py after installing .[docs].
  • Preview locally with python -m http.server 8000 --directory site after the build.
  • The landing pages live under docs/.
  • The API reference is generated with pdoc from package docstrings and signatures.

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

mrrpropy-0.1.0.tar.gz (57.7 MB view details)

Uploaded Source

Built Distribution

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

mrrpropy-0.1.0-py3-none-any.whl (156.7 kB view details)

Uploaded Python 3

File details

Details for the file mrrpropy-0.1.0.tar.gz.

File metadata

  • Download URL: mrrpropy-0.1.0.tar.gz
  • Upload date:
  • Size: 57.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mrrpropy-0.1.0.tar.gz
Algorithm Hash digest
SHA256 8d9c411d3781ba9139fa0483896a92635ffd43346245ab69dd2e0a4e547ed25a
MD5 9069fc9b163916592213bf0bc2689442
BLAKE2b-256 a0518bc0e3494b3d5c711dfcf218a64c08911a2683adcfedb47baf542ffc25f3

See more details on using hashes here.

Provenance

The following attestation bundles were made for mrrpropy-0.1.0.tar.gz:

Publisher: publish-package.yml on jabravoaranda/mrrpropy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mrrpropy-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: mrrpropy-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 156.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mrrpropy-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 fe882d2d7dec89eecb36fc46ff8177a18e7d8df40292c50111ee141a0b9e6dcf
MD5 f5944638e3fb350c5d25bde0b7e6db82
BLAKE2b-256 af055d16e9a80936c00a92c8b7a06a5649a664f7747c8456c0e1f0f45abd6db7

See more details on using hashes here.

Provenance

The following attestation bundles were made for mrrpropy-0.1.0-py3-none-any.whl:

Publisher: publish-package.yml on jabravoaranda/mrrpropy

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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