From a19b3dada1c43d867d3fd0067411feb0ba234734 Mon Sep 17 00:00:00 2001 From: Daniel Roth Date: Thu, 25 Jun 2026 15:59:14 +0000 Subject: [PATCH 1/2] =?UTF-8?q?=5Fsecondary=5Fheating=5Ffraction=5Ffor=5Fc?= =?UTF-8?q?ategory=20returns=200.10=20for=20category=2011=20(electric=20ce?= =?UTF-8?q?iling=20heating)=20=F0=9F=9F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 4.6 --- tests/domain/sap10_calculator/rdsap/test_cert_to_inputs.py | 2 ++ 1 file changed, 2 insertions(+) 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 c6e53595..17edfabd 100644 --- a/tests/domain/sap10_calculator/rdsap/test_cert_to_inputs.py +++ b/tests/domain/sap10_calculator/rdsap/test_cert_to_inputs.py @@ -4958,6 +4958,7 @@ def test_secondary_heating_fraction_for_category_full_table_11_coverage() -> Non assert _secondary_heating_fraction_for_category(5) == 0.10 assert _secondary_heating_fraction_for_category(6) == 0.10 assert _secondary_heating_fraction_for_category(7) == 0.15 + assert _secondary_heating_fraction_for_category(8) == 0.10 # was untested # Category 9 = warm-air systems (NOT heat pump). A gas/oil warm-air # unit is an "All gas, liquid and solid fuel systems" row (0.10); # electric warm air is "Other electric systems" (also 0.10) — so 0.10 @@ -4966,6 +4967,7 @@ def test_secondary_heating_fraction_for_category_full_table_11_coverage() -> Non # secondary) previously raised UnmappedSapCode here, blocking it. assert _secondary_heating_fraction_for_category(9) == 0.10 assert _secondary_heating_fraction_for_category(10) == 0.20 + assert _secondary_heating_fraction_for_category(11) == 0.10 # electric ceiling heating (SAP code 701) # Absent assert _secondary_heating_fraction_for_category(None) == 0.10 # Lodging present but unmapped → raise From 60b4cae4986e3babda063a4b349ba1d702dc5fdd Mon Sep 17 00:00:00 2001 From: Daniel Roth Date: Thu, 25 Jun 2026 15:59:47 +0000 Subject: [PATCH 2/2] =?UTF-8?q?=5Fsecondary=5Fheating=5Ffraction=5Ffor=5Fc?= =?UTF-8?q?ategory=20returns=200.10=20for=20category=2011=20(electric=20ce?= =?UTF-8?q?iling=20heating)=20=F0=9F=9F=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Sonnet 4.6 --- domain/sap10_calculator/rdsap/cert_to_inputs.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/domain/sap10_calculator/rdsap/cert_to_inputs.py b/domain/sap10_calculator/rdsap/cert_to_inputs.py index 469223ab..0ea700e8 100644 --- a/domain/sap10_calculator/rdsap/cert_to_inputs.py +++ b/domain/sap10_calculator/rdsap/cert_to_inputs.py @@ -995,6 +995,8 @@ _SECONDARY_HEATING_FRACTION_BY_CATEGORY: Final[dict[int, float]] = { # p.188). Cert 0380 (warm air mains gas, code 506, + # electric room-heater secondary) raised here before. 10: 0.20, + 11: 0.10, # Electric ceiling heating (SAP code 701): direct-acting + # electric, SAP 10.2 Table 11 "Other electric systems" row. } _SECONDARY_HEATING_FRACTION_DEFAULT: Final[float] = 0.10