Default the water-only heat network to flat-rate charging per RdSAP 10 🟥

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
Khalim Conn-Kowlessar 2026-07-14 23:36:55 +00:00
parent d3c0b9e499
commit e6525f7b31

View file

@ -1460,7 +1460,12 @@ def test_hot_water_only_heat_network_whc_950_applies_table12c_dlf() -> None:
# gas boiler (NOT a heat network), mirroring cert 9093 (whc 950 + a
# warm-air main). Compare against a non-heat-network baseline at the
# same 0.80 water efficiency (whc 901 from the same gas main): the 950
# HW fuel must exceed it by exactly the DLF (age E → 1.41).
# HW fuel must exceed it by the DLF (age E → 1.41) × the Table 4c(3)
# charging factor. RdSAP 10 (spec p.59, "Heat Network (HN) supplying
# — water heating only"): a non-PCDB water-only network defaults to
# "flat-rate charging" — worksheet (305a) factor 1.05 — since the
# scheme's own charging method is never lodged (the dwelling's
# heating-control code describes the SPACE network, not this one).
part = make_building_part(construction_age_band="E")
gas_main = MainHeatingDetail(
has_fghrs=False,
@ -1496,8 +1501,9 @@ def test_hot_water_only_heat_network_whc_950_applies_table12c_dlf() -> None:
hw_network: float = cert_to_inputs(hw_network_epc).hot_water_kwh_per_yr
baseline: float = cert_to_inputs(baseline_epc).hot_water_kwh_per_yr
# Assert — the HW-only-heat-network fuel is scaled up by the age-E DLF.
assert abs(hw_network / baseline - 1.41) <= 0.02
# Assert — the HW-only-heat-network fuel is scaled up by the age-E DLF
# × the flat-rate-charging default (1.41 × 1.05 = 1.4805).
assert abs(hw_network / baseline - 1.41 * 1.05) <= 0.02
def test_gas_boiler_main_efficiency_unchanged_by_dlf_override() -> None: