poka.sh

Docs

EIO

Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.

EnergyPlus Invariant Output (EIO).

At a glance

Original creator EnergyPlus (U.S. Department of Energy)
Purpose The EnergyPlus invariant output: everything about a run that does not change over time, such as autosized capacities, surface geometry, zone volumes and the algorithms chosen.
Extensions .eio
Poka parser poka-eio
Viewer poka-tree-viewer
Depth tier Parser with a shared viewer (see Depth tiers)
Breadth tier B2 Broad (see Breadth tiers)

How much Poka reads

B2 Broad. The common content of the current and the common older versions is decoded. Some named features or versions are not, and are listed.

Confidence: medium (the reviewer read the code). Basis: Reviewed 2026-10-16: poka-eio src/lib.rs (parse_header, parse_eio, build_ast, unit tests) and tests/samples.rs; corpus oracle_1zone.eio, modeltok-pthp-eplusout.eio and the TenZonesTenHVACSystems files from DesignBuilder 25.1 and 26.1. Covers the self-describing EIO: every record type, row and named column is parsed, including bare counting headers, headers redeclared mid-file and headers glued to a data row. The tree cap of 6,000 nodes is below the roughly 11,000 nodes of the TenZones files (counted from the corpus, not run).

What Poka does not read

  • on a multi-zone run the 6,000-node cap cuts later record types and leaves later records without their field rows
  • no tabular view of the many repeated records (for example 386 Component Sizing Information rows), only one tree branch per record
  • units in column headers are kept as text, not interpreted or converted
  • banner prose describing sections is dropped
  • no cross-reference between records and the IDF objects they describe

Background

The EIO is self-describing: a line starting with ! declares a record type and its columns, and the lines after it are instances. The record type in the header is not a column, because each data row repeats it, and the counting records use a different header form; both are handled. Poka shows each record type as a branch with its rows and named columns. The tree stops at 6,000 nodes, which the larger multi-zone corpus files exceed.

Versions

Version Identifier Poka Note
EnergyPlus EIO Read

Libraries

Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.

  • opyplus (candidate; MPL-2.0; Python; https://github.com/openergy/opyplus) — Python EnergyPlus package; its API index lists an Eio class, but its behaviour and .eio support were not confirmed from the pages loaded.

Sources