openstudio-standards 0.1.3 → 0.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/data/standards/OpenStudio_Standards.xlsx +0 -0
- data/data/standards/OpenStudio_Standards_chillers.json +5 -5
- data/data/standards/OpenStudio_Standards_construction_sets.json +2 -2
- data/data/standards/OpenStudio_Standards_curve_cubics.json +12 -0
- data/data/standards/OpenStudio_Standards_heat_pumps.json +2126 -72
- data/data/standards/OpenStudio_Standards_heat_pumps_heating.json +766 -14
- data/data/standards/OpenStudio_Standards_heat_rejection.json +172 -0
- data/data/standards/OpenStudio_Standards_prototype_inputs.json +355 -267
- data/data/standards/OpenStudio_Standards_schedules.json +262 -10
- data/data/standards/OpenStudio_Standards_space_types.json +1466 -794
- data/data/standards/manage_OpenStudio_Standards.rb +19 -21
- data/data/weather/weather_info.csv +96 -0
- data/lib/openstudio-standards/btap/btap.rb +1 -1
- data/lib/openstudio-standards/btap/compliance.rb +135 -40
- data/lib/openstudio-standards/btap/envelope.rb +26 -5
- data/lib/openstudio-standards/btap/geometry.rb +11 -1
- data/lib/openstudio-standards/btap/hvac.rb +489 -56
- data/lib/openstudio-standards/btap/simmanager.rb +1 -1
- data/lib/openstudio-standards/hvac_sizing/HVACSizing.CoilHeatingDXMultiSpeed.rb +120 -0
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilCoolingDXMultiSpeed.rb +151 -7
- data/lib/openstudio-standards/hvac_sizing/Siz.CoilHeatingGasMultiStage.rb +48 -7
- data/lib/openstudio-standards/hvac_sizing/Siz.Model.rb +14 -12
- data/lib/openstudio-standards/prototypes/Prototype.AirTerminalSingleDuctVAVReheat.rb +33 -7
- data/lib/openstudio-standards/prototypes/Prototype.Model.hvac.rb +123 -91
- data/lib/openstudio-standards/prototypes/Prototype.Model.rb +130 -45
- data/lib/openstudio-standards/prototypes/Prototype.Model.swh.rb +13 -7
- data/lib/openstudio-standards/prototypes/Prototype.full_service_restaurant.rb +332 -324
- data/lib/openstudio-standards/prototypes/Prototype.hospital.rb +401 -99
- data/lib/openstudio-standards/prototypes/Prototype.hvac_systems.rb +309 -222
- data/lib/openstudio-standards/prototypes/Prototype.large_hotel.rb +100 -80
- data/lib/openstudio-standards/prototypes/Prototype.large_office.rb +37 -22
- data/lib/openstudio-standards/prototypes/Prototype.medium_office.rb +68 -53
- data/lib/openstudio-standards/prototypes/Prototype.mid_rise_apartment.rb +109 -88
- data/lib/openstudio-standards/prototypes/Prototype.outpatient.rb +52 -4
- data/lib/openstudio-standards/prototypes/Prototype.primary_school.rb +230 -213
- data/lib/openstudio-standards/prototypes/Prototype.quick_service_restaurant.rb +225 -218
- data/lib/openstudio-standards/prototypes/Prototype.retail_standalone.rb +29 -17
- data/lib/openstudio-standards/prototypes/Prototype.retail_stripmall.rb +42 -32
- data/lib/openstudio-standards/prototypes/Prototype.secondary_school.rb +331 -314
- data/lib/openstudio-standards/prototypes/Prototype.small_hotel.rb +233 -219
- data/lib/openstudio-standards/prototypes/Prototype.small_office.rb +40 -32
- data/lib/openstudio-standards/prototypes/Prototype.warehouse.rb +19 -6
- data/lib/openstudio-standards/standards/Standards.AirLoopHVAC.rb +576 -555
- data/lib/openstudio-standards/standards/Standards.AirTerminalSingleDuctVAVReheat.rb +3 -1
- data/lib/openstudio-standards/standards/Standards.BoilerHotWater.rb +35 -17
- data/lib/openstudio-standards/standards/Standards.ChillerElectricEIR.rb +51 -23
- data/lib/openstudio-standards/standards/Standards.CoilCoolingDXMultiSpeed.rb +255 -0
- data/lib/openstudio-standards/standards/Standards.CoilHeatingDXMultiSpeed.rb +192 -0
- data/lib/openstudio-standards/standards/Standards.CoilHeatingGasMultiStage.rb +65 -0
- data/lib/openstudio-standards/standards/Standards.Fan.rb +37 -6
- data/lib/openstudio-standards/standards/Standards.Model.rb +28 -3
- data/lib/openstudio-standards/standards/Standards.SpaceType.rb +3 -1
- data/lib/openstudio-standards/standards/Standards.WaterHeaterMixed.rb +41 -15
- data/lib/openstudio-standards/version.rb +1 -1
- data/lib/openstudio-standards/weather/Weather.Model.rb +509 -5
- data/lib/openstudio-standards/weather/Weather.stat_file.rb +145 -5
- metadata +8 -3
- data/lib/openstudio-standards/btap/environment.rb +0 -718
@@ -3,129 +3,147 @@
|
|
3
3
|
class OpenStudio::Model::Model
|
4
4
|
|
5
5
|
def define_space_type_map(building_type, building_vintage, climate_zone)
|
6
|
-
|
6
|
+
|
7
|
+
space_type_map = nil
|
8
|
+
|
7
9
|
case building_vintage
|
8
10
|
when '90.1-2004', '90.1-2007', '90.1-2010', '90.1-2013'
|
9
11
|
space_type_map = {
|
10
|
-
|
11
|
-
|
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
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
12
|
+
'Office' => ['Office'],
|
13
|
+
'Corridor' => ['G Corridor', 'M Corridor'],
|
14
|
+
'Corridor_topfloor' => ['T Corridor'],
|
15
|
+
'Apartment' => [
|
16
|
+
'G SW Apartment',
|
17
|
+
'G NW Apartment',
|
18
|
+
'G NE Apartment',
|
19
|
+
'G N1 Apartment',
|
20
|
+
'G N2 Apartment',
|
21
|
+
'G S1 Apartment',
|
22
|
+
'G S2 Apartment',
|
23
|
+
'M SW Apartment',
|
24
|
+
'M NW Apartment',
|
25
|
+
'M SE Apartment',
|
26
|
+
'M NE Apartment',
|
27
|
+
'M N1 Apartment',
|
28
|
+
'M N2 Apartment',
|
29
|
+
'M S1 Apartment',
|
30
|
+
'M S2 Apartment'
|
31
|
+
],
|
32
|
+
'Apartment_topfloor_WE' => [
|
33
|
+
'T SW Apartment',
|
34
|
+
'T NW Apartment',
|
35
|
+
'T SE Apartment',
|
36
|
+
'T NE Apartment'
|
37
|
+
],
|
38
|
+
'Apartment_topfloor_NS' => [
|
39
|
+
'T N1 Apartment',
|
40
|
+
'T N2 Apartment',
|
41
|
+
'T S1 Apartment',
|
42
|
+
'T S2 Apartment'
|
43
|
+
]
|
44
|
+
}
|
43
45
|
when 'DOE Ref 1980-2004', 'DOE Ref Pre-1980'
|
44
46
|
space_type_map = {
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
47
|
+
'Office' => ['Office'],
|
48
|
+
'Corridor' => ['G Corridor', 'M Corridor', 'T Corridor'],
|
49
|
+
'Apartment' => [
|
50
|
+
'G SW Apartment',
|
51
|
+
'G NW Apartment',
|
52
|
+
'G NE Apartment',
|
53
|
+
'G N1 Apartment',
|
54
|
+
'G N2 Apartment',
|
55
|
+
'G S1 Apartment',
|
56
|
+
'G S2 Apartment',
|
57
|
+
'M SW Apartment',
|
58
|
+
'M NW Apartment',
|
59
|
+
'M SE Apartment',
|
60
|
+
'M NE Apartment',
|
61
|
+
'M N1 Apartment',
|
62
|
+
'M N2 Apartment',
|
63
|
+
'M S1 Apartment',
|
64
|
+
'M S2 Apartment',
|
65
|
+
'T SW Apartment',
|
66
|
+
'T NW Apartment',
|
67
|
+
'T SE Apartment',
|
68
|
+
'T NE Apartment',
|
69
|
+
'T N1 Apartment',
|
70
|
+
'T N2 Apartment',
|
71
|
+
'T S1 Apartment',
|
72
|
+
'T S2 Apartment'
|
73
|
+
]
|
74
|
+
}
|
75
|
+
|
76
|
+
when 'NECB 2011'
|
77
|
+
space_type_map ={
|
78
|
+
"Corr. < 2.4m wide" => ["G Corridor", "M Corridor", "T Corridor"],
|
79
|
+
|
80
|
+
"Dormitory - living quarters" => ["G N1 Apartment", "G N2 Apartment", "G NE Apartment",
|
81
|
+
"G NW Apartment", "G S1 Apartment", "G S2 Apartment",
|
82
|
+
"G SW Apartment", "M N1 Apartment", "M N2 Apartment",
|
83
|
+
"M NE Apartment", "M NW Apartment", "M S1 Apartment",
|
84
|
+
"M S2 Apartment", "M SE Apartment", "M SW Apartment",
|
85
|
+
"T N1 Apartment", "T N2 Apartment", "T NE Apartment",
|
86
|
+
"T NW Apartment", "T S1 Apartment", "T S2 Apartment",
|
87
|
+
"T SE Apartment", "T SW Apartment"],
|
88
|
+
"Office - enclosed" => ["Office"]
|
89
|
+
}
|
73
90
|
end
|
74
91
|
|
75
92
|
return space_type_map
|
76
93
|
end
|
77
94
|
|
95
|
+
|
78
96
|
def define_hvac_system_map(building_type, building_vintage, climate_zone)
|
79
97
|
system_to_space_map = [
|
80
98
|
{'type' => 'SAC',
|
81
|
-
|
99
|
+
'space_names' => ['G SW Apartment']},
|
82
100
|
{'type' => 'SAC',
|
83
|
-
|
101
|
+
'space_names' => ['G NW Apartment']},
|
84
102
|
{'type' => 'SAC',
|
85
|
-
|
103
|
+
'space_names' => ['G NE Apartment']},
|
86
104
|
{'type' => 'SAC',
|
87
|
-
|
105
|
+
'space_names' => ['G N1 Apartment']},
|
88
106
|
{'type' => 'SAC',
|
89
|
-
|
107
|
+
'space_names' => ['G N2 Apartment']},
|
90
108
|
{'type' => 'SAC',
|
91
|
-
|
109
|
+
'space_names' => ['G S1 Apartment']},
|
92
110
|
{'type' => 'SAC',
|
93
|
-
|
111
|
+
'space_names' => ['G S2 Apartment']},
|
94
112
|
{'type' => 'SAC',
|
95
|
-
|
113
|
+
'space_names' => ['M SW Apartment']},
|
96
114
|
{'type' => 'SAC',
|
97
|
-
|
115
|
+
'space_names' => ['M NW Apartment']},
|
98
116
|
{'type' => 'SAC',
|
99
|
-
|
117
|
+
'space_names' => ['M SE Apartment']},
|
100
118
|
{'type' => 'SAC',
|
101
|
-
|
119
|
+
'space_names' => ['M NE Apartment']},
|
102
120
|
{'type' => 'SAC',
|
103
|
-
|
121
|
+
'space_names' => ['M N1 Apartment']},
|
104
122
|
{'type' => 'SAC',
|
105
|
-
|
123
|
+
'space_names' => ['M N2 Apartment']},
|
106
124
|
{'type' => 'SAC',
|
107
|
-
|
125
|
+
'space_names' => ['M S1 Apartment']},
|
108
126
|
{'type' => 'SAC',
|
109
|
-
|
127
|
+
'space_names' => ['M S2 Apartment']},
|
110
128
|
{'type' => 'SAC',
|
111
|
-
|
129
|
+
'space_names' => ['T SW Apartment']},
|
112
130
|
{'type' => 'SAC',
|
113
|
-
|
131
|
+
'space_names' => ['T NW Apartment']},
|
114
132
|
{'type' => 'SAC',
|
115
|
-
|
133
|
+
'space_names' => ['T SE Apartment']},
|
116
134
|
{'type' => 'SAC',
|
117
|
-
|
135
|
+
'space_names' => ['T NE Apartment']},
|
118
136
|
{'type' => 'SAC',
|
119
|
-
|
137
|
+
'space_names' => ['T N1 Apartment']},
|
120
138
|
{'type' => 'SAC',
|
121
|
-
|
139
|
+
'space_names' => ['T N2 Apartment']},
|
122
140
|
{'type' => 'SAC',
|
123
|
-
|
141
|
+
'space_names' => ['T S1 Apartment']},
|
124
142
|
{'type' => 'SAC',
|
125
|
-
|
143
|
+
'space_names' => ['T S2 Apartment']},
|
126
144
|
{'type' => 'SAC',
|
127
|
-
|
128
|
-
|
145
|
+
'space_names' => ['Office']}
|
146
|
+
]
|
129
147
|
|
130
148
|
case building_vintage
|
131
149
|
when 'DOE Ref 1980-2004', 'DOE Ref Pre-1980'
|
@@ -157,12 +175,14 @@ class OpenStudio::Model::Model
|
|
157
175
|
|
158
176
|
OpenStudio::logFree(OpenStudio::Info, 'openstudio.model.Model', 'Started building type specific adjustments')
|
159
177
|
|
178
|
+
|
160
179
|
# adjust the cooling setpoint
|
161
180
|
self.adjust_clg_setpoint(building_vintage,climate_zone)
|
162
181
|
# add elevator and lights&fans for the ground floor corridor
|
163
182
|
self.add_extra_equip_corridor(building_vintage)
|
164
183
|
# add extra infiltration for ground floor corridor
|
165
184
|
self.add_door_infiltration(building_vintage,climate_zone)
|
185
|
+
|
166
186
|
|
167
187
|
OpenStudio::logFree(OpenStudio::Info, 'openstudio.model.Model', 'Finished building type specific adjustments')
|
168
188
|
|
@@ -184,6 +204,7 @@ class OpenStudio::Model::Model
|
|
184
204
|
end
|
185
205
|
end
|
186
206
|
|
207
|
+
|
187
208
|
# add elevator and lights&fans for the ground floor corridor
|
188
209
|
def add_extra_equip_corridor(building_vintage)
|
189
210
|
corridor_ground_space = self.getSpaceByName('G Corridor').get
|
@@ -236,7 +257,7 @@ class OpenStudio::Model::Model
|
|
236
257
|
|
237
258
|
def update_waterheater_loss_coefficient(building_vintage)
|
238
259
|
case building_vintage
|
239
|
-
when '90.1-2004', '90.1-2007', '90.1-2010', '90.1-2013'
|
260
|
+
when '90.1-2004', '90.1-2007', '90.1-2010', '90.1-2013', 'NECB 2011'
|
240
261
|
self.getWaterHeaterMixeds.sort.each do |water_heater|
|
241
262
|
water_heater.setOffCycleLossCoefficienttoAmbientTemperature(46.288874618)
|
242
263
|
water_heater.setOnCycleLossCoefficienttoAmbientTemperature(46.288874618)
|
@@ -3,8 +3,50 @@
|
|
3
3
|
class OpenStudio::Model::Model
|
4
4
|
|
5
5
|
def define_space_type_map(building_type, building_vintage, climate_zone)
|
6
|
-
|
7
|
-
|
6
|
+
|
7
|
+
|
8
|
+
space_type_map = nil
|
9
|
+
case building_vintage
|
10
|
+
when 'NECB 2011'
|
11
|
+
space_type_map ={
|
12
|
+
"Dormitory - living quarters" => ["Floor 1 Anesthesia", "Floor 1 Bio Haz", "Floor 1 Cafe",
|
13
|
+
"Floor 1 Clean", "Floor 1 Clean Work", "Floor 1 Dictation",
|
14
|
+
"Floor 1 Dressing Room", "Floor 1 Electrical Room", "Floor 1 Elevator Pump Room",
|
15
|
+
"Floor 1 Operating Room 1", "Floor 1 Operating Room 2", "Floor 1 Operating Room 3",
|
16
|
+
"Floor 1 Humid", "Floor 1 IT Hall", "Floor 1 IT Room", "Floor 1 Lobby Hall",
|
17
|
+
"Floor 1 Lobby", "Floor 1 Lobby Toilet", "Floor 1 Locker Room Hall",
|
18
|
+
"Floor 1 Locker Room", "Floor 1 Lounge", "Floor 1 Med Gas",
|
19
|
+
"Floor 1 MRI Control Room", "Floor 1 MRI Hall", "Floor 1 MRI Room", "Floor 1 MRI Toilet",
|
20
|
+
"Floor 1 Nourishment", "Floor 1 Nurse Hall", "Floor 1 Nurse Janitor",
|
21
|
+
"Floor 1 Nurse Station", "Floor 1 Nurse Toilet", "Floor 1 Office",
|
22
|
+
"Floor 1 PACU", "Floor 1 Pre-Op Hall", "Floor 1 Pre-Op Room 1", "Floor 1 Pre-Op Room 2",
|
23
|
+
"Floor 1 Pre-Op Toilet", "Floor 1 Procedure Room", "Floor 1 Reception Hall",
|
24
|
+
"Floor 1 Reception", "Floor 1 Recovery Room", "Floor 1 Scheduling", "Floor 1 Scrub",
|
25
|
+
"Floor 1 Soil Hold", "Floor 1 Soil", "Floor 1 Soil Work", "Floor 1 Step Down",
|
26
|
+
"Floor 1 Sterile Hall", "Floor 1 Sterile Storage", "Floor 1 Storage",
|
27
|
+
"Floor 1 Sub-Sterile", "Floor 1 Utility Hall", "Floor 1 Utility Janitor",
|
28
|
+
"Floor 1 Utility Room", "Floor 1 Vestibule", "Floor 2 Conference",
|
29
|
+
"Floor 2 Conference Toilet", "Floor 2 Dictation", "Floor 2 Exam 1", "Floor 2 Exam 2",
|
30
|
+
"Floor 2 Exam 3", "Floor 2 Exam 4", "Floor 2 Exam 5", "Floor 2 Exam 6", "Floor 2 Exam 7",
|
31
|
+
"Floor 2 Exam 8", "Floor 2 Exam 9", "Floor 2 Exam Hall 1", "Floor 2 Exam Hall 2",
|
32
|
+
"Floor 2 Exam Hall 3", "Floor 2 Exam Hall 4", "Floor 2 Exam Hall 5",
|
33
|
+
"Floor 2 Exam Hall 6", "Floor 2 Janitor", "Floor 2 Lounge", "Floor 2 Nurse Station 1",
|
34
|
+
"Floor 2 Nurse Station 2", "Floor 2 Office Hall", "Floor 2 Office", "Floor 2 Reception Hall",
|
35
|
+
"Floor 2 Reception", "Floor 2 Reception Toilet", "Floor 2 Scheduling 1",
|
36
|
+
"Floor 2 Scheduling 2", "Floor 2 Storage 1", "Floor 2 Storage 2",
|
37
|
+
"Floor 2 Storage 3", "Floor 2 Utility", "Floor 2 Work Hall",
|
38
|
+
"Floor 2 Work", "Floor 2 Work Toilet", "Floor 2 X-Ray", "Floor 3 Dressing Room",
|
39
|
+
"Floor 3 Elevator Hall", "Floor 3 Humid", "Floor 3 Janitor", "Floor 3 Locker",
|
40
|
+
"Floor 3 Lounge", "Floor 3 Lounge Toilet", "Floor 3 Mechanical Hall",
|
41
|
+
"Floor 3 Mechanical", "Floor 3 Office Hall", "Floor 3 Office", "Floor 3 Office Toilet",
|
42
|
+
"Floor 3 Physical Therapy 1", "Floor 3 Physical Therapy 2", "Floor 3 Physical Therapy Toilet",
|
43
|
+
"Floor 3 Storage 1", "Floor 3 Storage 2", "Floor 3 Treatment",
|
44
|
+
"Floor 3 Undeveloped 1", "Floor 3 Undeveloped 2",
|
45
|
+
"Floor 3 Utility", "Floor 3 Work", "NE Stair", "NW Elevator", "NW Stair", "SW Stair"]
|
46
|
+
}
|
47
|
+
else
|
48
|
+
space_type_map = {
|
49
|
+
# 'Floor 1 Anesthesia', 'Floor 1 Bio Haz', 'Floor 1 Cafe', 'Floor 1 Clean', 'Floor 1 Clean Work', 'Floor 1 Dictation', 'Floor 1 Dressing Room', 'Floor 1 Electrical Room', 'Floor 1 Elevator Pump Room', 'Floor 1 Humid', 'Floor 1 IT Hall', 'Floor 1 IT Room', 'Floor 1 Lobby', 'Floor 1 Lobby Hall', 'Floor 1 Lobby Toilet', 'Floor 1 Locker Room', 'Floor 1 Locker Room Hall', 'Floor 1 Lounge', 'Floor 1 Med Gas', 'Floor 1 MRI Control Room', 'Floor 1 MRI Hall', 'Floor 1 MRI Room', 'Floor 1 MRI Toilet', 'Floor 1 Nourishment', 'Floor 1 Nurse Hall', 'Floor 1 Nurse Janitor', 'Floor 1 Nurse Station', 'Floor 1 Nurse Toilet', 'Floor 1 Office', 'Floor 1 Operating Room 1', 'Floor 1 Operating Room 2', 'Floor 1 Operating Room 3', 'Floor 1 PACU', 'Floor 1 Pre-Op Hall', 'Floor 1 Pre-Op Room 1', 'Floor 1 Pre-Op Room 2', 'Floor 1 Pre-Op Toilet', 'Floor 1 Procedure Room', 'Floor 1 Reception', 'Floor 1 Reception Hall', 'Floor 1 Recovery Room', 'Floor 1 Scheduling', 'Floor 1 Scrub', 'Floor 1 Soil', 'Floor 1 Soil Hold', 'Floor 1 Soil Work', 'Floor 1 Step Down', 'Floor 1 Sterile Hall', 'Floor 1 Sterile Storage', 'Floor 1 Storage', 'Floor 1 Sub-Sterile', 'Floor 1 Utility Hall', 'Floor 1 Utility Janitor', 'Floor 1 Utility Room', 'Floor 1 Vestibule', 'Floor 2 Conference', 'Floor 2 Conference Toilet', 'Floor 2 Dictation', 'Floor 2 Exam 1', 'Floor 2 Exam 2', 'Floor 2 Exam 3', 'Floor 2 Exam 4', 'Floor 2 Exam 5', 'Floor 2 Exam 6', 'Floor 2 Exam 7', 'Floor 2 Exam 8', 'Floor 2 Exam 9', 'Floor 2 Exam Hall 1', 'Floor 2 Exam Hall 2', 'Floor 2 Exam Hall 3', 'Floor 2 Exam Hall 4', 'Floor 2 Exam Hall 5', 'Floor 2 Exam Hall 6', 'Floor 2 Janitor', 'Floor 2 Lounge', 'Floor 2 Nurse Station 1', 'Floor 2 Nurse Station 2', 'Floor 2 Office', 'Floor 2 Office Hall', 'Floor 2 Reception', 'Floor 2 Reception Hall', 'Floor 2 Reception Toilet', 'Floor 2 Scheduling 1', 'Floor 2 Scheduling 2', 'Floor 2 Storage 1', 'Floor 2 Storage 2', 'Floor 2 Storage 3', 'Floor 2 Utility', 'Floor 2 Work', 'Floor 2 Work Hall', 'Floor 2 Work Toilet', 'Floor 2 X-Ray', 'Floor 3 Dressing Room', 'Floor 3 Elevator Hall', 'Floor 3 Humid', 'Floor 3 Janitor', 'Floor 3 Locker', 'Floor 3 Lounge', 'Floor 3 Lounge Toilet', 'Floor 3 Mechanical', 'Floor 3 Mechanical Hall', 'Floor 3 Office', 'Floor 3 Office Hall', 'Floor 3 Office Toilet', 'Floor 3 Physical Therapy 1', 'Floor 3 Physical Therapy 2', 'Floor 3 Physical Therapy Toilet', 'Floor 3 Storage 1', 'Floor 3 Storage 2', 'Floor 3 Treatment', 'Floor 3 Undeveloped 1', 'Floor 3 Undeveloped 2', 'Floor 3 Utility', 'Floor 3 Work', 'NE Stair', 'NW Elevator', 'NW Stair', 'SW Stair'
|
8
50
|
|
9
51
|
# TODO: still need to put these into their space types...
|
10
52
|
# all zones mapped
|
@@ -61,10 +103,14 @@ class OpenStudio::Model::Model
|
|
61
103
|
# Add new space type 'Undeveloped'
|
62
104
|
'Undeveloped' => ['Floor 3 Undeveloped 1', 'Floor 3 Undeveloped 2']
|
63
105
|
}
|
106
|
+
end
|
107
|
+
|
64
108
|
return space_type_map
|
109
|
+
|
65
110
|
end
|
66
111
|
|
67
112
|
def define_hvac_system_map(building_type, building_vintage, climate_zone)
|
113
|
+
|
68
114
|
case building_vintage
|
69
115
|
when '90.1-2004', '90.1-2007', '90.1-2010', '90.1-2013'
|
70
116
|
system_to_space_map = [
|
@@ -230,7 +276,6 @@ class OpenStudio::Model::Model
|
|
230
276
|
]
|
231
277
|
end
|
232
278
|
|
233
|
-
|
234
279
|
return system_to_space_map
|
235
280
|
end
|
236
281
|
|
@@ -294,6 +339,7 @@ class OpenStudio::Model::Model
|
|
294
339
|
return true
|
295
340
|
end
|
296
341
|
|
342
|
+
|
297
343
|
def adjust_clg_setpoint(building_vintage,climate_zone)
|
298
344
|
self.getSpaceTypes.sort.each do |space_type|
|
299
345
|
space_type_name = space_type.name.get
|
@@ -349,6 +395,7 @@ class OpenStudio::Model::Model
|
|
349
395
|
end
|
350
396
|
end
|
351
397
|
|
398
|
+
|
352
399
|
def add_door_infiltration(building_vintage,climate_zone)
|
353
400
|
# add extra infiltration for vestibule door
|
354
401
|
case building_vintage
|
@@ -380,7 +427,7 @@ class OpenStudio::Model::Model
|
|
380
427
|
|
381
428
|
def update_waterheater_loss_coefficient(building_vintage)
|
382
429
|
case building_vintage
|
383
|
-
when '90.1-2004', '90.1-2007', '90.1-2010', '90.1-2013'
|
430
|
+
when '90.1-2004', '90.1-2007', '90.1-2010', '90.1-2013', 'NECB 2011'
|
384
431
|
self.getWaterHeaterMixeds.sort.each do |water_heater|
|
385
432
|
if water_heater.name.to_s.include?("Booster")
|
386
433
|
water_heater.setOffCycleLossCoefficienttoAmbientTemperature(1.053159296)
|
@@ -542,3 +589,4 @@ class OpenStudio::Model::Model
|
|
542
589
|
end
|
543
590
|
|
544
591
|
end
|
592
|
+
|
@@ -2,40 +2,57 @@
|
|
2
2
|
# Extend the class to add Secondary School specific stuff
|
3
3
|
class OpenStudio::Model::Model
|
4
4
|
|
5
|
-
def define_space_type_map(building_type, building_vintage, climate_zone)
|
6
|
-
|
7
|
-
space_type_map =
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
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
|
-
|
5
|
+
def define_space_type_map(building_type, building_vintage, climate_zone)
|
6
|
+
|
7
|
+
space_type_map = nil
|
8
|
+
case building_vintage
|
9
|
+
when 'NECB 2011'
|
10
|
+
space_type_map ={
|
11
|
+
"Washroom" => ["Bath_ZN_1_FLR_1"],
|
12
|
+
"Conf./meet./multi-purpose" => ["Cafeteria_ZN_1_FLR_1"],
|
13
|
+
"Lab - classrooms" => ["Computer_Class_ZN_1_FLR_1"],
|
14
|
+
"Classroom/lecture/training" => ["Corner_Class_1_Pod_1_ZN_1_FLR_1", "Corner_Class_1_Pod_2_ZN_1_FLR_1", "Corner_Class_1_Pod_3_ZN_1_FLR_1", "Corner_Class_2_Pod_1_ZN_1_FLR_1", "Corner_Class_2_Pod_2_ZN_1_FLR_1", "Corner_Class_2_Pod_3_ZN_1_FLR_1", "Mult_Class_1_Pod_1_ZN_1_FLR_1", "Mult_Class_1_Pod_2_ZN_1_FLR_1", "Mult_Class_1_Pod_3_ZN_1_FLR_1", "Mult_Class_2_Pod_1_ZN_1_FLR_1", "Mult_Class_2_Pod_2_ZN_1_FLR_1", "Mult_Class_2_Pod_3_ZN_1_FLR_1"],
|
15
|
+
"Corr. >= 2.4m wide" => ["Corridor_Pod_1_ZN_1_FLR_1", "Corridor_Pod_2_ZN_1_FLR_1", "Corridor_Pod_3_ZN_1_FLR_1", "Main_Corridor_ZN_1_FLR_1"],
|
16
|
+
"Gym - play" => ["Gym_ZN_1_FLR_1"],
|
17
|
+
"Food preparation" => ["Kitchen_ZN_1_FLR_1"],
|
18
|
+
"Library - reading" => ["Library_Media_Center_ZN_1_FLR_1"],
|
19
|
+
"Lobby - elevator" => ["Lobby_ZN_1_FLR_1"],
|
20
|
+
"Electrical/Mechanical" => ["Mech_ZN_1_FLR_1"],
|
21
|
+
"Office - enclosed" => ["Offices_ZN_1_FLR_1"]
|
22
|
+
}
|
23
|
+
else
|
24
|
+
space_type_map = {
|
25
|
+
'Office' => ['Offices_ZN_1_FLR_1'],
|
26
|
+
'Lobby' => ['Lobby_ZN_1_FLR_1'],
|
27
|
+
'Gym' => ['Gym_ZN_1_FLR_1'],
|
28
|
+
'Mechanical' => ['Mech_ZN_1_FLR_1'],
|
29
|
+
'Cafeteria' => ['Cafeteria_ZN_1_FLR_1'],
|
30
|
+
'Kitchen' => ['Kitchen_ZN_1_FLR_1'],
|
31
|
+
'Restroom' => ['Bath_ZN_1_FLR_1', 'Bathrooms_ZN_1_FLR_1'],
|
32
|
+
'Corridor' => [
|
33
|
+
'Corridor_Pod_1_ZN_1_FLR_1',
|
34
|
+
'Corridor_Pod_2_ZN_1_FLR_1',
|
35
|
+
'Corridor_Pod_3_ZN_1_FLR_1',
|
36
|
+
'Main_Corridor_ZN_1_FLR_1'
|
37
|
+
],
|
38
|
+
'Classroom' => [
|
39
|
+
'Computer_Class_ZN_1_FLR_1',
|
40
|
+
'Corner_Class_1_Pod_1_ZN_1_FLR_1',
|
41
|
+
'Corner_Class_1_Pod_2_ZN_1_FLR_1',
|
42
|
+
'Corner_Class_1_Pod_3_ZN_1_FLR_1',
|
43
|
+
'Corner_Class_2_Pod_1_ZN_1_FLR_1',
|
44
|
+
'Corner_Class_2_Pod_2_ZN_1_FLR_1',
|
45
|
+
'Corner_Class_2_Pod_3_ZN_1_FLR_1',
|
46
|
+
'Library_Media_Center_ZN_1_FLR_1',
|
47
|
+
'Mult_Class_1_Pod_1_ZN_1_FLR_1',
|
48
|
+
'Mult_Class_1_Pod_2_ZN_1_FLR_1',
|
49
|
+
'Mult_Class_1_Pod_3_ZN_1_FLR_1',
|
50
|
+
'Mult_Class_2_Pod_1_ZN_1_FLR_1',
|
51
|
+
'Mult_Class_2_Pod_2_ZN_1_FLR_1',
|
52
|
+
'Mult_Class_2_Pod_3_ZN_1_FLR_1'
|
53
|
+
]
|
54
|
+
}
|
55
|
+
end
|
39
56
|
return space_type_map
|
40
57
|
|
41
58
|
end
|
@@ -46,220 +63,220 @@ class OpenStudio::Model::Model
|
|
46
63
|
|
47
64
|
#case building_vintage
|
48
65
|
#when 'DOE Ref Pre-1980', 'DOE Ref 1980-2004'
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
66
|
+
# system_to_space_map = [
|
67
|
+
# {
|
68
|
+
# 'type' => 'PVAV',
|
69
|
+
# 'name' => 'PVAV_POD_1',
|
70
|
+
# 'space_names' =>
|
71
|
+
# [
|
72
|
+
# 'Corner_Class_1_Pod_1_ZN_1_FLR_1',
|
73
|
+
# 'Mult_Class_1_Pod_1_ZN_1_FLR_1',
|
74
|
+
# 'Corridor_Pod_1_ZN_1_FLR_1',
|
75
|
+
# 'Corner_Class_2_Pod_1_ZN_1_FLR_1',
|
76
|
+
# 'Mult_Class_2_Pod_1_ZN_1_FLR_1',
|
77
|
+
# 'Corner_Class_1_Pod_2_ZN_1_FLR_1'
|
78
|
+
# ]
|
79
|
+
# },
|
80
|
+
# {
|
81
|
+
# 'type' => 'PVAV',
|
82
|
+
# 'name' => 'PVAV_POD_2',
|
83
|
+
# 'space_names' =>
|
84
|
+
# [
|
85
|
+
# 'Mult_Class_1_Pod_2_ZN_1_FLR_1',
|
86
|
+
# 'Corridor_Pod_2_ZN_1_FLR_1',
|
87
|
+
# 'Corner_Class_2_Pod_2_ZN_1_FLR_1',
|
88
|
+
# 'Mult_Class_2_Pod_2_ZN_1_FLR_1'
|
89
|
+
# ]
|
90
|
+
# },
|
91
|
+
# {
|
92
|
+
# 'type' => 'PVAV',
|
93
|
+
# 'name' => 'PVAV_POD_3',
|
94
|
+
# 'space_names' =>
|
95
|
+
# [
|
96
|
+
# 'Corner_Class_1_Pod_3_ZN_1_FLR_1',
|
97
|
+
# 'Mult_Class_1_Pod_3_ZN_1_FLR_1',
|
98
|
+
# 'Corridor_Pod_3_ZN_1_FLR_1',
|
99
|
+
# 'Corner_Class_2_Pod_3_ZN_1_FLR_1',
|
100
|
+
# 'Mult_Class_2_Pod_3_ZN_1_FLR_1'
|
101
|
+
# ]
|
102
|
+
# },
|
103
|
+
# {
|
104
|
+
# 'type' => 'PVAV',
|
105
|
+
# 'name' => 'PVAV_OTHER',
|
106
|
+
# 'space_names' =>
|
107
|
+
# [
|
108
|
+
# 'Computer_Class_ZN_1_FLR_1',
|
109
|
+
# 'Main_Corridor_ZN_1_FLR_1',
|
110
|
+
# 'Lobby_ZN_1_FLR_1',
|
111
|
+
# 'Mech_ZN_1_FLR_1',
|
112
|
+
# 'Bath_ZN_1_FLR_1',
|
113
|
+
# 'Offices_ZN_1_FLR_1',
|
114
|
+
# 'Library_Media_Center_ZN_1_FLR_1'
|
115
|
+
# ]
|
116
|
+
# },
|
117
|
+
# {
|
118
|
+
# 'type' => 'PSZ-AC',
|
119
|
+
# 'name' => 'PSZ-AC_1-6',
|
120
|
+
# 'space_names' =>
|
121
|
+
# [
|
122
|
+
# 'Kitchen_ZN_1_FLR_1'
|
123
|
+
# ]
|
124
|
+
# },
|
125
|
+
# {
|
126
|
+
# 'type' => 'PSZ-AC',
|
127
|
+
# 'name' => 'PSZ-AC_2-5',
|
128
|
+
# 'space_names' =>
|
129
|
+
# [
|
130
|
+
# 'Gym_ZN_1_FLR_1'
|
131
|
+
# ]
|
132
|
+
# },
|
133
|
+
# {
|
134
|
+
# 'type' => 'PSZ-AC',
|
135
|
+
# 'name' => 'PSZ-AC_2-7',
|
136
|
+
# 'space_names' =>
|
137
|
+
# [
|
138
|
+
# 'Cafeteria_ZN_1_FLR_1'
|
139
|
+
# ]
|
140
|
+
# }
|
141
|
+
# ]
|
125
142
|
|
126
143
|
#when '90.1-2004', '90.1-2007', '90.1-2010', '90.1-2013'
|
127
|
-
|
144
|
+
system_to_space_map = [
|
128
145
|
{
|
129
|
-
|
130
|
-
|
131
|
-
|
146
|
+
'type' => 'PVAV',
|
147
|
+
'name' => 'PVAV_POD_1',
|
148
|
+
'space_names' =>
|
132
149
|
[
|
133
|
-
|
134
|
-
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
150
|
+
'Corner_Class_1_Pod_1_ZN_1_FLR_1',
|
151
|
+
'Mult_Class_1_Pod_1_ZN_1_FLR_1',
|
152
|
+
'Corridor_Pod_1_ZN_1_FLR_1',
|
153
|
+
'Corner_Class_2_Pod_1_ZN_1_FLR_1',
|
154
|
+
'Mult_Class_2_Pod_1_ZN_1_FLR_1'
|
155
|
+
]
|
139
156
|
},
|
140
157
|
{
|
141
|
-
|
142
|
-
|
143
|
-
|
158
|
+
'type' => 'PVAV',
|
159
|
+
'name' => 'PVAV_POD_2',
|
160
|
+
'space_names' =>
|
144
161
|
[
|
145
|
-
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
162
|
+
'Mult_Class_1_Pod_2_ZN_1_FLR_1',
|
163
|
+
'Corridor_Pod_2_ZN_1_FLR_1',
|
164
|
+
'Corner_Class_2_Pod_2_ZN_1_FLR_1',
|
165
|
+
'Mult_Class_2_Pod_2_ZN_1_FLR_1',
|
166
|
+
'Corner_Class_1_Pod_2_ZN_1_FLR_1'
|
167
|
+
]
|
151
168
|
},
|
152
169
|
{
|
153
|
-
|
154
|
-
|
155
|
-
|
170
|
+
'type' => 'PVAV',
|
171
|
+
'name' => 'PVAV_POD_3',
|
172
|
+
'space_names' =>
|
156
173
|
[
|
157
|
-
|
158
|
-
|
159
|
-
|
160
|
-
|
161
|
-
|
162
|
-
|
174
|
+
'Corner_Class_1_Pod_3_ZN_1_FLR_1',
|
175
|
+
'Mult_Class_1_Pod_3_ZN_1_FLR_1',
|
176
|
+
'Corridor_Pod_3_ZN_1_FLR_1',
|
177
|
+
'Corner_Class_2_Pod_3_ZN_1_FLR_1',
|
178
|
+
'Mult_Class_2_Pod_3_ZN_1_FLR_1'
|
179
|
+
]
|
163
180
|
},
|
164
181
|
{
|
165
|
-
|
166
|
-
|
167
|
-
|
182
|
+
'type' => 'PVAV',
|
183
|
+
'name' => 'PVAV_OTHER',
|
184
|
+
'space_names' =>
|
168
185
|
[
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
186
|
+
'Computer_Class_ZN_1_FLR_1',
|
187
|
+
'Main_Corridor_ZN_1_FLR_1',
|
188
|
+
'Lobby_ZN_1_FLR_1',
|
189
|
+
'Mech_ZN_1_FLR_1',
|
190
|
+
'Bath_ZN_1_FLR_1',
|
191
|
+
'Offices_ZN_1_FLR_1',
|
192
|
+
'Library_Media_Center_ZN_1_FLR_1'
|
193
|
+
]
|
177
194
|
},
|
178
195
|
{
|
179
|
-
|
180
|
-
|
181
|
-
|
196
|
+
'type' => 'PSZ-AC',
|
197
|
+
'name' => 'PSZ-AC_1-6',
|
198
|
+
'space_names' =>
|
182
199
|
[
|
183
|
-
|
184
|
-
|
200
|
+
'Kitchen_ZN_1_FLR_1'
|
201
|
+
]
|
185
202
|
},
|
186
203
|
{
|
187
|
-
|
188
|
-
|
189
|
-
|
204
|
+
'type' => 'PSZ-AC',
|
205
|
+
'name' => 'PSZ-AC_2-5',
|
206
|
+
'space_names' =>
|
190
207
|
[
|
191
|
-
|
192
|
-
|
208
|
+
'Gym_ZN_1_FLR_1'
|
209
|
+
]
|
193
210
|
},
|
194
211
|
{
|
195
|
-
|
196
|
-
|
197
|
-
|
212
|
+
'type' => 'PSZ-AC',
|
213
|
+
'name' => 'PSZ-AC_2-7',
|
214
|
+
'space_names' =>
|
198
215
|
[
|
199
|
-
|
200
|
-
|
216
|
+
'Cafeteria_ZN_1_FLR_1'
|
217
|
+
]
|
201
218
|
},
|
202
219
|
{
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
220
|
+
'type' => 'Exhaust Fan',
|
221
|
+
'name' => 'Kitchen Exhaust Fan',
|
222
|
+
'availability_sch_name' => 'SchoolPrimary Kitchen_Exhaust_SCH',
|
223
|
+
'flow_rate' => OpenStudio.convert(4500,'cfm','m^3/s').get,
|
224
|
+
'flow_fraction_schedule_name' => 'SchoolSecondary Kitchen_Exhaust_SCH_DCV',
|
225
|
+
'balanced_exhaust_fraction_schedule_name' => 'SchoolSecondary Kitchen Exhaust Fan Balanced Exhaust Fraction Schedule',
|
226
|
+
'space_names' =>
|
210
227
|
[
|
211
|
-
|
212
|
-
|
228
|
+
'Kitchen_ZN_1_FLR_1'
|
229
|
+
]
|
213
230
|
},
|
214
231
|
{
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
232
|
+
'type' => 'Exhaust Fan',
|
233
|
+
'name' => 'Bathrooms_ZN_1_FLR_1',
|
234
|
+
'availability_sch_name' => 'SchoolPrimary Hours_of_operation',
|
235
|
+
'flow_rate' => OpenStudio.convert(600,'cfm','m^3/s').get,
|
236
|
+
'space_names' =>
|
220
237
|
[
|
221
|
-
|
222
|
-
|
238
|
+
'Bath_ZN_1_FLR_1'
|
239
|
+
]
|
223
240
|
},
|
224
241
|
{
|
225
|
-
|
226
|
-
|
227
|
-
|
228
|
-
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
242
|
+
'type' => 'Refrigeration',
|
243
|
+
'case_type' => 'Walkin Freezer',
|
244
|
+
'cooling_capacity_per_length' => 734.0,
|
245
|
+
'length' => 3.66,
|
246
|
+
'evaporator_fan_pwr_per_length' => 68.3,
|
247
|
+
'lighting_per_length' => 33.0,
|
248
|
+
'lighting_sch_name' => 'SchoolSecondary BLDG_LIGHT_SCH',
|
249
|
+
'defrost_pwr_per_length' => 410.0,
|
250
|
+
'restocking_sch_name' => 'SchoolSecondary Kitchen_ZN_1_FLR_1_Case:1_WALKINFREEZER_WalkInStockingSched',
|
251
|
+
'cop' => 1.5,
|
252
|
+
'cop_f_of_t_curve_name' => 'RACK1_RackCOPfTCurve',
|
253
|
+
'condenser_fan_pwr' => 750.0,
|
254
|
+
'condenser_fan_pwr_curve_name' => 'RACK1_RackCondFanCurve2',
|
255
|
+
'space_names' =>
|
239
256
|
[
|
240
|
-
|
241
|
-
|
257
|
+
'Kitchen_ZN_1_FLR_1'
|
258
|
+
]
|
242
259
|
},
|
243
260
|
{
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
261
|
+
'type' => 'Refrigeration',
|
262
|
+
'case_type' => 'Display Case',
|
263
|
+
'cooling_capacity_per_length' => 734.0,
|
264
|
+
'length' => 3.66,
|
265
|
+
'evaporator_fan_pwr_per_length' => 55.0,
|
266
|
+
'lighting_per_length' => 33.0,
|
267
|
+
'lighting_sch_name' => 'SchoolSecondary BLDG_LIGHT_SCH',
|
268
|
+
'defrost_pwr_per_length' => 0.0,
|
269
|
+
'restocking_sch_name' => 'SchoolSecondary Kitchen_ZN_1_FLR_1_Case:1_WALKINFREEZER_WalkInStockingSched',
|
270
|
+
'cop' => 3.0,
|
271
|
+
'cop_f_of_t_curve_name' => 'RACK2_RackCOPfTCurve',
|
272
|
+
'condenser_fan_pwr' => 750.0,
|
273
|
+
'condenser_fan_pwr_curve_name' => 'RACK1_RackCondFanCurve2',
|
274
|
+
'space_names' =>
|
258
275
|
[
|
259
|
-
|
260
|
-
|
276
|
+
'Kitchen_ZN_1_FLR_1'
|
277
|
+
]
|
261
278
|
}
|
262
|
-
|
279
|
+
]
|
263
280
|
|
264
281
|
#end
|
265
282
|
|