lib/openstudio-standards/standards/Standards.WaterHeaterMixed.rb in openstudio-standards-0.2.10.rc2 vs lib/openstudio-standards/standards/Standards.WaterHeaterMixed.rb in openstudio-standards-0.2.10.rc3
- old
+ new
@@ -35,11 +35,11 @@
volume_m3 = water_heater_mixed.tankVolume
if volume_m3.empty?
OpenStudio.logFree(OpenStudio::Warn, 'openstudio.standards.WaterHeaterMixed', "For #{water_heater_mixed.name}, cannot find volume, standard will not be applied.")
return false
else
- volume_m3 = @instvarbuilding_type == 'MidriseApartment' ? volume_m3.get / 23 : volume_m3.get / water_heater_mixed.component_quantity
+ volume_m3 = @instvarbuilding_type == 'MidriseApartment' ? volume_m3.get / 23 : volume_m3.get / water_heater_mixed.component_quantity
end
volume_gal = OpenStudio.convert(volume_m3, 'm^3', 'gal').get
# Get the heater fuel type
fuel_type = water_heater_mixed.heaterFuelType
@@ -80,11 +80,11 @@
ef = base_ef - (vol_drt * volume_gal)
# Calculate the skin loss coefficient (UA)
# differently depending on the fuel type
if fuel_type == 'Electricity'
# Fixed water heater efficiency per PNNL
- water_heater_eff = 1
+ water_heater_eff = 1.0
ua_btu_per_hr_per_f = (41_094 * (1 / ef - 1)) / (24 * 67.5)
elsif fuel_type == 'NaturalGas'
# Fixed water heater thermal efficiency per PNNL
water_heater_eff = 0.82
# Calculate the Recovery Efficiency (RE)
@@ -100,17 +100,17 @@
# Input capacity is assumed to be the output capacity
# divided by a burner efficiency of 80%
ua_btu_per_hr_per_f = (water_heater_eff - re) * capacity_btu_per_hr / 0.8 / 67.5
end
# Two booster water heaters
- ua_btu_per_hr_per_f = water_heater_mixed.name.to_s.include?('Booster') ? ua_btu_per_hr_per_f * 2 : ua_btu_per_hr_per_f
+ ua_btu_per_hr_per_f = water_heater_mixed.name.to_s.include?('Booster') ? ua_btu_per_hr_per_f * 2 : ua_btu_per_hr_per_f
end
# Typically specified this way for large electric water heaters
if wh_props['standby_loss_base'] && wh_props['standby_loss_volume_allowance']
# Fixed water heater efficiency per PNNL
- water_heater_eff = 1
+ water_heater_eff = 1.0
# Calculate the max allowable standby loss (SL)
sl_base = wh_props['standby_loss_base']
sl_drt = wh_props['standby_loss_volume_allowance']
sl_btu_per_hr = sl_base + (sl_drt * Math.sqrt(volume_gal))
# Calculate the skin loss coefficient (UA)
@@ -119,14 +119,14 @@
end
# Typically specified this way for newer large electric water heaters
if wh_props['hourly_loss_base'] && wh_props['hourly_loss_volume_allowance']
# Fixed water heater efficiency per PNNL
- water_heater_eff = 1
+ water_heater_eff = 1.0
# Calculate the percent loss per hr
hr_loss_base = wh_props['hourly_loss_base']
hr_loss_allow = wh_props['hourly_loss_volume_allowance']
- hrly_loss_pct = hr_loss_base + (hr_loss_allow / volume_gal) / 100
+ hrly_loss_pct = hr_loss_base + (hr_loss_allow / volume_gal) / 100.0
# Convert to Btu/hr, assuming:
# Water at 120F, density = 8.25 lb/gal
# 1 Btu to raise 1 lb of water 1 F
# Therefore 8.25 Btu / gal of water * deg F
# 70F delta-T between water and zone