Skip to main content

Python package to work with Energyplus input and output

Project description

GitHub test-and-publish PyPI - Python Version PyPI

opyplus

opyplus is a package allowing to work with EnergyPlus in Python.

More specifically, it allows to:

  • Parse, query and modify idf files efficiently, with a number of checks ensuring that your idf file remains correct throughout your work
  • Parse and create epw files
  • Launch simulations on EnergyPlus
  • Parse EnergyPlus output files

Install

To install opyplus, run: pip install opyplus or conda install -c conda-forge opyplus

Documentation

Documentation is available at https://opyplus.readthedocs.io

Compatibility

Python versions

opyplus is designed to work with python 3.8 and newer.

It is currently automatically tested against the following python versions:

  • 3.10
  • 3.11
  • 3.12

EnergyPlus versions

opyplus is designed to work with any EnergyPlus version. Currently, it is automatically tested against the following versions (listed in TESTED_EPLUS_VERSIONS : oplus.tests.util):

  • 22.1.0

Each test is therefore run multiple times : once per tested version. To automatically run a test on all versions, use eplus_tester function (oplus.tests.util).

Operating system

opyplus is designed to work with any Operating System but is automatically tested against the latest versions of Ubuntu OS.

Contributing

Local testing

Install pytest and the packages listed in requirements.txt using pip or conda.

Install EnergyPlus v22.1.0.

At the root of the repository, run pytest: python -m pytest.

Flake8

We use flake8 for style enforcement, including docstrings.

To run it, install flake8 and flake8-docstrings using pip or conda.

At the root of the repository, run flake8: python -m flake8 opyplus/

Documentation

To build the configuration:

install the requirements in docs/requirements.txt

run make html in opyplus docs directory.

To ensure the examples in the documentation remain up to date, they are tested using the doctest extension: https://www.sphinx-doc.org/en/master/usage/extensions/doctest.html

run make doctest in opyplus docs directory to test the documentation.

When adding code samples to the documentation, please use when possible the doctest extension, as it helps ensure your samples will be kept up to date: use .. testcode:: and .. testoutput:: rather than .. code-block:: python.

Release workflow

  1. Developer XX works on his branch (XX-...). When finished, he completes the RELEASE.md without writing the version number (he completes under ## next). He then creates a pull request into develop.
  2. Once the pull request has been accepted by an administrator the branch is merged on develop. Since new version is "next": only tests are running
  3. When administrator wants to create a version, on branch "develop" he completes RELEASE.md with version number "x.x.x". He then pushes. Tests and versioning are running. A conda and pip build will then automatically be performed by Github actions.

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

opyplus-2.0.7.tar.gz (10.5 MB view details)

Uploaded Source

Built Distribution

opyplus-2.0.7-py3-none-any.whl (10.7 MB view details)

Uploaded Python 3

File details

Details for the file opyplus-2.0.7.tar.gz.

File metadata

  • Download URL: opyplus-2.0.7.tar.gz
  • Upload date:
  • Size: 10.5 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for opyplus-2.0.7.tar.gz
Algorithm Hash digest
SHA256 989fad25effa25aefdd9ed8ea1f8327e7801a5f316116721caca68b7f0e362e0
MD5 72d64dc7fdbc1917752c05303d161a42
BLAKE2b-256 6e46b104d249245ed97bce4125adf81b60064eeae4ba30ae979ae7d213f7477a

See more details on using hashes here.

File details

Details for the file opyplus-2.0.7-py3-none-any.whl.

File metadata

  • Download URL: opyplus-2.0.7-py3-none-any.whl
  • Upload date:
  • Size: 10.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.5

File hashes

Hashes for opyplus-2.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 e2d56a63e4ab5b0cc7aff2efc2a41cd8a5b5a8650eb43502de3fdb8a99c18d00
MD5 83126d13ec4e213eace9f8f3bccbd89f
BLAKE2b-256 c41ea0577eb81fa8fd835a1d906ee4df2a341f82aa81fcccdeefb916d89d75e8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page