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,632 @@
1
+ {
2
+ "analysis": {
3
+ "display_name": "output_vars",
4
+ "name": "output_vars",
5
+ "output_variables": [
6
+ {
7
+ "units": "MJ/m2",
8
+ "objective_function": true,
9
+ "objective_function_index": 0,
10
+ "objective_function_target": 462.1635,
11
+ "objective_function_group": "TRUE",
12
+ "scaling_factor": null,
13
+ "display_name": "Heating Natural Gas",
14
+ "display_name_short": "Heating Natural Gas",
15
+ "metadata_id": null,
16
+ "name": "heating_natural_gas"
17
+ },
18
+ {
19
+ "units": "MJ/m3",
20
+ "objective_function": true,
21
+ "objective_function_index": 1,
22
+ "objective_function_target": 84.16202,
23
+ "objective_function_group": "TRUE",
24
+ "scaling_factor": null,
25
+ "display_name": "Cooling Electricity",
26
+ "display_name_short": "Cooling Electricity",
27
+ "metadata_id": null,
28
+ "name": "Cooling Electricity"
29
+ },
30
+ {
31
+ "units": "MJ/m4",
32
+ "objective_function": true,
33
+ "objective_function_index": 2,
34
+ "objective_function_target": 121.9985,
35
+ "objective_function_group": "TRUE",
36
+ "scaling_factor": null,
37
+ "display_name": "Interior Equipment Electricity",
38
+ "display_name_short": "Interior Equipment Electricity",
39
+ "metadata_id": null,
40
+ "name": "Interior Equipment Electricity"
41
+ },
42
+ {
43
+ "units": "MJ/m5",
44
+ "objective_function": true,
45
+ "objective_function_index": 3,
46
+ "objective_function_target": 87.92142,
47
+ "objective_function_group": "TRUE",
48
+ "scaling_factor": null,
49
+ "display_name": "Fans Electricity",
50
+ "display_name_short": "Fans Electricity",
51
+ "metadata_id": null,
52
+ "name": "fans_electricity"
53
+ }
54
+ ],
55
+ "problem": {
56
+ "analysis_type": null,
57
+ "algorithm": {
58
+ "objective_functions": [
59
+ "heating_natural_gas",
60
+ "Cooling Electricity",
61
+ "Interior Equipment Electricity",
62
+ "fans_electricity"
63
+ ]
64
+ },
65
+ "workflow": [
66
+ {
67
+ "name": "reduce_lighting_loads_by_percentage",
68
+ "display_name": "Reduce Lighting Loads by Percentage",
69
+ "measure_type": "RubyMeasure",
70
+ "measure_definition_class_name": "ReduceLightingLoadsByPercentage",
71
+ "measure_definition_directory": "./spec/files/measures/reduce_lighting_loads_by_percentage",
72
+ "measure_definition_display_name": "Reduce Lighting Loads by Percentage",
73
+ "measure_definition_name": "reduce_lighting_loads_by_percentage",
74
+ "measure_definition_name_xml": null,
75
+ "measure_definition_uuid": "960684ca-58b5-45d1-87ed-78ca1b8d8cd2",
76
+ "measure_definition_version_uuid": "76804640-b708-409e-b157-fd4461db4d7a",
77
+ "arguments": [
78
+ {
79
+ "display_name": "Apply the Measure to a Specific Space Type or to the Entire Model.",
80
+ "display_name_short": "Apply the Measure to a Specific Space Type or to the Entire Model.",
81
+ "name": "space_type",
82
+ "value_type": "string",
83
+ "default_value": "*Entire Building*",
84
+ "value": "*Entire Building*"
85
+ },
86
+ {
87
+ "display_name": "Increase in Material and Installation Cost for Lighting per Floor Area (%).",
88
+ "display_name_short": "Increase in Material and Installation Cost for Lighting per Floor Area (%).",
89
+ "name": "material_and_installation_cost",
90
+ "value_type": "double",
91
+ "default_value": 0.0,
92
+ "value": 0.0
93
+ },
94
+ {
95
+ "display_name": "Increase in Demolition Costs for Lighting per Floor Area (%).",
96
+ "display_name_short": "Increase in Demolition Costs for Lighting per Floor Area (%).",
97
+ "name": "demolition_cost",
98
+ "value_type": "double",
99
+ "default_value": 0.0,
100
+ "value": 0.0
101
+ },
102
+ {
103
+ "display_name": "Years Until Costs Start (whole years).",
104
+ "display_name_short": "Years Until Costs Start (whole years).",
105
+ "name": "years_until_costs_start",
106
+ "value_type": "integer",
107
+ "default_value": 0,
108
+ "value": 0
109
+ },
110
+ {
111
+ "display_name": "Demolition Costs Occur During Initial Construction?",
112
+ "display_name_short": "Demolition Costs Occur During Initial Construction?",
113
+ "name": "demo_cost_initial_const",
114
+ "value_type": "bool",
115
+ "default_value": true,
116
+ "value": true
117
+ },
118
+ {
119
+ "display_name": "Expected Life (whole years).",
120
+ "display_name_short": "Expected Life (whole years).",
121
+ "name": "expected_life",
122
+ "value_type": "integer",
123
+ "default_value": 15,
124
+ "value": 15
125
+ },
126
+ {
127
+ "display_name": "Increase O & M Costs for Lighting per Floor Area (%).",
128
+ "display_name_short": "Increase O & M Costs for Lighting per Floor Area (%).",
129
+ "name": "om_cost",
130
+ "value_type": "double",
131
+ "default_value": 0.0,
132
+ "value": 0.0
133
+ },
134
+ {
135
+ "display_name": "O & M Frequency (whole years).",
136
+ "display_name_short": "O & M Frequency (whole years).",
137
+ "name": "om_frequency",
138
+ "value_type": "integer",
139
+ "default_value": 1,
140
+ "value": 1
141
+ }
142
+ ],
143
+ "variables": [
144
+ {
145
+ "argument": {
146
+ "display_name": "Lighting Power Reduction",
147
+ "display_name_short": "Lighting Power Reduction",
148
+ "name": "lighting_power_reduction_percent",
149
+ "value_type": "double",
150
+ "default_value": 30.0,
151
+ "value": 30.0
152
+ },
153
+ "display_name": "Lighting Power Reduction",
154
+ "display_name_short": "Lighting Power Reduction",
155
+ "units": null,
156
+ "minimum": 0.0,
157
+ "maximum": 50.0,
158
+ "relation_to_output": null,
159
+ "uuid": "ce464c62-98a7-461b-99e7-a74a36d26772",
160
+ "version_uuid": "7e341ad8-7748-4476-9849-8faed9a6b93f",
161
+ "variable": true,
162
+ "static_value": 30.0,
163
+ "uncertainty_description": {
164
+ "type": "triangle_uncertain",
165
+ "attributes": [
166
+ {
167
+ "name": "lower_bounds",
168
+ "value": 0.0
169
+ },
170
+ {
171
+ "name": "upper_bounds",
172
+ "value": 50.0
173
+ },
174
+ {
175
+ "name": "modes",
176
+ "value": 40.0
177
+ },
178
+ {
179
+ "name": "delta_x",
180
+ "value": null
181
+ },
182
+ {
183
+ "name": "stddev",
184
+ "value": null
185
+ }
186
+ ]
187
+ },
188
+ "workflow_index": 0
189
+ }
190
+ ],
191
+ "workflow_index": 0
192
+ },
193
+ {
194
+ "name": "reducespaceinfiltrationbypercentage",
195
+ "display_name": "ReduceSpaceInfiltrationByPercentage",
196
+ "measure_type": "RubyMeasure",
197
+ "measure_definition_class_name": "ExampleMeasureAutoDirectoryName",
198
+ "measure_definition_directory": "./spec/files/measures/example_measure_auto_directory_name",
199
+ "measure_definition_display_name": "ReduceSpaceInfiltrationByPercentage",
200
+ "measure_definition_name": "reducespaceinfiltrationbypercentage",
201
+ "measure_definition_name_xml": null,
202
+ "measure_definition_uuid": "3bc5ea2b-83dc-4c49-9f52-38610d34d060",
203
+ "measure_definition_version_uuid": "68f08cd0-19fa-48e4-98b3-f0d2a942c7ba",
204
+ "arguments": [
205
+ {
206
+ "display_name": "Apply the Measure to a Specific Space Type or to the Entire Model.",
207
+ "display_name_short": "Apply the Measure to a Specific Space Type or to the Entire Model.",
208
+ "name": "space_type",
209
+ "value_type": "string",
210
+ "default_value": "*Entire Building*",
211
+ "value": "*Entire Building*"
212
+ },
213
+ {
214
+ "display_name": "Increase in Material and Installation Costs for Building per Affected Floor Area ($/ft^2).",
215
+ "display_name_short": "Increase in Material and Installation Costs for Building per Affected Floor Area ($/ft^2).",
216
+ "name": "material_and_installation_cost",
217
+ "value_type": "double",
218
+ "default_value": 0.0,
219
+ "value": 0.0
220
+ },
221
+ {
222
+ "display_name": "O & M Costs for Construction per Affected Floor Area ($/ft^2).",
223
+ "display_name_short": "O & M Costs for Construction per Affected Floor Area ($/ft^2).",
224
+ "name": "om_cost",
225
+ "value_type": "double",
226
+ "default_value": 0.0,
227
+ "value": 0.0
228
+ },
229
+ {
230
+ "display_name": "O & M Frequency (whole years).",
231
+ "display_name_short": "O & M Frequency (whole years).",
232
+ "name": "om_frequency",
233
+ "value_type": "integer",
234
+ "default_value": 1,
235
+ "value": 1
236
+ }
237
+ ],
238
+ "variables": [
239
+ {
240
+ "argument": {
241
+ "display_name": "Space Infiltration Power Reduction",
242
+ "display_name_short": "Space Infiltration Power Reduction",
243
+ "name": "space_infiltration_reduction_percent",
244
+ "value_type": "double",
245
+ "default_value": 30.0,
246
+ "value": 30.0
247
+ },
248
+ "display_name": "Space Infiltration Power Reduction",
249
+ "display_name_short": "Space Infiltration Power Reduction",
250
+ "units": null,
251
+ "minimum": 0.0,
252
+ "maximum": 30.0,
253
+ "relation_to_output": null,
254
+ "uuid": "9db3d0f0-1f87-41ac-bedb-52c83a726a06",
255
+ "version_uuid": "4a72269e-1e42-4596-ae98-3172cb08ef60",
256
+ "variable": true,
257
+ "static_value": 30.0,
258
+ "uncertainty_description": {
259
+ "type": "uniform_uncertain",
260
+ "attributes": [
261
+ {
262
+ "name": "lower_bounds",
263
+ "value": 0.0
264
+ },
265
+ {
266
+ "name": "upper_bounds",
267
+ "value": 30.0
268
+ },
269
+ {
270
+ "name": "modes",
271
+ "value": 10.0
272
+ }
273
+ ]
274
+ },
275
+ "workflow_index": 0
276
+ }
277
+ ],
278
+ "workflow_index": 1
279
+ },
280
+ {
281
+ "name": "adjust_thermostat_setpoints_by_degrees",
282
+ "display_name": "Adjust Thermostat Setpoints by Degrees",
283
+ "measure_type": "RubyMeasure",
284
+ "measure_definition_class_name": "ExampleMeasureAutoDirectoryName",
285
+ "measure_definition_directory": "./spec/files/measures/example_measure_auto_directory_name",
286
+ "measure_definition_display_name": "Adjust Thermostat Setpoints by Degrees",
287
+ "measure_definition_name": "adjust_thermostat_setpoints_by_degrees",
288
+ "measure_definition_name_xml": null,
289
+ "measure_definition_uuid": "9bfe223a-c588-4a6d-85bd-a1da657184eb",
290
+ "measure_definition_version_uuid": "d31bd0e5-a686-4085-9fce-6f7e30148aa0",
291
+ "arguments": [
292
+ {
293
+ "display_name": "Alter Design Day Thermostats?",
294
+ "display_name_short": "Alter Design Day Thermostats?",
295
+ "name": "alter_design_days",
296
+ "value_type": "bool",
297
+ "default_value": false,
298
+ "value": false
299
+ }
300
+ ],
301
+ "variables": [
302
+ {
303
+ "argument": {
304
+ "display_name": "Degrees Fahrenheit to Adjust Cooling Setpoint By.",
305
+ "display_name_short": "Degrees Fahrenheit to Adjust Cooling Setpoint By.",
306
+ "name": "cooling_adjustment",
307
+ "value_type": "double",
308
+ "default_value": 1.0,
309
+ "value": 1.0
310
+ },
311
+ "display_name": "Degrees Fahrenheit to Adjust Cooling Setpoint By.",
312
+ "display_name_short": "Degrees Fahrenheit to Adjust Cooling Setpoint By.",
313
+ "units": null,
314
+ "minimum": -4.0,
315
+ "maximum": 4.0,
316
+ "relation_to_output": null,
317
+ "uuid": "52ac2f7e-3d3e-4cf2-a5b0-e7250bf34067",
318
+ "version_uuid": "95ffa318-6b88-42ac-8bac-7084ec9f48dc",
319
+ "variable": true,
320
+ "static_value": 1.0,
321
+ "uncertainty_description": {
322
+ "type": "uniform_uncertain",
323
+ "attributes": [
324
+ {
325
+ "name": "lower_bounds",
326
+ "value": -4.0
327
+ },
328
+ {
329
+ "name": "upper_bounds",
330
+ "value": 4.0
331
+ },
332
+ {
333
+ "name": "modes",
334
+ "value": 0.0
335
+ }
336
+ ]
337
+ },
338
+ "workflow_index": 0
339
+ },
340
+ {
341
+ "argument": {
342
+ "display_name": "Degrees Fahrenheit to Adjust heating Setpoint By.",
343
+ "display_name_short": "Degrees Fahrenheit to Adjust heating Setpoint By.",
344
+ "name": "heating_adjustment",
345
+ "value_type": "double",
346
+ "default_value": -1.0,
347
+ "value": -1.0
348
+ },
349
+ "display_name": "Degrees Fahrenheit to Adjust heating Setpoint By.",
350
+ "display_name_short": "Degrees Fahrenheit to Adjust heating Setpoint By.",
351
+ "units": null,
352
+ "minimum": -4.0,
353
+ "maximum": 4.0,
354
+ "relation_to_output": null,
355
+ "uuid": "97ce3812-d063-4c4f-a78e-596a71591e42",
356
+ "version_uuid": "247cf438-c502-4c9b-81c5-640a731e707f",
357
+ "variable": true,
358
+ "static_value": -1.0,
359
+ "uncertainty_description": {
360
+ "type": "uniform_uncertain",
361
+ "attributes": [
362
+ {
363
+ "name": "lower_bounds",
364
+ "value": -4.0
365
+ },
366
+ {
367
+ "name": "upper_bounds",
368
+ "value": 4.0
369
+ },
370
+ {
371
+ "name": "modes",
372
+ "value": 0.0
373
+ }
374
+ ]
375
+ },
376
+ "workflow_index": 1
377
+ }
378
+ ],
379
+ "workflow_index": 2
380
+ },
381
+ {
382
+ "name": "set_r_value_of_insulation_for_exterior_walls_to_a_specific_value",
383
+ "display_name": "Set R-value of Insulation for Exterior Walls to a Specific Value",
384
+ "measure_type": "RubyMeasure",
385
+ "measure_definition_class_name": "ExampleMeasureAutoDirectoryName",
386
+ "measure_definition_directory": "./spec/files/measures/example_measure_auto_directory_name",
387
+ "measure_definition_display_name": "Set R-value of Insulation for Exterior Walls to a Specific Value",
388
+ "measure_definition_name": "set_r_value_of_insulation_for_exterior_walls_to_a_specific_value",
389
+ "measure_definition_name_xml": null,
390
+ "measure_definition_uuid": "89eba072-6356-4454-a2b2-d094fa135106",
391
+ "measure_definition_version_uuid": "9aed692a-330f-436f-92a3-1e3d21af97a3",
392
+ "arguments": [
393
+ {
394
+ "display_name": "Increase in Material and Installation Costs for Construction per Area Used ($/ft^2).",
395
+ "display_name_short": "Increase in Material and Installation Costs for Construction per Area Used ($/ft^2).",
396
+ "name": "material_cost_increase_ip",
397
+ "value_type": "double",
398
+ "default_value": 0.0,
399
+ "value": 0.0
400
+ },
401
+ {
402
+ "display_name": "One Time Retrofit Cost to Add Insulation to Construction ($/ft^2).",
403
+ "display_name_short": "One Time Retrofit Cost to Add Insulation to Construction ($/ft^2).",
404
+ "name": "one_time_retrofit_cost_ip",
405
+ "value_type": "double",
406
+ "default_value": 0.0,
407
+ "value": 0.0
408
+ },
409
+ {
410
+ "display_name": "Year to Incur One Time Retrofit Cost (whole years).",
411
+ "display_name_short": "Year to Incur One Time Retrofit Cost (whole years).",
412
+ "name": "years_until_retrofit_cost",
413
+ "value_type": "integer",
414
+ "default_value": 0,
415
+ "value": 0
416
+ }
417
+ ],
418
+ "variables": [
419
+ {
420
+ "argument": {
421
+ "display_name": "Wall R Value",
422
+ "display_name_short": "Wall R Value",
423
+ "name": "r_value",
424
+ "value_type": "double",
425
+ "default_value": 5.0,
426
+ "value": 5.0
427
+ },
428
+ "display_name": "Wall R Value",
429
+ "display_name_short": "Wall R Value",
430
+ "units": null,
431
+ "minimum": 0.0,
432
+ "maximum": 5.0,
433
+ "relation_to_output": null,
434
+ "uuid": "1eaac058-0260-4e09-bf9f-e2b58ca37a46",
435
+ "version_uuid": "32ebc497-1fbb-4b86-888a-5ec1014289d9",
436
+ "variable": true,
437
+ "static_value": 5.0,
438
+ "uncertainty_description": {
439
+ "type": "triangle_uncertain",
440
+ "attributes": [
441
+ {
442
+ "name": "lower_bounds",
443
+ "value": 0.0
444
+ },
445
+ {
446
+ "name": "upper_bounds",
447
+ "value": 5.0
448
+ },
449
+ {
450
+ "name": "modes",
451
+ "value": 2.5
452
+ },
453
+ {
454
+ "name": "delta_x",
455
+ "value": null
456
+ },
457
+ {
458
+ "name": "stddev",
459
+ "value": null
460
+ }
461
+ ]
462
+ },
463
+ "workflow_index": 0
464
+ }
465
+ ],
466
+ "workflow_index": 3
467
+ },
468
+ {
469
+ "name": "set_r_value_of_insulation_for_roofs_to_a_specific_value",
470
+ "display_name": "Set R-value of Insulation for Roofs to a Specific Value",
471
+ "measure_type": "RubyMeasure",
472
+ "measure_definition_class_name": "ExampleMeasureAutoDirectoryName",
473
+ "measure_definition_directory": "./spec/files/measures/example_measure_auto_directory_name",
474
+ "measure_definition_display_name": "Set R-value of Insulation for Roofs to a Specific Value",
475
+ "measure_definition_name": "set_r_value_of_insulation_for_roofs_to_a_specific_value",
476
+ "measure_definition_name_xml": null,
477
+ "measure_definition_uuid": "e6cb3bd9-eddf-4a6a-a210-945b0633146b",
478
+ "measure_definition_version_uuid": "f8b28d56-c78e-48db-9967-ac76998949f5",
479
+ "arguments": [
480
+ {
481
+ "display_name": "Increase in Material and Installation Costs for Construction per Area Used ($/ft^2).",
482
+ "display_name_short": "Increase in Material and Installation Costs for Construction per Area Used ($/ft^2).",
483
+ "name": "material_cost_increase_ip",
484
+ "value_type": "double",
485
+ "default_value": 0.0,
486
+ "value": 0.0
487
+ },
488
+ {
489
+ "display_name": "One Time Retrofit Cost to Add Insulation to Construction ($/ft^2).",
490
+ "display_name_short": "One Time Retrofit Cost to Add Insulation to Construction ($/ft^2).",
491
+ "name": "one_time_retrofit_cost_ip",
492
+ "value_type": "double",
493
+ "default_value": 0.0,
494
+ "value": 0.0
495
+ },
496
+ {
497
+ "display_name": "Year to Incur One Time Retrofit Cost (whole years).",
498
+ "display_name_short": "Year to Incur One Time Retrofit Cost (whole years).",
499
+ "name": "years_until_retrofit_cost",
500
+ "value_type": "integer",
501
+ "default_value": 0,
502
+ "value": 0
503
+ }
504
+ ],
505
+ "variables": [
506
+ {
507
+ "argument": {
508
+ "display_name": "Roof R Value",
509
+ "display_name_short": "Roof R Value",
510
+ "name": "r_value",
511
+ "value_type": "double",
512
+ "default_value": 5.0,
513
+ "value": 5.0
514
+ },
515
+ "display_name": "Roof R Value",
516
+ "display_name_short": "Roof R Value",
517
+ "units": null,
518
+ "minimum": 0.0,
519
+ "maximum": 5.0,
520
+ "relation_to_output": null,
521
+ "uuid": "80cd9951-d7d5-4f75-b6a7-e525e7416bcd",
522
+ "version_uuid": "901987a2-eeb6-4474-9348-d18152ed9175",
523
+ "variable": true,
524
+ "static_value": 5.0,
525
+ "uncertainty_description": {
526
+ "type": "triangle_uncertain",
527
+ "attributes": [
528
+ {
529
+ "name": "lower_bounds",
530
+ "value": 0.0
531
+ },
532
+ {
533
+ "name": "upper_bounds",
534
+ "value": 5.0
535
+ },
536
+ {
537
+ "name": "modes",
538
+ "value": 2.5
539
+ },
540
+ {
541
+ "name": "delta_x",
542
+ "value": null
543
+ },
544
+ {
545
+ "name": "stddev",
546
+ "value": null
547
+ }
548
+ ]
549
+ },
550
+ "workflow_index": 0
551
+ }
552
+ ],
553
+ "workflow_index": 4
554
+ },
555
+ {
556
+ "name": "reduce_ventilation_by_percentage",
557
+ "display_name": "Reduce Ventilation By Percentage",
558
+ "measure_type": "RubyMeasure",
559
+ "measure_definition_class_name": "ExampleMeasureAutoDirectoryName",
560
+ "measure_definition_directory": "./spec/files/measures/example_measure_auto_directory_name",
561
+ "measure_definition_display_name": "Reduce Ventilation By Percentage",
562
+ "measure_definition_name": "reduce_ventilation_by_percentage",
563
+ "measure_definition_name_xml": null,
564
+ "measure_definition_uuid": "55179ee7-e4f4-4bba-9f33-31ad5bd96b86",
565
+ "measure_definition_version_uuid": "b208ecf6-6c50-4dfb-b317-c8086829de65",
566
+ "arguments": [
567
+ {
568
+ "display_name": "Apply the Measure to a Specific Space Type or to the Entire Model.",
569
+ "display_name_short": "Apply the Measure to a Specific Space Type or to the Entire Model.",
570
+ "name": "space_type",
571
+ "value_type": "string",
572
+ "default_value": "*Entire Building*",
573
+ "value": "*Entire Building*"
574
+ }
575
+ ],
576
+ "variables": [
577
+ {
578
+ "argument": {
579
+ "display_name": "Design Specification Outdoor Air Reduction (%).",
580
+ "display_name_short": "Design Specification Outdoor Air Reduction (%).",
581
+ "name": "design_spec_outdoor_air_reduction_percent",
582
+ "value_type": "double",
583
+ "default_value": 0.0,
584
+ "value": 0.0
585
+ },
586
+ "display_name": "Design Specification Outdoor Air Reduction (%).",
587
+ "display_name_short": "Design Specification Outdoor Air Reduction (%).",
588
+ "units": null,
589
+ "minimum": 0.0,
590
+ "maximum": 90.0,
591
+ "relation_to_output": null,
592
+ "uuid": "e238bd2b-32b1-4582-a589-6421d24ce07c",
593
+ "version_uuid": "63ac46c3-0f7d-424b-9d60-324b91ca0edd",
594
+ "variable": true,
595
+ "static_value": 0.0,
596
+ "uncertainty_description": {
597
+ "type": "triangle_uncertain",
598
+ "attributes": [
599
+ {
600
+ "name": "lower_bounds",
601
+ "value": 0.0
602
+ },
603
+ {
604
+ "name": "upper_bounds",
605
+ "value": 90.0
606
+ },
607
+ {
608
+ "name": "modes",
609
+ "value": 20.0
610
+ },
611
+ {
612
+ "name": "delta_x",
613
+ "value": null
614
+ },
615
+ {
616
+ "name": "stddev",
617
+ "value": null
618
+ }
619
+ ]
620
+ },
621
+ "workflow_index": 0
622
+ }
623
+ ],
624
+ "workflow_index": 5
625
+ }
626
+ ]
627
+ },
628
+ "seed": null,
629
+ "weather_file": null,
630
+ "file_format_version": 1
631
+ }
632
+ }