openstudio-model-articulation 0.2.1 → 0.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (202) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +2 -1
  3. data/CHANGELOG.md +36 -19
  4. data/Gemfile +6 -0
  5. data/Jenkinsfile +1 -0
  6. data/LICENSE.md +1 -1
  7. data/README.md +14 -0
  8. data/Rakefile +5 -7
  9. data/doc_templates/LICENSE.md +1 -1
  10. data/doc_templates/copyright_erb.txt +1 -1
  11. data/doc_templates/copyright_js.txt +1 -1
  12. data/doc_templates/copyright_ruby.txt +1 -1
  13. data/lib/measures/AssignConstructionSetToBuilding/LICENSE.md +1 -1
  14. data/lib/measures/AssignConstructionSetToBuilding/measure.rb +1 -3
  15. data/lib/measures/AssignConstructionSetToBuilding/measure.xml +11 -10
  16. data/lib/measures/AssignSpaceTypeBySpaceName/LICENSE.md +1 -1
  17. data/lib/measures/AssignSpaceTypeBySpaceName/measure.rb +1 -3
  18. data/lib/measures/AssignSpaceTypeBySpaceName/measure.xml +11 -10
  19. data/lib/measures/AssignSpaceTypeToBuilding/LICENSE.md +1 -1
  20. data/lib/measures/AssignSpaceTypeToBuilding/measure.rb +1 -3
  21. data/lib/measures/AssignSpaceTypeToBuilding/measure.xml +11 -10
  22. data/lib/measures/AssignSpacesToStories/LICENSE.md +1 -1
  23. data/lib/measures/AssignSpacesToStories/measure.rb +1 -3
  24. data/lib/measures/AssignSpacesToStories/measure.xml +9 -8
  25. data/lib/measures/BarAspectRatioStudy/LICENSE.md +1 -1
  26. data/lib/measures/BarAspectRatioStudy/measure.rb +1 -3
  27. data/lib/measures/BarAspectRatioStudy/measure.xml +8 -7
  28. data/lib/measures/CleanupSpaceOrigins/LICENSE.md +1 -1
  29. data/lib/measures/CleanupSpaceOrigins/measure.rb +1 -3
  30. data/lib/measures/CleanupSpaceOrigins/measure.xml +9 -8
  31. data/lib/measures/FindAndReplaceObjectNames/LICENSE.md +1 -1
  32. data/lib/measures/FindAndReplaceObjectNames/measure.rb +1 -3
  33. data/lib/measures/FindAndReplaceObjectNames/measure.xml +8 -7
  34. data/lib/measures/InjectOsmGeometryIntoAnExternalIdf/LICENSE.md +1 -1
  35. data/lib/measures/InjectOsmGeometryIntoAnExternalIdf/measure.rb +1 -3
  36. data/lib/measures/InjectOsmGeometryIntoAnExternalIdf/measure.xml +10 -10
  37. data/lib/measures/RemoveHardAssignedConstructions/LICENSE.md +1 -1
  38. data/lib/measures/RemoveHardAssignedConstructions/measure.rb +1 -3
  39. data/lib/measures/RemoveHardAssignedConstructions/measure.xml +8 -7
  40. data/lib/measures/RenameSpaceSurfacesBasedonParentSpaceandOrientation/LICENSE.md +1 -1
  41. data/lib/measures/RenameSpaceSurfacesBasedonParentSpaceandOrientation/measure.rb +1 -3
  42. data/lib/measures/RenameSpaceSurfacesBasedonParentSpaceandOrientation/measure.xml +9 -8
  43. data/lib/measures/RotateBuilding/LICENSE.md +1 -1
  44. data/lib/measures/RotateBuilding/measure.rb +1 -3
  45. data/lib/measures/RotateBuilding/measure.xml +8 -7
  46. data/lib/measures/SetExtWallToGroundBoundaryConditionByStory/LICENSE.md +1 -1
  47. data/lib/measures/SetExtWallToGroundBoundaryConditionByStory/measure.rb +1 -3
  48. data/lib/measures/SetExtWallToGroundBoundaryConditionByStory/measure.xml +8 -7
  49. data/lib/measures/SetInteriorWallsAndFloorsToAdiabatic/LICENSE.md +1 -1
  50. data/lib/measures/SetInteriorWallsAndFloorsToAdiabatic/measure.rb +1 -3
  51. data/lib/measures/SetInteriorWallsAndFloorsToAdiabatic/measure.xml +8 -7
  52. data/lib/measures/SetInteriorWallsToSelectedConstruction/LICENSE.md +1 -1
  53. data/lib/measures/SetInteriorWallsToSelectedConstruction/measure.rb +1 -3
  54. data/lib/measures/SetInteriorWallsToSelectedConstruction/measure.xml +8 -7
  55. data/lib/measures/SetWindowToWallRatioByFacade/LICENSE.md +1 -1
  56. data/lib/measures/SetWindowToWallRatioByFacade/measure.rb +11 -6
  57. data/lib/measures/SetWindowToWallRatioByFacade/measure.xml +11 -5
  58. data/lib/measures/SimplifyGeometryToSlicedBar/LICENSE.md +1 -1
  59. data/lib/measures/SimplifyGeometryToSlicedBar/measure.rb +1 -3
  60. data/lib/measures/SimplifyGeometryToSlicedBar/measure.xml +8 -8
  61. data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_cofee.rb +1 -3
  62. data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_geometry.rb +1 -3
  63. data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_helper_methods.rb +2 -4
  64. data/lib/measures/SpaceTypeAndConstructionSetWizard/LICENSE.md +1 -1
  65. data/lib/measures/SpaceTypeAndConstructionSetWizard/measure.rb +1 -3
  66. data/lib/measures/SpaceTypeAndConstructionSetWizard/measure.xml +63 -11
  67. data/lib/measures/SurfaceMatching/LICENSE.md +1 -1
  68. data/lib/measures/SurfaceMatching/measure.rb +1 -3
  69. data/lib/measures/SurfaceMatching/measure.xml +8 -7
  70. data/lib/measures/{BarAspectRatioSlicedBySpaceType → add_empd_material_properties}/LICENSE.md +1 -1
  71. data/lib/measures/add_empd_material_properties/README.md +116 -0
  72. data/lib/measures/{BarAspectRatioSlicedBySpaceType → add_empd_material_properties}/README.md.erb +0 -0
  73. data/lib/measures/add_empd_material_properties/docs/.gitkeep +0 -0
  74. data/lib/measures/add_empd_material_properties/measure.rb +247 -0
  75. data/lib/measures/add_empd_material_properties/measure.xml +201 -0
  76. data/lib/measures/blended_space_type_from_floor_area_ratios/LICENSE.md +1 -1
  77. data/lib/measures/blended_space_type_from_floor_area_ratios/measure.rb +1 -3
  78. data/lib/measures/blended_space_type_from_floor_area_ratios/measure.xml +5 -5
  79. data/lib/measures/blended_space_type_from_model/LICENSE.md +1 -1
  80. data/lib/measures/blended_space_type_from_model/measure.rb +1 -3
  81. data/lib/measures/blended_space_type_from_model/measure.xml +6 -6
  82. data/lib/measures/blended_space_type_from_model/resources/os_lib_model_simplification.rb +1 -3
  83. data/lib/measures/clone_building_from_external_model/LICENSE.md +1 -1
  84. data/lib/measures/clone_building_from_external_model/measure.rb +1 -3
  85. data/lib/measures/clone_building_from_external_model/measure.xml +5 -5
  86. data/lib/measures/create_DOE_prototype_building/LICENSE.md +1 -1
  87. data/lib/measures/create_DOE_prototype_building/measure.rb +3 -4
  88. data/lib/measures/create_DOE_prototype_building/measure.xml +509 -377
  89. data/lib/measures/create_and_assign_thermal_zones_for_unassigned_spaces/LICENSE.md +1 -1
  90. data/lib/measures/create_and_assign_thermal_zones_for_unassigned_spaces/measure.rb +1 -3
  91. data/lib/measures/create_and_assign_thermal_zones_for_unassigned_spaces/measure.xml +5 -5
  92. data/lib/measures/create_bar_from_building_type_ratios/LICENSE.md +1 -1
  93. data/lib/measures/create_bar_from_building_type_ratios/README.md +109 -35
  94. data/lib/measures/create_bar_from_building_type_ratios/README.md.erb +54 -35
  95. data/lib/measures/create_bar_from_building_type_ratios/measure.rb +6 -3
  96. data/lib/measures/create_bar_from_building_type_ratios/measure.xml +129 -17
  97. data/lib/measures/create_bar_from_deer_building_type_ratios/LICENSE.md +1 -1
  98. data/lib/measures/create_bar_from_deer_building_type_ratios/README.md +301 -79
  99. data/lib/measures/create_bar_from_deer_building_type_ratios/README.md.erb +62 -79
  100. data/lib/measures/create_bar_from_deer_building_type_ratios/measure.rb +7 -4
  101. data/lib/measures/create_bar_from_deer_building_type_ratios/measure.xml +20 -64
  102. data/lib/measures/create_bar_from_doe_building_type_ratios/LICENSE.md +1 -1
  103. data/lib/measures/create_bar_from_doe_building_type_ratios/README.md +298 -57
  104. data/lib/measures/create_bar_from_doe_building_type_ratios/README.md.erb +54 -57
  105. data/lib/measures/create_bar_from_doe_building_type_ratios/measure.rb +7 -4
  106. data/lib/measures/create_bar_from_doe_building_type_ratios/measure.xml +127 -19
  107. data/lib/measures/create_bar_from_model/LICENSE.md +1 -1
  108. data/lib/measures/create_bar_from_model/measure.rb +1 -3
  109. data/lib/measures/create_bar_from_model/measure.xml +5 -5
  110. data/lib/measures/create_bar_from_space_type_ratios/LICENSE.md +27 -0
  111. data/lib/measures/create_bar_from_space_type_ratios/README.md +556 -0
  112. data/lib/measures/create_bar_from_space_type_ratios/README.md.erb +324 -0
  113. data/lib/measures/create_bar_from_space_type_ratios/docs/ar_05.png +0 -0
  114. data/lib/measures/create_bar_from_space_type_ratios/docs/ar_1.png +0 -0
  115. data/lib/measures/create_bar_from_space_type_ratios/docs/ar_2.png +0 -0
  116. data/lib/measures/create_bar_from_space_type_ratios/docs/bar_double_loaded.png +0 -0
  117. data/lib/measures/create_bar_from_space_type_ratios/docs/bar_single_core_perim.png +0 -0
  118. data/lib/measures/create_bar_from_space_type_ratios/docs/bar_sliced_indiv.png +0 -0
  119. data/lib/measures/create_bar_from_space_type_ratios/docs/bar_sliced_simple.png +0 -0
  120. data/lib/measures/create_bar_from_space_type_ratios/docs/basement.png +0 -0
  121. data/lib/measures/create_bar_from_space_type_ratios/docs/custom_height_false.png +0 -0
  122. data/lib/measures/create_bar_from_space_type_ratios/docs/custom_height_true.png +0 -0
  123. data/lib/measures/create_bar_from_space_type_ratios/docs/no_party_mult.png +0 -0
  124. data/lib/measures/create_bar_from_space_type_ratios/docs/party.png +0 -0
  125. data/lib/measures/create_bar_from_space_type_ratios/docs/party_multi.png +0 -0
  126. data/lib/measures/create_bar_from_space_type_ratios/docs/perim_mult_2010.png +0 -0
  127. data/lib/measures/create_bar_from_space_type_ratios/docs/perim_mult_2012.png +0 -0
  128. data/lib/measures/create_bar_from_space_type_ratios/docs/perim_mult_2020.png +0 -0
  129. data/lib/measures/create_bar_from_space_type_ratios/docs/sep_05.png +0 -0
  130. data/lib/measures/create_bar_from_space_type_ratios/docs/sep_10.png +0 -0
  131. data/lib/measures/create_bar_from_space_type_ratios/docs/sep_3.png +0 -0
  132. data/lib/measures/create_bar_from_space_type_ratios/docs/story_sort.png +0 -0
  133. data/lib/measures/create_bar_from_space_type_ratios/docs/wwr_custom.png +0 -0
  134. data/lib/measures/create_bar_from_space_type_ratios/measure.rb +314 -0
  135. data/lib/measures/create_bar_from_space_type_ratios/measure.xml +687 -0
  136. data/lib/measures/create_baseline_building/LICENSE.md +1 -1
  137. data/lib/measures/create_baseline_building/measure.rb +1 -1
  138. data/lib/measures/create_baseline_building/measure.xml +5 -5
  139. data/lib/measures/create_deer_prototype_building/LICENSE.md +1 -1
  140. data/lib/measures/create_deer_prototype_building/measure.rb +1 -3
  141. data/lib/measures/create_deer_prototype_building/measure.xml +6 -6
  142. data/lib/measures/create_deer_prototype_building/resources/deer_building_types.rb +1 -3
  143. data/lib/measures/create_parametric_schedules/LICENSE.md +1 -1
  144. data/lib/measures/create_parametric_schedules/measure.rb +1 -3
  145. data/lib/measures/create_parametric_schedules/measure.xml +5 -5
  146. data/lib/measures/create_typical_building_from_model/LICENSE.md +1 -1
  147. data/lib/measures/create_typical_building_from_model/README.md +82 -17
  148. data/lib/measures/create_typical_building_from_model/README.md.erb +36 -16
  149. data/lib/measures/create_typical_building_from_model/measure.rb +7 -7
  150. data/lib/measures/create_typical_building_from_model/measure.xml +62 -30
  151. data/lib/measures/create_typical_building_from_model/resources/Model.hvac.rb +7 -6
  152. data/lib/measures/create_typical_deer_building_from_model/LICENSE.md +1 -1
  153. data/lib/measures/create_typical_deer_building_from_model/README.md +173 -53
  154. data/lib/measures/create_typical_deer_building_from_model/README.md.erb +57 -53
  155. data/lib/measures/create_typical_deer_building_from_model/measure.rb +7 -4
  156. data/lib/measures/create_typical_deer_building_from_model/measure.xml +29 -29
  157. data/lib/measures/create_typical_deer_building_from_model/resources/Model.hvac.rb +7 -6
  158. data/lib/measures/create_typical_doe_building_from_model/LICENSE.md +1 -1
  159. data/lib/measures/create_typical_doe_building_from_model/README.md +182 -44
  160. data/lib/measures/create_typical_doe_building_from_model/README.md.erb +58 -44
  161. data/lib/measures/create_typical_doe_building_from_model/measure.rb +7 -4
  162. data/lib/measures/create_typical_doe_building_from_model/measure.xml +56 -24
  163. data/lib/measures/create_typical_doe_building_from_model/resources/Model.hvac.rb +7 -6
  164. data/lib/measures/deer_space_type_and_construction_set_wizard/LICENSE.md +1 -1
  165. data/lib/measures/deer_space_type_and_construction_set_wizard/measure.rb +1 -3
  166. data/lib/measures/deer_space_type_and_construction_set_wizard/measure.xml +17 -17
  167. data/lib/measures/find_and_replace_in_all_thermal_zone_names/LICENSE.md +1 -1
  168. data/lib/measures/find_and_replace_in_all_thermal_zone_names/measure.rb +1 -3
  169. data/lib/measures/find_and_replace_in_all_thermal_zone_names/measure.xml +8 -7
  170. data/lib/measures/make_shading_surfaces_based_on_zone_multipliers/LICENSE.md +1 -1
  171. data/lib/measures/make_shading_surfaces_based_on_zone_multipliers/measure.rb +1 -3
  172. data/lib/measures/make_shading_surfaces_based_on_zone_multipliers/measure.xml +5 -5
  173. data/lib/measures/merge_floorspace_js_with_model/LICENSE.md +1 -1
  174. data/lib/measures/merge_floorspace_js_with_model/measure.rb +1 -3
  175. data/lib/measures/merge_floorspace_js_with_model/measure.xml +5 -5
  176. data/lib/measures/merge_spaces_from_external_file/LICENSE.md +1 -1
  177. data/lib/measures/merge_spaces_from_external_file/measure.rb +1 -3
  178. data/lib/measures/merge_spaces_from_external_file/measure.xml +6 -6
  179. data/lib/measures/merge_spaces_from_external_file/resources/ScheduleTranslator.rb +5 -7
  180. data/lib/measures/radiance_measure/LICENSE.md +1 -1
  181. data/lib/measures/radiance_measure/measure.rb +2 -4
  182. data/lib/measures/radiance_measure/measure.xml +11 -11
  183. data/lib/measures/radiant_slab_with_doas/LICENSE.md +1 -1
  184. data/lib/measures/radiant_slab_with_doas/measure.rb +6 -4
  185. data/lib/measures/radiant_slab_with_doas/measure.xml +10 -10
  186. data/lib/measures/replace_geometry_by_story/LICENSE.md +1 -1
  187. data/lib/measures/replace_geometry_by_story/measure.rb +1 -3
  188. data/lib/measures/replace_geometry_by_story/measure.xml +5 -5
  189. data/lib/measures/scale_geometry/LICENSE.md +1 -1
  190. data/lib/measures/scale_geometry/measure.rb +1 -3
  191. data/lib/measures/scale_geometry/measure.xml +5 -5
  192. data/lib/openstudio/model_articulation/extension.rb +1 -1
  193. data/lib/openstudio/model_articulation/version.rb +2 -2
  194. data/lib/openstudio/model_articulation.rb +1 -1
  195. data/lib/openstudio-model-articulation.rb +1 -1
  196. data/openstudio-model-articulation.gemspec +3 -3
  197. metadata +44 -20
  198. data/lib/measures/.rubocop.yml +0 -5
  199. data/lib/measures/BarAspectRatioSlicedBySpaceType/README.md +0 -64
  200. data/lib/measures/BarAspectRatioSlicedBySpaceType/measure.rb +0 -186
  201. data/lib/measures/BarAspectRatioSlicedBySpaceType/measure.xml +0 -130
  202. data/lib/measures/BarAspectRatioSlicedBySpaceType/resources/os_lib_cofee.rb +0 -254
@@ -3,8 +3,8 @@
3
3
  <schema_version>3.0</schema_version>
4
4
  <name>simplify_geometry_to_sliced_bar</name>
5
5
  <uid>eb218516-5fa5-47fe-948d-274777c7d592</uid>
6
- <version_id>c8762599-9d85-4f35-a235-7b27de14498d</version_id>
7
- <version_modified>20200509T155938Z</version_modified>
6
+ <version_id>43464352-edbd-46d3-9feb-65ad84e6797d</version_id>
7
+ <version_modified>20210423T142517Z</version_modified>
8
8
  <xml_checksum>45097B60</xml_checksum>
9
9
  <class_name>SimplifyGeometryToSlicedBar</class_name>
10
10
  <display_name>SimplifyGeometryToSlicedBar</display_name>
@@ -110,19 +110,19 @@ In a future version I may try to identify similar spaces types and blend them to
110
110
  <filename>os_lib_helper_methods.rb</filename>
111
111
  <filetype>rb</filetype>
112
112
  <usage_type>resource</usage_type>
113
- <checksum>07B01D67</checksum>
113
+ <checksum>B91D04D5</checksum>
114
114
  </file>
115
115
  <file>
116
116
  <filename>os_lib_cofee.rb</filename>
117
117
  <filetype>rb</filetype>
118
118
  <usage_type>resource</usage_type>
119
- <checksum>3C10BF38</checksum>
119
+ <checksum>BA716A1A</checksum>
120
120
  </file>
121
121
  <file>
122
122
  <filename>LICENSE.md</filename>
123
123
  <filetype>md</filetype>
124
124
  <usage_type>license</usage_type>
125
- <checksum>E0468DD6</checksum>
125
+ <checksum>A21A3ED2</checksum>
126
126
  </file>
127
127
  <file>
128
128
  <version>
@@ -133,19 +133,19 @@ In a future version I may try to identify similar spaces types and blend them to
133
133
  <filename>measure.rb</filename>
134
134
  <filetype>rb</filetype>
135
135
  <usage_type>script</usage_type>
136
- <checksum>0FCFDE6E</checksum>
136
+ <checksum>6147FE1F</checksum>
137
137
  </file>
138
138
  <file>
139
139
  <filename>os_lib_geometry.rb</filename>
140
140
  <filetype>rb</filetype>
141
141
  <usage_type>resource</usage_type>
142
- <checksum>674C561A</checksum>
142
+ <checksum>F25DC7F1</checksum>
143
143
  </file>
144
144
  <file>
145
145
  <filename>SimplifyGeometryToSlicedBar_Test.rb</filename>
146
146
  <filetype>rb</filetype>
147
147
  <usage_type>test</usage_type>
148
- <checksum>8CD4C265</checksum>
148
+ <checksum>6BEA0A0C</checksum>
149
149
  </file>
150
150
  </files>
151
151
  </measure>
@@ -1,7 +1,5 @@
1
- # frozen_string_literal: true
2
-
3
1
  # *******************************************************************************
4
- # OpenStudio(R), Copyright (c) 2008-2020, Alliance for Sustainable Energy, LLC.
2
+ # OpenStudio(R), Copyright (c) 2008-2021, Alliance for Sustainable Energy, LLC.
5
3
  # All rights reserved.
6
4
  # Redistribution and use in source and binary forms, with or without
7
5
  # modification, are permitted provided that the following conditions are met:
@@ -1,7 +1,5 @@
1
- # frozen_string_literal: true
2
-
3
1
  # *******************************************************************************
4
- # OpenStudio(R), Copyright (c) 2008-2020, Alliance for Sustainable Energy, LLC.
2
+ # OpenStudio(R), Copyright (c) 2008-2021, Alliance for Sustainable Energy, LLC.
5
3
  # All rights reserved.
6
4
  # Redistribution and use in source and binary forms, with or without
7
5
  # modification, are permitted provided that the following conditions are met:
@@ -1,7 +1,5 @@
1
- # frozen_string_literal: true
2
-
3
1
  # *******************************************************************************
4
- # OpenStudio(R), Copyright (c) 2008-2020, Alliance for Sustainable Energy, LLC.
2
+ # OpenStudio(R), Copyright (c) 2008-2021, Alliance for Sustainable Energy, LLC.
5
3
  # All rights reserved.
6
4
  # Redistribution and use in source and binary forms, with or without
7
5
  # modification, are permitted provided that the following conditions are met:
@@ -229,7 +227,7 @@ module OsLib_HelperMethods
229
227
  def self.log_msgs
230
228
  @msg_log.logMessages.each do |msg|
231
229
  # DLM: you can filter on log channel here for now
232
- if /openstudio.*/.match?(msg.logChannel) # /openstudio\.model\..*/
230
+ if /openstudio.*/.match(msg.logChannel) # /openstudio\.model\..*/
233
231
  # Skip certain messages that are irrelevant/misleading
234
232
  next if msg.logMessage.include?('Skipping layer') || # Annoying/bogus "Skipping layer" warnings
235
233
  msg.logChannel.include?('runmanager') || # RunManager messages
@@ -1,4 +1,4 @@
1
- OpenStudio(R), Copyright (c) 2008-2020, Alliance for Sustainable Energy, LLC. All rights reserved.
1
+ OpenStudio(R), Copyright (c) 2008-2021, Alliance for Sustainable Energy, LLC. All rights reserved.
2
2
 
3
3
  Redistribution and use in source and binary forms, with or without modification, are permitted
4
4
  provided that the following conditions are met:
@@ -1,7 +1,5 @@
1
- # frozen_string_literal: true
2
-
3
1
  # *******************************************************************************
4
- # OpenStudio(R), Copyright (c) 2008-2020, Alliance for Sustainable Energy, LLC.
2
+ # OpenStudio(R), Copyright (c) 2008-2021, Alliance for Sustainable Energy, LLC.
5
3
  # All rights reserved.
6
4
  # Redistribution and use in source and binary forms, with or without
7
5
  # modification, are permitted provided that the following conditions are met:
@@ -3,8 +3,8 @@
3
3
  <schema_version>3.0</schema_version>
4
4
  <name>space_type_and_construction_set_wizard</name>
5
5
  <uid>7c65af63-4316-47c9-b7a5-68d7a019e533</uid>
6
- <version_id>e954e632-3e10-41b3-b7b5-a355a3210ee7</version_id>
7
- <version_modified>20200509T155939Z</version_modified>
6
+ <version_id>a0577cf6-a844-4d90-a7c6-2a3f54e65bfd</version_id>
7
+ <version_modified>20210423T142525Z</version_modified>
8
8
  <xml_checksum>057E8D9D</xml_checksum>
9
9
  <class_name>SpaceTypeAndConstructionSetWizard</class_name>
10
10
  <display_name>Space Type and Construction Set Wizard</display_name>
@@ -87,6 +87,26 @@
87
87
  <value>SuperMarket</value>
88
88
  <display_name>SuperMarket</display_name>
89
89
  </choice>
90
+ <choice>
91
+ <value>Laboratory</value>
92
+ <display_name>Laboratory</display_name>
93
+ </choice>
94
+ <choice>
95
+ <value>LargeDataCenterLowITE</value>
96
+ <display_name>LargeDataCenterLowITE</display_name>
97
+ </choice>
98
+ <choice>
99
+ <value>LargeDataCenterHighITE</value>
100
+ <display_name>LargeDataCenterHighITE</display_name>
101
+ </choice>
102
+ <choice>
103
+ <value>SmallDataCenterLowITE</value>
104
+ <display_name>SmallDataCenterLowITE</display_name>
105
+ </choice>
106
+ <choice>
107
+ <value>SmallDataCenterHighITE</value>
108
+ <display_name>SmallDataCenterHighITE</display_name>
109
+ </choice>
90
110
  </choices>
91
111
  </argument>
92
112
  <argument>
@@ -121,6 +141,38 @@
121
141
  <value>90.1-2013</value>
122
142
  <display_name>90.1-2013</display_name>
123
143
  </choice>
144
+ <choice>
145
+ <value>90.1-2016</value>
146
+ <display_name>90.1-2016</display_name>
147
+ </choice>
148
+ <choice>
149
+ <value>90.1-2019</value>
150
+ <display_name>90.1-2019</display_name>
151
+ </choice>
152
+ <choice>
153
+ <value>ComStock DOE Ref Pre-1980</value>
154
+ <display_name>ComStock DOE Ref Pre-1980</display_name>
155
+ </choice>
156
+ <choice>
157
+ <value>ComStock DOE Ref 1980-2004</value>
158
+ <display_name>ComStock DOE Ref 1980-2004</display_name>
159
+ </choice>
160
+ <choice>
161
+ <value>ComStock 90.1-2004</value>
162
+ <display_name>ComStock 90.1-2004</display_name>
163
+ </choice>
164
+ <choice>
165
+ <value>ComStock 90.1-2007</value>
166
+ <display_name>ComStock 90.1-2007</display_name>
167
+ </choice>
168
+ <choice>
169
+ <value>ComStock 90.1-2010</value>
170
+ <display_name>ComStock 90.1-2010</display_name>
171
+ </choice>
172
+ <choice>
173
+ <value>ComStock 90.1-2013</value>
174
+ <display_name>ComStock 90.1-2013</display_name>
175
+ </choice>
124
176
  </choices>
125
177
  </argument>
126
178
  <argument>
@@ -304,23 +356,23 @@
304
356
  <usage_type>readme</usage_type>
305
357
  <checksum>BF3EEE84</checksum>
306
358
  </file>
359
+ <file>
360
+ <filename>design_doc.txt</filename>
361
+ <filetype>txt</filetype>
362
+ <usage_type>resource</usage_type>
363
+ <checksum>86154A1B</checksum>
364
+ </file>
307
365
  <file>
308
366
  <filename>LICENSE.md</filename>
309
367
  <filetype>md</filetype>
310
368
  <usage_type>license</usage_type>
311
- <checksum>E0468DD6</checksum>
369
+ <checksum>A21A3ED2</checksum>
312
370
  </file>
313
371
  <file>
314
372
  <filename>SpaceTypeAndConstructionSetWizard_Test.rb</filename>
315
373
  <filetype>rb</filetype>
316
374
  <usage_type>test</usage_type>
317
- <checksum>BC2A5358</checksum>
318
- </file>
319
- <file>
320
- <filename>design_doc.txt</filename>
321
- <filetype>txt</filetype>
322
- <usage_type>resource</usage_type>
323
- <checksum>86154A1B</checksum>
375
+ <checksum>A33BC44E</checksum>
324
376
  </file>
325
377
  <file>
326
378
  <version>
@@ -331,7 +383,7 @@
331
383
  <filename>measure.rb</filename>
332
384
  <filetype>rb</filetype>
333
385
  <usage_type>script</usage_type>
334
- <checksum>06FB7B3C</checksum>
386
+ <checksum>ECB1C32A</checksum>
335
387
  </file>
336
388
  </files>
337
389
  </measure>
@@ -1,4 +1,4 @@
1
- OpenStudio(R), Copyright (c) 2008-2020, Alliance for Sustainable Energy, LLC. All rights reserved.
1
+ OpenStudio(R), Copyright (c) 2008-2021, Alliance for Sustainable Energy, LLC. All rights reserved.
2
2
 
3
3
  Redistribution and use in source and binary forms, with or without modification, are permitted
4
4
  provided that the following conditions are met:
@@ -1,7 +1,5 @@
1
- # frozen_string_literal: true
2
-
3
1
  # *******************************************************************************
4
- # OpenStudio(R), Copyright (c) 2008-2020, Alliance for Sustainable Energy, LLC.
2
+ # OpenStudio(R), Copyright (c) 2008-2021, Alliance for Sustainable Energy, LLC.
5
3
  # All rights reserved.
6
4
  # Redistribution and use in source and binary forms, with or without
7
5
  # modification, are permitted provided that the following conditions are met:
@@ -1,9 +1,10 @@
1
+ <?xml version="1.0"?>
1
2
  <measure>
2
3
  <schema_version>3.0</schema_version>
3
4
  <name>surface_matching</name>
4
5
  <uid>e9c69c36-bf33-4ac4-b695-41dee26ee880</uid>
5
- <version_id>8bf090a7-cdaf-457d-961a-997181926b5c</version_id>
6
- <version_modified>20200229T024053Z</version_modified>
6
+ <version_id>1b01d623-5de5-4dbf-a775-82119cbc16f4</version_id>
7
+ <version_modified>20210423T142525Z</version_modified>
7
8
  <xml_checksum>45097B60</xml_checksum>
8
9
  <class_name>SurfaceMatching</class_name>
9
10
  <display_name>SurfaceMatching</display_name>
@@ -29,8 +30,8 @@
29
30
  </choices>
30
31
  </argument>
31
32
  </arguments>
32
- <outputs/>
33
- <provenances/>
33
+ <outputs />
34
+ <provenances />
34
35
  <tags>
35
36
  <tag>Envelope.Form</tag>
36
37
  </tags>
@@ -74,19 +75,19 @@
74
75
  <filename>measure.rb</filename>
75
76
  <filetype>rb</filetype>
76
77
  <usage_type>script</usage_type>
77
- <checksum>25FFA145</checksum>
78
+ <checksum>2C1EB547</checksum>
78
79
  </file>
79
80
  <file>
80
81
  <filename>SurfaceMatching_Test.rb</filename>
81
82
  <filetype>rb</filetype>
82
83
  <usage_type>test</usage_type>
83
- <checksum>08C70C49</checksum>
84
+ <checksum>C729BC9F</checksum>
84
85
  </file>
85
86
  <file>
86
87
  <filename>LICENSE.md</filename>
87
88
  <filetype>md</filetype>
88
89
  <usage_type>license</usage_type>
89
- <checksum>E0468DD6</checksum>
90
+ <checksum>A21A3ED2</checksum>
90
91
  </file>
91
92
  </files>
92
93
  </measure>
@@ -1,4 +1,4 @@
1
- OpenStudio(R), Copyright (c) 2008-2020, Alliance for Sustainable Energy, LLC. All rights reserved.
1
+ OpenStudio(R), Copyright (c) 2008-2021, Alliance for Sustainable Energy, LLC. All rights reserved.
2
2
 
3
3
  Redistribution and use in source and binary forms, with or without modification, are permitted
4
4
  provided that the following conditions are met:
@@ -0,0 +1,116 @@
1
+
2
+
3
+ ###### (Automatically generated documentation)
4
+
5
+ # Add EMPD Material Properties
6
+
7
+ ## Description
8
+ Adds the properties for the effective moisture penetration depth (EMPD) Heat Balance Model with inputs for penetration depths.
9
+
10
+ ## Modeler Description
11
+ Adds the properties for the MoisturePenetrationDepthConductionTransferFunction or effective moisture penetration depth (EMPD) Heat Balance Model with inputs for penetration depths.
12
+
13
+ Leaving Change heat balance algorithm? blank will use the current OpenStudio heat balance algorithm setting.
14
+
15
+ At least 1 interior material needs to have moisture penetration depth properties set to use the EMPD heat balance algorithm.
16
+
17
+ ## Measure Type
18
+ ModelMeasure
19
+
20
+ ## Taxonomy
21
+
22
+
23
+ ## Arguments
24
+
25
+
26
+ ### Select Material
27
+
28
+ **Name:** selected_material,
29
+ **Type:** Choice,
30
+ **Units:** ,
31
+ **Required:** true,
32
+ **Model Dependent:** true
33
+
34
+ ### Set value for Water Vapor Diffusion Resistance Factor
35
+
36
+ **Name:** water_diff_fact,
37
+ **Type:** Double,
38
+ **Units:** ,
39
+ **Required:** true,
40
+ **Model Dependent:** false
41
+
42
+ ### Set value for Moisture Equation Coefficient A
43
+
44
+ **Name:** coef_a,
45
+ **Type:** Double,
46
+ **Units:** ,
47
+ **Required:** true,
48
+ **Model Dependent:** false
49
+
50
+ ### Set value for Moisture Equation Coefficient B
51
+
52
+ **Name:** coef_b,
53
+ **Type:** Double,
54
+ **Units:** ,
55
+ **Required:** true,
56
+ **Model Dependent:** false
57
+
58
+ ### Set value for Moisture Equation Coefficient C
59
+
60
+ **Name:** coef_c,
61
+ **Type:** Double,
62
+ **Units:** ,
63
+ **Required:** true,
64
+ **Model Dependent:** false
65
+
66
+ ### Set value for Moisture Equation Coefficient D
67
+
68
+ **Name:** coef_d,
69
+ **Type:** Double,
70
+ **Units:** ,
71
+ **Required:** true,
72
+ **Model Dependent:** false
73
+
74
+ ### Set value for Surface Layer Penetration Depth
75
+
76
+ **Name:** surface_penetration,
77
+ **Type:** String,
78
+ **Units:** ,
79
+ **Required:** true,
80
+ **Model Dependent:** false
81
+
82
+ ### Set value for Deep Layer Penetration Depth
83
+
84
+ **Name:** deep_penetration,
85
+ **Type:** String,
86
+ **Units:** ,
87
+ **Required:** false,
88
+ **Model Dependent:** false
89
+
90
+ ### Set value for Coating Layer Thickness
91
+
92
+ **Name:** coating,
93
+ **Type:** Double,
94
+ **Units:** ,
95
+ **Required:** true,
96
+ **Model Dependent:** false
97
+
98
+ ### Set value for Coating Layer Resistance Factor
99
+
100
+ **Name:** coating_res,
101
+ **Type:** Double,
102
+ **Units:** ,
103
+ **Required:** true,
104
+ **Model Dependent:** false
105
+
106
+ ### Change heat balance algorithm?
107
+
108
+ **Name:** algorithm,
109
+ **Type:** Choice,
110
+ **Units:** ,
111
+ **Required:** false,
112
+ **Model Dependent:** false
113
+
114
+
115
+
116
+
@@ -0,0 +1,247 @@
1
+ # *******************************************************************************
2
+ # OpenStudio(R), Copyright (c) 2008-2021, Alliance for Sustainable Energy, LLC.
3
+ # All rights reserved.
4
+ # Redistribution and use in source and binary forms, with or without
5
+ # modification, are permitted provided that the following conditions are met:
6
+ #
7
+ # (1) Redistributions of source code must retain the above copyright notice,
8
+ # this list of conditions and the following disclaimer.
9
+ #
10
+ # (2) Redistributions in binary form must reproduce the above copyright notice,
11
+ # this list of conditions and the following disclaimer in the documentation
12
+ # and/or other materials provided with the distribution.
13
+ #
14
+ # (3) Neither the name of the copyright holder nor the names of any contributors
15
+ # may be used to endorse or promote products derived from this software without
16
+ # specific prior written permission from the respective party.
17
+ #
18
+ # (4) Other than as required in clauses (1) and (2), distributions in any form
19
+ # of modifications or other derivative works may not use the "OpenStudio"
20
+ # trademark, "OS", "os", or any other confusingly similar designation without
21
+ # specific prior written permission from Alliance for Sustainable Energy, LLC.
22
+ #
23
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER(S) AND ANY CONTRIBUTORS
24
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
25
+ # THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
26
+ # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER(S), ANY CONTRIBUTORS, THE
27
+ # UNITED STATES GOVERNMENT, OR THE UNITED STATES DEPARTMENT OF ENERGY, NOR ANY OF
28
+ # THEIR EMPLOYEES, BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
29
+ # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT
30
+ # OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
31
+ # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
32
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33
+ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
34
+ # *******************************************************************************
35
+
36
+ # insert your copyright here
37
+
38
+ # Measure written by Gabriel Flechas
39
+ # Assitance by Karl Heine (THANKS KARL!)
40
+ # Last edit 05/25/2021
41
+
42
+ # see the URL below for information on how to write OpenStudio measures
43
+ # http://nrel.github.io/OpenStudio-user-documentation/reference/measure_writing_guide/
44
+
45
+ # start the measure
46
+ class AddEMPDMaterialProperties < OpenStudio::Measure::ModelMeasure
47
+ # human readable name
48
+ def name
49
+ # Measure name should be the title case of the class name.
50
+ return 'Add EMPD Material Properties'
51
+ end
52
+
53
+ # human readable description
54
+ def description
55
+ return 'Adds the properties for the effective moisture penetration depth (EMPD) Heat Balance Model with inputs for penetration depths.'
56
+ end
57
+
58
+ # human readable description of modeling approach
59
+ def modeler_description
60
+ return ['Adds', 'the', 'properties', 'for', 'the', 'MoisturePenetrationDepthConductionTransferFunction', 'or', 'effective', 'moisture', 'penetration', 'depth', '(EMPD)', 'Heat', 'Balance', 'Model', 'with', 'inputs', 'for', 'penetration', 'depths.', "\n\n", 'Leaving', 'Change', 'heat', 'balance', 'algorithm?', 'blank', 'will', 'use', 'the', 'current', 'OpenStudio', 'heat', 'balance', 'algorithm', 'setting.', "\n\n", 'At', 'least', '1', 'interior', 'material', 'needs', 'to', 'have', 'moisture', 'penetration', 'depth', 'properties', 'set', 'to', 'use', 'the', 'EMPD', 'heat', 'balance', 'algorithm.'].join(' ')
61
+ end
62
+
63
+ # define the arguments that the user will input
64
+ def arguments(model)
65
+ args = OpenStudio::Measure::OSArgumentVector.new
66
+
67
+ # find the available materials
68
+ list_materials = model.getMaterials
69
+ mat_names = []
70
+ list_materials.each do |v|
71
+ mat_names.append(v.name.to_s)
72
+ end
73
+ mat_names.sort!
74
+
75
+ # Create arguments for material selection (Choice)
76
+ selected_material = OpenStudio::Measure::OSArgument.makeChoiceArgument('selected_material',
77
+ mat_names, true, true)
78
+ selected_material.setDisplayName('Select Material')
79
+ if !mat_names.empty?
80
+ selected_material.setDefaultValue(mat_names[0])
81
+ else
82
+ selected_material.setDefaultValue('No Materials In Model!')
83
+ end
84
+ args << selected_material
85
+
86
+ # create argument for Water Vapor Diffusion Resistance Factor
87
+ water_diff_fact = OpenStudio::Measure::OSArgument.makeDoubleArgument('water_diff_fact', true)
88
+ water_diff_fact.setDisplayName('Set value for Water Vapor Diffusion Resistance Factor')
89
+ water_diff_fact.setDefaultValue(0)
90
+ args << water_diff_fact
91
+
92
+ # create argument for Coefficient A
93
+ coef_a = OpenStudio::Measure::OSArgument.makeDoubleArgument('coef_a', true)
94
+ coef_a.setDisplayName('Set value for Moisture Equation Coefficient A')
95
+ coef_a.setDefaultValue(0)
96
+ args << coef_a
97
+
98
+ # create argument for Coefficient B
99
+ coef_b = OpenStudio::Measure::OSArgument.makeDoubleArgument('coef_b', true)
100
+ coef_b.setDisplayName('Set value for Moisture Equation Coefficient B')
101
+ coef_b.setDefaultValue(0)
102
+ args << coef_b
103
+
104
+ # create argument for Coefficient C
105
+ coef_c = OpenStudio::Measure::OSArgument.makeDoubleArgument('coef_c', true)
106
+ coef_c.setDisplayName('Set value for Moisture Equation Coefficient C')
107
+ coef_c.setDefaultValue(0)
108
+ args << coef_c
109
+
110
+ # create argument for Coefficient D
111
+ coef_d = OpenStudio::Measure::OSArgument.makeDoubleArgument('coef_d', true)
112
+ coef_d.setDisplayName('Set value for Moisture Equation Coefficient D')
113
+ coef_d.setDefaultValue(0)
114
+ args << coef_d
115
+
116
+ # create argument for Surface Layer Penetration Depth
117
+ surface_penetration = OpenStudio::Measure::OSArgument.makeStringArgument('surface_penetration', true)
118
+ surface_penetration.setDisplayName('Set value for Surface Layer Penetration Depth')
119
+ surface_penetration.setDefaultValue('Auto')
120
+ args << surface_penetration
121
+
122
+ # create argument for Deep Layer Penetration Depth
123
+ deep_penetration = OpenStudio::Measure::OSArgument.makeStringArgument('deep_penetration', false)
124
+ deep_penetration.setDisplayName('Set value for Deep Layer Penetration Depth')
125
+ deep_penetration.setDefaultValue('Auto')
126
+ args << deep_penetration
127
+
128
+ # create argument for Coating layer Thickness
129
+ coating = OpenStudio::Measure::OSArgument.makeDoubleArgument('coating', true)
130
+ coating.setDisplayName('Set value for Coating Layer Thickness')
131
+ coating.setDefaultValue(0)
132
+ args << coating
133
+
134
+ # create argument for Coating layer Resistance
135
+ coating_res = OpenStudio::Measure::OSArgument.makeDoubleArgument('coating_res', true)
136
+ coating_res.setDisplayName('Set value for Coating Layer Resistance Factor')
137
+ coating_res.setDefaultValue(0)
138
+ args << coating_res
139
+
140
+ # create argument for heat balance algorithm
141
+ algs = ['', 'MoisturePenetrationDepthConductionTransferFunction',
142
+ 'ConductionTransferFunction']
143
+ algorithm = OpenStudio::Measure::OSArgument.makeChoiceArgument('algorithm', algs, false)
144
+ algorithm.setDisplayName('Change heat balance algorithm?')
145
+ algorithm.setDefaultValue(algs[0])
146
+ args << algorithm
147
+
148
+ return args
149
+ end
150
+
151
+ # define what happens when the measure is run
152
+ def run(model, runner, user_arguments)
153
+ super(model, runner, user_arguments)
154
+
155
+ # use the built-in error checking
156
+ if !runner.validateUserArguments(arguments(model), user_arguments)
157
+ return false
158
+ end
159
+
160
+ # assign the user inputs to variables
161
+ selected_material = runner.getStringArgumentValue('selected_material', user_arguments)
162
+ water_diff_fact = runner.getDoubleArgumentValue('water_diff_fact', user_arguments)
163
+ coef_a = runner.getDoubleArgumentValue('coef_a', user_arguments)
164
+ coef_b = runner.getDoubleArgumentValue('coef_b', user_arguments)
165
+ coef_c = runner.getDoubleArgumentValue('coef_c', user_arguments)
166
+ coef_d = runner.getDoubleArgumentValue('coef_d', user_arguments)
167
+ surface_penetration = runner.getStringArgumentValue('surface_penetration', user_arguments)
168
+ surface_penetration = surface_penetration.to_f
169
+ deep_penetration = runner.getStringArgumentValue('deep_penetration', user_arguments)
170
+ deep_penetration = deep_penetration.to_f
171
+ coating = runner.getDoubleArgumentValue('coating', user_arguments)
172
+ coating_res = runner.getDoubleArgumentValue('coating_res', user_arguments)
173
+ algorithm = runner.getStringArgumentValue('algorithm', user_arguments)
174
+
175
+ #---------------------------------------------------------------------------
176
+ # Validate arguments
177
+ if water_diff_fact == 0
178
+ runner.registerError('The Water Vapor Diffusion Resistance Factor needs to be greater than 0.')
179
+ return false
180
+ end
181
+ if coef_a == 0
182
+ runner.registerWarning('The Moisture Equation Coefficient A has been left as 0. This is usally a non-zero value.')
183
+ end
184
+ if coef_b == 0
185
+ runner.registerWarning('The Moisture Equation Coefficient B has been left as 0. This is usally a non-zero value.')
186
+ end
187
+ if coef_c == 0
188
+ runner.registerWarning('The Moisture Equation Coefficient C has been left as 0. This is usally a non-zero value.')
189
+ end
190
+ if coef_d == 0
191
+ runner.registerWarning('The Moisture Equation Coefficient D has been left as 0. This is usally a non-zero value.')
192
+ end
193
+ #---------------------------------------------------------------------------
194
+
195
+ # Get os object for selected material
196
+ mats = model.getMaterials
197
+ mat = ''
198
+ mats.each do |m|
199
+ if m.name.to_s == selected_material
200
+ mat = m
201
+ end
202
+ end
203
+
204
+ # report initial condition of model
205
+ runner.registerInitialCondition("The building has #{mats.size} materials.")
206
+
207
+ #---------------------------------------------------------------------------
208
+ # Set algorithm and report to users
209
+ if algorithm != ''
210
+ alg = model.getHeatBalanceAlgorithm
211
+ alg.setAlgorithm(algorithm)
212
+ runner.registerInfo("Heat Balance Algorithm Set to : #{algorithm}")
213
+ end
214
+ #---------------------------------------------------------------------------
215
+
216
+ # Add moisture properties object and make changes to model
217
+ n = OpenStudio::Model::MaterialPropertyMoisturePenetrationDepthSettings.new(
218
+ mat, water_diff_fact, coef_a, coef_b, coef_c, coef_d, coating, coating_res
219
+ )
220
+
221
+ # check if the surface penetration is being autocalculated, and if not set the depth
222
+ if surface_penetration > 0
223
+ n.setSurfaceLayerPenetrationDepth(surface_penetration)
224
+ runner.registerInfo("Surface layer penetration depth set to: #{surface_penetration}")
225
+ else
226
+ n.autocalculateSurfaceLayerPenetrationDepth
227
+ runner.registerInfo('Surface layer penetration depth set to: AutoCalculate')
228
+ end
229
+
230
+ # check if the deep penetration is being autocalculated, and if not set the depth
231
+ if deep_penetration > 0
232
+ n.setDeepLayerPenetrationDepth(deep_penetration)
233
+ runner.registerInfo("Deep layer penetration depth set to: #{surface_penetration}")
234
+ else
235
+ n.autocalculateDeepLayerPenetrationDepth
236
+ runner.registerInfo('Deep layer penetration depth set to: AutoCalculate')
237
+ end
238
+
239
+ # report final condition of model
240
+ runner.registerFinalCondition("Moisture properties were added to #{selected_material}.")
241
+
242
+ return true
243
+ end
244
+ end
245
+
246
+ # register the measure to be used by the application
247
+ AddEMPDMaterialProperties.new.registerWithApplication