Skip to content

Commit

Permalink
Merge pull request #758 from NREL/hers_outputs
Browse files Browse the repository at this point in the history
Updates HERS test outputs
shorowit authored Dec 16, 2024

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
2 parents 88435a1 + b021624 commit 3b531c0
Showing 6 changed files with 51 additions and 59 deletions.
5 changes: 5 additions & 0 deletions Changelog.md
Original file line number Diff line number Diff line change
@@ -5,6 +5,11 @@ __New Features__

__Bugfixes__

## OpenStudio-ERI v1.9.2

__New Features__
- Updates HERS test outputs to match the latest RESNET accreditation forms.

## OpenStudio-ERI v1.9.1

__Bugfixes__
35 changes: 11 additions & 24 deletions hpxml-measures/workflow/tests/util.rb
Original file line number Diff line number Diff line change
@@ -1288,15 +1288,11 @@ def _write_hers_hvac_results(all_results, test_results_csv)
all_results = all_results.sort_by { |k, _v| k.downcase }.to_h
hvac_energy = {}
CSV.open(test_results_csv, 'w') do |csv|
csv << ['Test Case', 'HVAC (kWh or therm)', 'HVAC Fan (kWh)']
csv << ['Test Case', 'Heat/Cool Energy (MBtu)', 'Fan Energy (MBtu)']
all_results.each do |xml, results|
csv << [xml, results[0], results[1]]
test_name = File.basename(xml, File.extname(xml))
if xml.include?('HVAC2a') || xml.include?('HVAC2b')
hvac_energy[test_name] = results[0] / 10.0 + results[1] / 293.08
else
hvac_energy[test_name] = results[0] + results[1]
end
hvac_energy[test_name] = results[0] + results[1]
end
end
puts "Wrote results to #{test_results_csv}."
@@ -1309,20 +1305,11 @@ def _write_hers_dse_results(all_results, test_results_csv)
all_results = all_results.sort_by { |k, _v| k.downcase }.to_h
dhw_energy = {}
CSV.open(test_results_csv, 'w') do |csv|
csv << ['Test Case', 'Heat/Cool (kWh or therm)', 'HVAC Fan (kWh)']
all_results.each do |xml, results|
next unless ['HVAC3a.xml', 'HVAC3e.xml'].include? xml

csv << [xml, results[0], results[1]]
test_name = File.basename(xml, File.extname(xml))
dhw_energy[test_name] = results[0] / 10.0 + results[1] / 293.08
end
csv << ['Test Case', 'Heat/Cool Energy (MBtu)', 'Fan Energy (MBtu)']
all_results.each do |xml, results|
next if ['HVAC3a.xml', 'HVAC3e.xml'].include? xml

csv << [xml, results[0], results[1]]
test_name = File.basename(xml, File.extname(xml))
dhw_energy[test_name] = results[0] / 10.0 + results[1] / 293.08
dhw_energy[test_name] = results[0] + results[1]
end
end
puts "Wrote results to #{test_results_csv}."
@@ -1335,10 +1322,10 @@ def _write_hers_hot_water_results(all_results, test_results_csv)
all_results = all_results.sort_by { |k, _v| k.downcase }.to_h
dhw_energy = {}
CSV.open(test_results_csv, 'w') do |csv|
csv << ['Test Case', 'DHW Energy (therms)', 'Recirc Pump (kWh)']
csv << ['Test Case', 'DHW Energy (MBtu)', 'Pump Energy (MBtu)']
all_results.each do |xml, result|
wh_energy, recirc_energy = result
csv << [xml, (wh_energy * 10.0).round(1), (recirc_energy * 293.08).round(1)]
csv << [xml, wh_energy, recirc_energy]
test_name = File.basename(xml, File.extname(xml))
dhw_energy[test_name] = wh_energy + recirc_energy
end
@@ -1357,15 +1344,15 @@ def _get_simulation_load_results(results)

def _get_simulation_hvac_energy_results(results, is_heat, is_electric_heat)
if not is_heat
hvac = UnitConversions.convert(results["End Use: #{FT::Elec}: #{EUT::Cooling} (MBtu)"], 'MBtu', 'kwh').round(2)
hvac_fan = UnitConversions.convert(results["End Use: #{FT::Elec}: #{EUT::CoolingFanPump} (MBtu)"], 'MBtu', 'kwh').round(2)
hvac = results["End Use: #{FT::Elec}: #{EUT::Cooling} (MBtu)"].round(2)
hvac_fan = results["End Use: #{FT::Elec}: #{EUT::CoolingFanPump} (MBtu)"].round(2)
else
if is_electric_heat
hvac = UnitConversions.convert(results["End Use: #{FT::Elec}: #{EUT::Heating} (MBtu)"], 'MBtu', 'kwh').round(2)
hvac = results["End Use: #{FT::Elec}: #{EUT::Heating} (MBtu)"].round(2)
else
hvac = UnitConversions.convert(results["End Use: #{FT::Gas}: #{EUT::Heating} (MBtu)"], 'MBtu', 'therm').round(2)
hvac = results["End Use: #{FT::Gas}: #{EUT::Heating} (MBtu)"].round(2)
end
hvac_fan = UnitConversions.convert(results["End Use: #{FT::Elec}: #{EUT::HeatingFanPump} (MBtu)"], 'MBtu', 'kwh').round(2)
hvac_fan = results["End Use: #{FT::Elec}: #{EUT::HeatingFanPump} (MBtu)"].round(2)
end

assert_operator(hvac, :>, 0)
16 changes: 8 additions & 8 deletions workflow/tests/base_results/RESNET_Test_4.4_HVAC.csv
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
Test Case,HVAC (kWh or therm),HVAC Fan (kWh)
HVAC1a.xml,6215.45,958.05
HVAC1b.xml,4618.8,958.05
HVAC2a.xml,639.31,542.47
HVAC2b.xml,554.07,542.47
HVAC2c.xml,7658.24,1129.2
HVAC2d.xml,4642.54,1129.2
HVAC2e.xml,14614.58,542.47
Test Case,Heat/Cool Energy (MBtu),Fan Energy (MBtu)
HVAC1a.xml,21.21,3.27
HVAC1b.xml,15.76,3.27
HVAC2a.xml,63.93,1.85
HVAC2b.xml,55.41,1.85
HVAC2c.xml,26.13,3.85
HVAC2d.xml,15.84,3.85
HVAC2e.xml,49.87,1.85
18 changes: 9 additions & 9 deletions workflow/tests/base_results/RESNET_Test_4.5_DSE.csv
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
Test Case,Heat/Cool (kWh or therm),HVAC Fan (kWh)
HVAC3a.xml,562.71,327.95
HVAC3e.xml,6217.5,957.76
HVAC3b.xml,687.53,579.11
HVAC3c.xml,593.94,383.04
HVAC3d.xml,648.15,566.8
HVAC3f.xml,7859.87,1211.85
HVAC3g.xml,6633.66,1019.3
HVAC3h.xml,7389.79,1113.96
Test Case,Heat/Cool Energy (MBtu),Fan Energy (MBtu)
HVAC3a.xml,56.27,1.12
HVAC3b.xml,68.75,1.98
HVAC3c.xml,59.39,1.31
HVAC3d.xml,64.82,1.93
HVAC3e.xml,21.22,3.27
HVAC3f.xml,26.82,4.14
HVAC3g.xml,22.64,3.48
HVAC3h.xml,25.22,3.8
30 changes: 15 additions & 15 deletions workflow/tests/base_results/RESNET_Test_4.6_Hot_Water.csv
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
Test Case,DHW Energy (therms),Recirc Pump (kWh)
L100AD-HW-01.xml,194.9,0.0
L100AD-HW-02.xml,259.5,0.0
L100AD-HW-03.xml,174.1,0.0
L100AD-HW-04.xml,251.2,0.0
L100AD-HW-05.xml,548.5,439.6
L100AD-HW-06.xml,227.5,5.9
L100AD-HW-07.xml,206.5,0.0
L100AM-HW-01.xml,110.3,0.0
L100AM-HW-02.xml,135.6,0.0
L100AM-HW-03.xml,90.8,0.0
L100AM-HW-04.xml,132.5,0.0
L100AM-HW-05.xml,295.7,439.6
L100AM-HW-06.xml,122.7,5.9
L100AM-HW-07.xml,120.4,0.0
Test Case,DHW Energy (MBtu),Pump Energy (MBtu)
L100AD-HW-01.xml,19.49,0.0
L100AD-HW-02.xml,25.95,0.0
L100AD-HW-03.xml,17.41,0.0
L100AD-HW-04.xml,25.12,0.0
L100AD-HW-05.xml,54.85,1.5
L100AD-HW-06.xml,22.75,0.02
L100AD-HW-07.xml,20.65,0.0
L100AM-HW-01.xml,11.03,0.0
L100AM-HW-02.xml,13.56,0.0
L100AM-HW-03.xml,9.08,0.0
L100AM-HW-04.xml,13.25,0.0
L100AM-HW-05.xml,29.57,1.5
L100AM-HW-06.xml,12.27,0.02
L100AM-HW-07.xml,12.04,0.0
6 changes: 3 additions & 3 deletions workflow/tests/util.rb
Original file line number Diff line number Diff line change
@@ -457,16 +457,16 @@ def _get_reference_home_components(hpxml, test_num, version)
results['Window SHGCo'] = win_shgc_htg.round(2)
assert_equal(win_shgc_htg, win_shgc_clg)
else
results['Window SHGCo (heating)'] = win_shgc_htg.round(2)
results['Window SHGCo (cooling)'] = win_shgc_clg.round(2)
results['Window SHGCo (heating)'] = win_shgc_htg.round(2)
results['Window SHGCo (cooling)'] = win_shgc_clg.round(2)
end

# Infiltration
sla, _ach50 = _get_infiltration(hpxml_bldg)
results['SLAo (ft2/ft2)'] = sla.round(5)

# Internal gains
xml_it_sens, xml_it_lat = _get_internal_gains(hpxml_bldg, hpxml.header.eri_calculation_version)
xml_it_sens, xml_it_lat = _get_internal_gains(hpxml_bldg, eri_version)
results['Sensible Internal gains (Btu/day)'] = xml_it_sens.round(0)
results['Latent Internal gains (Btu/day)'] = xml_it_lat.round(0)

0 comments on commit 3b531c0

Please sign in to comment.