honeybee-openstudio 2.33.1 → 2.33.2
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/honeybee-openstudio.gemspec +1 -1
- data/lib/to_openstudio/hvac/template.rb +88 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9f0ab9bc81366ae4f3cecd686b7b84f27116f85d279f19b70debffcbfea19be4
|
4
|
+
data.tar.gz: e3a6188aba6202306fee8a740469a1c0c2420bce2404f899df8371a8c7c2469f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ee8d75b9ac45f6de8187d1945988f880050faf2c762d643a36adf2e513a50931451e52e05b604ff19a476d9bfb43a3b50872d4cd2037f05471307bf617385fb3
|
7
|
+
data.tar.gz: 54a8536d0fd02be9f1829776adc0b8eefc45dfaef920fed8cfc46feabac79777218a257fbdba3a88d195d77f137ec6fc6c22be5d2bef8ad197b3ca9e8ec67c15
|
data/honeybee-openstudio.gemspec
CHANGED
@@ -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.33.
|
7
|
+
spec.version = '2.33.2'
|
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
|
|
@@ -58,10 +58,11 @@ module Honeybee
|
|
58
58
|
|
59
59
|
# make the standard applier
|
60
60
|
if @hash[:vintage]
|
61
|
-
|
61
|
+
standard_id = @@vintage_mapper[@hash[:vintage].to_sym]
|
62
62
|
else
|
63
|
-
|
63
|
+
standard_id = @@vintage_mapper[hvac_defaults[:vintage][:default].to_sym]
|
64
64
|
end
|
65
|
+
standard = Standard.build(standard_id)
|
65
66
|
|
66
67
|
# get the default equipment type
|
67
68
|
if @hash[:equipment_type]
|
@@ -114,6 +115,79 @@ module Honeybee
|
|
114
115
|
end
|
115
116
|
end
|
116
117
|
|
118
|
+
# set the efficiencies of supply components in the air loop
|
119
|
+
if !os_air_loops.empty?
|
120
|
+
os_air_loops.each do |os_air_loop|
|
121
|
+
# set the supply fan efficiency
|
122
|
+
unless os_air_loop.supplyFan.empty?
|
123
|
+
s_fan = os_air_loop.supplyFan.get
|
124
|
+
s_fan = fan_from_component(s_fan)
|
125
|
+
unless s_fan.nil?
|
126
|
+
s_fan.setMaximumFlowRate(1)
|
127
|
+
standard.fan_apply_standard_minimum_motor_efficiency(
|
128
|
+
s_fan, standard.fan_brake_horsepower(s_fan))
|
129
|
+
s_fan.autosizeMaximumFlowRate()
|
130
|
+
end
|
131
|
+
end
|
132
|
+
# set the return fan efficiency
|
133
|
+
unless os_air_loop.returnFan.empty?
|
134
|
+
ex_fan = os_air_loop.returnFan.get
|
135
|
+
ex_fan = fan_from_component(ex_fan)
|
136
|
+
unless ex_fan.nil?
|
137
|
+
ex_fan.setMaximumFlowRate(1)
|
138
|
+
standard.fan_apply_standard_minimum_motor_efficiency(
|
139
|
+
ex_fan, standard.fan_brake_horsepower(ex_fan))
|
140
|
+
ex_fan.autosizeMaximumFlowRate()
|
141
|
+
end
|
142
|
+
end
|
143
|
+
end
|
144
|
+
end
|
145
|
+
|
146
|
+
# get the boilers and assign the correct efficiency
|
147
|
+
if equipment_type.to_s.include? 'Boiler'
|
148
|
+
openstudio_model.getBoilerHotWaters.sort.each do |obj|
|
149
|
+
obj.setNominalCapacity(40000) # set to a dummy value for the method
|
150
|
+
standard.boiler_hot_water_apply_efficiency_and_curves(obj)
|
151
|
+
obj.autosizeNominalCapacity() # set it back to autosize
|
152
|
+
obj.setName(standard_id + ' Boiler')
|
153
|
+
end
|
154
|
+
end
|
155
|
+
|
156
|
+
# get the chillers and assign a reasonable COP from the standard
|
157
|
+
if equipment_type.to_s.include? 'Chiller'
|
158
|
+
# set the chiller efficiency
|
159
|
+
clg_tower_objs = openstudio_model.getCoolingTowerSingleSpeeds
|
160
|
+
openstudio_model.getChillerElectricEIRs.sort.each do |obj|
|
161
|
+
obj.setReferenceCapacity(2000000) # set to a dummy value for method
|
162
|
+
if obj.name.empty?
|
163
|
+
obj_name = standard_id + ' Chiller'
|
164
|
+
else
|
165
|
+
obj_name = obj.name.get
|
166
|
+
end
|
167
|
+
standard.chiller_electric_eir_apply_efficiency_and_curves(obj, clg_tower_objs)
|
168
|
+
obj.autosizeReferenceCapacity() # set it back to autosize
|
169
|
+
obj.setName(obj_name)
|
170
|
+
end
|
171
|
+
end
|
172
|
+
|
173
|
+
# set the efficiency of any gas heaters
|
174
|
+
if equipment_type.to_s.include? 'GasHeaters'
|
175
|
+
zones.each do |zon|
|
176
|
+
zon.equipment.each do |equp|
|
177
|
+
if !equp.to_ZoneHVACUnitHeater.empty?
|
178
|
+
unit_heater = equp.to_ZoneHVACUnitHeater.get
|
179
|
+
coil = unit_heater.heatingCoil
|
180
|
+
unless coil.to_CoilHeatingGas.empty?
|
181
|
+
coil = coil.to_CoilHeatingGas.get
|
182
|
+
coil.setNominalCapacity(10000) # set to a dummy value for method
|
183
|
+
standard.coil_heating_gas_apply_efficiency_and_curves(coil)
|
184
|
+
coil.autosizeNominalCapacity() # set it back to autosize
|
185
|
+
end
|
186
|
+
end
|
187
|
+
end
|
188
|
+
end
|
189
|
+
end
|
190
|
+
|
117
191
|
# assign the economizer type if there's an air loop and the economizer is specified
|
118
192
|
if @hash[:economizer_type] && !os_air_loops.empty?
|
119
193
|
os_air_loops.each do |os_air_loop|
|
@@ -277,6 +351,18 @@ module Honeybee
|
|
277
351
|
|
278
352
|
private
|
279
353
|
|
354
|
+
def fan_from_component(fan_component)
|
355
|
+
# get a detailed fan object from a generic fan HVAC component; will be nil if it's not a fan
|
356
|
+
if !fan_component.to_FanVariableVolume.empty?
|
357
|
+
return fan_component.to_FanVariableVolume.get
|
358
|
+
elsif !fan_component.to_FanConstantVolume.empty?
|
359
|
+
return fan_component.to_FanConstantVolume.get
|
360
|
+
elsif !fan_component.to_FanOnOff.empty?
|
361
|
+
return fan_component.to_FanOnOff.get
|
362
|
+
end
|
363
|
+
nil
|
364
|
+
end
|
365
|
+
|
280
366
|
def get_existing_erv(os_air_loop)
|
281
367
|
# get an existing heat ecovery unit from an air loop; will be nil if there is none
|
282
368
|
os_air_loop.oaComponents.each do |supply_component|
|
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.33.
|
4
|
+
version: 2.33.2
|
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: 2022-
|
14
|
+
date: 2022-10-10 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: bundler
|