From 4f3fdc6abf676934efe8c84059bf5d74627d865f Mon Sep 17 00:00:00 2001 From: KarenWGard <114143532+KarenWGard@users.noreply.github.com> Date: Wed, 4 Dec 2024 16:01:59 -0500 Subject: [PATCH 1/3] Create Rule23-17.md --- docs/section23/Rule23-17.md | 47 +++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 docs/section23/Rule23-17.md diff --git a/docs/section23/Rule23-17.md b/docs/section23/Rule23-17.md new file mode 100644 index 0000000000..09e52b8aa0 --- /dev/null +++ b/docs/section23/Rule23-17.md @@ -0,0 +1,47 @@ + +# Airside System - Rule 23-1 + +**Schema Version:** 0.0.34 +**Mandatory Rule:** TRUE +**Rule ID:** 23-1 +**Rule Description:** System 2 and 4 - Electric air-source heat pumps shall shall be modeled to continue to operate while auxiliary heat is energized. +**Rule Assertion:** B-RMR = expected value +**Appendix G Section:** Section 23 Air-side +**90.1 Section Reference:** G3.1.3.1 Heat Pumps (Systems 2 and 4) +**Data Lookup:** None +**Evaluation Context:** HVAC System + +**Applicability Checks:** + +1. B-RMR is modeled with at least one air-side system that is Type-2, or 4 + +**Function Calls:** + +1. get_baseline_system_types() +2. baseline_system_type_compare() +3. get_component_by_id() + +**Applicability Checks:** +- create a list of the target system types: `APPLICABLE_SYS_TYPES = [HVAC_SYS.SYS_2,HVAC_SYS.SYS_4]` +- Get B-RMR system types: `baseline_system_types_dict = get_baseline_system_types(B-RMR)` + +- loop through the applicable system types: `for target_sys_type in APPLICABLE_SYS_TYPES:` + - and loop through the baseline_system_types_dict to check the system types of the baseline systems: `for system_type in baseline_system_types_dict:` + - do baseline_system_type_compare to determine whether the baseline_system_type is the applicable_system_type: `if((baseline_system_type_compare(system_type, target_sys_type, false)):` + - the systems in the list: baseline_system_types_dict[system_type] are sys-2 or 4 - loop through the list of systems: `for hvac_system_id in baseline_system_types_dict[system_type]:` + - `CONTINUE TO RULE LOGIC` + - otherwise, rule not applicable: `else: RULE_NOT_APPLICABLE` + +**Rule Logic:** +- get the hvac system from the hvac_system_id: `hvac_system = get_component_by_id(hvac_system_id)` +- get the heating system: `heating_system = hvac_system.heating_system` +- get the heatpump_low_shutoff_temperature = `heatpump_low_shutoff = heating_system.heatpump_low_shutoff_temperature` + +**Rule Assertion:** +- Case 1: The heat pump low shutoff temperature is less than or equal to the minimum temperature a habitable place could reasonable be: `if heatpump_low_shutoff <= -56F: PASS` +- Case 2: all other cases: FAIL: `else: FAIL` + +**Notes:** +1. The minimum temperature is not finalized and is up for discussion. Must coordinate with the note provided in the schema element: HeatingSystem.heatpump_low_shutoff_temperature + +**[Back](../_toc.md)** From 11bf0bf875dcfa1eb40d8dbe33e68a7981364154 Mon Sep 17 00:00:00 2001 From: KarenWGard <114143532+KarenWGard@users.noreply.github.com> Date: Wed, 4 Dec 2024 16:03:16 -0500 Subject: [PATCH 2/3] Update Rule23-17.md --- docs/section23/Rule23-17.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/section23/Rule23-17.md b/docs/section23/Rule23-17.md index 09e52b8aa0..934d9e2794 100644 --- a/docs/section23/Rule23-17.md +++ b/docs/section23/Rule23-17.md @@ -1,5 +1,5 @@ -# Airside System - Rule 23-1 +# Airside System - Rule 23-17 **Schema Version:** 0.0.34 **Mandatory Rule:** TRUE From d184455c52ca5c96dc0ade4e7200d613ac5e54bf Mon Sep 17 00:00:00 2001 From: KarenWGard <114143532+KarenWGard@users.noreply.github.com> Date: Wed, 18 Dec 2024 14:03:40 -0500 Subject: [PATCH 3/3] Update Rule23-17.md --- docs/section23/Rule23-17.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/section23/Rule23-17.md b/docs/section23/Rule23-17.md index 934d9e2794..3001f62d7b 100644 --- a/docs/section23/Rule23-17.md +++ b/docs/section23/Rule23-17.md @@ -38,7 +38,7 @@ - get the heatpump_low_shutoff_temperature = `heatpump_low_shutoff = heating_system.heatpump_low_shutoff_temperature` **Rule Assertion:** -- Case 1: The heat pump low shutoff temperature is less than or equal to the minimum temperature a habitable place could reasonable be: `if heatpump_low_shutoff <= -56F: PASS` +- Case 1: The heat pump low shutoff temperature equal to the flag of -999, which indicates that there is no low-temperature shutoff for the heatpump: `if heatpump_low_shutoff <= -999: PASS` - Case 2: all other cases: FAIL: `else: FAIL` **Notes:**