openstudio-model-articulation 0.9.0 → 0.10.0

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.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +4 -0
  3. data/Gemfile +12 -5
  4. data/Jenkinsfile +1 -1
  5. data/README.md +1 -0
  6. data/lib/measures/SimplifyGeometryToSlicedBar/measure.rb +32 -37
  7. data/lib/measures/SimplifyGeometryToSlicedBar/measure.xml +34 -80
  8. data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_cofee.rb +10 -9
  9. data/lib/measures/SpaceTypeAndConstructionSetWizard/measure.rb +10 -13
  10. data/lib/measures/SpaceTypeAndConstructionSetWizard/measure.xml +28 -28
  11. data/lib/measures/blended_space_type_from_floor_area_ratios/measure.rb +31 -14
  12. data/lib/measures/blended_space_type_from_floor_area_ratios/measure.xml +36 -36
  13. data/lib/measures/blended_space_type_from_model/measure.rb +12 -5
  14. data/lib/measures/blended_space_type_from_model/measure.xml +47 -47
  15. data/lib/measures/create_DOE_prototype_building/measure.rb +1 -1
  16. data/lib/measures/create_DOE_prototype_building/measure.xml +19 -875
  17. data/lib/measures/create_bar_from_building_type_ratios/README.md +2 -13
  18. data/lib/measures/create_bar_from_building_type_ratios/measure.rb +122 -30
  19. data/lib/measures/create_bar_from_building_type_ratios/measure.xml +108 -349
  20. data/lib/measures/create_bar_from_deer_building_type_ratios/README.md +21 -1
  21. data/lib/measures/create_bar_from_deer_building_type_ratios/measure.rb +120 -18
  22. data/lib/measures/create_bar_from_deer_building_type_ratios/measure.xml +94 -32
  23. data/lib/measures/create_bar_from_doe_building_type_ratios/measure.rb +127 -18
  24. data/lib/measures/create_bar_from_doe_building_type_ratios/measure.xml +48 -26
  25. data/lib/measures/create_bar_from_model/measure.rb +17 -18
  26. data/lib/measures/create_bar_from_model/measure.xml +41 -41
  27. data/lib/measures/create_bar_from_space_type_ratios/README.md +1 -1
  28. data/lib/measures/create_bar_from_space_type_ratios/measure.rb +94 -14
  29. data/lib/measures/create_bar_from_space_type_ratios/measure.xml +104 -63
  30. data/lib/measures/create_baseline_building/measure.xml +33 -33
  31. data/lib/measures/create_deer_prototype_building/measure.xml +15 -15
  32. data/lib/measures/create_parametric_schedules/measure.rb +17 -20
  33. data/lib/measures/create_parametric_schedules/measure.xml +15 -15
  34. data/lib/measures/create_typical_building_from_model/README.md +16 -16
  35. data/lib/measures/create_typical_building_from_model/measure.rb +84 -18
  36. data/lib/measures/create_typical_building_from_model/measure.xml +159 -211
  37. data/lib/measures/create_typical_deer_building_from_model/README.md +38 -5
  38. data/lib/measures/create_typical_deer_building_from_model/measure.rb +84 -12
  39. data/lib/measures/create_typical_deer_building_from_model/measure.xml +165 -65
  40. data/lib/measures/create_typical_doe_building_from_model/README.md +17 -4
  41. data/lib/measures/create_typical_doe_building_from_model/measure.rb +84 -12
  42. data/lib/measures/create_typical_doe_building_from_model/measure.xml +125 -65
  43. data/lib/measures/deer_space_type_and_construction_set_wizard/measure.rb +13 -16
  44. data/lib/measures/deer_space_type_and_construction_set_wizard/measure.xml +72 -29
  45. data/lib/measures/make_shading_surfaces_based_on_zone_multipliers/measure.rb +4 -4
  46. data/lib/measures/make_shading_surfaces_based_on_zone_multipliers/measure.xml +21 -21
  47. data/lib/measures/merge_spaces_from_external_file/measure.rb +4 -4
  48. data/lib/measures/merge_spaces_from_external_file/measure.xml +34 -34
  49. data/lib/measures/radiant_slab_with_doas/measure.rb +2 -2
  50. data/lib/measures/radiant_slab_with_doas/measure.xml +4 -4
  51. data/lib/measures/replace_geometry_by_story/measure.rb +6 -10
  52. data/lib/measures/replace_geometry_by_story/measure.xml +19 -19
  53. data/lib/measures/set_nist_infiltration_correlations/LICENSE.md +7 -21
  54. data/lib/measures/set_nist_infiltration_correlations/measure.rb +2 -32
  55. data/lib/measures/set_nist_infiltration_correlations/measure.xml +5 -5
  56. data/lib/openstudio/model_articulation/version.rb +1 -1
  57. data/openstudio-model-articulation.gemspec +11 -4
  58. metadata +69 -16
  59. data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_geometry.rb +0 -1174
  60. data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_helper_methods.rb +0 -367
  61. data/lib/measures/create_typical_building_from_model/resources/Model.hvac.rb +0 -608
@@ -8,19 +8,11 @@
8
8
 
9
9
  require 'openstudio-standards'
10
10
 
11
- # load OpenStudio measure libraries from openstudio-extension gem
12
- require 'openstudio-extension'
13
- require 'openstudio/extension/core/os_lib_helper_methods'
14
- require 'openstudio/extension/core/os_lib_model_generation'
15
-
16
11
  require_relative 'resources/Model.hvac' # DLM: should this be in openstudio-standards? dfg some tests fail without it
17
12
 
18
13
  # start the measure
19
14
  class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
20
- # resource file modules
21
- include OsLib_HelperMethods
22
- include OsLib_ModelGeneration
23
-
15
+
24
16
  # human readable name
25
17
  def name
26
18
  return 'Create Typical DOE Building from Model'
@@ -47,7 +39,7 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
47
39
 
48
40
  # see if building name contains any template values
49
41
  default_string = '90.1-2010'
50
- get_templates.each do |template_string|
42
+ OpenstudioStandards::CreateTypical.get_doe_templates.each do |template_string|
51
43
  if model.getBuilding.name.to_s.include?(template_string)
52
44
  default_string = template_string
53
45
  next
@@ -55,7 +47,7 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
55
47
  end
56
48
 
57
49
  # Make argument for template
58
- template = OpenStudio::Measure::OSArgument.makeChoiceArgument('template', get_doe_templates(false), true)
50
+ template = OpenStudio::Measure::OSArgument.makeChoiceArgument('template', OpenstudioStandards::CreateTypical.get_doe_templates, true)
59
51
  template.setDisplayName('Target Standard')
60
52
  template.setDefaultValue(default_string)
61
53
  args << template
@@ -155,6 +147,8 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
155
147
  hvac_chs << 'PVAV with district hot water reheat'
156
148
  hvac_chs << 'PVAV with PFP boxes'
157
149
  hvac_chs << 'PVAV with gas heat with electric reheat'
150
+ hvac_chs << 'PVAV with gas coil heat with electric reheat'
151
+ hvac_chs << 'PVAV with gas boiler heat with electric reheat'
158
152
  hvac_chs << 'Residential AC with baseboard electric'
159
153
  hvac_chs << 'Residential AC with baseboard gas boiler'
160
154
  hvac_chs << 'Residential AC with baseboard central air source heat pump'
@@ -210,6 +204,7 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
210
204
  hvac_type_chs = OpenStudio::StringVector.new
211
205
  hvac_type_chs << 'Forced Air'
212
206
  hvac_type_chs << 'Hydronic'
207
+ hvac_type_chs << 'Inferred'
213
208
  hvac_delivery_type = OpenStudio::Measure::OSArgument.makeChoiceArgument('hvac_delivery_type', hvac_type_chs, true)
214
209
  hvac_delivery_type.setDisplayName('HVAC System Delivery Type')
215
210
  hvac_delivery_type.setDescription('How the HVAC system delivers heating or cooling to the zone.')
@@ -222,6 +217,7 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
222
217
  htg_src_chs << 'NaturalGas'
223
218
  htg_src_chs << 'DistrictHeating'
224
219
  htg_src_chs << 'DistrictAmbient'
220
+ htg_src_chs << 'Inferred'
225
221
  htg_src = OpenStudio::Measure::OSArgument.makeChoiceArgument('htg_src', htg_src_chs, true)
226
222
  htg_src.setDisplayName('HVAC Heating Source')
227
223
  htg_src.setDescription('The primary source of heating used by HVAC systems in the model.')
@@ -233,6 +229,7 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
233
229
  clg_src_chs << 'Electricity'
234
230
  clg_src_chs << 'DistrictCooling'
235
231
  clg_src_chs << 'DistrictAmbient'
232
+ clg_src_chs << 'Inferred'
236
233
  clg_src = OpenStudio::Measure::OSArgument.makeChoiceArgument('clg_src', clg_src_chs, true)
237
234
  clg_src.setDisplayName('HVAC Cooling Source')
238
235
  clg_src.setDescription('The primary source of cooling used by HVAC systems in the model.')
@@ -293,6 +290,19 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
293
290
  add_constructions.setDefaultValue(true)
294
291
  args << add_constructions
295
292
 
293
+ # make argument for wall_construction_type
294
+ wall_construction_type_choices = OpenStudio::StringVector.new
295
+ wall_construction_type_choices << 'Mass'
296
+ wall_construction_type_choices << 'Metal Building'
297
+ wall_construction_type_choices << 'SteelFramed'
298
+ wall_construction_type_choices << 'WoodFramed'
299
+ wall_construction_type_choices << 'Inferred'
300
+ wall_construction_type = OpenStudio::Measure::OSArgument.makeChoiceArgument('wall_construction_type', wall_construction_type_choices, true)
301
+ wall_construction_type.setDisplayName('Wall Construction Type')
302
+ wall_construction_type.setDescription('Identify Exterior Wall Construction Type to be applied to entire building')
303
+ wall_construction_type.setDefaultValue('Inferred')
304
+ args << wall_construction_type
305
+
296
306
  # make an argument for add_space_type_loads
297
307
  add_space_type_loads = OpenStudio::Measure::OSArgument.makeBoolArgument('add_space_type_loads', true)
298
308
  add_space_type_loads.setDisplayName('Add Space Type Loads to Model')
@@ -376,6 +386,8 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
376
386
  wkdy_op_hrs_start_time.setDescription('Enter 24 hour values with fractional values converted to minutes. e.g. 17.25 = 5:15pm. Only used if Modify weekday hours of operation is true.')
377
387
  wkdy_op_hrs_start_time.setUnits('Hours')
378
388
  wkdy_op_hrs_start_time.setDefaultValue(8.0)
389
+ wkdy_op_hrs_start_time.setMinValue(0.0)
390
+ wkdy_op_hrs_start_time.setMaxValue(24.0)
379
391
  args << wkdy_op_hrs_start_time
380
392
 
381
393
  # weekday hours of operation duration
@@ -384,6 +396,8 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
384
396
  wkdy_op_hrs_duration.setDescription('Length of weekday operating hours. Enter 24 hour values with fractional values converted to minutes. e.g. 17.25 = 5:15pm. Only used if Modify weekday hours of operation is true.')
385
397
  wkdy_op_hrs_duration.setUnits('Hours')
386
398
  wkdy_op_hrs_duration.setDefaultValue(8.0)
399
+ wkdy_op_hrs_duration.setMinValue(0.0)
400
+ wkdy_op_hrs_duration.setMaxValue(24.0)
387
401
  args << wkdy_op_hrs_duration
388
402
 
389
403
  # modify weekend hours of operation
@@ -399,6 +413,8 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
399
413
  wknd_op_hrs_start_time.setDescription('Enter 24 hour values with fractional values converted to minutes. e.g. 17.25 = 5:15pm. Only used if Modify weekend hours of operation is true.')
400
414
  wknd_op_hrs_start_time.setUnits('Hours')
401
415
  wknd_op_hrs_start_time.setDefaultValue(8.0)
416
+ wknd_op_hrs_start_time.setMinValue(0.0)
417
+ wknd_op_hrs_start_time.setMaxValue(24.0)
402
418
  args << wknd_op_hrs_start_time
403
419
 
404
420
  # weekend hours of operation duration
@@ -407,6 +423,8 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
407
423
  wknd_op_hrs_duration.setDescription('Length of weekend operating hours. Enter 24 hour values with fractional values converted to minutes. e.g. 17.25 = 5:15pm. Only used if Modify weekend hours of operation is true.')
408
424
  wknd_op_hrs_duration.setUnits('Hours')
409
425
  wknd_op_hrs_duration.setDefaultValue(8.0)
426
+ wknd_op_hrs_duration.setMinValue(0.0)
427
+ wknd_op_hrs_duration.setMaxValue(24.0)
410
428
  args << wknd_op_hrs_duration
411
429
 
412
430
  # make an argument for unmet_hours_tolerance
@@ -414,6 +432,7 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
414
432
  unmet_hours_tolerance.setDisplayName('Unmet Hours Tolerance')
415
433
  unmet_hours_tolerance.setDescription('Set the thermostat setpoint tolerance for unmet hours in degrees Rankine')
416
434
  unmet_hours_tolerance.setDefaultValue(1.0)
435
+ unmet_hours_tolerance.setMinValue(0.0)
417
436
  args << unmet_hours_tolerance
418
437
 
419
438
  # make an argument for remove_objects
@@ -444,8 +463,61 @@ class CreateTypicalDOEBuildingFromModel < OpenStudio::Measure::ModelMeasure
444
463
  def run(model, runner, user_arguments)
445
464
  super(model, runner, user_arguments)
446
465
 
466
+ # assign the user inputs to variables
467
+ args = runner.getArgumentValues(arguments(model), user_arguments)
468
+ args = Hash[args.collect{ |k, v| [k.to_s, v] }]
469
+ if !args then return false end
470
+
471
+ # todo - need to make use of this before pass to standards
472
+ use_upstream_args = args['use_upstream_args']
473
+
474
+ # open channel to log messages
475
+ reset_log
476
+
477
+ # Turn debugging output on/off
478
+ debug = false
479
+
447
480
  # method run from os_lib_model_generation.rb
448
- result = typical_building_from_model(model, runner, user_arguments)
481
+ result = OpenstudioStandards::CreateTypical.create_typical_building_from_model(
482
+ model,
483
+ args['template'],
484
+ climate_zone: nil, # not exposed in user measure args
485
+ add_hvac: args['add_hvac'],
486
+ hvac_system_type: args['system_type'],
487
+ hvac_delivery_type: args['hvac_delivery_type'],
488
+ heating_fuel: args['htg_src'],
489
+ service_water_heating_fuel: args['swh_src'],
490
+ cooling_fuel: args['clg_src'],
491
+ kitchen_makeup: args['kitchen_makeup'],
492
+ exterior_lighting_zone: args['exterior_lighting_zone'],
493
+ add_constructions: args['add_constructions'],
494
+ wall_construction_type: args['wall_construction_type'],
495
+ add_space_type_loads: args['add_space_type_loads'],
496
+ add_daylighting_controls: nil, # not exposed in user measure args
497
+ add_elevators: args['add_elevators'],
498
+ add_internal_mass: args['add_internal_mass'],
499
+ add_exterior_lights: args['add_exterior_lights'],
500
+ onsite_parking_fraction: args['onsite_parking_fraction'],
501
+ add_exhaust: args['add_exhaust'],
502
+ add_swh: args['add_swh'],
503
+ add_thermostat: args['add_thermostat'],
504
+ add_refrigeration: args['add_refrigeration'],
505
+ modify_wkdy_op_hrs: args['modify_wkdy_op_hrs'],
506
+ wkdy_op_hrs_start_time: args['wkdy_op_hrs_start_time'],
507
+ wkdy_op_hrs_duration: args['wkdy_op_hrs_duration'],
508
+ modify_wknd_op_hrs: args['modify_wknd_op_hrs'],
509
+ wknd_op_hrs_start_time: args['wknd_op_hrs_start_time'],
510
+ wknd_op_hrs_duration: args['wknd_op_hrs_duration'],
511
+ hoo_var_method: nil, # not exposed in user measure args
512
+ enable_dst: args['enable_dst'],
513
+ unmet_hours_tolerance_r: args['unmet_hours_tolerance'],
514
+ remove_objects: args['remove_objects'],
515
+ user_hvac_mapping: nil, # not exposed in this measure yet?
516
+ sizing_run_directory: nil) # not exposed in user measure args
517
+
518
+ # gather log
519
+ log_messages_to_runner(runner, debug)
520
+ reset_log
449
521
 
450
522
  if result == false
451
523
  return false
@@ -1,10 +1,10 @@
1
1
  <?xml version="1.0"?>
2
2
  <measure>
3
- <schema_version>3.0</schema_version>
3
+ <schema_version>3.1</schema_version>
4
4
  <name>create_typical_doe_building_from_model</name>
5
5
  <uid>b2c80210-33b3-4dfd-8267-535efd81f552</uid>
6
- <version_id>d8873c5e-11ce-48a3-97cf-722dc2ee6031</version_id>
7
- <version_modified>20230602T160046Z</version_modified>
6
+ <version_id>2f42ddde-0650-44dc-8dff-bb2338a0786c</version_id>
7
+ <version_modified>2024-05-20T07:54:34Z</version_modified>
8
8
  <xml_checksum>99E7000D</xml_checksum>
9
9
  <class_name>CreateTypicalDOEBuildingFromModel</class_name>
10
10
  <display_name>Create Typical DOE Building from Model</display_name>
@@ -465,6 +465,14 @@
465
465
  <value>PVAV with gas heat with electric reheat</value>
466
466
  <display_name>PVAV with gas heat with electric reheat</display_name>
467
467
  </choice>
468
+ <choice>
469
+ <value>PVAV with gas coil heat with electric reheat</value>
470
+ <display_name>PVAV with gas coil heat with electric reheat</display_name>
471
+ </choice>
472
+ <choice>
473
+ <value>PVAV with gas boiler heat with electric reheat</value>
474
+ <display_name>PVAV with gas boiler heat with electric reheat</display_name>
475
+ </choice>
468
476
  <choice>
469
477
  <value>Residential AC with baseboard electric</value>
470
478
  <display_name>Residential AC with baseboard electric</display_name>
@@ -664,6 +672,10 @@
664
672
  <value>Hydronic</value>
665
673
  <display_name>Hydronic</display_name>
666
674
  </choice>
675
+ <choice>
676
+ <value>Inferred</value>
677
+ <display_name>Inferred</display_name>
678
+ </choice>
667
679
  </choices>
668
680
  </argument>
669
681
  <argument>
@@ -691,6 +703,10 @@
691
703
  <value>DistrictAmbient</value>
692
704
  <display_name>DistrictAmbient</display_name>
693
705
  </choice>
706
+ <choice>
707
+ <value>Inferred</value>
708
+ <display_name>Inferred</display_name>
709
+ </choice>
694
710
  </choices>
695
711
  </argument>
696
712
  <argument>
@@ -714,6 +730,10 @@
714
730
  <value>DistrictAmbient</value>
715
731
  <display_name>DistrictAmbient</display_name>
716
732
  </choice>
733
+ <choice>
734
+ <value>Inferred</value>
735
+ <display_name>Inferred</display_name>
736
+ </choice>
717
737
  </choices>
718
738
  </argument>
719
739
  <argument>
@@ -816,6 +836,37 @@
816
836
  </choice>
817
837
  </choices>
818
838
  </argument>
839
+ <argument>
840
+ <name>wall_construction_type</name>
841
+ <display_name>Wall Construction Type</display_name>
842
+ <description>Identify Exterior Wall Construction Type to be applied to entire building</description>
843
+ <type>Choice</type>
844
+ <required>true</required>
845
+ <model_dependent>false</model_dependent>
846
+ <default_value>Inferred</default_value>
847
+ <choices>
848
+ <choice>
849
+ <value>Mass</value>
850
+ <display_name>Mass</display_name>
851
+ </choice>
852
+ <choice>
853
+ <value>Metal Building</value>
854
+ <display_name>Metal Building</display_name>
855
+ </choice>
856
+ <choice>
857
+ <value>SteelFramed</value>
858
+ <display_name>SteelFramed</display_name>
859
+ </choice>
860
+ <choice>
861
+ <value>WoodFramed</value>
862
+ <display_name>WoodFramed</display_name>
863
+ </choice>
864
+ <choice>
865
+ <value>Inferred</value>
866
+ <display_name>Inferred</display_name>
867
+ </choice>
868
+ </choices>
869
+ </argument>
819
870
  <argument>
820
871
  <name>add_space_type_loads</name>
821
872
  <display_name>Add Space Type Loads to Model</display_name>
@@ -1024,6 +1075,8 @@
1024
1075
  <required>true</required>
1025
1076
  <model_dependent>false</model_dependent>
1026
1077
  <default_value>8</default_value>
1078
+ <min_value>0.000000</min_value>
1079
+ <max_value>24.000000</max_value>
1027
1080
  </argument>
1028
1081
  <argument>
1029
1082
  <name>wkdy_op_hrs_duration</name>
@@ -1034,6 +1087,8 @@
1034
1087
  <required>true</required>
1035
1088
  <model_dependent>false</model_dependent>
1036
1089
  <default_value>8</default_value>
1090
+ <min_value>0.000000</min_value>
1091
+ <max_value>24.000000</max_value>
1037
1092
  </argument>
1038
1093
  <argument>
1039
1094
  <name>modify_wknd_op_hrs</name>
@@ -1063,6 +1118,8 @@
1063
1118
  <required>true</required>
1064
1119
  <model_dependent>false</model_dependent>
1065
1120
  <default_value>8</default_value>
1121
+ <min_value>0.000000</min_value>
1122
+ <max_value>24.000000</max_value>
1066
1123
  </argument>
1067
1124
  <argument>
1068
1125
  <name>wknd_op_hrs_duration</name>
@@ -1073,6 +1130,8 @@
1073
1130
  <required>true</required>
1074
1131
  <model_dependent>false</model_dependent>
1075
1132
  <default_value>8</default_value>
1133
+ <min_value>0.000000</min_value>
1134
+ <max_value>24.000000</max_value>
1076
1135
  </argument>
1077
1136
  <argument>
1078
1137
  <name>unmet_hours_tolerance</name>
@@ -1082,6 +1141,7 @@
1082
1141
  <required>true</required>
1083
1142
  <model_dependent>false</model_dependent>
1084
1143
  <default_value>1</default_value>
1144
+ <min_value>0.000000</min_value>
1085
1145
  </argument>
1086
1146
  <argument>
1087
1147
  <name>remove_objects</name>
@@ -1195,16 +1255,51 @@
1195
1255
  </attributes>
1196
1256
  <files>
1197
1257
  <file>
1198
- <filename>measure_test.osw</filename>
1199
- <filetype>osw</filetype>
1258
+ <filename>LICENSE.md</filename>
1259
+ <filetype>md</filetype>
1260
+ <usage_type>license</usage_type>
1261
+ <checksum>BFFB1AA6</checksum>
1262
+ </file>
1263
+ <file>
1264
+ <filename>README.md</filename>
1265
+ <filetype>md</filetype>
1266
+ <usage_type>readme</usage_type>
1267
+ <checksum>9ADF8B4B</checksum>
1268
+ </file>
1269
+ <file>
1270
+ <filename>README.md.erb</filename>
1271
+ <filetype>erb</filetype>
1272
+ <usage_type>readmeerb</usage_type>
1273
+ <checksum>BDCE44E6</checksum>
1274
+ </file>
1275
+ <file>
1276
+ <version>
1277
+ <software_program>OpenStudio</software_program>
1278
+ <identifier>2.0.0</identifier>
1279
+ <min_compatible>3.8.0</min_compatible>
1280
+ </version>
1281
+ <filename>measure.rb</filename>
1282
+ <filetype>rb</filetype>
1283
+ <usage_type>script</usage_type>
1284
+ <checksum>A5493DC2</checksum>
1285
+ </file>
1286
+ <file>
1287
+ <filename>Model.hvac.rb</filename>
1288
+ <filetype>rb</filetype>
1289
+ <usage_type>resource</usage_type>
1290
+ <checksum>3F3371D0</checksum>
1291
+ </file>
1292
+ <file>
1293
+ <filename>GenericGbxml.osm</filename>
1294
+ <filetype>osm</filetype>
1200
1295
  <usage_type>test</usage_type>
1201
- <checksum>6DB338FC</checksum>
1296
+ <checksum>E27658D5</checksum>
1202
1297
  </file>
1203
1298
  <file>
1204
- <filename>SmallOffice.osm</filename>
1299
+ <filename>LargeOffice04.osm</filename>
1205
1300
  <filetype>osm</filetype>
1206
1301
  <usage_type>test</usage_type>
1207
- <checksum>519B22EB</checksum>
1302
+ <checksum>5415617A</checksum>
1208
1303
  </file>
1209
1304
  <file>
1210
1305
  <filename>MidriseApartment.osm</filename>
@@ -1213,10 +1308,10 @@
1213
1308
  <checksum>EB7A2671</checksum>
1214
1309
  </file>
1215
1310
  <file>
1216
- <filename>LargeOffice04.osm</filename>
1311
+ <filename>SmallOffice.osm</filename>
1217
1312
  <filetype>osm</filetype>
1218
1313
  <usage_type>test</usage_type>
1219
- <checksum>5415617A</checksum>
1314
+ <checksum>519B22EB</checksum>
1220
1315
  </file>
1221
1316
  <file>
1222
1317
  <filename>USA_TX_Houston-Bush.Intercontinental.AP.722430_TMY3.epw</filename>
@@ -1224,12 +1319,6 @@
1224
1319
  <usage_type>test</usage_type>
1225
1320
  <checksum>EE565FCC</checksum>
1226
1321
  </file>
1227
- <file>
1228
- <filename>asm.osm</filename>
1229
- <filetype>osm</filetype>
1230
- <usage_type>test</usage_type>
1231
- <checksum>C927EDEB</checksum>
1232
- </file>
1233
1322
  <file>
1234
1323
  <filename>USA_TX_Houston-Bush.Intercontinental.AP.722430_TMY3.epw</filename>
1235
1324
  <filetype>epw</filetype>
@@ -1237,10 +1326,16 @@
1237
1326
  <checksum>EE565FCC</checksum>
1238
1327
  </file>
1239
1328
  <file>
1240
- <filename>GenericGbxml.osm</filename>
1329
+ <filename>asm.osm</filename>
1241
1330
  <filetype>osm</filetype>
1242
1331
  <usage_type>test</usage_type>
1243
- <checksum>E27658D5</checksum>
1332
+ <checksum>C927EDEB</checksum>
1333
+ </file>
1334
+ <file>
1335
+ <filename>create_typical_doe_building_from_model_test.rb</filename>
1336
+ <filetype>rb</filetype>
1337
+ <usage_type>test</usage_type>
1338
+ <checksum>E45BEF73</checksum>
1244
1339
  </file>
1245
1340
  <file>
1246
1341
  <filename>ecc.osm</filename>
@@ -1296,6 +1391,18 @@
1296
1391
  <usage_type>test</usage_type>
1297
1392
  <checksum>A03CF17A</checksum>
1298
1393
  </file>
1394
+ <file>
1395
+ <filename>measure_test.osw</filename>
1396
+ <filetype>osw</filetype>
1397
+ <usage_type>test</usage_type>
1398
+ <checksum>6DB338FC</checksum>
1399
+ </file>
1400
+ <file>
1401
+ <filename>measure_test_hvac.rb</filename>
1402
+ <filetype>rb</filetype>
1403
+ <usage_type>test</usage_type>
1404
+ <checksum>754E2772</checksum>
1405
+ </file>
1299
1406
  <file>
1300
1407
  <filename>mfm.osm</filename>
1301
1408
  <filetype>osm</filetype>
@@ -1380,52 +1487,5 @@
1380
1487
  <usage_type>test</usage_type>
1381
1488
  <checksum>F22DEFBC</checksum>
1382
1489
  </file>
1383
- <file>
1384
- <filename>README.md.erb</filename>
1385
- <filetype>erb</filetype>
1386
- <usage_type>readmeerb</usage_type>
1387
- <checksum>BDCE44E6</checksum>
1388
- </file>
1389
- <file>
1390
- <filename>LICENSE.md</filename>
1391
- <filetype>md</filetype>
1392
- <usage_type>license</usage_type>
1393
- <checksum>BFFB1AA6</checksum>
1394
- </file>
1395
- <file>
1396
- <filename>Model.hvac.rb</filename>
1397
- <filetype>rb</filetype>
1398
- <usage_type>resource</usage_type>
1399
- <checksum>3F3371D0</checksum>
1400
- </file>
1401
- <file>
1402
- <filename>create_typical_doe_building_from_model_test.rb</filename>
1403
- <filetype>rb</filetype>
1404
- <usage_type>test</usage_type>
1405
- <checksum>E45BEF73</checksum>
1406
- </file>
1407
- <file>
1408
- <filename>measure_test_hvac.rb</filename>
1409
- <filetype>rb</filetype>
1410
- <usage_type>test</usage_type>
1411
- <checksum>754E2772</checksum>
1412
- </file>
1413
- <file>
1414
- <version>
1415
- <software_program>OpenStudio</software_program>
1416
- <identifier>2.0.0</identifier>
1417
- <min_compatible>3.0.0</min_compatible>
1418
- </version>
1419
- <filename>measure.rb</filename>
1420
- <filetype>rb</filetype>
1421
- <usage_type>script</usage_type>
1422
- <checksum>8270883B</checksum>
1423
- </file>
1424
- <file>
1425
- <filename>README.md</filename>
1426
- <filetype>md</filetype>
1427
- <usage_type>readme</usage_type>
1428
- <checksum>286621F3</checksum>
1429
- </file>
1430
1490
  </files>
1431
1491
  </measure>
@@ -16,15 +16,6 @@
16
16
  class DEERSpaceTypeAndConstructionSetWizard < OpenStudio::Measure::ModelMeasure
17
17
  require 'openstudio-standards'
18
18
 
19
- # load OpenStudio measure libraries from openstudio-extension gem
20
- require 'openstudio-extension'
21
- require 'openstudio/extension/core/os_lib_helper_methods'
22
- require 'openstudio/extension/core/os_lib_model_generation'
23
-
24
- # resource files used by measure
25
- include OsLib_HelperMethods
26
- include OsLib_ModelGeneration
27
-
28
19
  # define the name that a user will see, this method may be deprecated as
29
20
  # the display name in PAT comes from the name field in measure.xml
30
21
  def name
@@ -46,21 +37,21 @@ class DEERSpaceTypeAndConstructionSetWizard < OpenStudio::Measure::ModelMeasure
46
37
  args = OpenStudio::Measure::OSArgumentVector.new
47
38
 
48
39
  # Make an argument for the building type
49
- building_type = OpenStudio::Measure::OSArgument.makeChoiceArgument('building_type', get_deer_building_types, true)
40
+ building_type = OpenStudio::Measure::OSArgument.makeChoiceArgument('building_type', OpenstudioStandards::CreateTypical.get_deer_building_types, true)
50
41
  building_type.setDisplayName('Building Type.')
51
- building_type.setDefaultValue('SmallOffice')
42
+ building_type.setDefaultValue('Asm')
52
43
  args << building_type
53
44
 
54
45
  # Make an argument for the template
55
- template = OpenStudio::Measure::OSArgument.makeChoiceArgument('template', get_deer_templates, true)
46
+ template = OpenStudio::Measure::OSArgument.makeChoiceArgument('template', OpenstudioStandards::CreateTypical.get_deer_templates, true)
56
47
  template.setDisplayName('Template.')
57
- template.setDefaultValue('90.1-2010')
48
+ template.setDefaultValue('DEER 2017')
58
49
  args << template
59
50
 
60
51
  # Make an argument for the climate zone
61
- climate_zone = OpenStudio::Measure::OSArgument.makeChoiceArgument('climate_zone', get_deer_climate_zones, true)
52
+ climate_zone = OpenStudio::Measure::OSArgument.makeChoiceArgument('climate_zone', OpenstudioStandards::CreateTypical.get_deer_climate_zones, true)
62
53
  climate_zone.setDisplayName('Climate Zone.')
63
- climate_zone.setDefaultValue('ASHRAE 169-2013-2A')
54
+ climate_zone.setDefaultValue('CEC T24-CEC8')
64
55
  args << climate_zone
65
56
 
66
57
  # make an argument to add new space types
@@ -88,7 +79,13 @@ class DEERSpaceTypeAndConstructionSetWizard < OpenStudio::Measure::ModelMeasure
88
79
  def run(model, runner, user_arguments)
89
80
  super(model, runner, user_arguments)
90
81
 
91
- results = wizard(model, runner, user_arguments)
82
+ # assign the user inputs to variables
83
+ args = runner.getArgumentValues(arguments(model), user_arguments)
84
+ args = Hash[args.collect{ |k, v| [k.to_s, v] }]
85
+ if !args then return false end
86
+
87
+ # run create_space_types_and_constructions
88
+ results = OpenstudioStandards::CreateTypical.create_space_types_and_constructions(model, args['building_type'], args['template'], args['climate_zone'])
92
89
 
93
90
  if results == false
94
91
  return false