Skip to content

Commit

Permalink
Squashed 'hpxml-measures/' changes from 0f813a83fe..2022425e5e
Browse files Browse the repository at this point in the history
2022425e5e Merge pull request #1527 from NREL/1_and_2_speed_hvac_regressions
d5d589b4d6 Latest results.
49691011f8 Fix conflict resolution.
af0388c962 Latest results.
ea1e7f021d Update Changelog.md [ci skip]
def58da859 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into 1_and_2_speed_hvac_regressions
d741ae7421 Merge pull request #1317 from NREL/heat_pump_detailed_performance
10f45058ec Latest results.
983a79ddbb Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
87bfe1aeb9 Merge pull request #1552 from NREL/speedup_ci
1359e4509d Bugfix.
a226ff5081 Speed up measure tests for reporting measures.
6154439614 Small docs change. Moved building scope description into a new HPXML Building section. [ci skip]
da1d80e092 Merge pull request #1550 from NREL/whole_mf_timeseries_temperatures
10488e3ae5 Fix missing timeseries temperature outputs when running whole MF buildings. Add test.
22d9e4df6a Merge pull request #1548 from NREL/foundations_with_walls_only
6f6304820e Latest results.
3deebd8322 Update docs [ci skip]
483ffcbf4f Add test file.
d62712830c Allow above-grade basements/crawlspaces defined solely with Wall (not FoundationWall) elements.
319f860c55 Merge pull request #1543 from NREL/build-res-hpxml-doc-defaults
af0b8c6701 Merge pull request #1544 from NREL/docs_formatting
111190f269 Fix a few typos.
7d0241f962 Add dashes to the rest. [ci skip]
ee7c106c15 Test [ci skip]
d29c06dba7 Try unicode character to preserve dashes. [ci skip]
eef6530068 Use paragraphs in footnotes to work around readthedocs/sphinx_rtd_theme#1472
2cd420ca1e Few more href updates.
445d7a40a4 Replace all measure descriptions with href.
baccc92931 Latest results.
6daa7ce3a5 Test [ci skip]
529975bb3a Test [ci skip]
4b4903fdfe Test [ci skip]
1f8868465e Test [ci skip]
356f1e743c Test [ci skip]
eb328e35be Test [ci skip]
0605b62d89 Attempt to fix docs formatting, which changed in recent weeks. [ci skip]
b883767639 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into 1_and_2_speed_hvac_regressions
adc2d8fd3e Latest results.
a2fcdf2c80 Update readme erb to convert href to markdown.
1c6fd3dce4 Try an argument description with href.
455a0d719d Use sizing speed more places in hvac_sizing.rb. Update tests.
8c77d5930b Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
3e68033aab Merge pull request #1526 from NREL/ducted_mshp_sizing
31b63e9722 Latest results.
fae91e3323 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into ducted_mshp_sizing
8bfc8c4eb3 Merge pull request #1541 from NREL/balance_workflow_tests
f16d845e89 Merge branch 'balance_workflow_tests' of https://github.com/NREL/OpenStudio-HPXML into balance_workflow_tests
e44ad71caa Latest results.
46007f49b4 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into balance_workflow_tests
5aef27a6ae Merge pull request #1542 from NREL/fix_msgpack_hourly
0656b5a521 🤦
080a843adc Update tests and misc cleanup.
e4788c4f5a Update build measure argument descriptions with links to docs.
f4fcb5a921 Missed one update.
1e59ff5253 Fix use of hourly msgpack file. Hit this error in a BEopt test now that most of our end uses are derived from Output:Meters instead of Output:Variables.
3dd4cba484 Better balance the runtime across the two workflow CI jobs.
02207f7a83 Merge pull request #1540 from NREL/deprecation-msgs
b251c34b73 Adds error messages for all extension elements that have been moved/deprecated since v1.0, so that the input is not silently ignored. No need to do this for non-extension elements since the XSD Schema will report errors for these situations.
d9348692a1 Latest results.
218dba39a7 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
5889de415f Update unit tests.
08087e56e1 Latest results.
91b20b687a Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into ducted_mshp_sizing
933cf8ce1f CLean up changelog [ci skip]
bf81fc0b78 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into 1_and_2_speed_hvac_regressions
ebdd135e61 Latest results.
63caade040 Latest results.
416713c6ad Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into 1_and_2_speed_hvac_regressions
b55b4d78ec Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
939d869324 Latest results.
57c6489c3f Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
aeb696f579 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
a8a4c135a3 fan_speed_ratio and capacity ratio override
ecb5f33bb5 Latest results.
7448398a77 Revert change to MSHP rated fan power. Small tweak to max_cop_82 for ductless systems.
0d6450ef1c Remove deprecated variable.
20534a4387 Latest results.
a23d0d1a21 Small tweak.
2eb32c4d15 Replaces inverse calculations with regressions. Renames variables from EIR to COP.
8768fdd2d4 Latest results.
a890bb11c5 Merge branch 'ducted_mshp_sizing' of https://github.com/NREL/OpenStudio-HPXML into ducted_mshp_sizing
db9528575b Add airflow rates to CI artifact.
3e23593344 Latest results.
2b7363b382 Latest results.
c7d71f7066 Bugfix.
790b177584 Treat ducted MSHPs like ASHPs for equipment adjustments in sizing.
609f2d3553 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
e05e32269b Fix GSHP test failures and cleanup code.
bd656f94cc Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
766132a433 update_measures
9ece063a57 add nominal speed in sizing, restore get_sizing_speed
ed5b6f0395 Latest results.
89a7d03b2a Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
0c0cac417f Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
c65b59f5bd Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
bf9f8fa1fd Get rid of additional_properties.num_speeds and other cleanup. No diffs expected.
ba2c6a687d Latest results.
40b5b96c12 Bugfix.
05fca76f0b Fix fan ratio calculation.
d92e6d0a81 Update unit tests to handle new sample files.
447b7e3bde Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
247650e36d Fix rated fan power in net-to-gross calculation for cases not using detailed performance data. Create method for calculating fan power using fan power curve.
09c86473c8 Update unit test expected values.
5e2d440844 Latest results.
1e88e8a1e5 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
4c2df0d69e Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
c3988289cd Fix rated fan power in net-to-gross calculation.
dbdebba3e9 Latest results.
18b2784d94 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
2f61112118 Latest results.
a544b0fdef Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
1bd8bb72a7 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
22871b732d Set fixed rated W/cfm for ductless systems.
e4a8120485 Revert use of Table:Lookup for constant values. No diffs expected.
5809cacffe Latest results.
fa21b59b1b Use adaptive step size tol of 0.1; gives results very close to using 0.01 and had no discernible effect on runtime speed.
6ab4baa383 Latest results.
3bcc25dadf Latest results.
b2b89b8f2a Simplify HVACSizing.apply_hvac_fixed_capacities method and minor code cleanup. Diffs only expected for files with detailed performance data.
0eea8a06e1 Simplify/merge code related to capacity ratios; no diffs expected.
f89ba7f01e Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
ab9f6ff2ee Expand sizing tests, and a little cleanup.
7b6da1096e Latest results.
7e98f95406 Update ductless max_cop_95 coefficients
6df3dea8b4 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
b506ceb846 Need to protect from negative lookup table values on the other end of the ODB range as well; found while modeling a NEEP product. No diffs expected.
30279ccd2d Latest results.
7d91061582 Use constant extrapolation
18a0ddc577 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
4c029939f0 cleanup for heating
48b9ae5a00 cleanups on hvac sizing
60c7876817 Latest results.
0f2c7adb0d bugfix
71f2b28a35 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
2e03763de3 allow increase capacity for detailed performance data inputs
db4a5972aa Latest results.
ba031a0c1d Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
4f5a98a82d Create range bounds for independent variables that prevent negative Table:Lookup values and add some error-checking to ensure we aren't creating Table:Lookup objects with negative values. Revert from Table:Lookup to curve objects for HVAC system types other than those using detailed performance data, given there are complexities/risks/performance considerations to using them.
64a4c9bd51 hvac sizing improvement for detailed performance data, some cleanups
227dfb3b37 Refactor similar code into a single interpolate_to_odb_table_point() method. No diffs expected.
3feb77d145 Latest results.
597060828b Always calculate capacity retention factor at 5F when detailed performance data provided.
acd24699a0 fix retention ci error
aa9efdd2c5 adaptive step size first cut
2b552f6f18 oops, forgot to delete dead codes
3b2300d013 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
e21d6f201b hvac sizing heating retention adjustment and cleanup
88c7cf06c0 Oops.
152602f54c A little more cleanup.
1609f0a2f6 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
7e65a8751c Misc code cleanup; no diffs expected.
3bd9239a3d Latest results.
122b55a7e4 Add dataSource="software" to defaulted performance data. Remove default heating 17F datapoints, not necessary.
a07ab12f8f Cleanup sample files; only need CompressorType="variable speed" for files with detailed performance data.
ca8f765c00 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
d914a9a03d Latest results.
87a401538d Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
65f642ddce fix test for new default too
f9eba73549 update the cop vs hspf coefficients
8bde279f32 Latest results.
2e72647cee Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
7a21680ce0 use compressor lockout temperature in table lookup
8274e22e74 Latest results.
09cb506a0b Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
4af6da1f2b change the heating rated condition
6051e80075 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
98ef4d3127 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
f6803ad243 Fix object names [ci skip]
dcc3f59c6f one bugfix for interpolating
f18a78d9c3 Latest results.
35d4abfb05 Latest results.
4355a1b08c Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
1e1a68ea12 add iq+detailed performance data test file
e0c35ecfa1 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
2323edb5a6 Fix CI failure
d8201192c2 alternative fix for iq
18029c3467 Latest results.
7b4bfc7d13 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
c47592293f Show heating capacity retention fraction in in.xml for variable-speed HPs w/o detailed performance data. Document new default for variable-speed HPs. Round capacities/COPs when defaulted in in.xml.
2aab954fbe add cooling capacity ratio from max to rated
9bc83c0a7f Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
ce4c29c347 fix iq issue
5ab446dc0c Require CompressorType="variable speed" when providing detailed performance data (for now, at least).
2ebf00caa0 Latest results.
180bf1568d Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
e5a60524d6 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
bdb6d8f9e8 update wall placement cop correlation
f346a3adcc Latest results.
6aa21d1f39 ignore shr warning for now, adjustment is small
4a7ebc84b5 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
4541de0a94 Fix one CI failure
f50e6f92e1 fix unit tests for cfm/ton
5641df67ba This shouldn't be needed.
522140481a Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
09b8bceedf change cfm/ton to be 400
4d11f610f9 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
5d5f7ce1d1 Allow CompressorType input for MSHPs/MSACs (though it has to be variable speed). Previously we just ignored the input, but now we will throw an error if a user tries to model a single/two stage mini-split.
f0683ee953 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
dd3f3df38d simplify constant table lookups
d0f20ae6de Removes HeatingCapacityRetention from HP sample files, since it is ignored. Also moves some sample files properties from tasks.rb to hpxml_inputs.json, so they go through the BuildResHPXML measure.
649eb8bed7 First pass on docs. Minor hvac.rb and EPvalidator.xml cleanup.
350cafabc8 Fix order of elements in docs.
e787345881 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
d1f197b495 Latest results.
28bb9d36bf method name issue
48a9031f2c remove one comment
a2b189eabf Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
12135044d5 modify hvac sizing adjustment based on new approach, remove var speed system ft curves
63fdc9a63d Latest results.
c36a208e2f deprecate hspf and seer calculation methods for mshp
393752c864 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
d04cfa248d fix unit test, add performance data unit test
e652831243 Latest results.
db9c77907f Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
35a61e18a9 report user-entered rated capacity instead of maximum
7c88b12b0f fix air flow using rated capacity. Add rated capacity as required input for reporting
e65789c1b6 revert cfm/ton
74c4288ebf Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
c443d6d82b fix the order issue, deprecate one more method, add some comments
be86579754 Add error-checking and tests for incomplete datapoint pairs.
46fff77511 more flexibility for detailed performance data specifications
5a38d9090e add cop from seer for centrally ducted system
663bfde977 change the method to ensure nonzero capacity for detailed performance data
8c6174957f enforce heat pump cooling and heating detailed performance data to be provided together, allow ac detailed performance data inputs
882ae0002a Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
05238285e9 progress on cooling defaulting implementations
88e752cb78 Latest results.
981161065f add ac test files
bcbf0f02f4 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
06280319d4 use HPXML constant instead of hardcoded string
955826cbf7 change tests too
7c20721c7b address comments
09eb9a539e Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
e0312e7e01 fix test default for new defaulted capacity retention of var speed systems
36d044a175 Latest results.
c953e2cea4 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
82e48e955f fix unit test, handle capacity retention inputs for 1/2 speed systems, handle capacity net to gross conversion for all dx systems
b3286c4113 Latest results.
cd44b313e7 fix cooling only case
e9493c7124 fixed a few bugs related to 17F capacity and capacity retentions, added unit test for overriding these two inputs when user provides detailed performance data
c40dd0a0a0 remove top level capacities for detailed performance data test files
8a1034df4f moved the default neep data method call to be after hvac sizing call
05b2bd723b change user input capacity to be rated instead of maximum
f1eef4900b fix autosize error
5919424857 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
ae08520663 small fix
011233a924 heating default methods added
2f01ebcfb0 remove unnecessary data structure
c0e0d8a853 put two fixme comments for hvac sizing
c6faa2dddd connect performance table for heating
98e5764b1f Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
6239d9ee1c bugfixes
fad91b6d3d Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
63b01994a1 connect to table lookup
3e6ae519a9 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
ef1015600b progress
6b8be82e15 Latest results.
ed102a8ef5 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
8f116be452 A few refactors, add interpolation, add correction for indoor conditions
a65da73730 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
5ec0d4ef56 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
173c3e04a6 added convert_net_to_gross method
2f3aad7f61 Latest results.
e0114e99d1 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
9286bfcfd2 Latest results.
02ef16859a Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
8e4d8f883a Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
752cb34df0 save progress: added clg/htg ap data structure to store neep inputs, added placeholder for methods
13cace3efe Latest results.
45d917f305 fix bicubic calculation coefficient order to be the same as E+ coefficient order
a273166c60 change variable range for boiler
79a4a8899d Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
7f1e6dc36d fix installation quality program and remove calc curve methods
fca5410f6b update hpxmls
06e249f812 optional parameter
55230694f3 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
a6ea560387 cleanup and more curve replacement
e4f24eace5 Merge branch 'heat_pump_detailed_performance' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
280ed3689d Latest results.
d93d8b929c Drop support for CapacityFractionOfNominal elements; lets keep things simple for the initial implementation.
ebe25380da Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
29d3ecaaa4 first cut for table lookup, not completed
88f279dc39 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
fdd18943a1 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
d93bc6ecf4 Latest results.
e66bd05b54 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
f8d72f4e58 Latest results.
01edbccc4b Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
63f1cf7f75 Latest results.
d69dd9b41d update_measures
515b64deb3 Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
c721e70c73 Comment [ci skip]
0f45b677a3 Latest results.
b4bf80cf6e Merge branch 'master' of https://github.com/NREL/OpenStudio-HPXML into heat_pump_detailed_performance
44ed0dbc39 Bugfix.
41efcfd543 Bugfix.
9bf1fd0585 Add inputs to HPXML class and Schematron. Create sample files.

git-subtree-dir: hpxml-measures
git-subtree-split: 2022425e5ee467e1f5d37537f9d7ec0e55dbd9db
  • Loading branch information
shorowit committed Nov 13, 2023
1 parent 7f3f10c commit 064b7a6
Show file tree
Hide file tree
Showing 56 changed files with 9,648 additions and 4,330 deletions.
348 changes: 174 additions & 174 deletions BuildResidentialHPXML/README.md

Large diffs are not rendered by default.

354 changes: 178 additions & 176 deletions BuildResidentialHPXML/measure.rb

Large diffs are not rendered by default.

358 changes: 179 additions & 179 deletions BuildResidentialHPXML/measure.xml

Large diffs are not rendered by default.

2 changes: 2 additions & 0 deletions BuildResidentialHPXML/tests/test_build_residential_hpxml.rb
Original file line number Diff line number Diff line change
Expand Up @@ -781,6 +781,7 @@ def _set_measure_argument_values(hpxml_file, args)
args['heating_system_type'] = 'none'
args['cooling_system_type'] = 'none'
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpMiniSplit
args.delete('heat_pump_cooling_compressor_type')
args['heat_pump_heating_efficiency'] = 10.0
args['heat_pump_cooling_efficiency'] = 19.0
args['heat_pump_heating_capacity'] = 48000.0
Expand Down Expand Up @@ -1111,6 +1112,7 @@ def _set_measure_argument_values(hpxml_file, args)
args['heating_system_type'] = 'none'
args['cooling_system_type'] = 'none'
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpMiniSplit
args.delete('heat_pump_cooling_compressor_type')
args['heat_pump_is_ducted'] = true
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeSeparate
args['heating_system_2_type'] = HPXML::HVACTypeFurnace
Expand Down
26 changes: 12 additions & 14 deletions Changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,31 +14,28 @@ __New Features__
- `SchedulesFilePath`
- `NaturalVentilationAvailabilityDaysperWeek`
- Allows `NumberofUnits` to be used as a multiplier on dwelling unit simulation results to reduce simulation runtime.
- Notes:
- Each dwelling unit is described by a separate `Building` element in the HPXML file.
- To run the single simulation, specify the Building ID as 'ALL' in the run_simulation.rb script or OpenStudio workflow.
- Adjacent SFA/MF common spaces are still modeled using assumed temperature profiles, not as separate thermal zones, as described in the documentation.
- Shared systems are still modeled as individual systems, not shared systems connected to multiple dwelling unit, as described in the documentation.
- Batteries are not currently supported. Dehumidifiers and ground-source heat pumps are only supported if `NumberofUnits` is 1.
- Utility bill calculations using detailed rates are not supported.
- Simulation results will be for the entire building; results for individual dwelling units are not available.
- Adds manufactured home belly as a foundation type and allows modeling ducts in a manufactured home belly.
- See the [OpenStudio-HPXML documentation](https://openstudio-hpxml.readthedocs.io/en/v1.7.0/workflow_inputs.html#whole-sfa-mf-buildings) for more detail.
- HVAC modeling updates:
- Updated assumptions for variable-speed air conditioners, heat pumps, and mini-splits based on NEEP data. Expect results to change, potentially significantly so depending on the scenario.
- Allows detailed heating and cooling performance data (min/max COPs and capacities at different outdoor temperatures) for variable-speed systems.
- Updates deep ground temperatures (used for modeling ground-source heat pumps) using L. Xing's simplified design model (2014).
- Replaces inverse calculations, used to calculate COPs from rated efficiencies, with regressions for single/two-speed central ACs and ASHPs.
- Output updates:
- **Breaking change**: "Hot Tub" outputs renamed to "Permanent Spa".
- Adds "Peak Electricity: Annual Total (W)" output.
- Adds battery resilience hours output; allows requesting timeseries output.
- ReportUtilityBills measure: Allows reporting monthly utility bills in addition to (or instead of) annual bills.
- Update to 2022 EIA energy costs.
- BuildResidentialHPXML measure:
- Allow duct area fractions (as an alternative to duct areas in ft^2).
- Allow duct locations to be provided while defaulting duct areas (i.e., without providing duct area/fraction inputs).
- Add generic "attic" and "crawlspace" location choices for supply/return ducts, water heater, and battery.
- Always validate the HPXML file before applying defaults and only optionally validate the final HPXML file.
- Adds manufactured home belly as a foundation type and allows modeling ducts in a manufactured home belly.
- Battery losses now split between charging and discharging.
- Interior/exterior window shading multipliers are now modeled using the EnergyPlus incident solar multiplier.
- Updates deep ground temperatures (used for modeling ground-source heat pumps) using L. Xing's simplified design model (2014).
- Improvements to HERS & MaxLoad heat pump sizing methodologies.
- Allows `WaterFixture/FlowRate` as an alternative to `LowFlow`; hot water credit is now calculated based on fraction of low flow fixtures.
- Allows above-grade basements/crawlspaces defined solely with Wall (not FoundationWall) elements.
- Updates to 2022 EIA energy costs.
- Added README.md documentation for all OpenStudio measures.

__Bugfixes__
Expand All @@ -52,8 +49,9 @@ __Bugfixes__
- Fixes error if conditioned basement has `InsulationSpansEntireSlab=true`.
- Fixes ReportSimulationOutput outputs for the Parametric Analysis Tool (PAT).
- Fixes missing radiation exchange between window and sky when an interior/exterior window shading multiplier less than 1 exists.
- Fixes AC/HP cooling bug when applying cooling equipment adjustment.
- Fixes monthly shallow ground temperatures (used primarily in HVAC autosizing) for the southern hemisphere.
- Various HVAC sizing bugfixes and improvements.
- Fixes low-speed heating COPs for some two-speed ASHPs and cooling COPs for some single-speed ACs/HPs.
- BuildResidentialHPXML measure: Fixes air distribution CFA served when there is not a central system that meets 100% of the load.

## OpenStudio-HPXML v1.6.0
Expand Down Expand Up @@ -280,7 +278,7 @@ __New Features__
- **Breaking change**: Any heat pump backup heating requires `HeatPump/BackupType` ("integrated" or "separate") to be specified.
- **Breaking change**: For homes with multiple PV arrays, all inverter efficiencies must have the same value.
- **Breaking change**: HPXML schema version must now be '4.0' (proposed).
- Moves `ClothesDryer/extension/IsVented` to `ClothesDryer/IsVented`.
- Moves `ClothesDryer/extension/IsVented` to `ClothesDryer/Vented`.
- Moves `ClothesDryer/extension/VentedFlowRate` to `ClothesDryer/VentedFlowRate`.
- Moves `FoundationWall/Insulation/Layer/extension/DistanceToTopOfInsulation` to `FoundationWall/Insulation/Layer/DistanceToTopOfInsulation`.
- Moves `FoundationWall/Insulation/Layer/extension/DistanceToBottomOfInsulation` to `FoundationWall/Insulation/Layer/DistanceToBottomOfInsulation`.
Expand Down
41 changes: 27 additions & 14 deletions HPXMLtoOpenStudio/measure.rb
Original file line number Diff line number Diff line change
Expand Up @@ -171,15 +171,15 @@ def run(model, runner, user_arguments)

# Create OpenStudio model
hpxml_osm_map = {}
hpxml.buildings.each do |hpxml_bldg|
hpxml.buildings.each_with_index do |hpxml_bldg, i|
schedules_file = hpxml_sch_map[hpxml_bldg]
if hpxml.buildings.size > 1
# Create the model for this single unit
unit_model = OpenStudio::Model::Model.new
create_unit_model(hpxml, hpxml_bldg, runner, unit_model, epw_path, epw_file, weather, debug, schedules_file, eri_version)
create_unit_model(hpxml, hpxml_bldg, runner, unit_model, epw_path, epw_file, weather, debug, schedules_file, eri_version, i + 1)
hpxml_osm_map[hpxml_bldg] = unit_model
else
create_unit_model(hpxml, hpxml_bldg, runner, model, epw_path, epw_file, weather, debug, schedules_file, eri_version)
create_unit_model(hpxml, hpxml_bldg, runner, model, epw_path, epw_file, weather, debug, schedules_file, eri_version, i + 1)
hpxml_osm_map[hpxml_bldg] = model
end
end
Expand Down Expand Up @@ -398,7 +398,7 @@ def make_variable_name(obj_name, unit_number)
return "unit#{unit_number + 1}_#{obj_name}".gsub(' ', '_').gsub('-', '_')
end

def create_unit_model(hpxml, hpxml_bldg, runner, model, epw_path, epw_file, weather, debug, schedules_file, eri_version)
def create_unit_model(hpxml, hpxml_bldg, runner, model, epw_path, epw_file, weather, debug, schedules_file, eri_version, unit_num)
@hpxml_header = hpxml.header
@hpxml_bldg = hpxml_bldg
@debug = debug
Expand Down Expand Up @@ -448,8 +448,8 @@ def create_unit_model(hpxml, hpxml_bldg, runner, model, epw_path, epw_file, weat
@hvac_unavailable_periods = Schedule.get_unavailable_periods(runner, SchedulesFile::ColumnHVAC, @hpxml_header.unavailable_periods)
airloop_map = {} # Map of HPXML System ID -> AirLoopHVAC (or ZoneHVACFourPipeFanCoil)
add_ideal_system(model, spaces, epw_path)
add_cooling_system(model, spaces, airloop_map)
add_heating_system(runner, model, spaces, airloop_map)
add_cooling_system(model, weather, spaces, airloop_map)
add_heating_system(runner, model, weather, spaces, airloop_map)
add_heat_pump(runner, model, weather, spaces, airloop_map)
add_dehumidifiers(runner, model, spaces)
add_ceiling_fans(runner, model, weather, spaces)
Expand All @@ -471,6 +471,7 @@ def create_unit_model(hpxml, hpxml_bldg, runner, model, epw_path, epw_file, weat
add_photovoltaics(model)
add_generators(model)
add_batteries(runner, model, spaces)
add_building_unit(model, unit_num)
end

def check_emissions_references(hpxml_header, hpxml_path)
Expand Down Expand Up @@ -1543,7 +1544,7 @@ def add_hot_water_and_appliances(runner, model, weather, spaces)
Waterheater.apply_combi_system_EMS(model, @hpxml_bldg.water_heating_systems, plantloop_map)
end

def add_cooling_system(model, spaces, airloop_map)
def add_cooling_system(model, weather, spaces, airloop_map)
conditioned_zone = spaces[HPXML::LocationConditionedSpace].thermalZone.get

HVAC.get_hpxml_hvac_systems(@hpxml_bldg).each do |hvac_system|
Expand Down Expand Up @@ -1576,8 +1577,8 @@ def add_cooling_system(model, spaces, airloop_map)
HPXML::HVACTypeMiniSplitAirConditioner,
HPXML::HVACTypePTAC].include? cooling_system.cooling_system_type

airloop_map[sys_id] = HVAC.apply_air_source_hvac_systems(model, cooling_system, heating_system,
sequential_cool_load_fracs, sequential_heat_load_fracs,
airloop_map[sys_id] = HVAC.apply_air_source_hvac_systems(model, cooling_system, heating_system, sequential_cool_load_fracs, sequential_heat_load_fracs,
weather.data.AnnualMaxDrybulb, weather.data.AnnualMinDrybulb,
conditioned_zone, @hvac_unavailable_periods)

elsif [HPXML::HVACTypeEvaporativeCooler].include? cooling_system.cooling_system_type
Expand All @@ -1589,7 +1590,7 @@ def add_cooling_system(model, spaces, airloop_map)
end
end

def add_heating_system(runner, model, spaces, airloop_map)
def add_heating_system(runner, model, weather, spaces, airloop_map)
conditioned_zone = spaces[HPXML::LocationConditionedSpace].thermalZone.get

HVAC.get_hpxml_hvac_systems(@hpxml_bldg).each do |hvac_system|
Expand Down Expand Up @@ -1621,8 +1622,8 @@ def add_heating_system(runner, model, spaces, airloop_map)
sys_id = heating_system.id
if [HPXML::HVACTypeFurnace].include? heating_system.heating_system_type

airloop_map[sys_id] = HVAC.apply_air_source_hvac_systems(model, nil, heating_system,
[0], sequential_heat_load_fracs,
airloop_map[sys_id] = HVAC.apply_air_source_hvac_systems(model, nil, heating_system, [0], sequential_heat_load_fracs,
weather.data.AnnualMaxDrybulb, weather.data.AnnualMinDrybulb,
conditioned_zone, @hvac_unavailable_periods)

elsif [HPXML::HVACTypeBoiler].include? heating_system.heating_system_type
Expand Down Expand Up @@ -1683,8 +1684,8 @@ def add_heat_pump(runner, model, weather, spaces, airloop_map)
HPXML::HVACTypeHeatPumpMiniSplit,
HPXML::HVACTypeHeatPumpPTHP,
HPXML::HVACTypeHeatPumpRoom].include? heat_pump.heat_pump_type
airloop_map[sys_id] = HVAC.apply_air_source_hvac_systems(model, heat_pump, heat_pump,
sequential_cool_load_fracs, sequential_heat_load_fracs,
airloop_map[sys_id] = HVAC.apply_air_source_hvac_systems(model, heat_pump, heat_pump, sequential_cool_load_fracs, sequential_heat_load_fracs,
weather.data.AnnualMaxDrybulb, weather.data.AnnualMinDrybulb,
conditioned_zone, @hvac_unavailable_periods)
elsif [HPXML::HVACTypeHeatPumpGroundToAir].include? heat_pump.heat_pump_type

Expand Down Expand Up @@ -2029,6 +2030,16 @@ def add_batteries(runner, model, spaces)
end
end

def add_building_unit(model, unit_num)
return if unit_num.nil?

unit = OpenStudio::Model::BuildingUnit.new(model)
unit.additionalProperties.setFeature('unit_num', unit_num)
model.getSpaces.each do |s|
s.setBuildingUnit(unit)
end
end

def add_additional_properties(model, hpxml, hpxml_osm_map, hpxml_path, building_id, epw_file, hpxml_defaults_path)
# Store some data for use in reporting measure
additionalProperties = model.getBuilding.additionalProperties
Expand Down Expand Up @@ -2627,6 +2638,7 @@ def set_output_files(model)
ocf.setOutputMTR(@debug)
ocf.setOutputRDD(@debug)
ocf.setOutputSHD(@debug)
ocf.setOutputCSV(@debug)
ocf.setOutputSQLite(@debug)
ocf.setOutputPerfLog(@debug)
end
Expand Down Expand Up @@ -2702,6 +2714,7 @@ def get_space_temperature_schedule(model, location, spaces)

sch = OpenStudio::Model::ScheduleConstant.new(model)
sch.setName(location)
sch.additionalProperties.setFeature('ObjectType', location)

space_values = Geometry.get_temperature_scheduled_space_values(location)

Expand Down
34 changes: 17 additions & 17 deletions HPXMLtoOpenStudio/measure.xml
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@
<schema_version>3.1</schema_version>
<name>hpxm_lto_openstudio</name>
<uid>b1543b30-9465-45ff-ba04-1d1f85e763bc</uid>
<version_id>ba405041-000a-4be8-a8aa-bba507be1383</version_id>
<version_modified>2023-11-04T16:01:27Z</version_modified>
<version_id>441f9a3f-8b7f-4b51-87b8-fc22b13ec262</version_id>
<version_modified>2023-11-13T22:10:19Z</version_modified>
<xml_checksum>D8922A73</xml_checksum>
<class_name>HPXMLtoOpenStudio</class_name>
<display_name>HPXML to OpenStudio Translator</display_name>
Expand Down Expand Up @@ -142,7 +142,7 @@
<filename>measure.rb</filename>
<filetype>rb</filetype>
<usage_type>script</usage_type>
<checksum>AFA848DB</checksum>
<checksum>78A58FBA</checksum>
</file>
<file>
<filename>airflow.rb</filename>
Expand Down Expand Up @@ -244,7 +244,7 @@
<filename>geometry.rb</filename>
<filetype>rb</filetype>
<usage_type>resource</usage_type>
<checksum>24CB152A</checksum>
<checksum>866708CF</checksum>
</file>
<file>
<filename>hotwater_appliances.rb</filename>
Expand All @@ -256,13 +256,13 @@
<filename>hpxml.rb</filename>
<filetype>rb</filetype>
<usage_type>resource</usage_type>
<checksum>7D4C0660</checksum>
<checksum>20268ABE</checksum>
</file>
<file>
<filename>hpxml_defaults.rb</filename>
<filetype>rb</filetype>
<usage_type>resource</usage_type>
<checksum>3024884C</checksum>
<checksum>43023BAC</checksum>
</file>
<file>
<filename>hpxml_schema/HPXML.xsd</filename>
Expand All @@ -280,7 +280,7 @@
<filename>hpxml_schematron/EPvalidator.xml</filename>
<filetype>xml</filetype>
<usage_type>resource</usage_type>
<checksum>C2CB2C3F</checksum>
<checksum>F76DC990</checksum>
</file>
<file>
<filename>hpxml_schematron/iso-schematron.xsd</filename>
Expand All @@ -292,13 +292,13 @@
<filename>hvac.rb</filename>
<filetype>rb</filetype>
<usage_type>resource</usage_type>
<checksum>DCDF2D3D</checksum>
<checksum>B014F262</checksum>
</file>
<file>
<filename>hvac_sizing.rb</filename>
<filetype>rb</filetype>
<usage_type>resource</usage_type>
<checksum>4D31E43D</checksum>
<checksum>00BE0F0C</checksum>
</file>
<file>
<filename>lighting.rb</filename>
Expand Down Expand Up @@ -340,7 +340,7 @@
<filename>output.rb</filename>
<filetype>rb</filetype>
<usage_type>resource</usage_type>
<checksum>3DE5829C</checksum>
<checksum>7AC7F779</checksum>
</file>
<file>
<filename>psychrometrics.rb</filename>
Expand Down Expand Up @@ -490,7 +490,7 @@
<filename>util.rb</filename>
<filetype>rb</filetype>
<usage_type>resource</usage_type>
<checksum>F3DBC2BD</checksum>
<checksum>6D409347</checksum>
</file>
<file>
<filename>utility_bills.rb</filename>
Expand All @@ -514,7 +514,7 @@
<filename>weather.rb</filename>
<filetype>rb</filetype>
<usage_type>resource</usage_type>
<checksum>A42A2AC9</checksum>
<checksum>6E12B2EB</checksum>
</file>
<file>
<filename>xmlhelper.rb</filename>
Expand Down Expand Up @@ -544,7 +544,7 @@
<filename>test_defaults.rb</filename>
<filetype>rb</filetype>
<usage_type>test</usage_type>
<checksum>0A8B4E8E</checksum>
<checksum>C42C6EE4</checksum>
</file>
<file>
<filename>test_enclosure.rb</filename>
Expand All @@ -562,19 +562,19 @@
<filename>test_hotwater_appliance.rb</filename>
<filetype>rb</filetype>
<usage_type>test</usage_type>
<checksum>9247176A</checksum>
<checksum>F3ED25B6</checksum>
</file>
<file>
<filename>test_hvac.rb</filename>
<filetype>rb</filetype>
<usage_type>test</usage_type>
<checksum>B02CDFFE</checksum>
<checksum>19EE9DA5</checksum>
</file>
<file>
<filename>test_hvac_sizing.rb</filename>
<filetype>rb</filetype>
<usage_type>test</usage_type>
<checksum>0DF1F706</checksum>
<checksum>E2E504ED</checksum>
</file>
<file>
<filename>test_lighting.rb</filename>
Expand Down Expand Up @@ -616,7 +616,7 @@
<filename>test_validation.rb</filename>
<filetype>rb</filetype>
<usage_type>test</usage_type>
<checksum>4BAA1005</checksum>
<checksum>C1EF0839</checksum>
</file>
<file>
<filename>test_water_heater.rb</filename>
Expand Down
10 changes: 6 additions & 4 deletions HPXMLtoOpenStudio/resources/geometry.rb
Original file line number Diff line number Diff line change
Expand Up @@ -330,10 +330,12 @@ def self.calculate_zone_volume(hpxml_bldg, location)
HPXML::LocationCrawlspaceVented,
HPXML::LocationGarage].include? location
floor_area = hpxml_bldg.slabs.select { |s| s.interior_adjacent_to == location }.map { |s| s.area }.sum(0.0)
if location == HPXML::LocationGarage
height = 8.0
else
height = hpxml_bldg.foundation_walls.select { |w| w.interior_adjacent_to == location }.map { |w| w.height }.max
height = hpxml_bldg.foundation_walls.select { |w| w.interior_adjacent_to == location }.map { |w| w.height }.max
if height.nil? # No foundation walls, need to make assumption because HPXML Wall elements don't have a height
height = { HPXML::LocationBasementUnconditioned => 8,
HPXML::LocationCrawlspaceUnvented => 3,
HPXML::LocationCrawlspaceVented => 3,
HPXML::LocationGarage => 8 }[location]
end
return floor_area * height
elsif [HPXML::LocationAtticUnvented,
Expand Down

0 comments on commit 064b7a6

Please sign in to comment.