honeybee-openstudio 2.38.8 → 2.38.9

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 149f0edae2e446e882a6fb962684366c187b6dcd2f703efabecf9d20fb623a29
4
- data.tar.gz: 02aca6abeb6bfe134b30269cd044e1942e64e1e56ec0b010c329e9d3e7a46c55
3
+ metadata.gz: a2f2bfb60c9779aff40ac4d86c6d2d3416fd1c34722b5378874b6b85cceaf8cd
4
+ data.tar.gz: e1638526a3701c0035efdb8695fdbb026364ecc85c42a38e262de43e9beb729f
5
5
  SHA512:
6
- metadata.gz: 9fc393de3df070bd30390d747b2c8e8007f7c1cf75e0e8d7ac5a9133c16748384f8d0c7758b72b9c147b6765ec01fabb122099c706e89995516842fb083c4d16
7
- data.tar.gz: d2cd89048f5d5d39e65b901570e38d686a6b69c3f6c02c94a64a82131b94bd556a5b535160bd87e16ba47e77f374181db9dccf73ff8b11e3a8f6b4359ae47436
6
+ metadata.gz: 619bfa717c81e91aea5f481a6f86f538fb7c1cb4a508b4e8fa1695826096bde37e892de9fae98b3df71036c295b1ba2aed9f5f008a154e8ecfee2b6643e8b9e8
7
+ data.tar.gz: 22b5002543933e86a89192ae2fb6e0780306ca94308fd808651c93135f0f9f67145894e04f6188ac330d4345fb13ea49c8709dff26869af4eb6ea08548d77267
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = 'honeybee-openstudio'
7
- spec.version = '2.38.8'
7
+ spec.version = '2.38.9'
8
8
  spec.authors = ['Tanushree Charan', 'Dan Macumber', 'Chris Mackey', 'Mostapha Sadeghipour Roudsari']
9
9
  spec.email = ['tanushree.charan@nrel.gov', 'chris@ladybug.tools']
10
10
 
@@ -128,20 +128,12 @@ class OpenStudio::Model::Model
128
128
  end
129
129
 
130
130
  # get the various controls for the radiant system
131
- if rad_props[:minimum_operation_time]
132
- minimum_operation = rad_props[:minimum_operation_time]
133
- else
134
- minimum_operation = 1
135
- end
136
131
  if rad_props[:switch_over_time]
137
132
  switch_over_time = rad_props[:switch_over_time]
138
133
  else
139
134
  switch_over_time = 24
140
135
  end
141
136
 
142
- # get the start and end hour from the input zones
143
- start_hour, end_hour = start_end_hour_from_zones_occupancy(zones)
144
-
145
137
  # add radiant system to the conditioned zones
146
138
  include_carpet = false
147
139
  control_strategy = 'proportional_control'
@@ -162,9 +154,6 @@ class OpenStudio::Model::Model
162
154
  radiant_type: radiant_type,
163
155
  control_strategy: control_strategy,
164
156
  include_carpet: include_carpet,
165
- model_occ_hr_start: start_hour,
166
- model_occ_hr_end: end_hour,
167
- minimum_operation: minimum_operation,
168
157
  switch_over_time: switch_over_time,
169
158
  cz_mult: cz_mult)
170
159
 
@@ -175,93 +164,6 @@ class OpenStudio::Model::Model
175
164
 
176
165
  end
177
166
 
178
- # get the start and end hour from the occupancy schedules of thermal zones
179
- def start_end_hour_from_zones_occupancy(thermal_zones, threshold: 0.1)
180
- # set the default start and end hour in the event there's no occupancy
181
- start_hour = 12
182
- end_hour = 12
183
- # loop through the occupancy schedules and get the lowest start hour; highest end hour
184
- thermal_zones.each do |zone|
185
- zone.spaces.each do |space|
186
- # gather all of the people objects assigned to the sapce
187
- peoples = []
188
- unless space.spaceType.empty?
189
- space_type = space.spaceType.get
190
- unless space_type.people.empty?
191
- space_type.people.each do |ppl|
192
- peoples << ppl
193
- end
194
- end
195
- end
196
- space.people.each do |ppl|
197
- peoples << ppl
198
- end
199
- # loop through the pople and gather all occupancy schedules
200
- peoples.each do |people|
201
- occupancy_sch_opt = people.numberofPeopleSchedule
202
- unless occupancy_sch_opt.empty?
203
- occupancy_sch = occupancy_sch_opt.get
204
- if occupancy_sch.to_ScheduleRuleset.is_initialized
205
- occupancy_sch = occupancy_sch.to_ScheduleRuleset.get
206
- # gather all of the day schedules across the schedule ruleset
207
- schedule_days, day_ids = [], []
208
- required_days = [
209
- occupancy_sch.defaultDaySchedule,
210
- occupancy_sch.summerDesignDaySchedule,
211
- occupancy_sch.winterDesignDaySchedule,
212
- occupancy_sch.holidaySchedule
213
- ]
214
- required_days.each do |day_sch|
215
- unless day_ids.include? day_sch.nameString
216
- schedule_days << day_sch
217
- day_ids << day_sch.nameString
218
- end
219
- end
220
- occupancy_sch.scheduleRules.each do |schedule_rule|
221
- day_sch = schedule_rule.daySchedule
222
- unless day_ids.include? day_sch.nameString
223
- schedule_days << day_sch
224
- day_ids << day_sch.nameString
225
- end
226
- end
227
- # loop through the day schedules and see if the start and end hours should be changed
228
- schedule_days.each do |day_sch|
229
- time_until = [1]
230
- day_sch.times.each do |time|
231
- time_until << time.hours
232
- end
233
- final_time = time_until[-2]
234
- day_sch.values.zip(time_until).each do |value, time|
235
- if value > threshold
236
- if time < start_hour
237
- start_hour = time
238
- end
239
- if time > end_hour
240
- end_hour = time
241
- end
242
- if time == final_time
243
- start_hour = 1
244
- end_hour = 24
245
- end
246
- end
247
- end
248
- end
249
- end
250
- end
251
- end
252
- end
253
- end
254
-
255
- # if no values were set, just set the system to be on all of the time
256
- if start_hour == 12 or start_hour == 0
257
- start_hour = 1
258
- end
259
- if end_hour == 12
260
- end_hour = 24
261
- end
262
- return start_hour, end_hour
263
- end
264
-
265
167
  def model_add_low_temp_radiant(std,
266
168
  thermal_zones,
267
169
  hot_water_loop,
@@ -273,9 +175,6 @@ class OpenStudio::Model::Model
273
175
  model_occ_hr_end: 24.0,
274
176
  control_strategy: 'proportional_control',
275
177
  proportional_gain: 0.3,
276
- minimum_operation: 1,
277
- weekend_temperature_reset: 2,
278
- early_reset_out_arg: 20,
279
178
  switch_over_time: 24.0,
280
179
  cz_mult: 4)
281
180
 
@@ -598,18 +497,18 @@ class OpenStudio::Model::Model
598
497
  # rename nodes before adding EMS code
599
498
  std.rename_plant_loop_nodes(self)
600
499
 
500
+ # TODO: Un-comment this once these controls are fixed (Matt made a lot of changes for OpenStudio 3.8)
601
501
  # set radiant loop controls
602
- if control_strategy == 'proportional_control'
603
- std.model_add_radiant_proportional_controls(self, zone, radiant_loop,
604
- radiant_type: radiant_type,
605
- model_occ_hr_start: model_occ_hr_start,
606
- model_occ_hr_end: model_occ_hr_end,
607
- proportional_gain: proportional_gain,
608
- minimum_operation: minimum_operation,
609
- weekend_temperature_reset: weekend_temperature_reset,
610
- early_reset_out_arg: early_reset_out_arg,
611
- switch_over_time: switch_over_time)
612
- end
502
+ #if control_strategy == 'proportional_control'
503
+ # std.model_add_radiant_proportional_controls(self, zone, radiant_loop,
504
+ # radiant_temperature_control_type: 'SurfaceFaceTemperature',
505
+ # use_zone_occupancy_for_control: true,
506
+ # occupied_percentage_threshold: 0.10,
507
+ # model_occ_hr_start: model_occ_hr_start,
508
+ # model_occ_hr_end: model_occ_hr_end,
509
+ # proportional_gain: proportional_gain,
510
+ # switch_over_time: switch_over_time)
511
+ #end
613
512
  end
614
513
 
615
514
  return radiant_loops
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: honeybee-openstudio
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.38.8
4
+ version: 2.38.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tanushree Charan
@@ -11,7 +11,7 @@ authors:
11
11
  autorequire:
12
12
  bindir: exe
13
13
  cert_chain: []
14
- date: 2024-04-10 00:00:00.000000000 Z
14
+ date: 2024-05-24 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: json_pure