Skip to main content

A Python package for running the HOLOS 4.0 CLI.

Project description

PyHolos

A Python wrapper for the HOLOS 4.0 CLI - enabling estimations of Canadian agricultural greenhouse gas emissions.

Overview

PyHolos provides a Python interface to the HOLOS CLI, allowing you to:

  • Launch HOLOS simulations from Python scripts
  • Model farm systems with minimal input data (PyHolos estimates missing parameters)
  • Generate structured input files for the HOLOS CLI
  • Process and visualize simulation results

Features

  • Farm Modeling: Support for livestock (beef, dairy, sheep) and land management systems (crops, carbon sequestration)
  • Data Integration: Automatic integration with Soil Landscapes of Canada (SLC) data
  • Flexible Input: Work with JSON configurations or pre-structured farm data
  • Post-processing: Built-in tools for analyzing and plotting simulation results

Requirements

  • Python >= 3.12
  • Dependencies: geojson, shapely, pandas, pydantic

Installation

For detailed installation instructions including prerequisites (Git, conda, PyCharm setup), see the documentation.

Quick Start

from pathlib import Path
from pyholos import launching

# Launch HOLOS using a JSON farm configuration
launching.launch_holos(
    path_dir_farms=Path('path/to/farm_data'),
    name_farm_json='farm.json',
    path_dir_outputs=Path('path/to/outputs'),
    id_slc_polygon=851003
)

See the examples directory for more usage patterns.

Documentation

Full documentation is available in the documentation directory. Build it locally using Sphinx or refer to individual .rst files for:

License

This project is licensed under the terms specified in LICENSE.

Contributing

Contributions are welcome! Please submit issues and pull requests via the GitHub repository.

Support

For questions or issues, please open an issue on the issue tracker.

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

pyholos-0.2.1b0.tar.gz (97.4 MB view details)

Uploaded Source

Built Distribution

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

pyholos-0.2.1b0-py3-none-any.whl (97.4 MB view details)

Uploaded Python 3

File details

Details for the file pyholos-0.2.1b0.tar.gz.

File metadata

  • Download URL: pyholos-0.2.1b0.tar.gz
  • Upload date:
  • Size: 97.4 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyholos-0.2.1b0.tar.gz
Algorithm Hash digest
SHA256 5213823a4fff6f4cc10b4090f7efafd237f73ffee75fe2a45d982c56fd587c3b
MD5 bdd0c9ff71a90b30e07edb472a807cd0
BLAKE2b-256 408355f92a00badee4a80201bc303435c126c543b5c1a01a55a66c94aa0d1096

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyholos-0.2.1b0.tar.gz:

Publisher: main.yml on holos-aafc/pyholos

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

File details

Details for the file pyholos-0.2.1b0-py3-none-any.whl.

File metadata

  • Download URL: pyholos-0.2.1b0-py3-none-any.whl
  • Upload date:
  • Size: 97.4 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for pyholos-0.2.1b0-py3-none-any.whl
Algorithm Hash digest
SHA256 189c77a1cd7cc63c0380f1e8f1fe4da0efa505a0ec20464a337f15488a1e6be1
MD5 98178d81c8b955569b1dd70d3ba7414a
BLAKE2b-256 01eb6be799f8392a11db8040f033b51d3600db3585dd3d1dd46dc6ad557aaae7

See more details on using hashes here.

Provenance

The following attestation bundles were made for pyholos-0.2.1b0-py3-none-any.whl:

Publisher: main.yml on holos-aafc/pyholos

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