mirror of
https://github.com/Hestia-Homes/Model.git
synced 2026-07-12 13:29:04 +00:00
The API glazing-transmission table mapped only the double-glazing codes [1,2,3,13,14]; single (5/15), secondary (4/11/12) and triple (6/8/9/10) glazing codes returned None from _api_glazing_transmission, so the cascade silently routed them to the u_window all-None default U=2.5 instead of their RdSAP 10 Table 24 (spec p.50) value. Single glazing (U=4.8) was the worst: modelled at half its true heat loss → systematic over-rate (cert 0370-2933, 7 single-glazed windows, +17 SAP). Extended _API_GLAZING_TYPE_TO_TRANSMISSION + the gap-keyed override table with the Table 24 (U, g, frame-factor) rows for every RdSAP-21 glazing code (single 4.8/g0.85; secondary normal-E 2.9 / low-E 2.2 /g0.85; triple pre-2002 2.4/2.1/2.0 by gap, 2002-2022 2.0, all g0.68/0.72; known-data codes 7/8 alias their family default). 94 corpus certs carry an unmapped glazing code (code 5 = 79); they sat at 32% within-0.5 vs 54.9% baseline. Eval: within-0.5 54.90% -> 56.66% (net +16 certs: 22 in, 6 offsetting-error out), within-1.0 70.2 -> 71.9%, mean|err| 1.224 -> 1.203, 909 computed / 0 raises. Spec-applied uniformly per the determinism principle. 7 AAA tests, goldens + gate green, pyright net-zero (38=38). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| epc | ||
| magicplan | ||
| __init__.py | ||
| datatypes.py | ||
| enums.py | ||