openstudio-analysis 0.3.7 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (91) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -6
  3. data/README.md +55 -7
  4. data/Rakefile +10 -0
  5. data/lib/openstudio/analysis/algorithm_attributes.rb +22 -0
  6. data/lib/openstudio/analysis/formulation.rb +174 -0
  7. data/lib/openstudio/analysis/translator/excel.rb +65 -48
  8. data/lib/openstudio/analysis/version.rb +1 -1
  9. data/lib/openstudio/analysis/workflow.rb +197 -0
  10. data/lib/openstudio/analysis/workflow_step.rb +312 -0
  11. data/lib/openstudio/analysis.rb +8 -0
  12. data/lib/openstudio/helpers/string.rb +22 -22
  13. data/lib/openstudio/templates/analysis.json.erb +0 -1
  14. data/lib/openstudio-analysis.rb +9 -0
  15. data/spec/files/0_1_09_small_list_incomplete.xlsx +0 -0
  16. data/spec/files/0_2_0_template_simpletest.xlsx +0 -0
  17. data/spec/files/0_4_0_lhs_discrete_continuous.xlsx +0 -0
  18. data/spec/files/analysis/example_analysis_api.json +656 -0
  19. data/spec/files/analysis/examples/discrete_lhs_example.json +809 -0
  20. data/spec/files/analysis/examples/medium_office_example.json +1673 -0
  21. data/spec/files/analysis/lhs_discrete_and_continuous_variables_api.json +1230 -0
  22. data/spec/files/analysis/medium_office.json +91 -92
  23. data/spec/files/analysis/medium_office.zip +0 -0
  24. data/spec/files/analysis/name_goes_here_api.json +1681 -0
  25. data/spec/files/analysis/output_vars_api.json +632 -0
  26. data/spec/files/analysis/preflight_api.json +1518 -0
  27. data/spec/files/analysis/simple_test_api.json +519 -0
  28. data/spec/files/analysis/test_model_api.json +493 -0
  29. data/spec/files/export/analysis/0_1_09_outputvars.json +38 -39
  30. data/spec/files/export/analysis/0_1_09_outputvars.zip +0 -0
  31. data/spec/files/export/analysis/0_1_11_discrete_variables.json +46 -47
  32. data/spec/files/export/analysis/0_1_11_discrete_variables.zip +0 -0
  33. data/spec/files/export/analysis/0_1_12_discrete_dynamic_columns.json +8 -9
  34. data/spec/files/export/analysis/0_1_12_discrete_dynamic_columns.zip +0 -0
  35. data/spec/files/export/analysis/0_2_0_template_simpletest.json +19 -14
  36. data/spec/files/export/analysis/0_2_0_template_simpletest.zip +0 -0
  37. data/spec/files/export/analysis/0_3_0_outputs.json +99 -100
  38. data/spec/files/export/analysis/0_3_0_outputs.zip +0 -0
  39. data/spec/files/export/analysis/{6d6a08db-fdf8-4bb5-8ad3-18c471418c72.json → 276ccf51-ed22-4604-a380-8985cec5efe8.json} +103 -104
  40. data/spec/files/export/analysis/{6d6a08db-fdf8-4bb5-8ad3-18c471418c72.zip → 276ccf51-ed22-4604-a380-8985cec5efe8.zip} +0 -0
  41. data/spec/files/export/analysis/{55086845-70cf-487f-87f6-7a147cbf1e72.json → 639cb8a5-cdbb-4b69-955a-cbb650f6872b.json} +107 -108
  42. data/spec/files/export/analysis/{55086845-70cf-487f-87f6-7a147cbf1e72.zip → 639cb8a5-cdbb-4b69-955a-cbb650f6872b.zip} +0 -0
  43. data/spec/files/export/analysis/{10c791ce-cba7-4506-a863-3fb15703889b.json → 9560f95b-5730-4038-a95b-328c825c596b.json} +99 -100
  44. data/spec/files/export/analysis/{10c791ce-cba7-4506-a863-3fb15703889b.zip → 9560f95b-5730-4038-a95b-328c825c596b.zip} +0 -0
  45. data/spec/files/export/analysis/{f028bfbe-e30e-488d-adad-a60a62bbf7e0.json → c50f0062-cdfb-4dec-bc02-215f6c29af3c.json} +107 -108
  46. data/spec/files/export/analysis/{f028bfbe-e30e-488d-adad-a60a62bbf7e0.zip → c50f0062-cdfb-4dec-bc02-215f6c29af3c.zip} +0 -0
  47. data/spec/files/export/analysis/discrete_lhs_example.json +1185 -0
  48. data/spec/files/export/analysis/discrete_lhs_example.zip +0 -0
  49. data/spec/files/export/analysis/small_seed.json +38 -39
  50. data/spec/files/export/analysis/small_seed.zip +0 -0
  51. data/spec/files/export/workflow/analysis.json +23 -0
  52. data/spec/files/measures/ActualMeasureNoJson/measure.json +25 -0
  53. data/spec/files/measures/ActualMeasureNoJson/measure.rb +80 -0
  54. data/spec/files/measures/ActualMeasureNoJson/measure.xml +2 -0
  55. data/spec/files/measures/SetThermostatSchedules/measure.json +63 -0
  56. data/spec/files/measures/SetThermostatSchedules/measure.rb +254 -0
  57. data/spec/files/measures/SetThermostatSchedules/measure.xml +2 -0
  58. data/spec/openstudio/excel_spec.rb +11 -11
  59. data/spec/openstudio/formulation_spec.rb +107 -0
  60. data/spec/openstudio/workflow_spec.rb +90 -0
  61. data/spec/openstudio/workflow_step_spec.rb +116 -0
  62. data/spec/reports/SPEC-OpenStudio-Analysis-Formulation.xml +28 -0
  63. data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-create-a-new-object-instance.xml +2 -2
  64. data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi-test-not-localhost.xml +2 -2
  65. data/spec/reports/SPEC-OpenStudio-Analysis-ServerApi.xml +1 -1
  66. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-variables.xml +30 -4
  67. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-discrete-with-dynamic-columns.xml +11 -3
  68. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-no-variables-defined.xml +6 -6
  69. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup-with-user.xml +2 -2
  70. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-proxy-setup.xml +2 -2
  71. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-output-variables.xml +52 -8
  72. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-setup-version-0-1-9.xml +22 -5
  73. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-incomplete-variables.xml +2 -2
  74. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables-should-not-validate.xml +2 -2
  75. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-of-variables.xml +28 -5
  76. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-small-list-with-with-repeated-variable-names.xml +2 -2
  77. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-1-10.xml +3 -3
  78. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0-simple.xml +13 -6
  79. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-2-0.xml +55 -5
  80. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-dynamic-uuid-assignments.xml +9 -4
  81. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-measure-existence-checks.xml +8 -3
  82. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-0-objective-functions.xml +13 -5
  83. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-3-and-short-display-names.xml +9 -4
  84. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-5-and-measure-paths.xml +9 -4
  85. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-7-and-worker-init-final-scripts.0.xml +40 -2
  86. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel-version-0-3-7-and-worker-init-final-scripts.xml +9 -4
  87. data/spec/reports/SPEC-OpenStudio-Analysis-Translator-Excel.xml +1 -1
  88. data/spec/reports/SPEC-OpenStudio-Analysis-Workflow.xml +31 -0
  89. data/spec/reports/SPEC-OpenStudio-Analysis-WorkflowStep.xml +29 -0
  90. data/spec/spec_helper.rb +1 -1
  91. metadata +87 -18
@@ -0,0 +1,809 @@
1
+ {
2
+ "analysis": {
3
+ "display_name": "LHS Discrete and Continuous Variables",
4
+ "name": "lhs_discrete_and_continuous_variables",
5
+
6
+ "problem": {
7
+ "algorithm": {
8
+ "sample_method": "all_variables",
9
+ "number_of_samples": 5,
10
+ "objective_functions": [
11
+ "standard_report_legacy.total_energy",
12
+ "standard_report_legacy.total_source_energy"
13
+ ]
14
+ },
15
+ "name": "Problem",
16
+ "workflow": [
17
+ {
18
+ "measure_definition_class_name": "ReduceLightingLoadsByPercentage",
19
+ "measure_definition_directory": "./measures/ReduceLightingLoadsByPercentage",
20
+ "measure_definition_display_name": "ReduceLightingLoadsByPercentage",
21
+ "measure_definition_uuid": "78f00128-4fcd-445e-a6b2-829b31992b6d",
22
+ "measure_definition_version_uuid": "6a6c33b0-905e-4848-989c-cf76d61cc9e8",
23
+ "measure_type": "RubyMeasure",
24
+ "arguments": [
25
+ {
26
+ "display_name": "Apply the Measure to a Specific Space Type or to the Entire Model.",
27
+ "display_name_short": "Apply the Measure to a Specific Space Type or to the Entire Model.",
28
+ "name": "space_type",
29
+ "value": "*Entire Building*",
30
+ "value_type": "choice"
31
+ },
32
+ {
33
+ "display_name": "Increase in Material and Installation Cost for Lighting per Floor Area (%).",
34
+ "display_name_short": "Increase in Material and Installation Cost for Lighting per Floor Area (%).",
35
+ "name": "material_and_installation_cost",
36
+ "value": 150.0,
37
+ "value_type": "double"
38
+ },
39
+ {
40
+ "display_name": "Increase in Demolition Costs for Lighting per Floor Area (%).",
41
+ "display_name_short": "Increase in Demolition Costs for Lighting per Floor Area (%).",
42
+ "name": "demolition_cost",
43
+ "value": 0.0,
44
+ "value_type": "double"
45
+ },
46
+ {
47
+ "display_name": "Years Until Costs Start (whole years).",
48
+ "display_name_short": "Years Until Costs Start (whole years).",
49
+ "name": "years_until_costs_start",
50
+ "value": 0,
51
+ "value_type": "integer"
52
+ },
53
+ {
54
+ "display_name": "Demolition Costs Occur During Initial Construction?",
55
+ "display_name_short": "Demolition Costs Occur During Initial Construction?",
56
+ "name": "demo_cost_initial_const",
57
+ "value": false,
58
+ "value_type": "bool"
59
+ },
60
+ {
61
+ "display_name": "Expected Life (whole years).",
62
+ "display_name_short": "Expected Life (whole years).",
63
+ "name": "expected_life",
64
+ "value": 15,
65
+ "value_type": "integer"
66
+ },
67
+ {
68
+ "display_name": "Increase O & M Costs for Lighting per Floor Area (%).",
69
+ "display_name_short": "Increase O & M Costs for Lighting per Floor Area (%).",
70
+ "name": "om_cost",
71
+ "value": 0.0,
72
+ "value_type": "double"
73
+ },
74
+ {
75
+ "display_name": "O & M Frequency (whole years).",
76
+ "display_name_short": "O & M Frequency (whole years).",
77
+ "name": "om_frequency",
78
+ "value": 1,
79
+ "value_type": "integer"
80
+ }
81
+ ],
82
+ "display_name": "Reduce Lighting Loads by Percentage",
83
+ "name": "reduce_lighting_loads_by_percentage",
84
+ "variables": [
85
+ {
86
+ "argument": {
87
+ "display_name": "LPD Reduction",
88
+ "display_name_short": "LPD Reduction",
89
+ "name": "lighting_power_reduction_percent",
90
+ "value_type": "double"
91
+ },
92
+ "display_name": "LPD Reduction",
93
+ "display_name_short": "LPD Reduction",
94
+ "maximum": 70.0,
95
+ "minimum": 0.0,
96
+ "relation_to_output": "",
97
+ "static_value": 0.0,
98
+ "uncertainty_description": {
99
+ "attributes": [
100
+ {
101
+ "name": "lower_bounds",
102
+ "value": 0.0
103
+ },
104
+ {
105
+ "name": "upper_bounds",
106
+ "value": 70.0
107
+ },
108
+ {
109
+ "name": "stddev",
110
+ "value": 11.66666667
111
+ },
112
+ {
113
+ "name": "delta_x",
114
+ "value": null
115
+ },
116
+ {
117
+ "name": "modes",
118
+ "value": 20.0
119
+ }
120
+ ],
121
+ "type": "triangle_uncertain"
122
+ },
123
+ "units": "",
124
+ "value_type": "double",
125
+ "variable": true,
126
+ "variable_type": "RubyContinuousVariable",
127
+ "uuid": "9ba0083b-d7c2-47c8-abfb-ca5767dc0fcc",
128
+ "version_uuid": "34b36609-48b0-4273-a39c-cc2aa87fccdb"
129
+ }
130
+ ],
131
+ "workflow_index": 0,
132
+ "workflow_step_type": "Measure",
133
+ "uuid": "0b6aa51c-4782-4b42-b037-4eeacfa1a731",
134
+ "version_uuid": "f4def2ef-11d5-43a4-9f28-099fe6b3308e"
135
+ },
136
+ {
137
+ "measure_definition_class_name": "RotateBuilding",
138
+ "measure_definition_directory": "./measures/RotateBuilding",
139
+ "measure_definition_display_name": "RotateBuilding",
140
+ "measure_definition_uuid": "ba96677d-824a-482d-9ebe-c27b76e6b64f",
141
+ "measure_definition_version_uuid": "4a2075a4-9e03-4226-a177-5eb1e826d9cd",
142
+ "measure_type": "RubyMeasure",
143
+ "arguments": [
144
+ ],
145
+ "display_name": "Rotate Building Relative to Current Orientation",
146
+ "name": "rotate_building_relative_to_current_orientation",
147
+ "variables": [
148
+ {
149
+ "argument": {
150
+ "display_name": "Rotation",
151
+ "display_name_short": "Rotation",
152
+ "name": "relative_building_rotation",
153
+ "value_type": "double"
154
+ },
155
+ "display_name": "Rotation",
156
+ "display_name_short": "Rotation",
157
+ "maximum": 359.0,
158
+ "minimum": 0.0,
159
+ "relation_to_output": "",
160
+ "static_value": 0.0,
161
+ "uncertainty_description": {
162
+ "attributes": [
163
+ {
164
+ "name": "lower_bounds",
165
+ "value": 0.0
166
+ },
167
+ {
168
+ "name": "upper_bounds",
169
+ "value": 359.0
170
+ },
171
+ {
172
+ "name": "stddev",
173
+ "value": 59.83333333
174
+ },
175
+ {
176
+ "name": "delta_x",
177
+ "value": null
178
+ },
179
+ {
180
+ "name": "modes",
181
+ "value": 180.0
182
+ }
183
+ ],
184
+ "type": "uniform_uncertain"
185
+ },
186
+ "units": "",
187
+ "value_type": "double",
188
+ "variable": true,
189
+ "variable_type": "RubyContinuousVariable",
190
+ "uuid": "e9770de2-acbc-4e55-b540-b771fb5ad8ae",
191
+ "version_uuid": "45698a34-a683-4814-ba98-6a9a2dbb0a24"
192
+ }
193
+ ],
194
+ "workflow_index": 1,
195
+ "workflow_step_type": "Measure",
196
+ "uuid": "ed05ae87-3999-471d-81a0-489bc66bda3a",
197
+ "version_uuid": "f3fbb4b3-8eaa-4005-9bfd-19bf0e698569"
198
+ },
199
+ {
200
+ "measure_definition_class_name": "IncreaseInsulationRValueForExteriorWalls",
201
+ "measure_definition_directory": "./measures/IncreaseInsulationRValueForExteriorWalls",
202
+ "measure_definition_display_name": "IncreaseInsulationRValueForExteriorWalls",
203
+ "measure_definition_uuid": "1ce4be4c-9c7a-4560-9da6-0c97f5f5aa70",
204
+ "measure_definition_version_uuid": "37434096-9031-43f7-a1ab-6a96448d4fae",
205
+ "measure_type": "RubyMeasure",
206
+ "arguments": [
207
+ {
208
+ "display_name": "Increase in Material and Installation Costs for Construction per Area Used ($/ft^2).",
209
+ "display_name_short": "Increase in Material and Installation Costs for Construction per Area Used ($/ft^2).",
210
+ "name": "material_cost_increase_ip",
211
+ "value": 0.0,
212
+ "value_type": "double"
213
+ },
214
+ {
215
+ "display_name": "One Time Retrofit Cost to Add Insulation to Construction ($/ft^2).",
216
+ "display_name_short": "One Time Retrofit Cost to Add Insulation to Construction ($/ft^2).",
217
+ "name": "one_time_retrofit_cost_ip",
218
+ "value": 0.0,
219
+ "value_type": "double"
220
+ },
221
+ {
222
+ "display_name": "Year to Incur One Time Retrofit Cost (whole years).",
223
+ "display_name_short": "Year to Incur One Time Retrofit Cost (whole years).",
224
+ "name": "years_until_retrofit_cost",
225
+ "value": 0,
226
+ "value_type": "integer"
227
+ }
228
+ ],
229
+ "display_name": "Set R-value of Insulation for Exterior Walls to a Specific Value",
230
+ "name": "set_r_value_of_insulation_for_exterior_walls_to_a_specific_value",
231
+ "variables": [
232
+ {
233
+ "argument": {
234
+ "display_name": "Wall R-Value",
235
+ "display_name_short": "Wall R-Value",
236
+ "name": "r_value",
237
+ "value_type": "double"
238
+ },
239
+ "display_name": "Wall R-Value",
240
+ "display_name_short": "Wall R-Value",
241
+ "maximum": 50.0,
242
+ "minimum": 0.0,
243
+ "relation_to_output": "",
244
+ "static_value": 13.0,
245
+ "uncertainty_description": {
246
+ "attributes": [
247
+ {
248
+ "name": "lower_bounds",
249
+ "value": 0.0
250
+ },
251
+ {
252
+ "name": "upper_bounds",
253
+ "value": 50.0
254
+ },
255
+ {
256
+ "name": "stddev",
257
+ "value": 8.333333333
258
+ },
259
+ {
260
+ "name": "delta_x",
261
+ "value": null
262
+ },
263
+ {
264
+ "name": "modes",
265
+ "value": 25.0
266
+ }
267
+ ],
268
+ "type": "normal_uncertain"
269
+ },
270
+ "units": "",
271
+ "value_type": "double",
272
+ "variable": true,
273
+ "variable_type": "RubyContinuousVariable",
274
+ "uuid": "8d6ed73f-8ea0-4c1d-92d8-0fb80f953544",
275
+ "version_uuid": "69c5192a-f5ce-40a0-a442-0c34292397ad"
276
+ }
277
+ ],
278
+ "workflow_index": 2,
279
+ "workflow_step_type": "Measure",
280
+ "uuid": "8559fb4c-a000-4faf-bf55-6f63b0916a2e",
281
+ "version_uuid": "5693c218-b314-4a45-80f2-24bbfe4430f5"
282
+ },
283
+ {
284
+ "measure_definition_class_name": "IncreaseInsulationRValueForRoofs",
285
+ "measure_definition_directory": "./measures/IncreaseInsulationRValueForRoofs",
286
+ "measure_definition_display_name": "IncreaseInsulationRValueForRoofs",
287
+ "measure_definition_uuid": "64c0e15a-d1b0-409f-bbe0-48be29ac0df6",
288
+ "measure_definition_version_uuid": "ac146eb7-a08c-4b6b-8e98-948acaaf826f",
289
+ "measure_type": "RubyMeasure",
290
+ "arguments": [
291
+ {
292
+ "display_name": "Increase in Material and Installation Costs for Construction per Area Used ($/ft^2).",
293
+ "display_name_short": "Increase in Material and Installation Costs for Construction per Area Used ($/ft^2).",
294
+ "name": "material_cost_increase_ip",
295
+ "value": 0.0,
296
+ "value_type": "double"
297
+ },
298
+ {
299
+ "display_name": "One Time Retrofit Cost to Add Insulation to Construction ($/ft^2).",
300
+ "display_name_short": "One Time Retrofit Cost to Add Insulation to Construction ($/ft^2).",
301
+ "name": "one_time_retrofit_cost_ip",
302
+ "value": 0.0,
303
+ "value_type": "double"
304
+ },
305
+ {
306
+ "display_name": "Year to Incur One Time Retrofit Cost (whole years).",
307
+ "display_name_short": "Year to Incur One Time Retrofit Cost (whole years).",
308
+ "name": "years_until_retrofit_cost",
309
+ "value": 0,
310
+ "value_type": "integer"
311
+ }
312
+ ],
313
+ "display_name": "Set R-value of Insulation for Roofs to a Specific Value",
314
+ "name": "set_r_value_of_insulation_for_roofs_to_a_specific_value",
315
+ "variables": [
316
+ {
317
+ "argument": {
318
+ "display_name": "Roof R-Value",
319
+ "display_name_short": "Roof R-Value",
320
+ "name": "r_value",
321
+ "value_type": "double"
322
+ },
323
+ "display_name": "Roof R-Value",
324
+ "display_name_short": "Roof R-Value",
325
+ "maximum": 80.0,
326
+ "minimum": 10.0,
327
+ "relation_to_output": "",
328
+ "static_value": 10.0,
329
+ "uncertainty_description": {
330
+ "attributes": [
331
+ {
332
+ "name": "discrete",
333
+ "values_and_weights": [
334
+ {
335
+ "value": 10,
336
+ "weight": 0.05
337
+ },
338
+ {
339
+ "value": 30,
340
+ "weight": 0.1
341
+ },
342
+ {
343
+ "value": 50,
344
+ "weight": 0.45
345
+ },
346
+ {
347
+ "value": 80,
348
+ "weight": 0.4
349
+ }
350
+ ]
351
+ },
352
+ {
353
+ "name": "lower_bounds",
354
+ "value": 10.0
355
+ },
356
+ {
357
+ "name": "upper_bounds",
358
+ "value": 80.0
359
+ },
360
+ {
361
+ "name": "modes",
362
+ "value": 50.0
363
+ }
364
+ ],
365
+ "type": "discrete_uncertain"
366
+ },
367
+ "units": "",
368
+ "value_type": "double",
369
+ "variable": true,
370
+ "variable_type": "RubyContinuousVariable",
371
+ "uuid": "8af655ff-289d-4529-bbf1-9fc6a9d30304",
372
+ "version_uuid": "c93d0de5-ca58-465b-a47f-3285e7f4ef2f"
373
+ }
374
+ ],
375
+ "workflow_index": 3,
376
+ "workflow_step_type": "Measure",
377
+ "uuid": "8755721d-2d17-4da8-af16-d06cc7631402",
378
+ "version_uuid": "f6832566-5ec6-452b-ae47-f5df142b78ca"
379
+ },
380
+ {
381
+ "measure_definition_class_name": "SetWindowToWallRatioByFacade",
382
+ "measure_definition_directory": "./measures/SetWindowToWallRatioByFacade",
383
+ "measure_definition_display_name": "SetWindowToWallRatioByFacade",
384
+ "measure_definition_uuid": "814c9ba8-3261-4680-b157-8c5d68e7d164",
385
+ "measure_definition_version_uuid": "926c097f-0ee0-4709-823f-ea5aaa6ded7d",
386
+ "measure_type": "RubyMeasure",
387
+ "arguments": [
388
+ {
389
+ "display_name": "Sill Height (in).",
390
+ "display_name_short": "Sill Height (in).",
391
+ "name": "sillHeight",
392
+ "value": 30.0,
393
+ "value_type": "double"
394
+ },
395
+ {
396
+ "display_name": "Cardinal Direction.",
397
+ "display_name_short": "Cardinal Direction.",
398
+ "name": "facade",
399
+ "value": "South",
400
+ "value_type": "choice"
401
+ }
402
+ ],
403
+ "display_name": "Window to Wall Ratio South",
404
+ "name": "window_to_wall_ratio_south",
405
+ "variables": [
406
+ {
407
+ "argument": {
408
+ "display_name": "South WWR",
409
+ "display_name_short": "South WWR",
410
+ "name": "wwr",
411
+ "value_type": "double"
412
+ },
413
+ "display_name": "South WWR",
414
+ "display_name_short": "South WWR",
415
+ "maximum": 0.95,
416
+ "minimum": 0.05,
417
+ "relation_to_output": "",
418
+ "static_value": 0.4,
419
+ "uncertainty_description": {
420
+ "attributes": [
421
+ {
422
+ "name": "lower_bounds",
423
+ "value": 0.05
424
+ },
425
+ {
426
+ "name": "upper_bounds",
427
+ "value": 0.95
428
+ },
429
+ {
430
+ "name": "stddev",
431
+ "value": 0.15
432
+ },
433
+ {
434
+ "name": "delta_x",
435
+ "value": null
436
+ },
437
+ {
438
+ "name": "modes",
439
+ "value": 0.4
440
+ }
441
+ ],
442
+ "type": "triangle_uncertain"
443
+ },
444
+ "units": "",
445
+ "value_type": "double",
446
+ "variable": true,
447
+ "variable_type": "RubyContinuousVariable",
448
+ "uuid": "99273c00-75b5-4fd2-bdd3-47b010f1cf41",
449
+ "version_uuid": "32e948b4-5939-4e51-8531-26ee2eb75056"
450
+ }
451
+ ],
452
+ "workflow_index": 4,
453
+ "workflow_step_type": "Measure",
454
+ "uuid": "a0e0d308-8f41-488d-93f8-f7f77d170794",
455
+ "version_uuid": "143ff609-4142-4275-abe0-bbc15098495d"
456
+ },
457
+ {
458
+ "measure_definition_class_name": "SetWindowToWallRatioByFacade",
459
+ "measure_definition_directory": "./measures/SetWindowToWallRatioByFacade",
460
+ "measure_definition_display_name": "SetWindowToWallRatioByFacade",
461
+ "measure_definition_uuid": "ee7fe83c-5e46-4436-b3cf-9e6601f22686",
462
+ "measure_definition_version_uuid": "100a22b5-7b8c-497f-a1f2-1016639faea8",
463
+ "measure_type": "RubyMeasure",
464
+ "arguments": [
465
+ {
466
+ "display_name": "Sill Height (in).",
467
+ "display_name_short": "Sill Height (in).",
468
+ "name": "sillHeight",
469
+ "value": 30.0,
470
+ "value_type": "double"
471
+ },
472
+ {
473
+ "display_name": "Cardinal Direction.",
474
+ "display_name_short": "Cardinal Direction.",
475
+ "name": "facade",
476
+ "value": "West",
477
+ "value_type": "choice"
478
+ }
479
+ ],
480
+ "display_name": "Window to Wall Ratio West",
481
+ "name": "window_to_wall_ratio_west",
482
+ "variables": [
483
+ {
484
+ "argument": {
485
+ "display_name": "West WWR",
486
+ "display_name_short": "West WWR",
487
+ "name": "wwr",
488
+ "value_type": "double"
489
+ },
490
+ "display_name": "West WWR",
491
+ "display_name_short": "West WWR",
492
+ "maximum": 0.95,
493
+ "minimum": 0.05,
494
+ "relation_to_output": "",
495
+ "static_value": 0.4,
496
+ "uncertainty_description": {
497
+ "attributes": [
498
+ {
499
+ "name": "lower_bounds",
500
+ "value": 0.05
501
+ },
502
+ {
503
+ "name": "upper_bounds",
504
+ "value": 0.95
505
+ },
506
+ {
507
+ "name": "stddev",
508
+ "value": 0.15
509
+ },
510
+ {
511
+ "name": "delta_x",
512
+ "value": null
513
+ },
514
+ {
515
+ "name": "modes",
516
+ "value": 0.4
517
+ }
518
+ ],
519
+ "type": "triangle_uncertain"
520
+ },
521
+ "units": "",
522
+ "value_type": "double",
523
+ "variable": true,
524
+ "variable_type": "RubyContinuousVariable",
525
+ "uuid": "241930b0-0e12-4068-8c54-984db765896a",
526
+ "version_uuid": "34d5d6da-494a-402f-bdb1-bfffb3e55d0d"
527
+ }
528
+ ],
529
+ "workflow_index": 5,
530
+ "workflow_step_type": "Measure",
531
+ "uuid": "d0ced65e-9925-4d4e-8083-b40a9be54688",
532
+ "version_uuid": "a2b9958b-a051-49d9-b552-8a5dd181eef4"
533
+ },
534
+ {
535
+ "measure_definition_class_name": "SetWindowToWallRatioByFacade",
536
+ "measure_definition_directory": "./measures/SetWindowToWallRatioByFacade",
537
+ "measure_definition_display_name": "SetWindowToWallRatioByFacade",
538
+ "measure_definition_uuid": "6335d2bc-2c42-4ab7-a094-fc80edc52ae2",
539
+ "measure_definition_version_uuid": "49845f5d-b6f3-43b4-a60c-1fb457b7d4fc",
540
+ "measure_type": "RubyMeasure",
541
+ "arguments": [
542
+ {
543
+ "display_name": "Sill Height (in).",
544
+ "display_name_short": "Sill Height (in).",
545
+ "name": "sillHeight",
546
+ "value": 30.0,
547
+ "value_type": "double"
548
+ },
549
+ {
550
+ "display_name": "Cardinal Direction.",
551
+ "display_name_short": "Cardinal Direction.",
552
+ "name": "facade",
553
+ "value": "East",
554
+ "value_type": "choice"
555
+ }
556
+ ],
557
+ "display_name": "Window to Wall Ratio East",
558
+ "name": "window_to_wall_ratio_east",
559
+ "variables": [
560
+ {
561
+ "argument": {
562
+ "display_name": "East WWR",
563
+ "display_name_short": "East WWR",
564
+ "name": "wwr",
565
+ "value_type": "double"
566
+ },
567
+ "display_name": "East WWR",
568
+ "display_name_short": "East WWR",
569
+ "maximum": 0.95,
570
+ "minimum": 0.05,
571
+ "relation_to_output": "",
572
+ "static_value": 0.4,
573
+ "uncertainty_description": {
574
+ "attributes": [
575
+ {
576
+ "name": "lower_bounds",
577
+ "value": 0.05
578
+ },
579
+ {
580
+ "name": "upper_bounds",
581
+ "value": 0.95
582
+ },
583
+ {
584
+ "name": "stddev",
585
+ "value": 0.15
586
+ },
587
+ {
588
+ "name": "delta_x",
589
+ "value": null
590
+ },
591
+ {
592
+ "name": "modes",
593
+ "value": 0.4
594
+ }
595
+ ],
596
+ "type": "triangle_uncertain"
597
+ },
598
+ "units": "",
599
+ "value_type": "double",
600
+ "variable": true,
601
+ "variable_type": "RubyContinuousVariable",
602
+ "uuid": "e3b2d43b-25dc-41fd-8ae7-57c225765009",
603
+ "version_uuid": "932aea3c-b41e-45f0-9e93-762275921ecc"
604
+ }
605
+ ],
606
+ "workflow_index": 6,
607
+ "workflow_step_type": "Measure",
608
+ "uuid": "6787736c-a20b-4d86-ada3-623574f82c70",
609
+ "version_uuid": "cce67243-9c17-405f-a759-d0db4d8b540c"
610
+ },
611
+ {
612
+ "measure_definition_class_name": "AddOverhangsByProjectionFactor",
613
+ "measure_definition_directory": "./measures/AddOverhangsByProjectionFactor",
614
+ "measure_definition_display_name": "AddOverhangsByProjectionFactor",
615
+ "measure_definition_uuid": "cf84938f-4084-474c-ac72-c9fb135e6592",
616
+ "measure_definition_version_uuid": "931bb4a7-12d3-4465-9c9e-eff7b1ff2656",
617
+ "measure_type": "RubyMeasure",
618
+ "arguments": [
619
+ {
620
+ "display_name": "Cardinal Direction",
621
+ "display_name_short": "Cardinal Direction",
622
+ "name": "facade",
623
+ "value": "South",
624
+ "value_type": "choice"
625
+ },
626
+ {
627
+ "display_name": "Remove Existing Space Shading Surfaces From the Model?",
628
+ "display_name_short": "Remove Existing Space Shading Surfaces From the Model?",
629
+ "name": "remove_ext_space_shading",
630
+ "value": false,
631
+ "value_type": "bool"
632
+ }
633
+ ],
634
+ "display_name": "Overhangs PF South",
635
+ "name": "overhangs_pf_south",
636
+ "variables": [
637
+ {
638
+ "argument": {
639
+ "display_name": "South Projection Factor",
640
+ "display_name_short": "South PF",
641
+ "name": "projection_factor",
642
+ "value_type": "double"
643
+ },
644
+ "display_name": "South Projection Factor",
645
+ "display_name_short": "South PF",
646
+ "maximum": 1.0,
647
+ "minimum": 0.0,
648
+ "relation_to_output": "",
649
+ "static_value": 0.0,
650
+ "uncertainty_description": {
651
+ "attributes": [
652
+ {
653
+ "name": "lower_bounds",
654
+ "value": 0.0
655
+ },
656
+ {
657
+ "name": "upper_bounds",
658
+ "value": 1.0
659
+ },
660
+ {
661
+ "name": "stddev",
662
+ "value": 0.133333333
663
+ },
664
+ {
665
+ "name": "delta_x",
666
+ "value": null
667
+ },
668
+ {
669
+ "name": "modes",
670
+ "value": 0.5
671
+ }
672
+ ],
673
+ "type": "uniform_uncertain"
674
+ },
675
+ "units": "",
676
+ "value_type": "double",
677
+ "variable": true,
678
+ "variable_type": "RubyContinuousVariable",
679
+ "uuid": "173d60e5-9ec8-4abe-b881-db33217d1ec8",
680
+ "version_uuid": "32cbd0c8-383f-4e95-8489-d6b9329f33e1"
681
+ }
682
+ ],
683
+ "workflow_index": 7,
684
+ "workflow_step_type": "Measure",
685
+ "uuid": "4bfd0cd7-5644-40dd-b539-128025930c62",
686
+ "version_uuid": "03437c07-fc57-4dcb-aea5-d65ff5adcfd1"
687
+ },
688
+ {
689
+ "measure_definition_class_name": "AddOverhangsByProjectionFactor",
690
+ "measure_definition_directory": "./measures/AddOverhangsByProjectionFactor",
691
+ "measure_definition_display_name": "AddOverhangsByProjectionFactor",
692
+ "measure_definition_uuid": "cd2538f4-1211-46ea-a3c2-f2af2c78c4c2",
693
+ "measure_definition_version_uuid": "12346d51-cecc-485f-8453-4da6f2059bdb",
694
+ "measure_type": "RubyMeasure",
695
+ "arguments": [
696
+ {
697
+ "display_name": "Cardinal Direction",
698
+ "display_name_short": "Cardinal Direction",
699
+ "name": "facade",
700
+ "value": "East",
701
+ "value_type": "choice"
702
+ },
703
+ {
704
+ "display_name": "Remove Existing Space Shading Surfaces From the Model?",
705
+ "display_name_short": "Remove Existing Space Shading Surfaces From the Model?",
706
+ "name": "remove_ext_space_shading",
707
+ "value": false,
708
+ "value_type": "bool"
709
+ }
710
+ ],
711
+ "display_name": "Overhangs PF East",
712
+ "name": "overhangs_pf_east",
713
+ "variables": [
714
+ {
715
+ "argument": {
716
+ "display_name": "East Projection Factor",
717
+ "display_name_short": "East PF",
718
+ "name": "projection_factor",
719
+ "value_type": "double"
720
+ },
721
+ "display_name": "East Projection Factor",
722
+ "display_name_short": "East PF",
723
+ "maximum": 1.0,
724
+ "minimum": 0.0,
725
+ "relation_to_output": "",
726
+ "static_value": 0.0,
727
+ "uncertainty_description": {
728
+ "attributes": [
729
+ {
730
+ "name": "lower_bounds",
731
+ "value": 0.0
732
+ },
733
+ {
734
+ "name": "upper_bounds",
735
+ "value": 1.0
736
+ },
737
+ {
738
+ "name": "stddev",
739
+ "value": 0.133333333
740
+ },
741
+ {
742
+ "name": "delta_x",
743
+ "value": null
744
+ },
745
+ {
746
+ "name": "modes",
747
+ "value": 0.5
748
+ }
749
+ ],
750
+ "type": "uniform_uncertain"
751
+ },
752
+ "units": "",
753
+ "value_type": "double",
754
+ "variable": true,
755
+ "variable_type": "RubyContinuousVariable",
756
+ "uuid": "fc42904c-ddaa-4108-8799-7b9764b271ab",
757
+ "version_uuid": "f99a24a9-d15c-40bf-ac92-430dff02e56c"
758
+ }
759
+ ],
760
+ "workflow_index": 8,
761
+ "workflow_step_type": "Measure",
762
+ "uuid": "679a9f82-bc06-4114-93ae-554523367f2c",
763
+ "version_uuid": "aa7a5e67-720f-47cd-880c-a242e30049c6"
764
+ },
765
+ {
766
+ "measure_definition_class_name": "XcelEDATariffSelectionandModelSetup",
767
+ "measure_definition_directory": "./measures/XcelEDATariffSelectionandModelSetup",
768
+ "measure_definition_display_name": "XcelEDATariffSelectionandModelSetup",
769
+ "measure_definition_uuid": "03259e4e-2c5c-463f-97c0-59b6628eda31",
770
+ "measure_definition_version_uuid": "86c49807-5fd2-45f4-966c-95e1d76e489c",
771
+ "measure_type": "EnergyPlusMeasure",
772
+ "arguments": [
773
+ {
774
+ "display_name": "Select an Electricity Tariff.",
775
+ "display_name_short": "Select an Electricity Tariff.",
776
+ "name": "elec_tar",
777
+ "value": "Secondary General",
778
+ "value_type": "choice"
779
+ },
780
+ {
781
+ "display_name": "Select a Gas Tariff.",
782
+ "display_name_short": "Select a Gas Tariff.",
783
+ "name": "gas_tar",
784
+ "value": "Large CG",
785
+ "value_type": "choice"
786
+ }
787
+ ],
788
+ "display_name": "Xcel EDA Tariff Selection and Model Setup",
789
+ "name": "xcel_eda_tariff_selection_and_model_setup",
790
+ "variables": [
791
+ ],
792
+ "workflow_index": 9,
793
+ "workflow_step_type": "Measure",
794
+ "uuid": "02c5ad9b-7594-4586-bb95-c21f938327a7",
795
+ "version_uuid": "fb04c295-7664-43ff-a99e-fd20f5d9db8f"
796
+ }
797
+ ],
798
+ "analysis_type": "lhs"
799
+ },
800
+ "seed": {
801
+ "file_type": "OSM",
802
+ "path": "./seed/seed.osm"
803
+ },
804
+ "weather_file": {
805
+ "file_type": "EPW",
806
+ "path": "./weather/USA_CO_Denver.Intl.AP.725650_TMY3.epw"
807
+ }
808
+ }
809
+ }