openstudio-standards 0.2.16.rc2 → 0.2.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/data/geometry/ASHRAECollege.osm +117 -117
- data/data/standards/test_performance_expected_dd_results.csv +287 -287
- data/lib/openstudio-standards/prototypes/common/do_not_edit_metaclasses.rb +63 -63
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.hvac_systems.rb +1 -0
- data/lib/openstudio-standards/prototypes/common/prototype_metaprogramming.rb +1 -1
- data/lib/openstudio-standards/standards/Standards.Model.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.spc_typ.json +19 -19
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.spc_typ.json +5 -5
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.spc_typ.json +3 -3
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.spc_typ.json +6 -6
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.spc_typ.json +6 -6
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.spc_typ.json +6 -6
- data/lib/openstudio-standards/version.rb +1 -1
- metadata +2 -2
|
@@ -2970,9 +2970,9 @@ end
|
|
|
2970
2970
|
end
|
|
2971
2971
|
end
|
|
2972
2972
|
|
|
2973
|
-
# This class represents a prototypical ASHRAE9012004
|
|
2974
|
-
class
|
|
2975
|
-
@@building_type = "
|
|
2973
|
+
# This class represents a prototypical ASHRAE9012004 Courthouse.
|
|
2974
|
+
class ASHRAE9012004Courthouse < ASHRAE9012004
|
|
2975
|
+
@@building_type = "Courthouse"
|
|
2976
2976
|
register_standard ("90.1-2004_#{@@building_type}")
|
|
2977
2977
|
attr_accessor :prototype_database
|
|
2978
2978
|
attr_accessor :prototype_input
|
|
@@ -2987,7 +2987,7 @@ end
|
|
|
2987
2987
|
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs',search_criteria: {'template' => @template,'building_type' => @@building_type })
|
|
2988
2988
|
if @prototype_input.nil?
|
|
2989
2989
|
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => @template,'building_type' => @@building_type }}, cannot create model.")
|
|
2990
|
-
raise("Could not find prototype inputs for
|
|
2990
|
+
raise("Could not find prototype inputs for ASHRAE9012004Courthouse, cannot create model.")
|
|
2991
2991
|
return false
|
|
2992
2992
|
end
|
|
2993
2993
|
@lookup_building_type = self.model_get_lookup_name(@@building_type)
|
|
@@ -3004,7 +3004,7 @@ end
|
|
|
3004
3004
|
def set_variables()
|
|
3005
3005
|
# Will be overwritten in class reopen file.
|
|
3006
3006
|
# add all building methods for now.
|
|
3007
|
-
self.extend(
|
|
3007
|
+
self.extend(Courthouse) unless @template == 'NECB 2011'
|
|
3008
3008
|
end
|
|
3009
3009
|
# Returns the mapping between the names of the spaces
|
|
3010
3010
|
# in the geometry .osm file and the space types
|
|
@@ -6283,9 +6283,9 @@ end
|
|
|
6283
6283
|
end
|
|
6284
6284
|
end
|
|
6285
6285
|
|
|
6286
|
-
# This class represents a prototypical ASHRAE9012007
|
|
6287
|
-
class
|
|
6288
|
-
@@building_type = "
|
|
6286
|
+
# This class represents a prototypical ASHRAE9012007 Courthouse.
|
|
6287
|
+
class ASHRAE9012007Courthouse < ASHRAE9012007
|
|
6288
|
+
@@building_type = "Courthouse"
|
|
6289
6289
|
register_standard ("90.1-2007_#{@@building_type}")
|
|
6290
6290
|
attr_accessor :prototype_database
|
|
6291
6291
|
attr_accessor :prototype_input
|
|
@@ -6300,7 +6300,7 @@ end
|
|
|
6300
6300
|
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs',search_criteria: {'template' => @template,'building_type' => @@building_type })
|
|
6301
6301
|
if @prototype_input.nil?
|
|
6302
6302
|
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => @template,'building_type' => @@building_type }}, cannot create model.")
|
|
6303
|
-
raise("Could not find prototype inputs for
|
|
6303
|
+
raise("Could not find prototype inputs for ASHRAE9012007Courthouse, cannot create model.")
|
|
6304
6304
|
return false
|
|
6305
6305
|
end
|
|
6306
6306
|
@lookup_building_type = self.model_get_lookup_name(@@building_type)
|
|
@@ -6317,7 +6317,7 @@ end
|
|
|
6317
6317
|
def set_variables()
|
|
6318
6318
|
# Will be overwritten in class reopen file.
|
|
6319
6319
|
# add all building methods for now.
|
|
6320
|
-
self.extend(
|
|
6320
|
+
self.extend(Courthouse) unless @template == 'NECB 2011'
|
|
6321
6321
|
end
|
|
6322
6322
|
# Returns the mapping between the names of the spaces
|
|
6323
6323
|
# in the geometry .osm file and the space types
|
|
@@ -9596,9 +9596,9 @@ end
|
|
|
9596
9596
|
end
|
|
9597
9597
|
end
|
|
9598
9598
|
|
|
9599
|
-
# This class represents a prototypical ASHRAE9012010
|
|
9600
|
-
class
|
|
9601
|
-
@@building_type = "
|
|
9599
|
+
# This class represents a prototypical ASHRAE9012010 Courthouse.
|
|
9600
|
+
class ASHRAE9012010Courthouse < ASHRAE9012010
|
|
9601
|
+
@@building_type = "Courthouse"
|
|
9602
9602
|
register_standard ("90.1-2010_#{@@building_type}")
|
|
9603
9603
|
attr_accessor :prototype_database
|
|
9604
9604
|
attr_accessor :prototype_input
|
|
@@ -9613,7 +9613,7 @@ end
|
|
|
9613
9613
|
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs',search_criteria: {'template' => @template,'building_type' => @@building_type })
|
|
9614
9614
|
if @prototype_input.nil?
|
|
9615
9615
|
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => @template,'building_type' => @@building_type }}, cannot create model.")
|
|
9616
|
-
raise("Could not find prototype inputs for
|
|
9616
|
+
raise("Could not find prototype inputs for ASHRAE9012010Courthouse, cannot create model.")
|
|
9617
9617
|
return false
|
|
9618
9618
|
end
|
|
9619
9619
|
@lookup_building_type = self.model_get_lookup_name(@@building_type)
|
|
@@ -9630,7 +9630,7 @@ end
|
|
|
9630
9630
|
def set_variables()
|
|
9631
9631
|
# Will be overwritten in class reopen file.
|
|
9632
9632
|
# add all building methods for now.
|
|
9633
|
-
self.extend(
|
|
9633
|
+
self.extend(Courthouse) unless @template == 'NECB 2011'
|
|
9634
9634
|
end
|
|
9635
9635
|
# Returns the mapping between the names of the spaces
|
|
9636
9636
|
# in the geometry .osm file and the space types
|
|
@@ -12909,9 +12909,9 @@ end
|
|
|
12909
12909
|
end
|
|
12910
12910
|
end
|
|
12911
12911
|
|
|
12912
|
-
# This class represents a prototypical ASHRAE9012013
|
|
12913
|
-
class
|
|
12914
|
-
@@building_type = "
|
|
12912
|
+
# This class represents a prototypical ASHRAE9012013 Courthouse.
|
|
12913
|
+
class ASHRAE9012013Courthouse < ASHRAE9012013
|
|
12914
|
+
@@building_type = "Courthouse"
|
|
12915
12915
|
register_standard ("90.1-2013_#{@@building_type}")
|
|
12916
12916
|
attr_accessor :prototype_database
|
|
12917
12917
|
attr_accessor :prototype_input
|
|
@@ -12926,7 +12926,7 @@ end
|
|
|
12926
12926
|
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs',search_criteria: {'template' => @template,'building_type' => @@building_type })
|
|
12927
12927
|
if @prototype_input.nil?
|
|
12928
12928
|
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => @template,'building_type' => @@building_type }}, cannot create model.")
|
|
12929
|
-
raise("Could not find prototype inputs for
|
|
12929
|
+
raise("Could not find prototype inputs for ASHRAE9012013Courthouse, cannot create model.")
|
|
12930
12930
|
return false
|
|
12931
12931
|
end
|
|
12932
12932
|
@lookup_building_type = self.model_get_lookup_name(@@building_type)
|
|
@@ -12943,7 +12943,7 @@ end
|
|
|
12943
12943
|
def set_variables()
|
|
12944
12944
|
# Will be overwritten in class reopen file.
|
|
12945
12945
|
# add all building methods for now.
|
|
12946
|
-
self.extend(
|
|
12946
|
+
self.extend(Courthouse) unless @template == 'NECB 2011'
|
|
12947
12947
|
end
|
|
12948
12948
|
# Returns the mapping between the names of the spaces
|
|
12949
12949
|
# in the geometry .osm file and the space types
|
|
@@ -16222,9 +16222,9 @@ end
|
|
|
16222
16222
|
end
|
|
16223
16223
|
end
|
|
16224
16224
|
|
|
16225
|
-
# This class represents a prototypical ASHRAE9012016
|
|
16226
|
-
class
|
|
16227
|
-
@@building_type = "
|
|
16225
|
+
# This class represents a prototypical ASHRAE9012016 Courthouse.
|
|
16226
|
+
class ASHRAE9012016Courthouse < ASHRAE9012016
|
|
16227
|
+
@@building_type = "Courthouse"
|
|
16228
16228
|
register_standard ("90.1-2016_#{@@building_type}")
|
|
16229
16229
|
attr_accessor :prototype_database
|
|
16230
16230
|
attr_accessor :prototype_input
|
|
@@ -16239,7 +16239,7 @@ end
|
|
|
16239
16239
|
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs',search_criteria: {'template' => @template,'building_type' => @@building_type })
|
|
16240
16240
|
if @prototype_input.nil?
|
|
16241
16241
|
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => @template,'building_type' => @@building_type }}, cannot create model.")
|
|
16242
|
-
raise("Could not find prototype inputs for
|
|
16242
|
+
raise("Could not find prototype inputs for ASHRAE9012016Courthouse, cannot create model.")
|
|
16243
16243
|
return false
|
|
16244
16244
|
end
|
|
16245
16245
|
@lookup_building_type = self.model_get_lookup_name(@@building_type)
|
|
@@ -16256,7 +16256,7 @@ end
|
|
|
16256
16256
|
def set_variables()
|
|
16257
16257
|
# Will be overwritten in class reopen file.
|
|
16258
16258
|
# add all building methods for now.
|
|
16259
|
-
self.extend(
|
|
16259
|
+
self.extend(Courthouse) unless @template == 'NECB 2011'
|
|
16260
16260
|
end
|
|
16261
16261
|
# Returns the mapping between the names of the spaces
|
|
16262
16262
|
# in the geometry .osm file and the space types
|
|
@@ -19535,9 +19535,9 @@ end
|
|
|
19535
19535
|
end
|
|
19536
19536
|
end
|
|
19537
19537
|
|
|
19538
|
-
# This class represents a prototypical ASHRAE9012019
|
|
19539
|
-
class
|
|
19540
|
-
@@building_type = "
|
|
19538
|
+
# This class represents a prototypical ASHRAE9012019 Courthouse.
|
|
19539
|
+
class ASHRAE9012019Courthouse < ASHRAE9012019
|
|
19540
|
+
@@building_type = "Courthouse"
|
|
19541
19541
|
register_standard ("90.1-2019_#{@@building_type}")
|
|
19542
19542
|
attr_accessor :prototype_database
|
|
19543
19543
|
attr_accessor :prototype_input
|
|
@@ -19552,7 +19552,7 @@ end
|
|
|
19552
19552
|
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs',search_criteria: {'template' => @template,'building_type' => @@building_type })
|
|
19553
19553
|
if @prototype_input.nil?
|
|
19554
19554
|
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => @template,'building_type' => @@building_type }}, cannot create model.")
|
|
19555
|
-
raise("Could not find prototype inputs for
|
|
19555
|
+
raise("Could not find prototype inputs for ASHRAE9012019Courthouse, cannot create model.")
|
|
19556
19556
|
return false
|
|
19557
19557
|
end
|
|
19558
19558
|
@lookup_building_type = self.model_get_lookup_name(@@building_type)
|
|
@@ -19569,7 +19569,7 @@ end
|
|
|
19569
19569
|
def set_variables()
|
|
19570
19570
|
# Will be overwritten in class reopen file.
|
|
19571
19571
|
# add all building methods for now.
|
|
19572
|
-
self.extend(
|
|
19572
|
+
self.extend(Courthouse) unless @template == 'NECB 2011'
|
|
19573
19573
|
end
|
|
19574
19574
|
# Returns the mapping between the names of the spaces
|
|
19575
19575
|
# in the geometry .osm file and the space types
|
|
@@ -22848,9 +22848,9 @@ end
|
|
|
22848
22848
|
end
|
|
22849
22849
|
end
|
|
22850
22850
|
|
|
22851
|
-
# This class represents a prototypical DOERef1980to2004
|
|
22852
|
-
class
|
|
22853
|
-
@@building_type = "
|
|
22851
|
+
# This class represents a prototypical DOERef1980to2004 Courthouse.
|
|
22852
|
+
class DOERef1980to2004Courthouse < DOERef1980to2004
|
|
22853
|
+
@@building_type = "Courthouse"
|
|
22854
22854
|
register_standard ("DOE Ref 1980-2004_#{@@building_type}")
|
|
22855
22855
|
attr_accessor :prototype_database
|
|
22856
22856
|
attr_accessor :prototype_input
|
|
@@ -22865,7 +22865,7 @@ end
|
|
|
22865
22865
|
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs',search_criteria: {'template' => @template,'building_type' => @@building_type })
|
|
22866
22866
|
if @prototype_input.nil?
|
|
22867
22867
|
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => @template,'building_type' => @@building_type }}, cannot create model.")
|
|
22868
|
-
raise("Could not find prototype inputs for
|
|
22868
|
+
raise("Could not find prototype inputs for DOERef1980to2004Courthouse, cannot create model.")
|
|
22869
22869
|
return false
|
|
22870
22870
|
end
|
|
22871
22871
|
@lookup_building_type = self.model_get_lookup_name(@@building_type)
|
|
@@ -22882,7 +22882,7 @@ end
|
|
|
22882
22882
|
def set_variables()
|
|
22883
22883
|
# Will be overwritten in class reopen file.
|
|
22884
22884
|
# add all building methods for now.
|
|
22885
|
-
self.extend(
|
|
22885
|
+
self.extend(Courthouse) unless @template == 'NECB 2011'
|
|
22886
22886
|
end
|
|
22887
22887
|
# Returns the mapping between the names of the spaces
|
|
22888
22888
|
# in the geometry .osm file and the space types
|
|
@@ -26161,9 +26161,9 @@ end
|
|
|
26161
26161
|
end
|
|
26162
26162
|
end
|
|
26163
26163
|
|
|
26164
|
-
# This class represents a prototypical DOERefPre1980
|
|
26165
|
-
class
|
|
26166
|
-
@@building_type = "
|
|
26164
|
+
# This class represents a prototypical DOERefPre1980 Courthouse.
|
|
26165
|
+
class DOERefPre1980Courthouse < DOERefPre1980
|
|
26166
|
+
@@building_type = "Courthouse"
|
|
26167
26167
|
register_standard ("DOE Ref Pre-1980_#{@@building_type}")
|
|
26168
26168
|
attr_accessor :prototype_database
|
|
26169
26169
|
attr_accessor :prototype_input
|
|
@@ -26178,7 +26178,7 @@ end
|
|
|
26178
26178
|
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs',search_criteria: {'template' => @template,'building_type' => @@building_type })
|
|
26179
26179
|
if @prototype_input.nil?
|
|
26180
26180
|
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => @template,'building_type' => @@building_type }}, cannot create model.")
|
|
26181
|
-
raise("Could not find prototype inputs for
|
|
26181
|
+
raise("Could not find prototype inputs for DOERefPre1980Courthouse, cannot create model.")
|
|
26182
26182
|
return false
|
|
26183
26183
|
end
|
|
26184
26184
|
@lookup_building_type = self.model_get_lookup_name(@@building_type)
|
|
@@ -26195,7 +26195,7 @@ end
|
|
|
26195
26195
|
def set_variables()
|
|
26196
26196
|
# Will be overwritten in class reopen file.
|
|
26197
26197
|
# add all building methods for now.
|
|
26198
|
-
self.extend(
|
|
26198
|
+
self.extend(Courthouse) unless @template == 'NECB 2011'
|
|
26199
26199
|
end
|
|
26200
26200
|
# Returns the mapping between the names of the spaces
|
|
26201
26201
|
# in the geometry .osm file and the space types
|
|
@@ -29474,9 +29474,9 @@ end
|
|
|
29474
29474
|
end
|
|
29475
29475
|
end
|
|
29476
29476
|
|
|
29477
|
-
# This class represents a prototypical NRELZNEReady2017
|
|
29478
|
-
class
|
|
29479
|
-
@@building_type = "
|
|
29477
|
+
# This class represents a prototypical NRELZNEReady2017 Courthouse.
|
|
29478
|
+
class NRELZNEReady2017Courthouse < NRELZNEReady2017
|
|
29479
|
+
@@building_type = "Courthouse"
|
|
29480
29480
|
register_standard ("NREL ZNE Ready 2017_#{@@building_type}")
|
|
29481
29481
|
attr_accessor :prototype_database
|
|
29482
29482
|
attr_accessor :prototype_input
|
|
@@ -29491,7 +29491,7 @@ end
|
|
|
29491
29491
|
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs',search_criteria: {'template' => @template,'building_type' => @@building_type })
|
|
29492
29492
|
if @prototype_input.nil?
|
|
29493
29493
|
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => @template,'building_type' => @@building_type }}, cannot create model.")
|
|
29494
|
-
raise("Could not find prototype inputs for
|
|
29494
|
+
raise("Could not find prototype inputs for NRELZNEReady2017Courthouse, cannot create model.")
|
|
29495
29495
|
return false
|
|
29496
29496
|
end
|
|
29497
29497
|
@lookup_building_type = self.model_get_lookup_name(@@building_type)
|
|
@@ -29508,7 +29508,7 @@ end
|
|
|
29508
29508
|
def set_variables()
|
|
29509
29509
|
# Will be overwritten in class reopen file.
|
|
29510
29510
|
# add all building methods for now.
|
|
29511
|
-
self.extend(
|
|
29511
|
+
self.extend(Courthouse) unless @template == 'NECB 2011'
|
|
29512
29512
|
end
|
|
29513
29513
|
# Returns the mapping between the names of the spaces
|
|
29514
29514
|
# in the geometry .osm file and the space types
|
|
@@ -31981,9 +31981,9 @@ end
|
|
|
31981
31981
|
|
|
31982
31982
|
end
|
|
31983
31983
|
|
|
31984
|
-
# This class represents a prototypical NECB2011
|
|
31985
|
-
class
|
|
31986
|
-
BUILDING_TYPE = "
|
|
31984
|
+
# This class represents a prototypical NECB2011 Courthouse.
|
|
31985
|
+
class NECB2011Courthouse < NECB2011
|
|
31986
|
+
BUILDING_TYPE = "Courthouse"
|
|
31987
31987
|
TEMPLATE = "NECB2011"
|
|
31988
31988
|
register_standard ("#{TEMPLATE}_#{BUILDING_TYPE}")
|
|
31989
31989
|
attr_accessor :prototype_database
|
|
@@ -31999,11 +31999,11 @@ end
|
|
|
31999
31999
|
@building_type = BUILDING_TYPE
|
|
32000
32000
|
@template = TEMPLATE
|
|
32001
32001
|
@instvarbuilding_type = @building_type
|
|
32002
|
-
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs', search_criteria: {'template' => "NECB2011",'building_type' => "
|
|
32002
|
+
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs', search_criteria: {'template' => "NECB2011",'building_type' => "Courthouse" })
|
|
32003
32003
|
if @prototype_input.nil?
|
|
32004
|
-
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => "NECB2011",'building_type' => "
|
|
32004
|
+
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => "NECB2011",'building_type' => "Courthouse" }}, cannot create model.")
|
|
32005
32005
|
#puts JSON.pretty_generate(standards_data['prototype_inputs'])
|
|
32006
|
-
raise("Could not find prototype inputs for NECB2011
|
|
32006
|
+
raise("Could not find prototype inputs for NECB2011 Courthouse, cannot create model.")
|
|
32007
32007
|
return false
|
|
32008
32008
|
end
|
|
32009
32009
|
@lookup_building_type = self.model_get_lookup_name(@building_type)
|
|
@@ -34395,9 +34395,9 @@ end
|
|
|
34395
34395
|
|
|
34396
34396
|
end
|
|
34397
34397
|
|
|
34398
|
-
# This class represents a prototypical NECB2015
|
|
34399
|
-
class
|
|
34400
|
-
BUILDING_TYPE = "
|
|
34398
|
+
# This class represents a prototypical NECB2015 Courthouse.
|
|
34399
|
+
class NECB2015Courthouse < NECB2015
|
|
34400
|
+
BUILDING_TYPE = "Courthouse"
|
|
34401
34401
|
TEMPLATE = "NECB2015"
|
|
34402
34402
|
register_standard ("#{TEMPLATE}_#{BUILDING_TYPE}")
|
|
34403
34403
|
attr_accessor :prototype_database
|
|
@@ -34413,11 +34413,11 @@ end
|
|
|
34413
34413
|
@building_type = BUILDING_TYPE
|
|
34414
34414
|
@template = TEMPLATE
|
|
34415
34415
|
@instvarbuilding_type = @building_type
|
|
34416
|
-
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs', search_criteria: {'template' => "NECB2015",'building_type' => "
|
|
34416
|
+
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs', search_criteria: {'template' => "NECB2015",'building_type' => "Courthouse" })
|
|
34417
34417
|
if @prototype_input.nil?
|
|
34418
|
-
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => "NECB2015",'building_type' => "
|
|
34418
|
+
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => "NECB2015",'building_type' => "Courthouse" }}, cannot create model.")
|
|
34419
34419
|
#puts JSON.pretty_generate(standards_data['prototype_inputs'])
|
|
34420
|
-
raise("Could not find prototype inputs for NECB2015
|
|
34420
|
+
raise("Could not find prototype inputs for NECB2015 Courthouse, cannot create model.")
|
|
34421
34421
|
return false
|
|
34422
34422
|
end
|
|
34423
34423
|
@lookup_building_type = self.model_get_lookup_name(@building_type)
|
|
@@ -36809,9 +36809,9 @@ end
|
|
|
36809
36809
|
|
|
36810
36810
|
end
|
|
36811
36811
|
|
|
36812
|
-
# This class represents a prototypical NECB2017
|
|
36813
|
-
class
|
|
36814
|
-
BUILDING_TYPE = "
|
|
36812
|
+
# This class represents a prototypical NECB2017 Courthouse.
|
|
36813
|
+
class NECB2017Courthouse < NECB2017
|
|
36814
|
+
BUILDING_TYPE = "Courthouse"
|
|
36815
36815
|
TEMPLATE = "NECB2017"
|
|
36816
36816
|
register_standard ("#{TEMPLATE}_#{BUILDING_TYPE}")
|
|
36817
36817
|
attr_accessor :prototype_database
|
|
@@ -36827,11 +36827,11 @@ end
|
|
|
36827
36827
|
@building_type = BUILDING_TYPE
|
|
36828
36828
|
@template = TEMPLATE
|
|
36829
36829
|
@instvarbuilding_type = @building_type
|
|
36830
|
-
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs', search_criteria: {'template' => "NECB2017",'building_type' => "
|
|
36830
|
+
@prototype_input = self.standards_lookup_table_first(table_name: 'prototype_inputs', search_criteria: {'template' => "NECB2017",'building_type' => "Courthouse" })
|
|
36831
36831
|
if @prototype_input.nil?
|
|
36832
|
-
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => "NECB2017",'building_type' => "
|
|
36832
|
+
OpenStudio.logFree(OpenStudio::Error, 'openstudio.standards.Model', "Could not find prototype inputs for #{{'template' => "NECB2017",'building_type' => "Courthouse" }}, cannot create model.")
|
|
36833
36833
|
#puts JSON.pretty_generate(standards_data['prototype_inputs'])
|
|
36834
|
-
raise("Could not find prototype inputs for NECB2017
|
|
36834
|
+
raise("Could not find prototype inputs for NECB2017 Courthouse, cannot create model.")
|
|
36835
36835
|
return false
|
|
36836
36836
|
end
|
|
36837
36837
|
@lookup_building_type = self.model_get_lookup_name(@building_type)
|
|
@@ -5931,6 +5931,7 @@ class Standard
|
|
|
5931
5931
|
if air_loop_heating_type == 'Water'
|
|
5932
5932
|
hot_water_loop = model_get_or_add_hot_water_loop(model, main_heat_fuel,
|
|
5933
5933
|
hot_water_loop_type: hot_water_loop_type)
|
|
5934
|
+
heating_type = 'Water'
|
|
5934
5935
|
else
|
|
5935
5936
|
hot_water_loop = nil
|
|
5936
5937
|
end
|
|
@@ -2010,7 +2010,7 @@ class Standard
|
|
|
2010
2010
|
if existing_sch.is_initialized
|
|
2011
2011
|
existing_sch = existing_sch.get
|
|
2012
2012
|
existing_day_sch_vals = existing_sch.defaultDaySchedule.values
|
|
2013
|
-
if existing_day_sch_vals.size == 1 && existing_day_sch_vals[0]
|
|
2013
|
+
if existing_day_sch_vals.size == 1 && (existing_day_sch_vals[0] - value).abs < 1.0e-6
|
|
2014
2014
|
return existing_sch
|
|
2015
2015
|
end
|
|
2016
2016
|
end
|
|
@@ -4148,7 +4148,7 @@
|
|
|
4148
4148
|
"ventilation_standard": "ASHRAE 62.1-2004",
|
|
4149
4149
|
"ventilation_primary_space_type": "Basement",
|
|
4150
4150
|
"ventilation_secondary_space_type": "For Hospital",
|
|
4151
|
-
"ventilation_per_area": 0.
|
|
4151
|
+
"ventilation_per_area": 0.05,
|
|
4152
4152
|
"ventilation_per_person": null,
|
|
4153
4153
|
"ventilation_air_changes": null,
|
|
4154
4154
|
"minimum_total_air_changes": null,
|
|
@@ -6782,9 +6782,9 @@
|
|
|
6782
6782
|
"occupancy_activity_schedule": "HotelLarge ACTIVITY_SCH",
|
|
6783
6783
|
"is_residential": null,
|
|
6784
6784
|
"ventilation_standard": "ASHRAE 62.1-2007",
|
|
6785
|
-
"ventilation_primary_space_type": "
|
|
6786
|
-
"ventilation_secondary_space_type": "Corridors",
|
|
6787
|
-
"ventilation_per_area": 0.
|
|
6785
|
+
"ventilation_primary_space_type": "Public Spaces",
|
|
6786
|
+
"ventilation_secondary_space_type": "Corridors and utilities",
|
|
6787
|
+
"ventilation_per_area": 0.05,
|
|
6788
6788
|
"ventilation_per_person": null,
|
|
6789
6789
|
"ventilation_air_changes": null,
|
|
6790
6790
|
"minimum_total_air_changes": null,
|
|
@@ -8012,11 +8012,11 @@
|
|
|
8012
8012
|
"occupancy_schedule": "HotelLarge BLDG_OCC_SCH",
|
|
8013
8013
|
"occupancy_activity_schedule": "HotelLarge ACTIVITY_SCH",
|
|
8014
8014
|
"is_residential": null,
|
|
8015
|
-
"ventilation_standard": "ASHRAE 62.1-
|
|
8016
|
-
"ventilation_primary_space_type": "Retail",
|
|
8017
|
-
"ventilation_secondary_space_type": "
|
|
8018
|
-
"ventilation_per_area": 0.
|
|
8019
|
-
"ventilation_per_person":
|
|
8015
|
+
"ventilation_standard": "ASHRAE 62.1-1999",
|
|
8016
|
+
"ventilation_primary_space_type": "Retail Stores, Sales Floors, and Show Room Floors",
|
|
8017
|
+
"ventilation_secondary_space_type": "Basement and street",
|
|
8018
|
+
"ventilation_per_area": 0.3,
|
|
8019
|
+
"ventilation_per_person": 0.0,
|
|
8020
8020
|
"ventilation_air_changes": null,
|
|
8021
8021
|
"minimum_total_air_changes": null,
|
|
8022
8022
|
"infiltration_per_exterior_area": 0.112,
|
|
@@ -16352,7 +16352,7 @@
|
|
|
16352
16352
|
"ventilation_primary_space_type": "Education",
|
|
16353
16353
|
"ventilation_secondary_space_type": "Classroom",
|
|
16354
16354
|
"ventilation_per_area": 0.0,
|
|
16355
|
-
"ventilation_per_person":
|
|
16355
|
+
"ventilation_per_person": 15.0,
|
|
16356
16356
|
"ventilation_air_changes": null,
|
|
16357
16357
|
"minimum_total_air_changes": null,
|
|
16358
16358
|
"infiltration_per_exterior_area": 0.0595,
|
|
@@ -16440,7 +16440,7 @@
|
|
|
16440
16440
|
"ventilation_primary_space_type": "Education",
|
|
16441
16441
|
"ventilation_secondary_space_type": "Classroom",
|
|
16442
16442
|
"ventilation_per_area": 0.0,
|
|
16443
|
-
"ventilation_per_person":
|
|
16443
|
+
"ventilation_per_person": 15.0,
|
|
16444
16444
|
"ventilation_air_changes": null,
|
|
16445
16445
|
"minimum_total_air_changes": null,
|
|
16446
16446
|
"infiltration_per_exterior_area": 0.0595,
|
|
@@ -16792,7 +16792,7 @@
|
|
|
16792
16792
|
"ventilation_primary_space_type": "Education",
|
|
16793
16793
|
"ventilation_secondary_space_type": "Libraries",
|
|
16794
16794
|
"ventilation_per_area": 0.0,
|
|
16795
|
-
"ventilation_per_person":
|
|
16795
|
+
"ventilation_per_person": 15.0,
|
|
16796
16796
|
"ventilation_air_changes": null,
|
|
16797
16797
|
"minimum_total_air_changes": null,
|
|
16798
16798
|
"infiltration_per_exterior_area": 0.0595,
|
|
@@ -18024,7 +18024,7 @@
|
|
|
18024
18024
|
"ventilation_primary_space_type": "Education",
|
|
18025
18025
|
"ventilation_secondary_space_type": "Classroom",
|
|
18026
18026
|
"ventilation_per_area": 0.0,
|
|
18027
|
-
"ventilation_per_person":
|
|
18027
|
+
"ventilation_per_person": 15.0,
|
|
18028
18028
|
"ventilation_air_changes": null,
|
|
18029
18029
|
"minimum_total_air_changes": null,
|
|
18030
18030
|
"infiltration_per_exterior_area": 0.0595,
|
|
@@ -18112,7 +18112,7 @@
|
|
|
18112
18112
|
"ventilation_primary_space_type": "Education",
|
|
18113
18113
|
"ventilation_secondary_space_type": "Classroom",
|
|
18114
18114
|
"ventilation_per_area": 0.0,
|
|
18115
|
-
"ventilation_per_person":
|
|
18115
|
+
"ventilation_per_person": 15.0,
|
|
18116
18116
|
"ventilation_air_changes": null,
|
|
18117
18117
|
"minimum_total_air_changes": null,
|
|
18118
18118
|
"infiltration_per_exterior_area": 0.0595,
|
|
@@ -18464,7 +18464,7 @@
|
|
|
18464
18464
|
"ventilation_primary_space_type": "Education",
|
|
18465
18465
|
"ventilation_secondary_space_type": "Libraries",
|
|
18466
18466
|
"ventilation_per_area": 0.0,
|
|
18467
|
-
"ventilation_per_person":
|
|
18467
|
+
"ventilation_per_person": 15.0,
|
|
18468
18468
|
"ventilation_air_changes": null,
|
|
18469
18469
|
"minimum_total_air_changes": null,
|
|
18470
18470
|
"infiltration_per_exterior_area": 0.0595,
|
|
@@ -18549,10 +18549,10 @@
|
|
|
18549
18549
|
"occupancy_activity_schedule": "SchoolSecondary ACTIVITY_SCH",
|
|
18550
18550
|
"is_residential": null,
|
|
18551
18551
|
"ventilation_standard": "ASHRAE 62.1-1999",
|
|
18552
|
-
"ventilation_primary_space_type": "
|
|
18553
|
-
"ventilation_secondary_space_type": "
|
|
18554
|
-
"ventilation_per_area":
|
|
18555
|
-
"ventilation_per_person":
|
|
18552
|
+
"ventilation_primary_space_type": "Offices",
|
|
18553
|
+
"ventilation_secondary_space_type": "Reception Areas",
|
|
18554
|
+
"ventilation_per_area": null,
|
|
18555
|
+
"ventilation_per_person": 15.0,
|
|
18556
18556
|
"ventilation_air_changes": null,
|
|
18557
18557
|
"minimum_total_air_changes": null,
|
|
18558
18558
|
"infiltration_per_exterior_area": 0.0595,
|
|
@@ -13291,10 +13291,10 @@
|
|
|
13291
13291
|
"occupancy_schedule": "OfficeSmall BLDG_OCC_SCH",
|
|
13292
13292
|
"occupancy_activity_schedule": "OfficeSmall ACTIVITY_SCH",
|
|
13293
13293
|
"is_residential": null,
|
|
13294
|
-
"ventilation_standard": "ASHRAE 62.1-
|
|
13294
|
+
"ventilation_standard": "ASHRAE 62.1-2004",
|
|
13295
13295
|
"ventilation_primary_space_type": "Office Buildings",
|
|
13296
13296
|
"ventilation_secondary_space_type": "Whole Building",
|
|
13297
|
-
"ventilation_per_area": 0.
|
|
13297
|
+
"ventilation_per_area": 0.085,
|
|
13298
13298
|
"ventilation_per_person": null,
|
|
13299
13299
|
"ventilation_air_changes": null,
|
|
13300
13300
|
"minimum_total_air_changes": null,
|
|
@@ -18484,10 +18484,10 @@
|
|
|
18484
18484
|
"occupancy_activity_schedule": "SchoolSecondary ACTIVITY_SCH",
|
|
18485
18485
|
"is_residential": null,
|
|
18486
18486
|
"ventilation_standard": "ASHRAE 62.1-2004",
|
|
18487
|
-
"ventilation_primary_space_type": "
|
|
18488
|
-
"ventilation_secondary_space_type": "
|
|
18487
|
+
"ventilation_primary_space_type": "Office",
|
|
18488
|
+
"ventilation_secondary_space_type": "Buildings Main entry lobbies",
|
|
18489
18489
|
"ventilation_per_area": 0.06,
|
|
18490
|
-
"ventilation_per_person":
|
|
18490
|
+
"ventilation_per_person": 5.0,
|
|
18491
18491
|
"ventilation_air_changes": null,
|
|
18492
18492
|
"minimum_total_air_changes": null,
|
|
18493
18493
|
"infiltration_per_exterior_area": 0.0446,
|
|
@@ -18659,10 +18659,10 @@
|
|
|
18659
18659
|
"occupancy_activity_schedule": "SchoolSecondary ACTIVITY_SCH",
|
|
18660
18660
|
"is_residential": null,
|
|
18661
18661
|
"ventilation_standard": "ASHRAE 62.1-2007",
|
|
18662
|
-
"ventilation_primary_space_type": "
|
|
18663
|
-
"ventilation_secondary_space_type": "
|
|
18662
|
+
"ventilation_primary_space_type": "Office",
|
|
18663
|
+
"ventilation_secondary_space_type": "Buildings Main entry lobbies",
|
|
18664
18664
|
"ventilation_per_area": 0.06,
|
|
18665
|
-
"ventilation_per_person":
|
|
18665
|
+
"ventilation_per_person": 5.0,
|
|
18666
18666
|
"ventilation_air_changes": null,
|
|
18667
18667
|
"minimum_total_air_changes": null,
|
|
18668
18668
|
"infiltration_per_exterior_area": 0.0446,
|
|
@@ -5201,10 +5201,10 @@
|
|
|
5201
5201
|
"occupancy_schedule": "Hospital BLDG_OCC_EXTD_SCH",
|
|
5202
5202
|
"occupancy_activity_schedule": "Hospital ACTIVITY_SCH",
|
|
5203
5203
|
"is_residential": null,
|
|
5204
|
-
"ventilation_standard": "ASHRAE 62.1-
|
|
5204
|
+
"ventilation_standard": "ASHRAE 62.1-2010",
|
|
5205
5205
|
"ventilation_primary_space_type": "Food and Beverage Service",
|
|
5206
|
-
"ventilation_secondary_space_type": "
|
|
5207
|
-
"ventilation_per_area": 0.
|
|
5206
|
+
"ventilation_secondary_space_type": "Kitchen (cooking)",
|
|
5207
|
+
"ventilation_per_area": 0.12,
|
|
5208
5208
|
"ventilation_per_person": 7.5,
|
|
5209
5209
|
"ventilation_air_changes": null,
|
|
5210
5210
|
"minimum_total_air_changes": null,
|
|
@@ -18955,10 +18955,10 @@
|
|
|
18955
18955
|
"occupancy_activity_schedule": "SchoolSecondary ACTIVITY_SCH",
|
|
18956
18956
|
"is_residential": null,
|
|
18957
18957
|
"ventilation_standard": "ASHRAE 62.1-2007",
|
|
18958
|
-
"ventilation_primary_space_type": "
|
|
18959
|
-
"ventilation_secondary_space_type": "
|
|
18958
|
+
"ventilation_primary_space_type": "Office",
|
|
18959
|
+
"ventilation_secondary_space_type": "Buildings Main entry lobbies",
|
|
18960
18960
|
"ventilation_per_area": 0.06,
|
|
18961
|
-
"ventilation_per_person":
|
|
18961
|
+
"ventilation_per_person": 5.0,
|
|
18962
18962
|
"ventilation_air_changes": null,
|
|
18963
18963
|
"minimum_total_air_changes": null,
|
|
18964
18964
|
"infiltration_per_exterior_area": 0.0446,
|
|
@@ -5201,10 +5201,10 @@
|
|
|
5201
5201
|
"occupancy_schedule": "Hospital BLDG_OCC_EXTD_SCH",
|
|
5202
5202
|
"occupancy_activity_schedule": "Hospital ACTIVITY_SCH",
|
|
5203
5203
|
"is_residential": null,
|
|
5204
|
-
"ventilation_standard": "ASHRAE 62.1-
|
|
5204
|
+
"ventilation_standard": "ASHRAE 62.1-2013",
|
|
5205
5205
|
"ventilation_primary_space_type": "Food and Beverage Service",
|
|
5206
|
-
"ventilation_secondary_space_type": "
|
|
5207
|
-
"ventilation_per_area": 0.
|
|
5206
|
+
"ventilation_secondary_space_type": "Kitchen (cooking)",
|
|
5207
|
+
"ventilation_per_area": 0.12,
|
|
5208
5208
|
"ventilation_per_person": 7.5,
|
|
5209
5209
|
"ventilation_air_changes": null,
|
|
5210
5210
|
"minimum_total_air_changes": null,
|
|
@@ -18925,10 +18925,10 @@
|
|
|
18925
18925
|
"occupancy_activity_schedule": "SchoolSecondary ACTIVITY_SCH",
|
|
18926
18926
|
"is_residential": null,
|
|
18927
18927
|
"ventilation_standard": "ASHRAE 62.1-2007",
|
|
18928
|
-
"ventilation_primary_space_type": "
|
|
18929
|
-
"ventilation_secondary_space_type": "
|
|
18928
|
+
"ventilation_primary_space_type": "Office",
|
|
18929
|
+
"ventilation_secondary_space_type": "Buildings Main entry lobbies",
|
|
18930
18930
|
"ventilation_per_area": 0.06,
|
|
18931
|
-
"ventilation_per_person":
|
|
18931
|
+
"ventilation_per_person": 5.0,
|
|
18932
18932
|
"ventilation_air_changes": null,
|
|
18933
18933
|
"minimum_total_air_changes": null,
|
|
18934
18934
|
"infiltration_per_exterior_area": 0.0446,
|
|
@@ -5201,10 +5201,10 @@
|
|
|
5201
5201
|
"occupancy_schedule": "Hospital BLDG_OCC_EXTD_SCH",
|
|
5202
5202
|
"occupancy_activity_schedule": "Hospital ACTIVITY_SCH",
|
|
5203
5203
|
"is_residential": null,
|
|
5204
|
-
"ventilation_standard": "ASHRAE 62.1-
|
|
5204
|
+
"ventilation_standard": "ASHRAE 62.1-2016",
|
|
5205
5205
|
"ventilation_primary_space_type": "Food and Beverage Service",
|
|
5206
|
-
"ventilation_secondary_space_type": "
|
|
5207
|
-
"ventilation_per_area": 0.
|
|
5206
|
+
"ventilation_secondary_space_type": "Kitchen (cooking)",
|
|
5207
|
+
"ventilation_per_area": 0.12,
|
|
5208
5208
|
"ventilation_per_person": 7.5,
|
|
5209
5209
|
"ventilation_air_changes": null,
|
|
5210
5210
|
"minimum_total_air_changes": null,
|
|
@@ -18925,10 +18925,10 @@
|
|
|
18925
18925
|
"occupancy_activity_schedule": "SchoolSecondary ACTIVITY_SCH",
|
|
18926
18926
|
"is_residential": null,
|
|
18927
18927
|
"ventilation_standard": "ASHRAE 62.1-2007",
|
|
18928
|
-
"ventilation_primary_space_type": "
|
|
18929
|
-
"ventilation_secondary_space_type": "
|
|
18928
|
+
"ventilation_primary_space_type": "Office",
|
|
18929
|
+
"ventilation_secondary_space_type": "Buildings Main entry lobbies",
|
|
18930
18930
|
"ventilation_per_area": 0.06,
|
|
18931
|
-
"ventilation_per_person":
|
|
18931
|
+
"ventilation_per_person": 5.0,
|
|
18932
18932
|
"ventilation_air_changes": null,
|
|
18933
18933
|
"minimum_total_air_changes": null,
|
|
18934
18934
|
"infiltration_per_exterior_area": 0.0446,
|