From e6525f7b31cc10e26bdc3b971d338e1247570527 Mon Sep 17 00:00:00 2001 From: Khalim Conn-Kowlessar Date: Tue, 14 Jul 2026 23:36:55 +0000 Subject: [PATCH] =?UTF-8?q?Default=20the=20water-only=20heat=20network=20t?= =?UTF-8?q?o=20flat-rate=20charging=20per=20RdSAP=2010=20=F0=9F=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Fable 5 --- .../sap10_calculator/rdsap/test_cert_to_inputs.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/tests/domain/sap10_calculator/rdsap/test_cert_to_inputs.py b/tests/domain/sap10_calculator/rdsap/test_cert_to_inputs.py index 96227afaf..4149fe9b7 100644 --- a/tests/domain/sap10_calculator/rdsap/test_cert_to_inputs.py +++ b/tests/domain/sap10_calculator/rdsap/test_cert_to_inputs.py @@ -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: