Skip to content

Roundtrip parsing; from EnergyPlus IDF input files to XML and back again

License

Notifications You must be signed in to change notification settings

bmj-sustainability/py_EnergyParser

Repository files navigation

Developed for complex and robust IDF pre-processing using Python and the fast c-based lxml library.

The raison d'etre of EnergyParser is to capitalize on the XML standard, a widely accepted format for attributed and hierarchical data exchange and manipulation. My personal use case has been to automate the complex generation of IDF variants based on templates and changes, for compliance with LEED energy modeling and for research simulation.

Releasing under open source GPL3.

Features:

  • Round trip parsing IDF <-> XML
  • Native regular expression support in object manipulation for complex selections
  • Full XML support through the popular 'lxml' module including EXtensible Stylesheet Language (XSLT) pipeline manipulation
  • Utility functions for common IDF operations
    • List objects
    • Selections based on class or attribute regex string search
    • Update and modify based on IDD attribute search
    • Merge XML trees
    • Delete classes
    • Write to IDF or XML

Examples and help: http://nbviewer.ipython.org/github/MarcusJones/EnergyParser/blob/master/Help/00%20EnergyParser-checkpoint.ipynb

Source github: https://github.com/MarcusJones/EnergyParser

KNOWN BUGS The latest IDD might have a single syntax error which breaks parsing, so far easiest to put a carriage return before the \choice

About

Roundtrip parsing; from EnergyPlus IDF input files to XML and back again

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published