openstudio-common-measures 0.2.0 → 0.2.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +44 -0
- data/Rakefile +3 -0
- data/lib/measures/ChangeBuildingLocation/measure.xml +11 -11
- data/lib/measures/ExportScheduleCSV/measure.rb +1 -1
- data/lib/measures/ExportScheduleCSV/measure.xml +16 -15
- data/lib/measures/ImportEnvelopeAndInternalLoadsFromIdf/measure.xml +7 -6
- data/lib/measures/MeterFlodPlot/measure.rb +1 -1
- data/lib/measures/MeterFlodPlot/measure.xml +16 -15
- data/lib/measures/ReportModelChanges/measure.xml +2 -2
- data/lib/measures/RunPeriodMultiple/measure.xml +12 -11
- data/lib/measures/ServerDirectoryCleanup/README.md +97 -3
- data/lib/measures/ServerDirectoryCleanup/measure.rb +1 -1
- data/lib/measures/ServerDirectoryCleanup/measure.xml +10 -59
- data/lib/measures/UnmetLoadHoursTroubleshooting/README.md +9 -3
- data/lib/measures/UnmetLoadHoursTroubleshooting/measure.rb +1 -1
- data/lib/measures/UnmetLoadHoursTroubleshooting/measure.xml +66 -17
- data/lib/measures/VentilationQAQC/README.md +9 -3
- data/lib/measures/VentilationQAQC/measure.rb +52 -45
- data/lib/measures/VentilationQAQC/measure.xml +25 -30
- data/lib/measures/ZoneReport/README.md +2 -2
- data/lib/measures/ZoneReport/measure.rb +1 -1
- data/lib/measures/ZoneReport/measure.xml +10 -11
- data/lib/measures/add_ems_to_control_ev_charging/LICENSE.MD.txt +15 -0
- data/lib/measures/{AddDaylightSensors → add_ems_to_control_ev_charging}/LICENSE.md +0 -0
- data/lib/measures/add_ems_to_control_ev_charging/ReadMe.MD +29 -0
- data/lib/measures/add_ems_to_control_ev_charging/measure.rb +288 -0
- data/lib/measures/add_ems_to_control_ev_charging/measure.xml +87 -0
- data/lib/measures/add_ev_load/LICENSE.MD.txt +15 -0
- data/lib/measures/{EnableDemandControlledVentilation → add_ev_load}/LICENSE.md +0 -0
- data/lib/measures/add_ev_load/ReadMe.MD +34 -0
- data/lib/measures/add_ev_load/measure.rb +328 -0
- data/lib/measures/add_ev_load/measure.xml +153 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/PSN_BuildingKey.csv +104 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/PSN_BuildingKey_v2.csv +104 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg1_dow1_flex1.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg1_dow1_flex2.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg1_dow1_flex3.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg1_dow2_flex1.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg1_dow2_flex2.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg1_dow2_flex3.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg1_dow3_flex1.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg1_dow3_flex2.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg1_dow3_flex3.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg2_dow1_flex1.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg2_dow1_flex2.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg2_dow1_flex3.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg2_dow2_flex1.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg2_dow2_flex2.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg2_dow2_flex3.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg2_dow3_flex1.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg2_dow3_flex2.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg2_dow3_flex3.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg3_dow1_flex1.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg3_dow1_flex2.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg3_dow1_flex3.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg3_dow2_flex1.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg3_dow2_flex2.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg3_dow2_flex3.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg3_dow3_flex1.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg3_dow3_flex2.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/chg3_dow3_flex3.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/fast_charge_15min_Saturday.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/fast_charge_15min_Sunday.csv +96 -0
- data/lib/measures/add_ev_load/resources/EV_Load_Profiles/fast_charge_15min_Weekday.csv +96 -0
- data/lib/measures/envelope_and_internal_load_breakdown/README.md +4 -3
- data/lib/measures/envelope_and_internal_load_breakdown/measure.rb +7 -4
- data/lib/measures/envelope_and_internal_load_breakdown/measure.xml +16 -17
- data/lib/measures/envelope_and_internal_load_breakdown/resources/report.html.erb +1 -0
- data/lib/measures/example_report/README.md +27 -5
- data/lib/measures/example_report/measure.rb +7 -4
- data/lib/measures/example_report/measure.xml +16 -29
- data/lib/measures/example_report/resources/report.html.erb +1 -0
- data/lib/measures/gem_env_report/measure.xml +1 -1
- data/lib/measures/generic_qaqc/README.md +187 -5
- data/lib/measures/generic_qaqc/measure.rb +1 -1
- data/lib/measures/generic_qaqc/measure.xml +15 -85
- data/lib/measures/generic_qaqc/resources/report.html.erb +1 -0
- data/lib/measures/hvac_psychrometric_chart/README.md +11 -5
- data/lib/measures/hvac_psychrometric_chart/measure.rb +1 -1
- data/lib/measures/hvac_psychrometric_chart/measure.xml +13 -18
- data/lib/measures/hvac_psychrometric_chart/resources/report.html.erb +1 -0
- data/lib/measures/inject_idf_objects/measure.xml +25 -24
- data/lib/measures/openstudio_results/README.md +195 -5
- data/lib/measures/openstudio_results/measure.rb +2 -2
- data/lib/measures/openstudio_results/measure.xml +30 -154
- data/lib/measures/openstudio_results/resources/report.html.erb +1 -0
- data/lib/measures/set_run_period/measure.xml +2 -2
- data/lib/measures/{EnableEconomizerControl → view_data}/LICENSE.md +0 -0
- data/lib/measures/view_data/README.md +64 -0
- data/lib/measures/{AddDaylightSensors → view_data}/README.md.erb +0 -0
- data/lib/measures/view_data/measure.rb +454 -0
- data/lib/measures/view_data/measure.xml +159 -0
- data/lib/measures/view_data/resources/report.html.in +2881 -0
- data/lib/measures/view_data/resources/va3c.rb +1021 -0
- data/lib/measures/{ImproveFanBeltEfficiency → view_model}/LICENSE.md +0 -0
- data/lib/measures/view_model/README.md +26 -0
- data/lib/measures/{EnableDemandControlledVentilation → view_model}/README.md.erb +0 -0
- data/lib/measures/view_model/measure.rb +146 -0
- data/lib/measures/view_model/measure.xml +98 -0
- data/lib/measures/view_model/resources/report.html.in +2881 -0
- data/lib/measures/view_model/resources/va3c.rb +1021 -0
- data/lib/openstudio/common_measures/version.rb +1 -1
- data/openstudio-common-measures.gemspec +1 -1
- metadata +61 -71
- data/lib/measures/AddDaylightSensors/README.md +0 -136
- data/lib/measures/AddDaylightSensors/measure.rb +0 -521
- data/lib/measures/AddDaylightSensors/measure.xml +0 -233
- data/lib/measures/EnableDemandControlledVentilation/README.md +0 -32
- data/lib/measures/EnableDemandControlledVentilation/measure.rb +0 -154
- data/lib/measures/EnableDemandControlledVentilation/measure.xml +0 -99
- data/lib/measures/EnableEconomizerControl/README.md +0 -48
- data/lib/measures/EnableEconomizerControl/README.md.erb +0 -42
- data/lib/measures/EnableEconomizerControl/measure.rb +0 -172
- data/lib/measures/EnableEconomizerControl/measure.xml +0 -124
- data/lib/measures/ImproveFanBeltEfficiency/README.md +0 -104
- data/lib/measures/ImproveFanBeltEfficiency/README.md.erb +0 -42
- data/lib/measures/ImproveFanBeltEfficiency/measure.rb +0 -366
- data/lib/measures/ImproveFanBeltEfficiency/measure.xml +0 -185
- data/lib/measures/ImproveMotorEfficiency/LICENSE.md +0 -27
- data/lib/measures/ImproveMotorEfficiency/README.md +0 -104
- data/lib/measures/ImproveMotorEfficiency/README.md.erb +0 -42
- data/lib/measures/ImproveMotorEfficiency/measure.rb +0 -365
- data/lib/measures/ImproveMotorEfficiency/measure.xml +0 -182
- data/lib/measures/IncreaseInsulationRValueForExteriorWalls/LICENSE.md +0 -27
- data/lib/measures/IncreaseInsulationRValueForExteriorWalls/README.md +0 -64
- data/lib/measures/IncreaseInsulationRValueForExteriorWalls/README.md.erb +0 -42
- data/lib/measures/IncreaseInsulationRValueForExteriorWalls/measure.rb +0 -422
- data/lib/measures/IncreaseInsulationRValueForExteriorWalls/measure.xml +0 -150
- data/lib/measures/IncreaseInsulationRValueForRoofs/LICENSE.md +0 -27
- data/lib/measures/IncreaseInsulationRValueForRoofs/README.md +0 -64
- data/lib/measures/IncreaseInsulationRValueForRoofs/README.md.erb +0 -42
- data/lib/measures/IncreaseInsulationRValueForRoofs/measure.rb +0 -422
- data/lib/measures/IncreaseInsulationRValueForRoofs/measure.xml +0 -143
- data/lib/measures/ReduceElectricEquipmentLoadsByPercentage/LICENSE.md +0 -27
- data/lib/measures/ReduceElectricEquipmentLoadsByPercentage/README.md +0 -97
- data/lib/measures/ReduceElectricEquipmentLoadsByPercentage/README.md.erb +0 -42
- data/lib/measures/ReduceElectricEquipmentLoadsByPercentage/measure.rb +0 -450
- data/lib/measures/ReduceElectricEquipmentLoadsByPercentage/measure.xml +0 -186
- data/lib/measures/ReduceLightingLoadsByPercentage/LICENSE.md +0 -27
- data/lib/measures/ReduceLightingLoadsByPercentage/README.md +0 -96
- data/lib/measures/ReduceLightingLoadsByPercentage/README.md.erb +0 -42
- data/lib/measures/ReduceLightingLoadsByPercentage/measure.rb +0 -513
- data/lib/measures/ReduceLightingLoadsByPercentage/measure.xml +0 -191
- data/lib/measures/ReduceSpaceInfiltrationByPercentage/LICENSE.md +0 -27
- data/lib/measures/ReduceSpaceInfiltrationByPercentage/README.md +0 -104
- data/lib/measures/ReduceSpaceInfiltrationByPercentage/README.md.erb +0 -42
- data/lib/measures/ReduceSpaceInfiltrationByPercentage/measure.rb +0 -349
- data/lib/measures/ReduceSpaceInfiltrationByPercentage/measure.xml +0 -181
- data/lib/measures/ReduceVentilationByPercentage/LICENSE.md +0 -27
- data/lib/measures/ReduceVentilationByPercentage/README.md +0 -40
- data/lib/measures/ReduceVentilationByPercentage/README.md.erb +0 -42
- data/lib/measures/ReduceVentilationByPercentage/measure.rb +0 -291
- data/lib/measures/ReduceVentilationByPercentage/measure.xml +0 -96
- data/lib/measures/VentilationQAQC/ExampleModel.osm +0 -28468
- data/lib/measures/create_variable_speed_rtu/LICENSE.md +0 -27
- data/lib/measures/create_variable_speed_rtu/README.md +0 -120
- data/lib/measures/create_variable_speed_rtu/README.md.erb +0 -42
- data/lib/measures/create_variable_speed_rtu/measure.rb +0 -539
- data/lib/measures/create_variable_speed_rtu/measure.xml +0 -207
- data/lib/measures/radiant_slab_with_doas/LICENSE.md +0 -27
- data/lib/measures/radiant_slab_with_doas/README.md +0 -156
- data/lib/measures/radiant_slab_with_doas/README.md.erb +0 -42
- data/lib/measures/radiant_slab_with_doas/measure.rb +0 -403
- data/lib/measures/radiant_slab_with_doas/measure.xml +0 -345
@@ -63,7 +63,7 @@ class ServerDirectoryCleanup < OpenStudio::Measure::ReportingMeasure
|
|
63
63
|
end
|
64
64
|
|
65
65
|
# define the arguments that the user will input
|
66
|
-
def arguments
|
66
|
+
def arguments(model = nil)
|
67
67
|
args = OpenStudio::Measure::OSArgumentVector.new
|
68
68
|
|
69
69
|
# loop through file types and make arguments
|
@@ -3,8 +3,8 @@
|
|
3
3
|
<schema_version>3.0</schema_version>
|
4
4
|
<name>server_directory_cleanup</name>
|
5
5
|
<uid>ec7d04ad-0b7b-495b-825a-e1b6d28d1d3f</uid>
|
6
|
-
<version_id>
|
7
|
-
<version_modified>
|
6
|
+
<version_id>95fce446-c6c5-4594-9332-6e3332b81ab1</version_id>
|
7
|
+
<version_modified>20200605T185057Z</version_modified>
|
8
8
|
<xml_checksum>5BFE84C4</xml_checksum>
|
9
9
|
<class_name>ServerDirectoryCleanup</class_name>
|
10
10
|
<display_name>Server Directory Cleanup</display_name>
|
@@ -14,9 +14,7 @@
|
|
14
14
|
<argument>
|
15
15
|
<name>sql</name>
|
16
16
|
<display_name>Remove sql files from run directory</display_name>
|
17
|
-
<description></description>
|
18
17
|
<type>Boolean</type>
|
19
|
-
<units></units>
|
20
18
|
<required>true</required>
|
21
19
|
<model_dependent>false</model_dependent>
|
22
20
|
<default_value>true</default_value>
|
@@ -30,15 +28,11 @@
|
|
30
28
|
<display_name>false</display_name>
|
31
29
|
</choice>
|
32
30
|
</choices>
|
33
|
-
<min_value></min_value>
|
34
|
-
<max_value></max_value>
|
35
31
|
</argument>
|
36
32
|
<argument>
|
37
33
|
<name>eso</name>
|
38
34
|
<display_name>Remove eso files from run directory</display_name>
|
39
|
-
<description></description>
|
40
35
|
<type>Boolean</type>
|
41
|
-
<units></units>
|
42
36
|
<required>true</required>
|
43
37
|
<model_dependent>false</model_dependent>
|
44
38
|
<default_value>true</default_value>
|
@@ -52,15 +46,11 @@
|
|
52
46
|
<display_name>false</display_name>
|
53
47
|
</choice>
|
54
48
|
</choices>
|
55
|
-
<min_value></min_value>
|
56
|
-
<max_value></max_value>
|
57
49
|
</argument>
|
58
50
|
<argument>
|
59
51
|
<name>audit</name>
|
60
52
|
<display_name>Remove audit files from run directory</display_name>
|
61
|
-
<description></description>
|
62
53
|
<type>Boolean</type>
|
63
|
-
<units></units>
|
64
54
|
<required>true</required>
|
65
55
|
<model_dependent>false</model_dependent>
|
66
56
|
<default_value>true</default_value>
|
@@ -74,15 +64,11 @@
|
|
74
64
|
<display_name>false</display_name>
|
75
65
|
</choice>
|
76
66
|
</choices>
|
77
|
-
<min_value></min_value>
|
78
|
-
<max_value></max_value>
|
79
67
|
</argument>
|
80
68
|
<argument>
|
81
69
|
<name>osm</name>
|
82
70
|
<display_name>Remove osm files from run directory</display_name>
|
83
|
-
<description></description>
|
84
71
|
<type>Boolean</type>
|
85
|
-
<units></units>
|
86
72
|
<required>true</required>
|
87
73
|
<model_dependent>false</model_dependent>
|
88
74
|
<default_value>true</default_value>
|
@@ -96,15 +82,11 @@
|
|
96
82
|
<display_name>false</display_name>
|
97
83
|
</choice>
|
98
84
|
</choices>
|
99
|
-
<min_value></min_value>
|
100
|
-
<max_value></max_value>
|
101
85
|
</argument>
|
102
86
|
<argument>
|
103
87
|
<name>idf</name>
|
104
88
|
<display_name>Remove idf files from run directory</display_name>
|
105
|
-
<description></description>
|
106
89
|
<type>Boolean</type>
|
107
|
-
<units></units>
|
108
90
|
<required>true</required>
|
109
91
|
<model_dependent>false</model_dependent>
|
110
92
|
<default_value>true</default_value>
|
@@ -118,15 +100,11 @@
|
|
118
100
|
<display_name>false</display_name>
|
119
101
|
</choice>
|
120
102
|
</choices>
|
121
|
-
<min_value></min_value>
|
122
|
-
<max_value></max_value>
|
123
103
|
</argument>
|
124
104
|
<argument>
|
125
105
|
<name>bnd</name>
|
126
106
|
<display_name>Remove bnd files from run directory</display_name>
|
127
|
-
<description></description>
|
128
107
|
<type>Boolean</type>
|
129
|
-
<units></units>
|
130
108
|
<required>true</required>
|
131
109
|
<model_dependent>false</model_dependent>
|
132
110
|
<default_value>true</default_value>
|
@@ -140,15 +118,11 @@
|
|
140
118
|
<display_name>false</display_name>
|
141
119
|
</choice>
|
142
120
|
</choices>
|
143
|
-
<min_value></min_value>
|
144
|
-
<max_value></max_value>
|
145
121
|
</argument>
|
146
122
|
<argument>
|
147
123
|
<name>eio</name>
|
148
124
|
<display_name>Remove eio files from run directory</display_name>
|
149
|
-
<description></description>
|
150
125
|
<type>Boolean</type>
|
151
|
-
<units></units>
|
152
126
|
<required>true</required>
|
153
127
|
<model_dependent>false</model_dependent>
|
154
128
|
<default_value>true</default_value>
|
@@ -162,15 +136,11 @@
|
|
162
136
|
<display_name>false</display_name>
|
163
137
|
</choice>
|
164
138
|
</choices>
|
165
|
-
<min_value></min_value>
|
166
|
-
<max_value></max_value>
|
167
139
|
</argument>
|
168
140
|
<argument>
|
169
141
|
<name>shd</name>
|
170
142
|
<display_name>Remove shd files from run directory</display_name>
|
171
|
-
<description></description>
|
172
143
|
<type>Boolean</type>
|
173
|
-
<units></units>
|
174
144
|
<required>true</required>
|
175
145
|
<model_dependent>false</model_dependent>
|
176
146
|
<default_value>true</default_value>
|
@@ -184,15 +154,11 @@
|
|
184
154
|
<display_name>false</display_name>
|
185
155
|
</choice>
|
186
156
|
</choices>
|
187
|
-
<min_value></min_value>
|
188
|
-
<max_value></max_value>
|
189
157
|
</argument>
|
190
158
|
<argument>
|
191
159
|
<name>mdd</name>
|
192
160
|
<display_name>Remove mdd files from run directory</display_name>
|
193
|
-
<description></description>
|
194
161
|
<type>Boolean</type>
|
195
|
-
<units></units>
|
196
162
|
<required>true</required>
|
197
163
|
<model_dependent>false</model_dependent>
|
198
164
|
<default_value>true</default_value>
|
@@ -206,15 +172,11 @@
|
|
206
172
|
<display_name>false</display_name>
|
207
173
|
</choice>
|
208
174
|
</choices>
|
209
|
-
<min_value></min_value>
|
210
|
-
<max_value></max_value>
|
211
175
|
</argument>
|
212
176
|
<argument>
|
213
177
|
<name>rdd</name>
|
214
178
|
<display_name>Remove rdd files from run directory</display_name>
|
215
|
-
<description></description>
|
216
179
|
<type>Boolean</type>
|
217
|
-
<units></units>
|
218
180
|
<required>true</required>
|
219
181
|
<model_dependent>false</model_dependent>
|
220
182
|
<default_value>true</default_value>
|
@@ -228,15 +190,11 @@
|
|
228
190
|
<display_name>false</display_name>
|
229
191
|
</choice>
|
230
192
|
</choices>
|
231
|
-
<min_value></min_value>
|
232
|
-
<max_value></max_value>
|
233
193
|
</argument>
|
234
194
|
<argument>
|
235
195
|
<name>csv</name>
|
236
196
|
<display_name>Remove csv files from run directory</display_name>
|
237
|
-
<description></description>
|
238
197
|
<type>Boolean</type>
|
239
|
-
<units></units>
|
240
198
|
<required>true</required>
|
241
199
|
<model_dependent>false</model_dependent>
|
242
200
|
<default_value>true</default_value>
|
@@ -250,15 +208,11 @@
|
|
250
208
|
<display_name>false</display_name>
|
251
209
|
</choice>
|
252
210
|
</choices>
|
253
|
-
<min_value></min_value>
|
254
|
-
<max_value></max_value>
|
255
211
|
</argument>
|
256
212
|
<argument>
|
257
213
|
<name>Sizing Run Directories</name>
|
258
214
|
<display_name>Remove Sizing Run Directories files from run directory</display_name>
|
259
|
-
<description></description>
|
260
215
|
<type>Boolean</type>
|
261
|
-
<units></units>
|
262
216
|
<required>true</required>
|
263
217
|
<model_dependent>false</model_dependent>
|
264
218
|
<default_value>true</default_value>
|
@@ -272,8 +226,6 @@
|
|
272
226
|
<display_name>false</display_name>
|
273
227
|
</choice>
|
274
228
|
</choices>
|
275
|
-
<min_value></min_value>
|
276
|
-
<max_value></max_value>
|
277
229
|
</argument>
|
278
230
|
</arguments>
|
279
231
|
<outputs />
|
@@ -318,6 +270,12 @@
|
|
318
270
|
<usage_type>readmeerb</usage_type>
|
319
271
|
<checksum>703C9964</checksum>
|
320
272
|
</file>
|
273
|
+
<file>
|
274
|
+
<filename>ServerDirectoryCleanup_test.rb</filename>
|
275
|
+
<filetype>rb</filetype>
|
276
|
+
<usage_type>test</usage_type>
|
277
|
+
<checksum>7278D224</checksum>
|
278
|
+
</file>
|
321
279
|
<file>
|
322
280
|
<version>
|
323
281
|
<software_program>OpenStudio</software_program>
|
@@ -327,20 +285,13 @@
|
|
327
285
|
<filename>measure.rb</filename>
|
328
286
|
<filetype>rb</filetype>
|
329
287
|
<usage_type>script</usage_type>
|
330
|
-
<checksum>
|
288
|
+
<checksum>2997E130</checksum>
|
331
289
|
</file>
|
332
290
|
<file>
|
333
291
|
<filename>README.md</filename>
|
334
292
|
<filetype>md</filetype>
|
335
293
|
<usage_type>readme</usage_type>
|
336
|
-
<checksum>
|
337
|
-
</file>
|
338
|
-
<file>
|
339
|
-
<filename>ServerDirectoryCleanup_test.rb</filename>
|
340
|
-
<filetype>rb</filetype>
|
341
|
-
<usage_type>test</usage_type>
|
342
|
-
<checksum>7278D224</checksum>
|
294
|
+
<checksum>4910D396</checksum>
|
343
295
|
</file>
|
344
296
|
</files>
|
345
297
|
</measure>
|
346
|
-
<error>wrong number of arguments (given 1, expected 0)</error>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
###### (Automatically generated documentation)
|
4
4
|
|
5
|
-
#
|
5
|
+
# Unmet Load Hours Troubleshooting
|
6
6
|
|
7
7
|
## Description
|
8
8
|
|
@@ -11,7 +11,7 @@
|
|
11
11
|
|
12
12
|
|
13
13
|
## Measure Type
|
14
|
-
|
14
|
+
ReportingMeasure
|
15
15
|
|
16
16
|
## Taxonomy
|
17
17
|
|
@@ -19,8 +19,14 @@ ModelMeasure
|
|
19
19
|
## Arguments
|
20
20
|
|
21
21
|
|
22
|
+
### Pick a Zone (or all Zones)
|
23
|
+
|
24
|
+
**Name:** measure_zone,
|
25
|
+
**Type:** Choice,
|
26
|
+
**Units:** ,
|
27
|
+
**Required:** true,
|
28
|
+
**Model Dependent:** false
|
22
29
|
|
23
30
|
|
24
|
-
This measure does not have any user arguments
|
25
31
|
|
26
32
|
|
@@ -3,22 +3,74 @@
|
|
3
3
|
<schema_version>3.0</schema_version>
|
4
4
|
<name>unmet_load_hours_troubleshooting</name>
|
5
5
|
<uid>edf8fc3a-5607-4e0f-9dd2-4a1e1545433b</uid>
|
6
|
-
<version_id>
|
7
|
-
<version_modified>
|
6
|
+
<version_id>8caa6e6d-dfa8-49d2-a1dc-8c6a5872ad33</version_id>
|
7
|
+
<version_modified>20200605T185058Z</version_modified>
|
8
8
|
<xml_checksum>5BFE84C4</xml_checksum>
|
9
9
|
<class_name>UnmetLoadHoursTroubleshooting</class_name>
|
10
10
|
<display_name>Unmet Load Hours Troubleshooting</display_name>
|
11
|
-
<description>Unmet load hours are any hours of operation when conditioned spaces are outside the throttling range for heating or cooling controls. That is, they are the hours in a year that the HVAC system serving a space cannot maintain space setpoint. This measure performs a series of checks against various model input variables and when applicable informs the user of possible sources of unmet cooling and heating hours. The measure also creates a dynamic time series plot of unmet cooling and heating hours, by zone - whose patterns may be interpreted to assist in troubleshooting unmet cooling and heating hours. Prior to running this measure, users will need to add the following output variables to their model: 1) Zone Mean Air Temperature,hourly 2) Zone Thermostat Heating Setpoint Temperature, hourly 3) Zone Thermostat Cooling Setpoint Temperature, hourly 4) Zone People Occupant Count, hourly using the AddOutputVariable OS measure, or the add output variables screen in the OpenStudio application.
|
11
|
+
<description>Unmet load hours are any hours of operation when conditioned spaces are outside the throttling range for heating or cooling controls. That is, they are the hours in a year that the HVAC system serving a space cannot maintain space setpoint. This measure performs a series of checks against various model input variables and when applicable informs the user of possible sources of unmet cooling and heating hours. The measure also creates a dynamic time series plot of unmet cooling and heating hours, by zone - whose patterns may be interpreted to assist in troubleshooting unmet cooling and heating hours. Prior to running this measure, users will need to add the following output variables to their model: 1) Zone Mean Air Temperature,hourly 2) Zone Thermostat Heating Setpoint Temperature, hourly 3) Zone Thermostat Cooling Setpoint Temperature, hourly 4) Zone People Occupant Count, hourly using the AddOutputVariable OS measure, or the add output variables screen in the OpenStudio application.
|
12
|
+
|
13
|
+
|
14
|
+
|
15
|
+
|
16
|
+
|
17
|
+
|
18
|
+
|
19
|
+
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
|
12
39
|
</description>
|
13
|
-
<modeler_description>This measure performs a series of logic checks against model inputs for diagnosing common issues responsible for unmet cooling and heating hours. The measure will also create a time series interactive chart (using dygraph libraries) to provide a visual inspection of when unmet heating and cooling hours are occurring.
|
40
|
+
<modeler_description>This measure performs a series of logic checks against model inputs for diagnosing common issues responsible for unmet cooling and heating hours. The measure will also create a time series interactive chart (using dygraph libraries) to provide a visual inspection of when unmet heating and cooling hours are occurring.
|
41
|
+
|
42
|
+
|
43
|
+
|
44
|
+
|
45
|
+
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
|
14
68
|
</modeler_description>
|
15
69
|
<arguments>
|
16
70
|
<argument>
|
17
71
|
<name>measure_zone</name>
|
18
72
|
<display_name>Pick a Zone (or all Zones)</display_name>
|
19
|
-
<description></description>
|
20
73
|
<type>Choice</type>
|
21
|
-
<units></units>
|
22
74
|
<required>true</required>
|
23
75
|
<model_dependent>false</model_dependent>
|
24
76
|
<default_value>All Zones</default_value>
|
@@ -28,8 +80,6 @@
|
|
28
80
|
<display_name>All Zones</display_name>
|
29
81
|
</choice>
|
30
82
|
</choices>
|
31
|
-
<min_value></min_value>
|
32
|
-
<max_value></max_value>
|
33
83
|
</argument>
|
34
84
|
</arguments>
|
35
85
|
<outputs />
|
@@ -92,6 +142,12 @@
|
|
92
142
|
<usage_type>license</usage_type>
|
93
143
|
<checksum>E0468DD6</checksum>
|
94
144
|
</file>
|
145
|
+
<file>
|
146
|
+
<filename>UnmetLoadHoursTroubleshooting_Test.rb</filename>
|
147
|
+
<filetype>rb</filetype>
|
148
|
+
<usage_type>test</usage_type>
|
149
|
+
<checksum>0D74ED36</checksum>
|
150
|
+
</file>
|
95
151
|
<file>
|
96
152
|
<version>
|
97
153
|
<software_program>OpenStudio</software_program>
|
@@ -101,20 +157,13 @@
|
|
101
157
|
<filename>measure.rb</filename>
|
102
158
|
<filetype>rb</filetype>
|
103
159
|
<usage_type>script</usage_type>
|
104
|
-
<checksum>
|
105
|
-
</file>
|
106
|
-
<file>
|
107
|
-
<filename>UnmetLoadHoursTroubleshooting_Test.rb</filename>
|
108
|
-
<filetype>rb</filetype>
|
109
|
-
<usage_type>test</usage_type>
|
110
|
-
<checksum>0D74ED36</checksum>
|
160
|
+
<checksum>62E8155A</checksum>
|
111
161
|
</file>
|
112
162
|
<file>
|
113
163
|
<filename>README.md</filename>
|
114
164
|
<filetype>md</filetype>
|
115
165
|
<usage_type>readme</usage_type>
|
116
|
-
<checksum>
|
166
|
+
<checksum>5C03BFC2</checksum>
|
117
167
|
</file>
|
118
168
|
</files>
|
119
169
|
</measure>
|
120
|
-
<error>wrong number of arguments (given 1, expected 0)</error>
|
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
###### (Automatically generated documentation)
|
4
4
|
|
5
|
-
#
|
5
|
+
# Ventilation Report
|
6
6
|
|
7
7
|
## Description
|
8
8
|
|
@@ -11,7 +11,7 @@
|
|
11
11
|
|
12
12
|
|
13
13
|
## Measure Type
|
14
|
-
|
14
|
+
ReportingMeasure
|
15
15
|
|
16
16
|
## Taxonomy
|
17
17
|
|
@@ -19,8 +19,14 @@ ModelMeasure
|
|
19
19
|
## Arguments
|
20
20
|
|
21
21
|
|
22
|
+
### Pick a Zone (or all Zones)
|
23
|
+
|
24
|
+
**Name:** measure_zone,
|
25
|
+
**Type:** Choice,
|
26
|
+
**Units:** ,
|
27
|
+
**Required:** true,
|
28
|
+
**Model Dependent:** false
|
22
29
|
|
23
30
|
|
24
|
-
This measure does not have any user arguments
|
25
31
|
|
26
32
|
|
@@ -70,7 +70,7 @@ class VentilationQAQC < OpenStudio::Measure::ReportingMeasure
|
|
70
70
|
# note - there is no 'model' argument provided here. This may cause an issue.
|
71
71
|
#
|
72
72
|
|
73
|
-
def arguments
|
73
|
+
def arguments(model = nil)
|
74
74
|
args = OpenStudio::Measure::OSArgumentVector.new
|
75
75
|
|
76
76
|
# Future functionality
|
@@ -159,63 +159,70 @@ class VentilationQAQC < OpenStudio::Measure::ReportingMeasure
|
|
159
159
|
|
160
160
|
zone_infiltration_vals = getTimeSeries('Zone Infiltration Air Change Rate', zone_name.upcase, annEnvPd, 'Hourly', runner)
|
161
161
|
|
162
|
-
puts('Get Occupant')
|
163
|
-
|
164
162
|
zone_occupant_vals = getTimeSeries('Zone People Occupant Count', zone_name.upcase, annEnvPd, 'Hourly', runner)
|
165
163
|
zone_occupant_max = !zone_occupant_vals.nil? ? zone_occupant_vals.max : 0
|
166
164
|
|
167
|
-
|
165
|
+
# stop here if zone_occupant_max is 0 is don't divide by 0 and catch zone_occupant_vals when nil before .map
|
166
|
+
if zone_occupant_max == 0
|
167
|
+
runner.registerInfo("Skipping #{zone_name}, can't noramlize occupancy with max of 0.")
|
168
|
+
else
|
169
|
+
|
170
|
+
zone_occupant_normalized = zone_occupant_vals.map { |v| v / zone_occupant_max }
|
168
171
|
|
169
|
-
|
170
|
-
|
172
|
+
unoccupied = 0
|
173
|
+
lightly_occupied = 0
|
171
174
|
|
172
|
-
|
175
|
+
coordinated = zone_occupant_normalized.zip(zone_mechanical_ventilation_vals)
|
173
176
|
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
+
coordinated.each do |vals|
|
178
|
+
normalized_occupancy = vals[0]
|
179
|
+
zone_mech_vent = vals[1]
|
177
180
|
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
+
if normalized_occupancy == 0 && zone_mech_vent > 0
|
182
|
+
unoccupied += 1
|
183
|
+
end
|
181
184
|
|
182
|
-
|
183
|
-
|
185
|
+
if normalized_occupancy < 0.05 && zone_mech_vent > 20
|
186
|
+
lightly_occupied += 1
|
187
|
+
end
|
184
188
|
end
|
185
|
-
end
|
186
189
|
|
187
|
-
|
190
|
+
puts "Unoccupied: #{unoccupied}, Lightly Occupied: #{lightly_occupied}"
|
188
191
|
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
+
if unoccupied > 10
|
193
|
+
warnings.push("Thermal Zone <strong>#{zone_name}</strong> appears to have mechanical ventilation during periods when the zone is unoccupied, resulting in potentially unnecessary ventilation energy. This occurs <strong>#{unoccupied}</strong> hours per run period. Please ensure this is a correct representation of the modeling scenario. Minimum fraction OA schedules may need adjusting.")
|
194
|
+
end
|
195
|
+
|
196
|
+
if lightly_occupied > 1500
|
197
|
+
warnings.push("Thermal Zone <strong>#{zone_name}</strong> appears to have mechanical ventilation during periods when the zone is lightly occupied, resulting in potentially unnecessary ventilation energy. This occurs <strong>#{lightly_occupied}</strong> hours per run period. Please ensure this is a correct representation of the modeling scenario.")
|
198
|
+
end
|
192
199
|
|
193
|
-
if lightly_occupied > 1500
|
194
|
-
warnings.push("Thermal Zone <strong>#{zone_name}</strong> appears to have mechanical ventilation during periods when the zone is lightly occupied, resulting in potentially unnecessary ventilation energy. This occurs <strong>#{lightly_occupied}</strong> hours per run period. Please ensure this is a correct representation of the modeling scenario.")
|
195
200
|
end
|
196
201
|
|
197
|
-
times = getTimesForSeries('Zone
|
198
|
-
|
202
|
+
times = getTimesForSeries('Zone Infiltration Air Change Rate', zone_name.upcase, annEnvPd, 'Hourly', runner)
|
203
|
+
if !times.nil?
|
204
|
+
js_date_times = times.map { |t| to_JSTime(t) }
|
199
205
|
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
+
# Create an array of arrays [timestamp, zone_mechanical_ventilation_vals, zone_infiltration_vals]
|
207
|
+
if zone_infiltration_vals
|
208
|
+
hourly_vals = js_date_times.zip(zone_infiltration_vals)
|
209
|
+
else
|
210
|
+
hourly_vals = nil
|
211
|
+
end
|
206
212
|
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
213
|
+
# Add the hourly load data to JSON for the report.html
|
214
|
+
graph = {}
|
215
|
+
graph['title'] = "#{zone_name} - Hourly Infiltration"
|
216
|
+
graph['xaxislabel'] = 'Time'
|
217
|
+
graph['yaxislabel'] = 'Infiltration (ACH)'
|
218
|
+
graph['labels'] = ['Date', 'Infiltration (ACH)']
|
219
|
+
graph['colors'] = ['#FF5050', '#0066FF']
|
220
|
+
graph['timeseries'] = hourly_vals
|
221
|
+
|
222
|
+
# This measure requires ruby 2.0.0 to create the JSON for the report graph
|
223
|
+
if RUBY_VERSION >= '2.0.0'
|
224
|
+
annualGraphData << graph
|
225
|
+
end
|
219
226
|
end
|
220
227
|
|
221
228
|
zoneMetrics = {}
|
@@ -236,10 +243,10 @@ class VentilationQAQC < OpenStudio::Measure::ReportingMeasure
|
|
236
243
|
spec = space.designSpecificationOutdoorAir.get
|
237
244
|
|
238
245
|
# spaceMetrics[:specMethod] = spec.outdoorAirMethod
|
239
|
-
spaceMetrics[:specOutdoorAirFlowperPerson] = spec.
|
240
|
-
spaceMetrics[:specOutdoorAirFlowperFloorArea] = spec.
|
246
|
+
spaceMetrics[:specOutdoorAirFlowperPerson] = spec.outdoorAirFlowperPerson
|
247
|
+
spaceMetrics[:specOutdoorAirFlowperFloorArea] = spec.outdoorAirFlowperFloorArea
|
241
248
|
spaceMetrics[:specOutdoorAirFlowRate] = spec.outdoorAirFlowRate
|
242
|
-
spaceMetrics[:specOutdoorAirFlowAirChangesperHour] = spec.
|
249
|
+
spaceMetrics[:specOutdoorAirFlowAirChangesperHour] = spec.outdoorAirFlowAirChangesperHour
|
243
250
|
|
244
251
|
# Outdoor Air Method
|
245
252
|
# Outdoor Air Flow per Person {m3/s-person}
|