-
Notifications
You must be signed in to change notification settings - Fork 58
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Initializes nrcan_446 branch: skylights & wells #1854
base: nrcan
Are you sure you want to change the base?
Changes from 1 commit
2a4ed9b
9dd78b6
4fad85d
64536f3
32cb6f1
cfc5d71
4f72316
e60c1e1
68e3f30
6691d2c
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -33,13 +33,17 @@ def test_necb_skylights() | |
# to toplight occupied spaces below. | ||
@buildings = [ | ||
'FullServiceRestaurant', | ||
# 'LargeOffice', | ||
# 'MediumOffice', | ||
'LargeOffice', | ||
'MediumOffice', | ||
# 'NorthernEducation', | ||
# 'QuickServiceRestaurant', | ||
'QuickServiceRestaurant', | ||
# 'SmallOffice' | ||
] | ||
|
||
# NOTE: Skipping NorthernEducation for now: | ||
# - Standards.Model.rb:5432: warning: instance variable @space_type_map not initialized | ||
# - model works in isolation (e.g. SDK 3.6.1, 3.7.0, 3.8.0) | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. The NorthernEducation model works with addSkylights just fine in isolation. This is likely more of a BTAP prototype family thing. Setting aside for now. |
||
|
||
# Range of test options. NECB2011 for now. Skipping later NECBs - they're | ||
# systematically easier to deploy, given their lower reference building SRR | ||
# targets (e.g. 2% vs 5%). BTAPPRE1980 cases are likely worth testing at | ||
|
@@ -56,6 +60,7 @@ def test_necb_skylights() | |
@buildings.sort.each do |building| | ||
@templates.sort.each do |template| | ||
cas = "CASE #{option} | #{building} (#{template})" | ||
puts; puts; puts cas; puts "--- --- --- --- --- -- ---" | ||
srr = case template | ||
when 'NECB2020' then 0.02 | ||
when 'NECB2017' then 0.02 | ||
|
@@ -94,7 +99,14 @@ def test_necb_skylights() | |
assert(st.osut[:logs].is_a?(Array), err_msg) | ||
|
||
# Tally skylight areas. Compare with GRAs. | ||
skm2 = model.getSubSurfaces.sum(&:grossArea) | ||
skm2 = 0 | ||
|
||
model.getSubSurfaces.each do |sub| | ||
next unless sub.subSurfaceType.downcase == "skylight" | ||
|
||
skm2 += sub.grossArea | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. That's more reasonable - slaps forehead. |
||
end | ||
|
||
assert(skm2 > 0, "BTAP/OSut: Negative skylight area (#{cas})?") | ||
gra0 = st.osut[:gra0] # gross roof area (GRA) in m2, as per SDK | ||
graX = st.osut[:graX] # GRA minus overhang areas (see SmallOffice) | ||
|
@@ -129,6 +141,9 @@ def test_necb_skylights() | |
# SRR% of 4.5%. The effective 'ratio' would vary based on geometry, | ||
# e.g. larger building footprint, wider overhangs. | ||
ratio = gra0.round > graX.round ? skm2 / graX : skm2 / gra0 | ||
|
||
puts; puts "#{gra0.round} vs #{graX.round} #{skm2.round}"; puts | ||
|
||
assert(ratio.round(2) == srr, "BTAP/OSut: Incorrect SRR (#{cas})?") | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Although the requested SRR-based There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. todo : |
||
|
||
# Higher level feedback. | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Currently having an issue with reported skylight area when dealing with the SmallOffice (attic roof overhangs). This works when tested in isolation (i.e. outside of OpenStudio-Standards/BTAP), so likely an unintended bug somewhere - my bad.
EDIT: Yup - error fixed.