CLM
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.
ESP-r Climate.
At a glance
| Original creator | ESP-r (Energy Systems Research Unit, University of Strathclyde) |
| Purpose | A year of hourly weather for the ESP-r building simulation program, in an ASCII or a binary encoding of the same six columns. |
| Extensions | .clm |
| Poka parser | poka-clm |
| Viewer | poka-table-viewer |
| Depth tier | Parser with a shared viewer (see Depth tiers) |
| Breadth tier | B4 Summary (see Breadth tiers) |
How much Poka reads
B4 Summary. The container and metadata are read and summarised (counts, properties, structure), but the main content is not rendered.
Confidence: high (the reviewer read the code and a test that proves the claim). Basis: Reviewed 2026-10-16: poka-clm src/lib.rs (detect, parse_ascii, parse_binary, build_ast, unit tests) and tests/samples.rs; corpus has two ASCII files (Abu Dhabi, Toronto CWEC) and two binary files (CEDRL2000Glo, CEDRL2001Glo, both 211,400 bytes). All six columns are read in both encodings, but the viewer shows only a 12-month plus Year summary, never the hourly or daily values. The header and column values of the corpus files were also read directly. The radiation flag is applied: both ASCII files state 0 (direct normal), both binary files 123 (global horizontal, the value ESP-r's own reader writes when it must split global into direct and diffuse), and tests/samples.rs checks each file's flag against its raw bytes.
What Poka does not read
- hourly and daily values (only monthly means, minima, maxima and sums are shown)
- wind direction is read but not shown
- column 3 is read, but a global horizontal one is not split into direct and diffuse (ESP-r does that itself with a separation model)
- binary files that are not exactly 8,760 hours (211,400 bytes) are rejected, because detection is by size only
- periods other than a full 365-day year are only partly handled (ASCII period line is read but not applied)
- header fields beyond year, site, latitude, longitude difference and the radiation flag
Background
ESP-r is a building simulation program developed for about 50 years at the University of Strathclyde, with contributions from several countries; its source was published under the GNU GPL in 2002. Its climate file holds diffuse and direct solar radiation, dry-bulb temperature, wind speed and direction and relative humidity for every hour. The ASCII form documents its columns in comments; the binary form says nothing about itself, so Poka recognises it by its size. Both are read into the same six columns, with temperatures and wind speeds converted from tenths, but only a monthly summary (twelve months and a year row) is shown, never the hourly values. Column 3 is labelled from the header's radiation flag: 0 means direct normal, any other value global horizontal, which is what the binary corpus files state (123). A global horizontal column is not added to the diffuse a second time when the year's solar total is reported.
Versions
| Version | Identifier | Poka | Note |
|---|---|---|---|
| ASCII climate file | *CLIMATE |
Partly read | All six columns are read; only a monthly summary is shown. |
| Binary climate file | Partly read | Recognised by size alone (8,760 hours, 211,400 bytes); all six columns are read, and only a monthly summary is shown. |
Sources
- https://en.wikipedia.org/wiki/ESP-r
- parsers/poka-clm/src/lib.rs