openstudio-model-articulation 0.4.0 → 0.6.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.rubocop.yml +2 -1
- data/CHANGELOG.md +24 -0
- data/Gemfile +2 -2
- data/README.md +22 -3
- data/lib/measures/AssignConstructionSetToBuilding/measure.xml +10 -10
- data/lib/measures/AssignSpaceTypeBySpaceName/measure.xml +27 -9
- data/lib/measures/AssignSpaceTypeToBuilding/measure.xml +10 -10
- data/lib/measures/AssignSpacesToStories/measure.rb +2 -4
- data/lib/measures/AssignSpacesToStories/measure.xml +10 -10
- data/lib/measures/BarAspectRatioStudy/measure.rb +2 -1
- data/lib/measures/BarAspectRatioStudy/measure.xml +4 -4
- data/lib/measures/CleanupSpaceOrigins/measure.rb +3 -0
- data/lib/measures/CleanupSpaceOrigins/measure.xml +10 -10
- data/lib/measures/FindAndReplaceObjectNames/measure.xml +8 -8
- data/lib/measures/InjectOsmGeometryIntoAnExternalIdf/measure.rb +2 -2
- data/lib/measures/InjectOsmGeometryIntoAnExternalIdf/measure.xml +22 -4
- data/lib/measures/RemoveHardAssignedConstructions/measure.xml +8 -8
- data/lib/measures/RenameSpaceSurfacesBasedonParentSpaceandOrientation/measure.xml +37 -7
- data/lib/measures/RotateBuilding/measure.xml +8 -8
- data/lib/measures/SetExtWallToGroundBoundaryConditionByStory/measure.xml +13 -7
- data/lib/measures/SetInteriorWallsAndFloorsToAdiabatic/measure.rb +1 -1
- data/lib/measures/SetInteriorWallsAndFloorsToAdiabatic/measure.xml +10 -10
- data/lib/measures/SetInteriorWallsToSelectedConstruction/measure.rb +1 -1
- data/lib/measures/SetInteriorWallsToSelectedConstruction/measure.xml +10 -10
- data/lib/measures/SetWindowToWallRatioByFacade/README.md +11 -0
- data/lib/measures/SetWindowToWallRatioByFacade/measure.rb +90 -142
- data/lib/measures/SetWindowToWallRatioByFacade/measure.xml +32 -11
- data/lib/measures/SetWindowToWallRatioByFacade/resources/functions.rb +176 -0
- data/lib/measures/SimplifyGeometryToSlicedBar/measure.rb +8 -4
- data/lib/measures/SimplifyGeometryToSlicedBar/measure.xml +31 -13
- data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_cofee.rb +6 -4
- data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_geometry.rb +13 -8
- data/lib/measures/SimplifyGeometryToSlicedBar/resources/os_lib_helper_methods.rb +2 -4
- data/lib/measures/SpaceTypeAndConstructionSetWizard/measure.rb +1 -1
- data/lib/measures/SpaceTypeAndConstructionSetWizard/measure.xml +4 -4
- data/lib/measures/SurfaceMatching/measure.rb +1 -0
- data/lib/measures/SurfaceMatching/measure.xml +10 -10
- data/lib/measures/add_empd_material_properties/LICENSE.md +27 -0
- data/lib/measures/add_empd_material_properties/README.md +116 -0
- data/lib/measures/add_empd_material_properties/README.md.erb +42 -0
- data/lib/measures/add_empd_material_properties/docs/.gitkeep +0 -0
- data/lib/measures/add_empd_material_properties/measure.rb +247 -0
- data/lib/measures/add_empd_material_properties/measure.xml +201 -0
- data/lib/measures/blended_space_type_from_floor_area_ratios/measure.rb +4 -3
- data/lib/measures/blended_space_type_from_floor_area_ratios/measure.xml +4 -4
- data/lib/measures/blended_space_type_from_model/{resources → docs}/replace_occupied_spaces_with_blended_space_type_design_doc.txt +0 -0
- data/lib/measures/blended_space_type_from_model/measure.rb +11 -3
- data/lib/measures/blended_space_type_from_model/measure.xml +15 -21
- data/lib/measures/clone_building_from_external_model/measure.xml +3 -3
- data/lib/measures/create_DOE_prototype_building/measure.rb +2 -2
- data/lib/measures/create_DOE_prototype_building/measure.xml +442 -438
- data/lib/measures/create_and_assign_thermal_zones_for_unassigned_spaces/measure.xml +3 -3
- data/lib/measures/create_bar_from_building_type_ratios/README.md +109 -35
- data/lib/measures/create_bar_from_building_type_ratios/README.md.erb +54 -35
- data/lib/measures/create_bar_from_building_type_ratios/measure.rb +8 -3
- data/lib/measures/create_bar_from_building_type_ratios/measure.xml +12 -12
- data/lib/measures/create_bar_from_deer_building_type_ratios/README.md +301 -79
- data/lib/measures/create_bar_from_deer_building_type_ratios/README.md.erb +62 -79
- data/lib/measures/create_bar_from_deer_building_type_ratios/measure.rb +9 -4
- data/lib/measures/create_bar_from_deer_building_type_ratios/measure.xml +15 -59
- data/lib/measures/create_bar_from_doe_building_type_ratios/README.md +298 -57
- data/lib/measures/create_bar_from_doe_building_type_ratios/README.md.erb +54 -57
- data/lib/measures/create_bar_from_doe_building_type_ratios/measure.rb +9 -4
- data/lib/measures/create_bar_from_doe_building_type_ratios/measure.xml +12 -16
- data/lib/measures/create_bar_from_model/measure.rb +10 -6
- data/lib/measures/create_bar_from_model/measure.xml +4 -4
- data/lib/measures/create_bar_from_space_type_ratios/README.md +94 -42
- data/lib/measures/create_bar_from_space_type_ratios/README.md.erb +60 -42
- data/lib/measures/create_bar_from_space_type_ratios/measure.rb +8 -3
- data/lib/measures/create_bar_from_space_type_ratios/measure.xml +15 -15
- data/lib/measures/create_baseline_building/measure.rb +3 -2
- data/lib/measures/create_baseline_building/measure.xml +4 -4
- data/lib/measures/create_deer_prototype_building/measure.xml +3 -3
- data/lib/measures/create_parametric_schedules/measure.rb +15 -10
- data/lib/measures/create_parametric_schedules/measure.xml +4 -4
- data/lib/measures/create_typical_building_from_model/README.md +81 -16
- data/lib/measures/create_typical_building_from_model/README.md.erb +36 -16
- data/lib/measures/create_typical_building_from_model/measure.rb +6 -1
- data/lib/measures/create_typical_building_from_model/measure.xml +19 -19
- data/lib/measures/create_typical_deer_building_from_model/README.md +173 -53
- data/lib/measures/create_typical_deer_building_from_model/README.md.erb +57 -53
- data/lib/measures/create_typical_deer_building_from_model/measure.rb +7 -2
- data/lib/measures/create_typical_deer_building_from_model/measure.xml +26 -26
- data/lib/measures/create_typical_doe_building_from_model/README.md +182 -44
- data/lib/measures/create_typical_doe_building_from_model/README.md.erb +58 -44
- data/lib/measures/create_typical_doe_building_from_model/measure.rb +7 -2
- data/lib/measures/create_typical_doe_building_from_model/measure.xml +26 -26
- data/lib/measures/deer_space_type_and_construction_set_wizard/measure.rb +1 -1
- data/lib/measures/deer_space_type_and_construction_set_wizard/measure.xml +4 -4
- data/lib/measures/find_and_replace_in_all_thermal_zone_names/measure.xml +3 -3
- data/lib/measures/make_shading_surfaces_based_on_zone_multipliers/measure.rb +2 -0
- data/lib/measures/make_shading_surfaces_based_on_zone_multipliers/measure.xml +4 -4
- data/lib/measures/merge_floorspace_js_with_model/measure.rb +4 -1
- data/lib/measures/merge_floorspace_js_with_model/measure.xml +4 -4
- data/lib/measures/merge_spaces_from_external_file/measure.xml +3 -3
- data/lib/measures/radiance_measure/measure.rb +62 -56
- data/lib/measures/radiance_measure/measure.xml +4 -4
- data/lib/measures/radiant_slab_with_doas/measure.rb +8 -1
- data/lib/measures/radiant_slab_with_doas/measure.xml +9 -9
- data/lib/measures/replace_geometry_by_story/measure.rb +4 -0
- data/lib/measures/replace_geometry_by_story/measure.xml +4 -4
- data/lib/measures/scale_geometry/measure.xml +3 -3
- data/lib/openstudio/model_articulation/version.rb +1 -1
- data/openstudio-model-articulation.gemspec +2 -2
- metadata +15 -9
- data/lib/measures/blended_space_type_from_model/resources/os_lib_model_simplification.rb +0 -1049
@@ -38,7 +38,7 @@
|
|
38
38
|
|
39
39
|
# load OpenStudio measure libraries from openstudio-extension gem
|
40
40
|
require 'openstudio-extension'
|
41
|
-
require 'openstudio/extension/core/os_lib_model_simplification
|
41
|
+
require 'openstudio/extension/core/os_lib_model_simplification'
|
42
42
|
|
43
43
|
# start the measure
|
44
44
|
class BlendedSpaceTypeFromModel < OpenStudio::Measure::ModelMeasure
|
@@ -96,7 +96,8 @@ class BlendedSpaceTypeFromModel < OpenStudio::Measure::ModelMeasure
|
|
96
96
|
|
97
97
|
# divide the building up based on blend method
|
98
98
|
space_type_hash = {}
|
99
|
-
|
99
|
+
case blend_method
|
100
|
+
when 'Building Type'
|
100
101
|
|
101
102
|
# loop through spaces and organize by building type
|
102
103
|
model.getSpaceTypes.each do |space_type|
|
@@ -117,7 +118,7 @@ class BlendedSpaceTypeFromModel < OpenStudio::Measure::ModelMeasure
|
|
117
118
|
space_type_hash[building_type] << space_type
|
118
119
|
end
|
119
120
|
|
120
|
-
|
121
|
+
when 'Building Story'
|
121
122
|
|
122
123
|
# loop through building stories
|
123
124
|
model.getBuildingStorys.sort.each do |story|
|
@@ -165,6 +166,7 @@ class BlendedSpaceTypeFromModel < OpenStudio::Measure::ModelMeasure
|
|
165
166
|
# warn if spaces in model that are not on building story (re-assign to cloned space type)
|
166
167
|
model.getSpaces.each do |space|
|
167
168
|
next if space.buildingStory.is_initialized
|
169
|
+
|
168
170
|
runner.registerWarning("#{space.name} is not assigned to a building story. It will be ignored.")
|
169
171
|
end
|
170
172
|
|
@@ -176,13 +178,16 @@ class BlendedSpaceTypeFromModel < OpenStudio::Measure::ModelMeasure
|
|
176
178
|
initial_cond_space_type_hash = {}
|
177
179
|
model.getSpaceTypes.sort.each do |space_type|
|
178
180
|
next if space_type.floorArea == 0
|
181
|
+
|
179
182
|
floor_area_si = 0
|
180
183
|
# loop through spaces so I can skip if not included in floor area
|
181
184
|
space_type.spaces.each do |space|
|
182
185
|
next if !space.partofTotalFloorArea
|
186
|
+
|
183
187
|
floor_area_si += space.floorArea * space.multiplier
|
184
188
|
end
|
185
189
|
next if floor_area_si == 0
|
190
|
+
|
186
191
|
initial_cond_space_type_hash[space_type] = floor_area_si
|
187
192
|
end
|
188
193
|
runner.registerInitialCondition("The initial building uses #{initial_cond_space_type_hash.size} spaces types.")
|
@@ -195,13 +200,16 @@ class BlendedSpaceTypeFromModel < OpenStudio::Measure::ModelMeasure
|
|
195
200
|
final_cond_space_type_hash = {}
|
196
201
|
model.getSpaceTypes.sort.each do |space_type|
|
197
202
|
next if space_type.floorArea == 0
|
203
|
+
|
198
204
|
floor_area_si = 0
|
199
205
|
# loop through spaces so I can skip if not included in floor area
|
200
206
|
space_type.spaces.each do |space|
|
201
207
|
next if !space.partofTotalFloorArea
|
208
|
+
|
202
209
|
floor_area_si += space.floorArea * space.multiplier
|
203
210
|
end
|
204
211
|
next if floor_area_si == 0
|
212
|
+
|
205
213
|
final_cond_space_type_hash[space_type] = floor_area_si
|
206
214
|
end
|
207
215
|
runner.registerFinalCondition("The final building uses #{final_cond_space_type_hash.size} spaces types.")
|
@@ -3,8 +3,8 @@
|
|
3
3
|
<schema_version>3.0</schema_version>
|
4
4
|
<name>blended_space_type_from_model</name>
|
5
5
|
<uid>667c2f1f-0927-4dbd-a7be-1087b5c15181</uid>
|
6
|
-
<version_id>
|
7
|
-
<version_modified>
|
6
|
+
<version_id>68180f3a-0d37-4921-8eea-baab050bb62b</version_id>
|
7
|
+
<version_modified>20220512T054947Z</version_modified>
|
8
8
|
<xml_checksum>28AD5222</xml_checksum>
|
9
9
|
<class_name>BlendedSpaceTypeFromModel</class_name>
|
10
10
|
<display_name>Blended Space Type from Model</display_name>
|
@@ -96,12 +96,6 @@
|
|
96
96
|
<usage_type>test</usage_type>
|
97
97
|
<checksum>F1C3606F</checksum>
|
98
98
|
</file>
|
99
|
-
<file>
|
100
|
-
<filename>replace_occupied_spaces_with_blended_space_type_design_doc.txt</filename>
|
101
|
-
<filetype>txt</filetype>
|
102
|
-
<usage_type>resource</usage_type>
|
103
|
-
<checksum>C2673B6F</checksum>
|
104
|
-
</file>
|
105
99
|
<file>
|
106
100
|
<filename>large_hotel_restaurant_from_create_typical.osm</filename>
|
107
101
|
<filetype>osm</filetype>
|
@@ -132,18 +126,24 @@
|
|
132
126
|
<usage_type>readmeerb</usage_type>
|
133
127
|
<checksum>703C9964</checksum>
|
134
128
|
</file>
|
135
|
-
<file>
|
136
|
-
<filename>os_lib_model_simplification.rb</filename>
|
137
|
-
<filetype>rb</filetype>
|
138
|
-
<usage_type>resource</usage_type>
|
139
|
-
<checksum>026886BB</checksum>
|
140
|
-
</file>
|
141
129
|
<file>
|
142
130
|
<filename>LICENSE.md</filename>
|
143
131
|
<filetype>md</filetype>
|
144
132
|
<usage_type>license</usage_type>
|
145
133
|
<checksum>A21A3ED2</checksum>
|
146
134
|
</file>
|
135
|
+
<file>
|
136
|
+
<filename>replace_occupied_spaces_with_blended_space_type_design_doc.txt</filename>
|
137
|
+
<filetype>txt</filetype>
|
138
|
+
<usage_type>doc</usage_type>
|
139
|
+
<checksum>C2673B6F</checksum>
|
140
|
+
</file>
|
141
|
+
<file>
|
142
|
+
<filename>measure_test.rb</filename>
|
143
|
+
<filetype>rb</filetype>
|
144
|
+
<usage_type>test</usage_type>
|
145
|
+
<checksum>60597097</checksum>
|
146
|
+
</file>
|
147
147
|
<file>
|
148
148
|
<version>
|
149
149
|
<software_program>OpenStudio</software_program>
|
@@ -153,13 +153,7 @@
|
|
153
153
|
<filename>measure.rb</filename>
|
154
154
|
<filetype>rb</filetype>
|
155
155
|
<usage_type>script</usage_type>
|
156
|
-
<checksum>
|
157
|
-
</file>
|
158
|
-
<file>
|
159
|
-
<filename>measure_test.rb</filename>
|
160
|
-
<filetype>rb</filetype>
|
161
|
-
<usage_type>test</usage_type>
|
162
|
-
<checksum>28954A91</checksum>
|
156
|
+
<checksum>556BD210</checksum>
|
163
157
|
</file>
|
164
158
|
</files>
|
165
159
|
</measure>
|
@@ -3,8 +3,8 @@
|
|
3
3
|
<schema_version>3.0</schema_version>
|
4
4
|
<name>clone_building_from_external_model</name>
|
5
5
|
<uid>09711168-01a7-4abc-b710-b49d59d927d8</uid>
|
6
|
-
<version_id>
|
7
|
-
<version_modified>
|
6
|
+
<version_id>444db266-08fc-4c5f-9c49-0153dde8d053</version_id>
|
7
|
+
<version_modified>20220505T182930Z</version_modified>
|
8
8
|
<xml_checksum>AFECFDDF</xml_checksum>
|
9
9
|
<class_name>CloneBuildingFromExternalModel</class_name>
|
10
10
|
<display_name>Clone Building From External Model</display_name>
|
@@ -114,7 +114,7 @@
|
|
114
114
|
<filename>clone_building_from_external_model_test.rb</filename>
|
115
115
|
<filetype>rb</filetype>
|
116
116
|
<usage_type>test</usage_type>
|
117
|
-
<checksum>
|
117
|
+
<checksum>D9BEC6C9</checksum>
|
118
118
|
</file>
|
119
119
|
</files>
|
120
120
|
</measure>
|
@@ -204,7 +204,7 @@ class CreateDOEPrototypeBuilding < OpenStudio::Measure::ModelMeasure
|
|
204
204
|
reset_log
|
205
205
|
|
206
206
|
return true
|
207
|
-
end
|
207
|
+
end
|
208
208
|
|
209
209
|
# Get all the log messages and put into output
|
210
210
|
# for users to see.
|
@@ -233,7 +233,7 @@ class CreateDOEPrototypeBuilding < OpenStudio::Measure::ModelMeasure
|
|
233
233
|
end
|
234
234
|
@runner.registerInfo("Total Time = #{(Time.new - @start_time).round}sec.")
|
235
235
|
end
|
236
|
-
end
|
236
|
+
end
|
237
237
|
|
238
238
|
# this allows the measure to be use by the application
|
239
239
|
CreateDOEPrototypeBuilding.new.registerWithApplication
|