From 05b3e863c444fdc2652f694b49548c4491ffaee4 Mon Sep 17 00:00:00 2001 From: KarenWGard <114143532+KarenWGard@users.noreply.github.com> Date: Tue, 1 Oct 2024 18:30:41 -0400 Subject: [PATCH 1/7] Create Rule5-43.md --- docs/section5/Rule5-43.md | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 docs/section5/Rule5-43.md diff --git a/docs/section5/Rule5-43.md b/docs/section5/Rule5-43.md new file mode 100644 index 0000000000..aef5d7452d --- /dev/null +++ b/docs/section5/Rule5-43.md @@ -0,0 +1,36 @@ + +# Envelope - Rule 5-43 + +**Rule ID:** 5-43 +**Rule Description:** Automatic fenestration shading devices shall not be modeled in the Baseline. +**Rule Assertion:** Baseline RMD = expected value +**Appendix G Section:** Section G3.1-5(d) Building Envelope Modeling Requirements for the Baseline building +**Appendix G Section Reference:** Tables G3.4-1 to G3.4-8 + +**Manual Check:** None +**Evaluation Context:** Each SubSurface +**Function Call:** + +NONE + +## Applicability Check: +- look at each zone: `for zone in B_RMD...zones:` + - look at each surface: `for surface in zone.surfaces:` + - look at each subsurface: `for sub_surface in surface.subsurfaces: CONTINUE TO RULE LOGIC` + + ## Rule Logic: + - create a variable automatic_shades_modeled and set it to false: `automatic_shades_modeled = false` + - check whether the subsurface has the data element has_automatic_shades: `if sub_surface.has_automatic_shades != NULL:` + - set automatic_shades_modeled to sub_surface.has_atomatic_shades: `automatic_shades_modeled = sub_surface.has_automatic_shades` + + **Rule Assertion:** + - Case 1: If the baseline subsurface does not have shading devices, then pass: `if not automatic_shades_modeled: PASS` + - Case 2: If the baseline subsurface has shading devices, then fail: `if not automatic_shades_modeled: FAIL` + + +**Notes:** + + +**[Back](../_toc.md)** + + From fee626eb4d17e596ba8cf67e236819cae4ddcfeb Mon Sep 17 00:00:00 2001 From: KarenWGard <114143532+KarenWGard@users.noreply.github.com> Date: Tue, 19 Nov 2024 13:22:13 -0500 Subject: [PATCH 2/7] Update Rule5-43.md --- docs/section5/Rule5-43.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/section5/Rule5-43.md b/docs/section5/Rule5-43.md index aef5d7452d..c6ee8245b1 100644 --- a/docs/section5/Rule5-43.md +++ b/docs/section5/Rule5-43.md @@ -5,7 +5,7 @@ **Rule Description:** Automatic fenestration shading devices shall not be modeled in the Baseline. **Rule Assertion:** Baseline RMD = expected value **Appendix G Section:** Section G3.1-5(d) Building Envelope Modeling Requirements for the Baseline building -**Appendix G Section Reference:** Tables G3.4-1 to G3.4-8 +**Mandatory Rule:** True **Manual Check:** None **Evaluation Context:** Each SubSurface @@ -25,7 +25,7 @@ NONE **Rule Assertion:** - Case 1: If the baseline subsurface does not have shading devices, then pass: `if not automatic_shades_modeled: PASS` - - Case 2: If the baseline subsurface has shading devices, then fail: `if not automatic_shades_modeled: FAIL` + - Case 2: If the baseline subsurface has shading devices, then fail: `if automatic_shades_modeled: FAIL` **Notes:** From feaacaffb888f8ddf9bdde2954811df4dc7b5275 Mon Sep 17 00:00:00 2001 From: KarenWGard <114143532+KarenWGard@users.noreply.github.com> Date: Wed, 20 Nov 2024 10:57:33 -0500 Subject: [PATCH 3/7] Update Rule5-43.md --- docs/section5/Rule5-43.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/section5/Rule5-43.md b/docs/section5/Rule5-43.md index c6ee8245b1..0c331908bc 100644 --- a/docs/section5/Rule5-43.md +++ b/docs/section5/Rule5-43.md @@ -4,7 +4,7 @@ **Rule ID:** 5-43 **Rule Description:** Automatic fenestration shading devices shall not be modeled in the Baseline. **Rule Assertion:** Baseline RMD = expected value -**Appendix G Section:** Section G3.1-5(d) Building Envelope Modeling Requirements for the Baseline building +**Appendix G Section:** Section G3.1-5(f) Building Envelope Modeling Requirements for the Baseline building **Mandatory Rule:** True **Manual Check:** None From 0149a8a64d6b93f759b87496eef0475678f0dd1f Mon Sep 17 00:00:00 2001 From: KarenWGard <114143532+KarenWGard@users.noreply.github.com> Date: Wed, 20 Nov 2024 10:59:06 -0500 Subject: [PATCH 4/7] Update Rule5-43.md --- docs/section5/Rule5-43.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/section5/Rule5-43.md b/docs/section5/Rule5-43.md index 0c331908bc..16b9af2e50 100644 --- a/docs/section5/Rule5-43.md +++ b/docs/section5/Rule5-43.md @@ -1,11 +1,11 @@ # Envelope - Rule 5-43 +**Mandatory Rule:** True **Rule ID:** 5-43 **Rule Description:** Automatic fenestration shading devices shall not be modeled in the Baseline. **Rule Assertion:** Baseline RMD = expected value **Appendix G Section:** Section G3.1-5(f) Building Envelope Modeling Requirements for the Baseline building -**Mandatory Rule:** True **Manual Check:** None **Evaluation Context:** Each SubSurface From 9afca49dd1994eaf2855ee241850858da340b2dd Mon Sep 17 00:00:00 2001 From: KarenWGard <114143532+KarenWGard@users.noreply.github.com> Date: Wed, 20 Nov 2024 11:13:50 -0500 Subject: [PATCH 5/7] Update Rule5-43.md --- docs/section5/Rule5-43.md | 35 +++++++++++++++++++++-------------- 1 file changed, 21 insertions(+), 14 deletions(-) diff --git a/docs/section5/Rule5-43.md b/docs/section5/Rule5-43.md index 16b9af2e50..a2bc8b1dd8 100644 --- a/docs/section5/Rule5-43.md +++ b/docs/section5/Rule5-43.md @@ -8,24 +8,31 @@ **Appendix G Section:** Section G3.1-5(f) Building Envelope Modeling Requirements for the Baseline building **Manual Check:** None -**Evaluation Context:** Each SubSurface +**Evaluation Context:** Each Building **Function Call:** -NONE ## Applicability Check: -- look at each zone: `for zone in B_RMD...zones:` - - look at each surface: `for surface in zone.surfaces:` - - look at each subsurface: `for sub_surface in surface.subsurfaces: CONTINUE TO RULE LOGIC` - - ## Rule Logic: - - create a variable automatic_shades_modeled and set it to false: `automatic_shades_modeled = false` - - check whether the subsurface has the data element has_automatic_shades: `if sub_surface.has_automatic_shades != NULL:` - - set automatic_shades_modeled to sub_surface.has_atomatic_shades: `automatic_shades_modeled = sub_surface.has_automatic_shades` - - **Rule Assertion:** - - Case 1: If the baseline subsurface does not have shading devices, then pass: `if not automatic_shades_modeled: PASS` - - Case 2: If the baseline subsurface has shading devices, then fail: `if automatic_shades_modeled: FAIL` +- look at each zone: `for building in B_RMD.buildings:` + - look at each zone: `for zone in building...zones:` + - look at each surface: `for surface in zone.surfaces:` + - check if the surface is an exterior surface type: `if surface.adjacent_to == "EXTERIOR":` + - look at each subsurface: `for sub_surface in surface.subsurfaces: CONTINUE TO RULE LOGIC` + - if the code reaches here without going to the rule logic, the building has no exterior subsurfaces and the rule is not applicable: `NOT APPLICABLE` + + ## Rule Logic: + - create a list automatic_shades_modeled and initialize it as an empty list: `automatic_shades_modeled = []` + - look at each zone: `for zone in B_RMD...zones:` + - look at each surface: `for surface in zone.surfaces:` + - check if the surface is an exterior surface type: `if surface.adjacent_to == "EXTERIOR":` + - look at each subsurface: `for sub_surface in surface.subsurfaces:` + - check whether the subsurface has the data element has_automatic_shades: `if sub_surface.has_automatic_shades != NULL:` + - if the window has automatic shades, append this sub_surface id to the list automatic_shades_modeled: `if sub_surface.has_automatic_shades: automatic_shades_modeled.append(sub_surface.id)` + - GO TO RULE ASSERTION + + **Rule Assertion:** + - Case 1: If the baseline does not have shading devices, the list automatic_shades_modeled will be empty, PASS: `if len(automatic_shades_modeled) == 0: PASS` + - Case 2: Otherwise FAIL: `else: FAIL` **Notes:** From 1bd7b36ffaccfbdb4acc68150e535111da0bf3d4 Mon Sep 17 00:00:00 2001 From: KarenWGard <114143532+KarenWGard@users.noreply.github.com> Date: Wed, 4 Dec 2024 14:53:51 -0500 Subject: [PATCH 6/7] Update Rule5-43.md --- docs/section5/Rule5-43.md | 35 +++++++++++++++-------------------- 1 file changed, 15 insertions(+), 20 deletions(-) diff --git a/docs/section5/Rule5-43.md b/docs/section5/Rule5-43.md index a2bc8b1dd8..13a904d9ae 100644 --- a/docs/section5/Rule5-43.md +++ b/docs/section5/Rule5-43.md @@ -13,26 +13,21 @@ ## Applicability Check: -- look at each zone: `for building in B_RMD.buildings:` - - look at each zone: `for zone in building...zones:` - - look at each surface: `for surface in zone.surfaces:` - - check if the surface is an exterior surface type: `if surface.adjacent_to == "EXTERIOR":` - - look at each subsurface: `for sub_surface in surface.subsurfaces: CONTINUE TO RULE LOGIC` - - if the code reaches here without going to the rule logic, the building has no exterior subsurfaces and the rule is not applicable: `NOT APPLICABLE` - - ## Rule Logic: - - create a list automatic_shades_modeled and initialize it as an empty list: `automatic_shades_modeled = []` - - look at each zone: `for zone in B_RMD...zones:` - - look at each surface: `for surface in zone.surfaces:` - - check if the surface is an exterior surface type: `if surface.adjacent_to == "EXTERIOR":` - - look at each subsurface: `for sub_surface in surface.subsurfaces:` - - check whether the subsurface has the data element has_automatic_shades: `if sub_surface.has_automatic_shades != NULL:` - - if the window has automatic shades, append this sub_surface id to the list automatic_shades_modeled: `if sub_surface.has_automatic_shades: automatic_shades_modeled.append(sub_surface.id)` - - GO TO RULE ASSERTION - - **Rule Assertion:** - - Case 1: If the baseline does not have shading devices, the list automatic_shades_modeled will be empty, PASS: `if len(automatic_shades_modeled) == 0: PASS` - - Case 2: Otherwise FAIL: `else: FAIL` +- check whether there are subsurfaces in the building. If there are, continue to rule logic: `if len(B_RMD...subsurfaces) == 0: NOT APPLICABLE` +- otherwise, continue to the rule logic `else: CONTINUE TO RULE LOGIC` + +## Rule Logic: +- create a list automatic_shades_modeled and initialize it as an empty list: `automatic_shades_modeled = []` +- look at each surface: `for surface in B_RMD...zones:` + - check if the surface is an exterior surface type: `if surface.adjacent_to == "EXTERIOR":` + - look at each subsurface: `for sub_surface in surface.subsurfaces:` + - check whether the subsurface has the data element has_automatic_shades: `if sub_surface.has_automatic_shades != NULL:` + - if the window has automatic shades, append this sub_surface id to the list automatic_shades_modeled: `if sub_surface.has_automatic_shades: automatic_shades_modeled.append(sub_surface.id)` +- GO TO RULE ASSERTION + +**Rule Assertion:** +- Case 1: If the baseline does not have shading devices, the list automatic_shades_modeled will be empty, PASS: `if len(automatic_shades_modeled) == 0: PASS` +- Case 2: Otherwise FAIL: `else: FAIL` **Notes:** From fdfa03e701d161eb4ce1793c55cf82428a3c51ea Mon Sep 17 00:00:00 2001 From: KarenWGard <114143532+KarenWGard@users.noreply.github.com> Date: Wed, 4 Dec 2024 16:08:37 -0500 Subject: [PATCH 7/7] Update Rule5-43.md --- docs/section5/Rule5-43.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/section5/Rule5-43.md b/docs/section5/Rule5-43.md index 13a904d9ae..dd905c771a 100644 --- a/docs/section5/Rule5-43.md +++ b/docs/section5/Rule5-43.md @@ -18,7 +18,7 @@ ## Rule Logic: - create a list automatic_shades_modeled and initialize it as an empty list: `automatic_shades_modeled = []` -- look at each surface: `for surface in B_RMD...zones:` +- look at each surface: `for surface in B_RMD...surfaces:` - check if the surface is an exterior surface type: `if surface.adjacent_to == "EXTERIOR":` - look at each subsurface: `for sub_surface in surface.subsurfaces:` - check whether the subsurface has the data element has_automatic_shades: `if sub_surface.has_automatic_shades != NULL:`