energyplus-idd-idf-utilities


Nameenergyplus-idd-idf-utilities JSON
Version 0.88 PyPI version JSON
download
home_pagehttps://github.com/myoldmopar/py-idd-idf
SummaryEnergyPlus idd/idf manipulation in Python.
upload_time2023-04-14 15:26:38
maintainer
docs_urlNone
authorEdwin Lee, for NREL, for the United States Department of Energy
requires_python
licenseModifiedBSD
keywords energyplus_launch ep_launch energyplus eplus energy+ building simulation whole building energy simulation heat transfer hvac modeling
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage
            # EnergyPlus Python IDD/IDF Utilities

Python library of EnergyPlus IDD/IDF manipulation utilities.

## Documentation

[![Documentation Status](https://readthedocs.org/projects/energyplus-idd-idf/badge/?version=latest)](https://energyplus-idd-idf.readthedocs.io/en/latest/?badge=latest)

Documentation is hosted on ReadTheDocs at https://energyplus-idd-idf.readthedocs.io/en/latest/.
To build the documentation, enter the docs/ subdirectory and execute `make html`; then open
`/docs/_build/html/index.html` to see the documentation.

## Installation

This package is deployed to PyPi at https://badge.fury.io/py/energyplus-idd-idf-utilities.
To install, simply `pip install energyplus-idd-idf-utilities`.

## Basic Usage

Once installed, the utilities are available for use as a library of functionality to call from Python, or with a very limited (for now) CLI called `energyplus_idd_idf`.
Some example CLI calls:

Get the CLI form:

```shell
$ energyplus_idd_idf --help
usage: energyplus_idd_idf [-h] [--idd_check] [--idd_obj_matches IDD_OBJ_MATCHES] [--summarize_idd_object SUMMARIZE_IDD_OBJECT] filename

EnergyPlus IDD/IDF Utility Command Line

positional arguments:
  filename              Path to IDD/IDF file to be operated upon

optional arguments:
  -h, --help            show this help message and exit
  --idd_check           Process the given IDD file and report statistics and issues
  --idd_obj_matches IDD_OBJ_MATCHES
                        Find IDD objects that match the given basic pattern
  --summarize_idd_object SUMMARIZE_IDD_OBJECT
                        Print a summary of a single IDD object by name

This CLI is in infancy and will probably have features added over time

```

Check an existing IDD file and get basic information:

```shell
$ energyplus_idd_idf --idd_check /path/to/EnergyPlus-22-2-0/Energy+.idd 
{
  "message": "Everything looks OK",
  "content": {
    "idd_version": "22.2.0",
    "idd_build_id": "c249759bad",
    "num_groups": 59,
    "num_objects": 881
  }
}

```

Find all objects which match a certain name pattern:

```shell
$ energyplus_idd_idf --idd_obj_matches 'Coil:Cooling*' /path/to/EnergyPlus-22-2-0/Energy+.idd 
{
  "message": "Everything looks OK",
  "content": {
    "pattern": "Coil:Cooling*",
    "matching_objects": [
      "Coil:Cooling:Water",
      "Coil:Cooling:Water:DetailedGeometry",
      "Coil:Cooling:DX",
      "Coil:Cooling:DX:CurveFit:Performance",
      "Coil:Cooling:DX:CurveFit:OperatingMode",
      "Coil:Cooling:DX:CurveFit:Speed",
      "Coil:Cooling:DX:SingleSpeed",
      "Coil:Cooling:DX:TwoSpeed",
      "Coil:Cooling:DX:MultiSpeed",
      "Coil:Cooling:DX:VariableSpeed",
      "Coil:Cooling:DX:TwoStageWithHumidityControlMode",
      "Coil:Cooling:DX:VariableRefrigerantFlow",
      "Coil:Cooling:DX:VariableRefrigerantFlow:FluidTemperatureControl",
      "Coil:Cooling:WaterToAirHeatPump:ParameterEstimation",
      "Coil:Cooling:WaterToAirHeatPump:EquationFit",
      "Coil:Cooling:WaterToAirHeatPump:VariableSpeedEquationFit",
      "Coil:Cooling:DX:SingleSpeed:ThermalStorage"
    ]
  }
}

```

Get specific details about a single object by name:

```shell
$ energyplus_idd_idf /path/to/EnergyPlus-22-2-0/Energy+.idd --summarize_idd_object "Coil:Cooling:DX"
{
  "message": "Everything looks OK",
  "content": {
    "searched_object_name": "COIL:COOLING:DX",
    "field": [
      "A1 : Name",
      "A2 : Evaporator Inlet Node Name",
      "A3 : Evaporator Outlet Node Name",
      "A4 : Availability Schedule Name",
      "A5 : Condenser Zone Name",
      "A6 : Condenser Inlet Node Name",
      "A7 : Condenser Outlet Node Name",
      "A8 : Performance Object Name",
      "A9 : Condensate Collection Water Storage Tank Name",
      "A10 : Evaporative Condenser Supply Water Storage Tank Name"
    ]
  }
}
```

## Testing

[![Flake8](https://github.com/Myoldmopar/py-idd-idf/actions/workflows/flake8.yml/badge.svg)](https://github.com/Myoldmopar/py-idd-idf/actions/workflows/flake8.yml)
[![Run Tests](https://github.com/Myoldmopar/py-idd-idf/actions/workflows/test.yml/badge.svg)](https://github.com/Myoldmopar/py-idd-idf/actions/workflows/test.yml)

The source is tested using the python unittest framework. 
To execute all the unit tests, simply run `nosetests` from the project root.
The tests are also executed by GitHub Actions for each commit.

## Test Coverage

[![Coverage Status](https://coveralls.io/repos/github/Myoldmopar/py-idd-idf/badge.svg?branch=master)](https://coveralls.io/github/Myoldmopar/py-idd-idf?branch=master)

Coverage of the code from unit testing is reported to Coveralls at https://coveralls.io/github/Myoldmopar/py-idd-idf.
Anything less than 100% coverage will be frowned upon. :)



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/myoldmopar/py-idd-idf",
    "name": "energyplus-idd-idf-utilities",
    "maintainer": "",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "energyplus_launch,ep_launch,EnergyPlus,eplus,Energy+,Building Simulation,Whole Building Energy Simulation,Heat Transfer,HVAC,Modeling",
    "author": "Edwin Lee, for NREL, for the United States Department of Energy",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/62/a3/84fdd9448327187bfadab762cac668ef85535e2b8e5777723f0ea6845a24/energyplus_idd_idf_utilities-0.88.tar.gz",
    "platform": "Linux (Tested on Ubuntu)",
    "description": "# EnergyPlus Python IDD/IDF Utilities\n\nPython library of EnergyPlus IDD/IDF manipulation utilities.\n\n## Documentation\n\n[![Documentation Status](https://readthedocs.org/projects/energyplus-idd-idf/badge/?version=latest)](https://energyplus-idd-idf.readthedocs.io/en/latest/?badge=latest)\n\nDocumentation is hosted on ReadTheDocs at https://energyplus-idd-idf.readthedocs.io/en/latest/.\nTo build the documentation, enter the docs/ subdirectory and execute `make html`; then open\n`/docs/_build/html/index.html` to see the documentation.\n\n## Installation\n\nThis package is deployed to PyPi at https://badge.fury.io/py/energyplus-idd-idf-utilities.\nTo install, simply `pip install energyplus-idd-idf-utilities`.\n\n## Basic Usage\n\nOnce installed, the utilities are available for use as a library of functionality to call from Python, or with a very limited (for now) CLI called `energyplus_idd_idf`.\nSome example CLI calls:\n\nGet the CLI form:\n\n```shell\n$ energyplus_idd_idf --help\nusage: energyplus_idd_idf [-h] [--idd_check] [--idd_obj_matches IDD_OBJ_MATCHES] [--summarize_idd_object SUMMARIZE_IDD_OBJECT] filename\n\nEnergyPlus IDD/IDF Utility Command Line\n\npositional arguments:\n  filename              Path to IDD/IDF file to be operated upon\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --idd_check           Process the given IDD file and report statistics and issues\n  --idd_obj_matches IDD_OBJ_MATCHES\n                        Find IDD objects that match the given basic pattern\n  --summarize_idd_object SUMMARIZE_IDD_OBJECT\n                        Print a summary of a single IDD object by name\n\nThis CLI is in infancy and will probably have features added over time\n\n```\n\nCheck an existing IDD file and get basic information:\n\n```shell\n$ energyplus_idd_idf --idd_check /path/to/EnergyPlus-22-2-0/Energy+.idd \n{\n  \"message\": \"Everything looks OK\",\n  \"content\": {\n    \"idd_version\": \"22.2.0\",\n    \"idd_build_id\": \"c249759bad\",\n    \"num_groups\": 59,\n    \"num_objects\": 881\n  }\n}\n\n```\n\nFind all objects which match a certain name pattern:\n\n```shell\n$ energyplus_idd_idf --idd_obj_matches 'Coil:Cooling*' /path/to/EnergyPlus-22-2-0/Energy+.idd \n{\n  \"message\": \"Everything looks OK\",\n  \"content\": {\n    \"pattern\": \"Coil:Cooling*\",\n    \"matching_objects\": [\n      \"Coil:Cooling:Water\",\n      \"Coil:Cooling:Water:DetailedGeometry\",\n      \"Coil:Cooling:DX\",\n      \"Coil:Cooling:DX:CurveFit:Performance\",\n      \"Coil:Cooling:DX:CurveFit:OperatingMode\",\n      \"Coil:Cooling:DX:CurveFit:Speed\",\n      \"Coil:Cooling:DX:SingleSpeed\",\n      \"Coil:Cooling:DX:TwoSpeed\",\n      \"Coil:Cooling:DX:MultiSpeed\",\n      \"Coil:Cooling:DX:VariableSpeed\",\n      \"Coil:Cooling:DX:TwoStageWithHumidityControlMode\",\n      \"Coil:Cooling:DX:VariableRefrigerantFlow\",\n      \"Coil:Cooling:DX:VariableRefrigerantFlow:FluidTemperatureControl\",\n      \"Coil:Cooling:WaterToAirHeatPump:ParameterEstimation\",\n      \"Coil:Cooling:WaterToAirHeatPump:EquationFit\",\n      \"Coil:Cooling:WaterToAirHeatPump:VariableSpeedEquationFit\",\n      \"Coil:Cooling:DX:SingleSpeed:ThermalStorage\"\n    ]\n  }\n}\n\n```\n\nGet specific details about a single object by name:\n\n```shell\n$ energyplus_idd_idf /path/to/EnergyPlus-22-2-0/Energy+.idd --summarize_idd_object \"Coil:Cooling:DX\"\n{\n  \"message\": \"Everything looks OK\",\n  \"content\": {\n    \"searched_object_name\": \"COIL:COOLING:DX\",\n    \"field\": [\n      \"A1 : Name\",\n      \"A2 : Evaporator Inlet Node Name\",\n      \"A3 : Evaporator Outlet Node Name\",\n      \"A4 : Availability Schedule Name\",\n      \"A5 : Condenser Zone Name\",\n      \"A6 : Condenser Inlet Node Name\",\n      \"A7 : Condenser Outlet Node Name\",\n      \"A8 : Performance Object Name\",\n      \"A9 : Condensate Collection Water Storage Tank Name\",\n      \"A10 : Evaporative Condenser Supply Water Storage Tank Name\"\n    ]\n  }\n}\n```\n\n## Testing\n\n[![Flake8](https://github.com/Myoldmopar/py-idd-idf/actions/workflows/flake8.yml/badge.svg)](https://github.com/Myoldmopar/py-idd-idf/actions/workflows/flake8.yml)\n[![Run Tests](https://github.com/Myoldmopar/py-idd-idf/actions/workflows/test.yml/badge.svg)](https://github.com/Myoldmopar/py-idd-idf/actions/workflows/test.yml)\n\nThe source is tested using the python unittest framework. \nTo execute all the unit tests, simply run `nosetests` from the project root.\nThe tests are also executed by GitHub Actions for each commit.\n\n## Test Coverage\n\n[![Coverage Status](https://coveralls.io/repos/github/Myoldmopar/py-idd-idf/badge.svg?branch=master)](https://coveralls.io/github/Myoldmopar/py-idd-idf?branch=master)\n\nCoverage of the code from unit testing is reported to Coveralls at https://coveralls.io/github/Myoldmopar/py-idd-idf.\nAnything less than 100% coverage will be frowned upon. :)\n\n\n",
    "bugtrack_url": null,
    "license": "ModifiedBSD",
    "summary": "EnergyPlus idd/idf manipulation in Python.",
    "version": "0.88",
    "split_keywords": [
        "energyplus_launch",
        "ep_launch",
        "energyplus",
        "eplus",
        "energy+",
        "building simulation",
        "whole building energy simulation",
        "heat transfer",
        "hvac",
        "modeling"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "86c563addb950252a5f2413048773641234b11bb9ba39420d41b99fbedb5eb44",
                "md5": "f51e54c4f4af2e6a6feb05f34da83322",
                "sha256": "e47e46c0a9d15c005928ebeda78a12e31c611ca7bc57d40fdd33110f95e903aa"
            },
            "downloads": -1,
            "filename": "energyplus_idd_idf_utilities-0.88-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "f51e54c4f4af2e6a6feb05f34da83322",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 22271,
            "upload_time": "2023-04-14T15:26:36",
            "upload_time_iso_8601": "2023-04-14T15:26:36.411090Z",
            "url": "https://files.pythonhosted.org/packages/86/c5/63addb950252a5f2413048773641234b11bb9ba39420d41b99fbedb5eb44/energyplus_idd_idf_utilities-0.88-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "62a384fdd9448327187bfadab762cac668ef85535e2b8e5777723f0ea6845a24",
                "md5": "51fb8abc6e296c9bbeba270a38338795",
                "sha256": "a667d73cc97acbd2e83c036af1865101131b6abb2a27ddca37d8593fea70d101"
            },
            "downloads": -1,
            "filename": "energyplus_idd_idf_utilities-0.88.tar.gz",
            "has_sig": false,
            "md5_digest": "51fb8abc6e296c9bbeba270a38338795",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 19577,
            "upload_time": "2023-04-14T15:26:38",
            "upload_time_iso_8601": "2023-04-14T15:26:38.058081Z",
            "url": "https://files.pythonhosted.org/packages/62/a3/84fdd9448327187bfadab762cac668ef85535e2b8e5777723f0ea6845a24/energyplus_idd_idf_utilities-0.88.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-04-14 15:26:38",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "myoldmopar",
    "github_project": "py-idd-idf",
    "travis_ci": false,
    "coveralls": true,
    "github_actions": true,
    "requirements": [],
    "lcname": "energyplus-idd-idf-utilities"
}
        
Elapsed time: 1.03682s