openstudio-model-articulation 0.8.0 → 0.10.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -0
- data/Gemfile +12 -5
- data/Jenkinsfile +1 -1
- data/README.md +2 -0
- data/lib/measures/SimplifyGeometryToSlicedBar/measure.rb +32 -37
- data/lib/measures/SimplifyGeometryToSlicedBar/measure.xml +34 -80
- data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_cofee.rb +10 -9
- data/lib/measures/SpaceTypeAndConstructionSetWizard/measure.rb +10 -13
- data/lib/measures/SpaceTypeAndConstructionSetWizard/measure.xml +28 -28
- data/lib/measures/blended_space_type_from_floor_area_ratios/measure.rb +31 -14
- data/lib/measures/blended_space_type_from_floor_area_ratios/measure.xml +36 -36
- data/lib/measures/blended_space_type_from_model/measure.rb +12 -5
- data/lib/measures/blended_space_type_from_model/measure.xml +47 -47
- data/lib/measures/create_DOE_prototype_building/measure.rb +1 -1
- data/lib/measures/create_DOE_prototype_building/measure.xml +19 -875
- data/lib/measures/create_bar_from_building_type_ratios/README.md +2 -13
- data/lib/measures/create_bar_from_building_type_ratios/measure.rb +122 -30
- data/lib/measures/create_bar_from_building_type_ratios/measure.xml +108 -349
- data/lib/measures/create_bar_from_deer_building_type_ratios/README.md +21 -1
- data/lib/measures/create_bar_from_deer_building_type_ratios/measure.rb +120 -18
- data/lib/measures/create_bar_from_deer_building_type_ratios/measure.xml +94 -32
- data/lib/measures/create_bar_from_doe_building_type_ratios/measure.rb +127 -18
- data/lib/measures/create_bar_from_doe_building_type_ratios/measure.xml +48 -26
- data/lib/measures/create_bar_from_model/measure.rb +17 -18
- data/lib/measures/create_bar_from_model/measure.xml +41 -41
- data/lib/measures/create_bar_from_space_type_ratios/README.md +1 -1
- data/lib/measures/create_bar_from_space_type_ratios/measure.rb +94 -14
- data/lib/measures/create_bar_from_space_type_ratios/measure.xml +104 -63
- data/lib/measures/create_baseline_building/measure.xml +33 -33
- data/lib/measures/create_deer_prototype_building/measure.xml +15 -15
- data/lib/measures/create_parametric_schedules/measure.rb +17 -20
- data/lib/measures/create_parametric_schedules/measure.xml +15 -15
- data/lib/measures/create_typical_building_from_model/README.md +16 -16
- data/lib/measures/create_typical_building_from_model/measure.rb +84 -18
- data/lib/measures/create_typical_building_from_model/measure.xml +159 -211
- data/lib/measures/create_typical_deer_building_from_model/README.md +38 -5
- data/lib/measures/create_typical_deer_building_from_model/measure.rb +84 -12
- data/lib/measures/create_typical_deer_building_from_model/measure.xml +165 -65
- data/lib/measures/create_typical_doe_building_from_model/README.md +17 -4
- data/lib/measures/create_typical_doe_building_from_model/measure.rb +84 -12
- data/lib/measures/create_typical_doe_building_from_model/measure.xml +125 -65
- data/lib/measures/deer_space_type_and_construction_set_wizard/measure.rb +13 -16
- data/lib/measures/deer_space_type_and_construction_set_wizard/measure.xml +72 -29
- data/lib/measures/make_shading_surfaces_based_on_zone_multipliers/measure.rb +4 -4
- data/lib/measures/make_shading_surfaces_based_on_zone_multipliers/measure.xml +21 -21
- data/lib/measures/merge_spaces_from_external_file/measure.rb +4 -4
- data/lib/measures/merge_spaces_from_external_file/measure.xml +34 -34
- data/lib/measures/radiant_slab_with_doas/README.md +0 -8
- data/lib/measures/radiant_slab_with_doas/measure.rb +2 -11
- data/lib/measures/radiant_slab_with_doas/measure.xml +31 -40
- data/lib/measures/replace_geometry_by_story/measure.rb +6 -10
- data/lib/measures/replace_geometry_by_story/measure.xml +19 -19
- data/lib/measures/set_nist_infiltration_correlations/measure.rb +34 -25
- data/lib/measures/set_nist_infiltration_correlations/measure.xml +38 -38
- data/lib/openstudio/model_articulation/version.rb +1 -1
- data/openstudio-model-articulation.gemspec +11 -4
- metadata +69 -16
- data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_geometry.rb +0 -1174
- data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_helper_methods.rb +0 -367
- data/lib/measures/create_typical_building_from_model/resources/Model.hvac.rb +0 -608
@@ -1,10 +1,10 @@
|
|
1
1
|
<?xml version="1.0"?>
|
2
2
|
<measure>
|
3
|
-
<schema_version>3.
|
3
|
+
<schema_version>3.1</schema_version>
|
4
4
|
<name>deer_space_type_and_construction_set_wizard</name>
|
5
5
|
<uid>d8effcbd-52b2-4e5c-866c-e85091142aa6</uid>
|
6
|
-
<version_id>
|
7
|
-
<version_modified>
|
6
|
+
<version_id>0960390f-d8e0-460d-8354-b1c1be0e23ac</version_id>
|
7
|
+
<version_modified>2024-05-20T07:54:33Z</version_modified>
|
8
8
|
<xml_checksum>A514F332</xml_checksum>
|
9
9
|
<class_name>DEERSpaceTypeAndConstructionSetWizard</class_name>
|
10
10
|
<display_name>DEER Space Type and Construction Set Wizard</display_name>
|
@@ -17,6 +17,7 @@
|
|
17
17
|
<type>Choice</type>
|
18
18
|
<required>true</required>
|
19
19
|
<model_dependent>false</model_dependent>
|
20
|
+
<default_value>Asm</default_value>
|
20
21
|
<choices>
|
21
22
|
<choice>
|
22
23
|
<value>Asm</value>
|
@@ -134,6 +135,7 @@
|
|
134
135
|
<type>Choice</type>
|
135
136
|
<required>true</required>
|
136
137
|
<model_dependent>false</model_dependent>
|
138
|
+
<default_value>DEER 2017</default_value>
|
137
139
|
<choices>
|
138
140
|
<choice>
|
139
141
|
<value>DEER Pre-1975</value>
|
@@ -175,6 +177,46 @@
|
|
175
177
|
<value>DEER 2020</value>
|
176
178
|
<display_name>DEER 2020</display_name>
|
177
179
|
</choice>
|
180
|
+
<choice>
|
181
|
+
<value>ComStock DEER Pre-1975</value>
|
182
|
+
<display_name>ComStock DEER Pre-1975</display_name>
|
183
|
+
</choice>
|
184
|
+
<choice>
|
185
|
+
<value>ComStock DEER 1985</value>
|
186
|
+
<display_name>ComStock DEER 1985</display_name>
|
187
|
+
</choice>
|
188
|
+
<choice>
|
189
|
+
<value>ComStock DEER 1996</value>
|
190
|
+
<display_name>ComStock DEER 1996</display_name>
|
191
|
+
</choice>
|
192
|
+
<choice>
|
193
|
+
<value>ComStock DEER 2003</value>
|
194
|
+
<display_name>ComStock DEER 2003</display_name>
|
195
|
+
</choice>
|
196
|
+
<choice>
|
197
|
+
<value>ComStock DEER 2007</value>
|
198
|
+
<display_name>ComStock DEER 2007</display_name>
|
199
|
+
</choice>
|
200
|
+
<choice>
|
201
|
+
<value>ComStock DEER 2011</value>
|
202
|
+
<display_name>ComStock DEER 2011</display_name>
|
203
|
+
</choice>
|
204
|
+
<choice>
|
205
|
+
<value>ComStock DEER 2014</value>
|
206
|
+
<display_name>ComStock DEER 2014</display_name>
|
207
|
+
</choice>
|
208
|
+
<choice>
|
209
|
+
<value>ComStock DEER 2015</value>
|
210
|
+
<display_name>ComStock DEER 2015</display_name>
|
211
|
+
</choice>
|
212
|
+
<choice>
|
213
|
+
<value>ComStock DEER 2017</value>
|
214
|
+
<display_name>ComStock DEER 2017</display_name>
|
215
|
+
</choice>
|
216
|
+
<choice>
|
217
|
+
<value>ComStock DEER 2020</value>
|
218
|
+
<display_name>ComStock DEER 2020</display_name>
|
219
|
+
</choice>
|
178
220
|
</choices>
|
179
221
|
</argument>
|
180
222
|
<argument>
|
@@ -183,6 +225,7 @@
|
|
183
225
|
<type>Choice</type>
|
184
226
|
<required>true</required>
|
185
227
|
<model_dependent>false</model_dependent>
|
228
|
+
<default_value>CEC T24-CEC8</default_value>
|
186
229
|
<choices>
|
187
230
|
<choice>
|
188
231
|
<value>CEC T24-CEC1</value>
|
@@ -324,16 +367,16 @@
|
|
324
367
|
</attributes>
|
325
368
|
<files>
|
326
369
|
<file>
|
327
|
-
<filename>
|
328
|
-
<filetype>
|
329
|
-
<usage_type>
|
330
|
-
<checksum>
|
370
|
+
<filename>LICENSE.md</filename>
|
371
|
+
<filetype>md</filetype>
|
372
|
+
<usage_type>license</usage_type>
|
373
|
+
<checksum>BFFB1AA6</checksum>
|
331
374
|
</file>
|
332
375
|
<file>
|
333
|
-
<filename>
|
334
|
-
<filetype>
|
335
|
-
<usage_type>
|
336
|
-
<checksum>
|
376
|
+
<filename>README.md</filename>
|
377
|
+
<filetype>md</filetype>
|
378
|
+
<usage_type>readme</usage_type>
|
379
|
+
<checksum>DA87BC3D</checksum>
|
337
380
|
</file>
|
338
381
|
<file>
|
339
382
|
<filename>README.md.erb</filename>
|
@@ -342,10 +385,15 @@
|
|
342
385
|
<checksum>703C9964</checksum>
|
343
386
|
</file>
|
344
387
|
<file>
|
345
|
-
<
|
346
|
-
|
347
|
-
|
348
|
-
|
388
|
+
<version>
|
389
|
+
<software_program>OpenStudio</software_program>
|
390
|
+
<identifier>2.0.0</identifier>
|
391
|
+
<min_compatible>3.8.0</min_compatible>
|
392
|
+
</version>
|
393
|
+
<filename>measure.rb</filename>
|
394
|
+
<filetype>rb</filetype>
|
395
|
+
<usage_type>script</usage_type>
|
396
|
+
<checksum>D15EF711</checksum>
|
349
397
|
</file>
|
350
398
|
<file>
|
351
399
|
<filename>design_doc.txt</filename>
|
@@ -354,27 +402,22 @@
|
|
354
402
|
<checksum>86154A1B</checksum>
|
355
403
|
</file>
|
356
404
|
<file>
|
357
|
-
<filename>
|
358
|
-
<filetype>
|
359
|
-
<usage_type>
|
360
|
-
<checksum>
|
405
|
+
<filename>EmptySeedModel.osm</filename>
|
406
|
+
<filetype>osm</filetype>
|
407
|
+
<usage_type>test</usage_type>
|
408
|
+
<checksum>50769D09</checksum>
|
361
409
|
</file>
|
362
410
|
<file>
|
363
411
|
<filename>deer_space_type_and_construction_set_wizard_Test.rb</filename>
|
364
412
|
<filetype>rb</filetype>
|
365
413
|
<usage_type>test</usage_type>
|
366
|
-
<checksum>
|
414
|
+
<checksum>7BFB1B49</checksum>
|
367
415
|
</file>
|
368
416
|
<file>
|
369
|
-
<
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
</version>
|
374
|
-
<filename>measure.rb</filename>
|
375
|
-
<filetype>rb</filetype>
|
376
|
-
<usage_type>script</usage_type>
|
377
|
-
<checksum>94916FFD</checksum>
|
417
|
+
<filename>two_story_bar.osm</filename>
|
418
|
+
<filetype>osm</filetype>
|
419
|
+
<usage_type>test</usage_type>
|
420
|
+
<checksum>85FF42E2</checksum>
|
378
421
|
</file>
|
379
422
|
</files>
|
380
423
|
</measure>
|
@@ -6,9 +6,8 @@
|
|
6
6
|
# see the URL below for information on how to write OpenStudio measures
|
7
7
|
# http://nrel.github.io/OpenStudio-user-documentation/reference/measure_writing_guide/
|
8
8
|
|
9
|
-
# load
|
10
|
-
require 'openstudio-
|
11
|
-
require 'openstudio/extension/core/os_lib_helper_methods'
|
9
|
+
# load openstudio-standards gem
|
10
|
+
require 'openstudio-standards'
|
12
11
|
|
13
12
|
# start the measure
|
14
13
|
class MakeShadingSurfacesBasedOnZoneMultipliers < OpenStudio::Measure::ModelMeasure
|
@@ -65,7 +64,8 @@ class MakeShadingSurfacesBasedOnZoneMultipliers < OpenStudio::Measure::ModelMeas
|
|
65
64
|
super(model, runner, user_arguments)
|
66
65
|
|
67
66
|
# assign the user inputs to variables
|
68
|
-
args =
|
67
|
+
args = runner.getArgumentValues(arguments(model), user_arguments)
|
68
|
+
args = Hash[args.collect{ |k, v| [k.to_s, v] }]
|
69
69
|
if !args then return false end
|
70
70
|
|
71
71
|
# report initial condition of model
|
@@ -1,10 +1,10 @@
|
|
1
1
|
<?xml version="1.0"?>
|
2
2
|
<measure>
|
3
|
-
<schema_version>3.
|
3
|
+
<schema_version>3.1</schema_version>
|
4
4
|
<name>make_shading_surfaces_based_on_zone_multipliers</name>
|
5
5
|
<uid>57d7314d-2ff0-4c13-bf07-b63380bfdea6</uid>
|
6
|
-
<version_id>
|
7
|
-
<version_modified>
|
6
|
+
<version_id>1e35bf48-3f72-42df-8196-842f3f498e8f</version_id>
|
7
|
+
<version_modified>2024-05-20T07:54:31Z</version_modified>
|
8
8
|
<xml_checksum>2AF3A68E</xml_checksum>
|
9
9
|
<class_name>MakeShadingSurfacesBasedOnZoneMultipliers</class_name>
|
10
10
|
<display_name>Make Shading Surfaces Based on Zone Multipliers</display_name>
|
@@ -59,16 +59,10 @@
|
|
59
59
|
</attributes>
|
60
60
|
<files>
|
61
61
|
<file>
|
62
|
-
<filename>
|
63
|
-
<filetype>
|
64
|
-
<usage_type>
|
65
|
-
<checksum>
|
66
|
-
</file>
|
67
|
-
<file>
|
68
|
-
<filename>1003_LargeHotel_5b_2010.osm</filename>
|
69
|
-
<filetype>osm</filetype>
|
70
|
-
<usage_type>test</usage_type>
|
71
|
-
<checksum>79D66118</checksum>
|
62
|
+
<filename>LICENSE.md</filename>
|
63
|
+
<filetype>md</filetype>
|
64
|
+
<usage_type>license</usage_type>
|
65
|
+
<checksum>BFFB1AA6</checksum>
|
72
66
|
</file>
|
73
67
|
<file>
|
74
68
|
<filename>README.md</filename>
|
@@ -82,22 +76,28 @@
|
|
82
76
|
<usage_type>readmeerb</usage_type>
|
83
77
|
<checksum>703C9964</checksum>
|
84
78
|
</file>
|
85
|
-
<file>
|
86
|
-
<filename>LICENSE.md</filename>
|
87
|
-
<filetype>md</filetype>
|
88
|
-
<usage_type>license</usage_type>
|
89
|
-
<checksum>BFFB1AA6</checksum>
|
90
|
-
</file>
|
91
79
|
<file>
|
92
80
|
<version>
|
93
81
|
<software_program>OpenStudio</software_program>
|
94
82
|
<identifier>2.0.0</identifier>
|
95
|
-
<min_compatible>
|
83
|
+
<min_compatible>3.8.0</min_compatible>
|
96
84
|
</version>
|
97
85
|
<filename>measure.rb</filename>
|
98
86
|
<filetype>rb</filetype>
|
99
87
|
<usage_type>script</usage_type>
|
100
|
-
<checksum>
|
88
|
+
<checksum>4E2B7893</checksum>
|
89
|
+
</file>
|
90
|
+
<file>
|
91
|
+
<filename>1003_LargeHotel_5b_2010.osm</filename>
|
92
|
+
<filetype>osm</filetype>
|
93
|
+
<usage_type>test</usage_type>
|
94
|
+
<checksum>79D66118</checksum>
|
95
|
+
</file>
|
96
|
+
<file>
|
97
|
+
<filename>1003_LargeOffice_5b_Pre 1980.osm</filename>
|
98
|
+
<filetype>osm</filetype>
|
99
|
+
<usage_type>test</usage_type>
|
100
|
+
<checksum>7908DE91</checksum>
|
101
101
|
</file>
|
102
102
|
<file>
|
103
103
|
<filename>make_shading_surfaces_based_on_zone_multipliers_test.rb</filename>
|
@@ -6,9 +6,8 @@
|
|
6
6
|
# see the URL below for information on how to write OpenStudio measures
|
7
7
|
# http://nrel.github.io/OpenStudio-user-documentation/reference/measure_writing_guide/
|
8
8
|
|
9
|
-
# load
|
10
|
-
require 'openstudio-
|
11
|
-
require 'openstudio/extension/core/os_lib_helper_methods'
|
9
|
+
# load openstudio-standards gem
|
10
|
+
require 'openstudio-standards'
|
12
11
|
|
13
12
|
require_relative 'resources/ScheduleTranslator'
|
14
13
|
|
@@ -208,7 +207,8 @@ class MergeSpacesFromExternalFile < OpenStudio::Measure::ModelMeasure
|
|
208
207
|
end
|
209
208
|
|
210
209
|
# assign the user inputs to variables
|
211
|
-
args =
|
210
|
+
args = runner.getArgumentValues(arguments(model), user_arguments)
|
211
|
+
args = Hash[args.collect{ |k, v| [k.to_s, v] }]
|
212
212
|
if !args then return false end
|
213
213
|
|
214
214
|
# initial condition
|
@@ -1,10 +1,10 @@
|
|
1
1
|
<?xml version="1.0"?>
|
2
2
|
<measure>
|
3
|
-
<schema_version>3.
|
3
|
+
<schema_version>3.1</schema_version>
|
4
4
|
<name>merge_spaces_from_external_file</name>
|
5
5
|
<uid>e439a1a9-d075-4a25-9f83-2dca79d2826e</uid>
|
6
|
-
<version_id>
|
7
|
-
<version_modified>
|
6
|
+
<version_id>71ac22f4-54ee-4480-ba2e-56e6c36d696f</version_id>
|
7
|
+
<version_modified>2024-05-20T07:54:35Z</version_modified>
|
8
8
|
<xml_checksum>D8922A73</xml_checksum>
|
9
9
|
<class_name>MergeSpacesFromExternalFile</class_name>
|
10
10
|
<display_name>Merge Spaces from External File</display_name>
|
@@ -182,22 +182,16 @@
|
|
182
182
|
</attributes>
|
183
183
|
<files>
|
184
184
|
<file>
|
185
|
-
<filename>
|
186
|
-
<filetype>
|
187
|
-
<usage_type>
|
188
|
-
<checksum>
|
189
|
-
</file>
|
190
|
-
<file>
|
191
|
-
<filename>current_model_test.osm</filename>
|
192
|
-
<filetype>osm</filetype>
|
193
|
-
<usage_type>test</usage_type>
|
194
|
-
<checksum>2F818B1A</checksum>
|
185
|
+
<filename>LICENSE.md</filename>
|
186
|
+
<filetype>md</filetype>
|
187
|
+
<usage_type>license</usage_type>
|
188
|
+
<checksum>BFFB1AA6</checksum>
|
195
189
|
</file>
|
196
190
|
<file>
|
197
|
-
<filename>
|
198
|
-
<filetype>
|
199
|
-
<usage_type>
|
200
|
-
<checksum>
|
191
|
+
<filename>README.md</filename>
|
192
|
+
<filetype>md</filetype>
|
193
|
+
<usage_type>readme</usage_type>
|
194
|
+
<checksum>90DBF164</checksum>
|
201
195
|
</file>
|
202
196
|
<file>
|
203
197
|
<filename>README.md.erb</filename>
|
@@ -206,10 +200,15 @@
|
|
206
200
|
<checksum>703C9964</checksum>
|
207
201
|
</file>
|
208
202
|
<file>
|
209
|
-
<
|
210
|
-
|
211
|
-
|
212
|
-
|
203
|
+
<version>
|
204
|
+
<software_program>OpenStudio</software_program>
|
205
|
+
<identifier>2.0.4</identifier>
|
206
|
+
<min_compatible>3.8.0</min_compatible>
|
207
|
+
</version>
|
208
|
+
<filename>measure.rb</filename>
|
209
|
+
<filetype>rb</filetype>
|
210
|
+
<usage_type>script</usage_type>
|
211
|
+
<checksum>C7B7CC3E</checksum>
|
213
212
|
</file>
|
214
213
|
<file>
|
215
214
|
<filename>ScheduleTranslator.rb</filename>
|
@@ -218,21 +217,22 @@
|
|
218
217
|
<checksum>8EB6C501</checksum>
|
219
218
|
</file>
|
220
219
|
<file>
|
221
|
-
<filename>
|
222
|
-
<filetype>
|
223
|
-
<usage_type>
|
224
|
-
<checksum>
|
220
|
+
<filename>current_model_test.osm</filename>
|
221
|
+
<filetype>osm</filetype>
|
222
|
+
<usage_type>test</usage_type>
|
223
|
+
<checksum>2F818B1A</checksum>
|
225
224
|
</file>
|
226
225
|
<file>
|
227
|
-
<
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
<
|
234
|
-
<
|
235
|
-
<
|
226
|
+
<filename>external_model_test.osm</filename>
|
227
|
+
<filetype>osm</filetype>
|
228
|
+
<usage_type>test</usage_type>
|
229
|
+
<checksum>637A1436</checksum>
|
230
|
+
</file>
|
231
|
+
<file>
|
232
|
+
<filename>measure_test.osw</filename>
|
233
|
+
<filetype>osw</filetype>
|
234
|
+
<usage_type>test</usage_type>
|
235
|
+
<checksum>F5FABCCF</checksum>
|
236
236
|
</file>
|
237
237
|
<file>
|
238
238
|
<filename>merge_spaces_from_external_file_test.rb</filename>
|
@@ -95,14 +95,6 @@ Only applicable in radiant floor systems. This will greatly reduce system effect
|
|
95
95
|
**Required:** true,
|
96
96
|
**Model Dependent:** false
|
97
97
|
|
98
|
-
### Minimum Operating Hours
|
99
|
-
Fractional Hours Allowed, e.g. 30 min = 0.5
|
100
|
-
**Name:** minimum_operation,
|
101
|
-
**Type:** Double,
|
102
|
-
**Units:** ,
|
103
|
-
**Required:** true,
|
104
|
-
**Model Dependent:** false
|
105
|
-
|
106
98
|
### Switch Over Time
|
107
99
|
Minimum time limitation for when the system can switch between heating and cooling. Fractional hours allowed, e.g. 30 min = 0.5.
|
108
100
|
**Name:** switch_over_time,
|
@@ -103,13 +103,6 @@ To reduce unmet hours, use an expanded comfort range as mentioned above, remove
|
|
103
103
|
proportional_gain.setDefaultValue(0.3)
|
104
104
|
args << proportional_gain
|
105
105
|
|
106
|
-
# make an argument for minimum operating hours
|
107
|
-
minimum_operation = OpenStudio::Measure::OSArgument.makeDoubleArgument('minimum_operation', true)
|
108
|
-
minimum_operation.setDisplayName('Minimum Operating Hours')
|
109
|
-
minimum_operation.setDescription('Fractional Hours Allowed, e.g. 30 min = 0.5')
|
110
|
-
minimum_operation.setDefaultValue(1.0)
|
111
|
-
args << minimum_operation
|
112
|
-
|
113
106
|
# make an argument for switch over time
|
114
107
|
switch_over_time = OpenStudio::Measure::OSArgument.makeDoubleArgument('switch_over_time', true)
|
115
108
|
switch_over_time.setDisplayName('Switch Over Time')
|
@@ -176,7 +169,6 @@ To reduce unmet hours, use an expanded comfort range as mentioned above, remove
|
|
176
169
|
include_carpet = runner.getBoolArgumentValue('include_carpet', user_arguments)
|
177
170
|
control_strategy = runner.getStringArgumentValue('control_strategy', user_arguments)
|
178
171
|
proportional_gain = runner.getDoubleArgumentValue('proportional_gain', user_arguments)
|
179
|
-
minimum_operation = runner.getDoubleArgumentValue('minimum_operation', user_arguments)
|
180
172
|
switch_over_time = runner.getDoubleArgumentValue('switch_over_time', user_arguments)
|
181
173
|
radiant_lockout = runner.getBoolArgumentValue('radiant_lockout', user_arguments)
|
182
174
|
lockout_start_time = runner.getDoubleArgumentValue('lockout_start_time', user_arguments)
|
@@ -200,8 +192,8 @@ To reduce unmet hours, use an expanded comfort range as mentioned above, remove
|
|
200
192
|
# exclude plenum zones, zones without thermostats, and zones with no floor area
|
201
193
|
conditioned_zones = []
|
202
194
|
model.getThermalZones.each do |zone|
|
203
|
-
next if
|
204
|
-
next if !
|
195
|
+
next if OpenstudioStandards::ThermalZone.thermal_zone_plenum?(zone)
|
196
|
+
next if !OpenstudioStandards::ThermalZone.thermal_zone_heated?(zone) && !OpenstudioStandards::ThermalZone.thermal_zone_cooled?(zone)
|
205
197
|
|
206
198
|
conditioned_zones << zone
|
207
199
|
end
|
@@ -289,7 +281,6 @@ To reduce unmet hours, use an expanded comfort range as mentioned above, remove
|
|
289
281
|
include_carpet: include_carpet,
|
290
282
|
control_strategy: control_strategy,
|
291
283
|
proportional_gain: proportional_gain,
|
292
|
-
minimum_operation: minimum_operation,
|
293
284
|
switch_over_time: switch_over_time,
|
294
285
|
radiant_lockout: radiant_lockout,
|
295
286
|
radiant_lockout_start_time: lockout_start_time,
|
@@ -1,10 +1,10 @@
|
|
1
1
|
<?xml version="1.0"?>
|
2
2
|
<measure>
|
3
|
-
<schema_version>3.
|
3
|
+
<schema_version>3.1</schema_version>
|
4
4
|
<name>radiant_slab_with_doas</name>
|
5
5
|
<uid>8091a0c3-7760-4da6-adf4-133d55872816</uid>
|
6
|
-
<version_id>
|
7
|
-
<version_modified>
|
6
|
+
<version_id>2d8c6102-68c6-4861-a52c-3d7215d1299e</version_id>
|
7
|
+
<version_modified>2024-05-20T07:54:32Z</version_modified>
|
8
8
|
<xml_checksum>C49A7DAB</xml_checksum>
|
9
9
|
<class_name>RadiantSlabWithDoas</class_name>
|
10
10
|
<display_name>Radiant Slab with DOAS</display_name>
|
@@ -158,15 +158,6 @@ To reduce unmet hours, use an expanded comfort range as mentioned above, remove
|
|
158
158
|
<model_dependent>false</model_dependent>
|
159
159
|
<default_value>0.3</default_value>
|
160
160
|
</argument>
|
161
|
-
<argument>
|
162
|
-
<name>minimum_operation</name>
|
163
|
-
<display_name>Minimum Operating Hours</display_name>
|
164
|
-
<description>Fractional Hours Allowed, e.g. 30 min = 0.5</description>
|
165
|
-
<type>Double</type>
|
166
|
-
<required>true</required>
|
167
|
-
<model_dependent>false</model_dependent>
|
168
|
-
<default_value>1</default_value>
|
169
|
-
</argument>
|
170
161
|
<argument>
|
171
162
|
<name>switch_over_time</name>
|
172
163
|
<display_name>Switch Over Time</display_name>
|
@@ -283,12 +274,35 @@ To reduce unmet hours, use an expanded comfort range as mentioned above, remove
|
|
283
274
|
</attribute>
|
284
275
|
</attributes>
|
285
276
|
<files>
|
277
|
+
<file>
|
278
|
+
<filename>LICENSE.md</filename>
|
279
|
+
<filetype>md</filetype>
|
280
|
+
<usage_type>license</usage_type>
|
281
|
+
<checksum>BFFB1AA6</checksum>
|
282
|
+
</file>
|
283
|
+
<file>
|
284
|
+
<filename>README.md</filename>
|
285
|
+
<filetype>md</filetype>
|
286
|
+
<usage_type>readme</usage_type>
|
287
|
+
<checksum>9B9C0291</checksum>
|
288
|
+
</file>
|
286
289
|
<file>
|
287
290
|
<filename>README.md.erb</filename>
|
288
291
|
<filetype>erb</filetype>
|
289
292
|
<usage_type>readmeerb</usage_type>
|
290
293
|
<checksum>703C9964</checksum>
|
291
294
|
</file>
|
295
|
+
<file>
|
296
|
+
<version>
|
297
|
+
<software_program>OpenStudio</software_program>
|
298
|
+
<identifier>2.9.0</identifier>
|
299
|
+
<min_compatible>2.9.0</min_compatible>
|
300
|
+
</version>
|
301
|
+
<filename>measure.rb</filename>
|
302
|
+
<filetype>rb</filetype>
|
303
|
+
<usage_type>script</usage_type>
|
304
|
+
<checksum>08122A36</checksum>
|
305
|
+
</file>
|
292
306
|
<file>
|
293
307
|
<filename>USA_CA_San.Francisco.Intl.AP.724940_TMY3.epw</filename>
|
294
308
|
<filetype>epw</filetype>
|
@@ -307,40 +321,17 @@ To reduce unmet hours, use an expanded comfort range as mentioned above, remove
|
|
307
321
|
<usage_type>test</usage_type>
|
308
322
|
<checksum>7CBAD8AA</checksum>
|
309
323
|
</file>
|
310
|
-
<file>
|
311
|
-
<filename>single_zone_office_5A.osm</filename>
|
312
|
-
<filetype>osm</filetype>
|
313
|
-
<usage_type>test</usage_type>
|
314
|
-
<checksum>44FD3DF2</checksum>
|
315
|
-
</file>
|
316
|
-
<file>
|
317
|
-
<filename>README.md</filename>
|
318
|
-
<filetype>md</filetype>
|
319
|
-
<usage_type>readme</usage_type>
|
320
|
-
<checksum>8618B20F</checksum>
|
321
|
-
</file>
|
322
|
-
<file>
|
323
|
-
<filename>LICENSE.md</filename>
|
324
|
-
<filetype>md</filetype>
|
325
|
-
<usage_type>license</usage_type>
|
326
|
-
<checksum>BFFB1AA6</checksum>
|
327
|
-
</file>
|
328
324
|
<file>
|
329
325
|
<filename>radiant_slab_with_doas_test.rb</filename>
|
330
326
|
<filetype>rb</filetype>
|
331
327
|
<usage_type>test</usage_type>
|
332
|
-
<checksum>
|
328
|
+
<checksum>FAE2E364</checksum>
|
333
329
|
</file>
|
334
330
|
<file>
|
335
|
-
<
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
</version>
|
340
|
-
<filename>measure.rb</filename>
|
341
|
-
<filetype>rb</filetype>
|
342
|
-
<usage_type>script</usage_type>
|
343
|
-
<checksum>BE3F5928</checksum>
|
331
|
+
<filename>single_zone_office_5A.osm</filename>
|
332
|
+
<filetype>osm</filetype>
|
333
|
+
<usage_type>test</usage_type>
|
334
|
+
<checksum>44FD3DF2</checksum>
|
344
335
|
</file>
|
345
336
|
</files>
|
346
337
|
</measure>
|
@@ -6,14 +6,11 @@
|
|
6
6
|
# see the URL below for information on how to write OpenStudio measures
|
7
7
|
# http://nrel.github.io/OpenStudio-user-documentation/reference/measure_writing_guide/
|
8
8
|
|
9
|
-
# load
|
10
|
-
require 'openstudio-
|
11
|
-
require 'openstudio/extension/core/os_lib_geometry'
|
9
|
+
# load openstudio-standards gem
|
10
|
+
require 'openstudio-standards'
|
12
11
|
|
13
12
|
# start the measure
|
14
13
|
class ReplaceGeometryByStory < OpenStudio::Measure::ModelMeasure
|
15
|
-
# resource file modules
|
16
|
-
include OsLib_Geometry
|
17
14
|
|
18
15
|
# human readable name
|
19
16
|
def name
|
@@ -145,7 +142,7 @@ class ReplaceGeometryByStory < OpenStudio::Measure::ModelMeasure
|
|
145
142
|
combined_polygons = combined_polygons.first
|
146
143
|
|
147
144
|
# get target wwr
|
148
|
-
target_wwr =
|
145
|
+
target_wwr = OpenstudioStandards::Geometry.model_get_exterior_window_to_wall_ratio(model)
|
149
146
|
runner.registerInfo("Initial window to wall ratio is #{target_wwr}")
|
150
147
|
|
151
148
|
# remove geometry
|
@@ -159,11 +156,10 @@ class ReplaceGeometryByStory < OpenStudio::Measure::ModelMeasure
|
|
159
156
|
options['name'] = story.name.get
|
160
157
|
options['spaceType'] = space_type
|
161
158
|
options['story'] = story
|
162
|
-
options['
|
163
|
-
options['
|
159
|
+
options['make_thermal_zone'] = true
|
160
|
+
options['thermal_zone_multiplier'] = hash[:multipliers].min
|
164
161
|
options['floor_to_floor_height'] = story.nominalFloortoFloorHeight.get
|
165
|
-
space =
|
166
|
-
space.setZOrigin(story.nominalZCoordinate.get)
|
162
|
+
space = OpenstudioStandards::Geometry.create_space_from_polygon(model, OpenStudio::Point3d.new(0, 0, 0), combined_polygons, options)
|
167
163
|
|
168
164
|
# make ext walls ground if original space had any ground exposed walls
|
169
165
|
if hash[:basement]
|