Skip to content

Commit

Permalink
Merge pull request #751 from NREL/oshpxml190
Browse files Browse the repository at this point in the history
OS-HPXML v1.9
  • Loading branch information
shorowit authored Nov 16, 2024
2 parents c9b63c3 + 337c78a commit 47530cc
Show file tree
Hide file tree
Showing 97 changed files with 11,457 additions and 591 deletions.
14 changes: 7 additions & 7 deletions .github/workflows/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
run-ruleset-tests:
runs-on: ubuntu-22.04
container:
image: docker://nrel/openstudio:dev-3.9.0-rc1
image: docker://nrel/openstudio:3.9.0
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -62,7 +62,7 @@ jobs:
run-sample-files1-tests:
runs-on: ubuntu-22.04
container:
image: docker://nrel/openstudio:dev-3.9.0-rc1
image: docker://nrel/openstudio:3.9.0
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -85,7 +85,7 @@ jobs:
run-sample-files2-tests:
runs-on: ubuntu-22.04
container:
image: docker://nrel/openstudio:dev-3.9.0-rc1
image: docker://nrel/openstudio:3.9.0
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -108,7 +108,7 @@ jobs:
run-real-home-tests:
runs-on: ubuntu-22.04
container:
image: docker://nrel/openstudio:dev-3.9.0-rc1
image: docker://nrel/openstudio:3.9.0
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -131,7 +131,7 @@ jobs:
run-other-tests:
runs-on: ubuntu-22.04
container:
image: docker://nrel/openstudio:dev-3.9.0-rc1
image: docker://nrel/openstudio:3.9.0
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -160,8 +160,8 @@ jobs:
- name: Install software and run test
shell: pwsh
run: |
$env:OS_VERSION="3.9.0-rc1"
$env:OS_SHA="fb69e5479c"
$env:OS_VERSION="3.9.0"
$env:OS_SHA="c77fbb9569"
Invoke-WebRequest -OutFile Windows.tar.gz -URI "https://github.com/NREL/OpenStudio/releases/download/v${env:OS_VERSION}/OpenStudio-${env:OS_VERSION}+${env:OS_SHA}-Windows.tar.gz"
tar -xzf Windows.tar.gz
& .\OpenStudio-${env:OS_VERSION}+${env:OS_SHA}-Windows\bin\openstudio.exe workflow\energy_rating_index.rb -x workflow\sample_files\base.xml --daily ALL --add-component-loads --diagnostic-output
Expand Down
2 changes: 1 addition & 1 deletion Changelog.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
## OpenStudio-ERI v1.9.0

__New Features__
- Updates to OpenStudio 3.9/EnergyPlus 24.2/HPXML v4.0 final release.
- Updates to OpenStudio 3.9/EnergyPlus 24.2/HPXML v4.1-rc1.
- Adds 2024 IECC ERI pathway calculation.
- **Breaking change**: Renamed `Emissions: <EmissionsType>: RESNET: XXX` to `Emissions: <EmissionsType>: ANSI301: XXX` in Annual Home CSV output files.
- Implements ANSI/RESNET/ICC Standard 301-2022 Addendum E for CFIS systems.
Expand Down
13 changes: 7 additions & 6 deletions docs/source/workflow_inputs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -1715,7 +1715,7 @@ Each exhaust only fan is entered as a ``/HPXML/Building/BuildingDetails/Systems/
========================================================== ================= ======= ============ ======== ========= =========================================

.. [#] Flow rate input required only if IsSharedSystem=false.
.. [#] HoursInOperation required unless the VentilationFan refers to the supplemental fan of a :ref:`vent_fan_cfis` system, in which case it is not allowed.
.. [#] HoursInOperation required unless the VentilationFan refers to the supplemental fan of a :ref:`vent_fan_cfis` system, in which case it is not allowed because the runtime is automatically calculated for each hour to maintain the hourly target ventilation rate.
.. [#] All other UsedFor... elements (i.e., ``UsedForLocalVentilation``, ``UsedForSeasonalCoolingLoadReduction``, ``UsedForGarageVentilation``) must be omitted or false.
.. [#] Additional shared inputs are described in :ref:`vent_fan_shared`.
Expand All @@ -1739,7 +1739,7 @@ Each supply only fan is entered as a ``/HPXML/Building/BuildingDetails/Systems/M
========================================================== ================= ======= ============ ======== ========= =========================================

.. [#] Flow rate input required only if IsSharedSystem=false.
.. [#] HoursInOperation required unless the VentilationFan refers to the supplemental fan of a :ref:`vent_fan_cfis` system, in which case it is not allowed.
.. [#] HoursInOperation required unless the VentilationFan refers to the supplemental fan of a :ref:`vent_fan_cfis` system, in which case it is not allowed because the runtime is automatically calculated for each hour to maintain the hourly target ventilation rate.
.. [#] All other UsedFor... elements (i.e., ``UsedForLocalVentilation``, ``UsedForSeasonalCoolingLoadReduction``, ``UsedForGarageVentilation``) must be omitted or false.
.. [#] Additional shared inputs are described in :ref:`vent_fan_shared`.
Expand All @@ -1763,7 +1763,7 @@ Each balanced (supply and exhaust) fan is entered as a ``/HPXML/Building/Buildin
========================================================== ================= ======= ============ ======== ========= =========================================

.. [#] Flow rate input required only if IsSharedSystem=false.
.. [#] HoursInOperation required unless the VentilationFan refers to the supplemental fan of a :ref:`vent_fan_cfis` system, in which case it is not allowed.
.. [#] HoursInOperation required unless the VentilationFan refers to the supplemental fan of a :ref:`vent_fan_cfis` system, in which case it is not allowed because the runtime is automatically calculated for each hour to maintain the hourly target ventilation rate.
.. [#] All other UsedFor... elements (i.e., ``UsedForLocalVentilation``, ``UsedForSeasonalCoolingLoadReduction``, ``UsedForGarageVentilation``) must be omitted or false.
.. [#] Additional shared inputs are described in :ref:`vent_fan_shared`.
Expand All @@ -1788,7 +1788,7 @@ Each heat recovery ventilator (HRV) is entered as a ``/HPXML/Building/BuildingDe
======================================================================== ================= ======= ======================== ======== ========= =========================================

.. [#] Flow rate input required only if IsSharedSystem=false.
.. [#] HoursInOperation required unless the VentilationFan refers to the supplemental fan of a :ref:`vent_fan_cfis` system, in which case it is not allowed.
.. [#] HoursInOperation required unless the VentilationFan refers to the supplemental fan of a :ref:`vent_fan_cfis` system, in which case it is not allowed because the runtime is automatically calculated for each hour to maintain the hourly target ventilation rate.
.. [#] All other UsedFor... elements (i.e., ``UsedForLocalVentilation``, ``UsedForSeasonalCoolingLoadReduction``, ``UsedForGarageVentilation``) must be omitted or false.
.. [#] Additional shared inputs are described in :ref:`vent_fan_shared`.
.. [#] AdjustedSensibleRecoveryEfficiency (ASRE) is similar to SensibleRecoveryEfficiency (SRE), in that it reflects heating season performance, but excludes fan electric consumption.
Expand Down Expand Up @@ -1816,7 +1816,7 @@ Each energy recovery ventilator (ERV) is entered as a ``/HPXML/Building/Building
======================================================================== ================= ======= ========================== ======== ========= =========================================

.. [#] Flow rate input required only if IsSharedSystem=false.
.. [#] HoursInOperation required unless the VentilationFan refers to the supplemental fan of a :ref:`vent_fan_cfis` system, in which case it is not allowed.
.. [#] HoursInOperation required unless the VentilationFan refers to the supplemental fan of a :ref:`vent_fan_cfis` system, in which case it is not allowed because the runtime is automatically calculated for each hour to maintain the hourly target ventilation rate.
.. [#] All other UsedFor... elements (i.e., ``UsedForLocalVentilation``, ``UsedForSeasonalCoolingLoadReduction``, ``UsedForGarageVentilation``) must be omitted or false.
.. [#] Additional shared inputs are described in :ref:`vent_fan_shared`.
.. [#] AdjustedTotalRecoveryEfficiency (ATRE) is similar to TotalRecoveryEfficiency (TRE), in that it reflects cooling season performance, but excludes fan electric consumption.
Expand Down Expand Up @@ -1859,7 +1859,8 @@ A CFIS system is a supply ventilation system that provides outdoor air to the re
.. [#] If SupplementalFanRunsWithAirHandlerFan is true, in addition to its normal operation, the supplemental fan will also run simultaneously with the air handler fan when outdoor air is being brought in.
This is typically used with a supplemental exhaust fan to provide balanced (supply + exhaust) airflow, though any additional runtime where the supplemental fan runs by itself will still be imbalanced.
.. [#] The flow rate should equal the amount of outdoor air provided to the distribution system, not the total airflow through the distribution system.
.. [#] The HoursInOperation and the flow rate are combined to form the hourly target ventilation rate (e.g., inputs of 90 cfm and 8 hrs/day produce an hourly target ventilation rate of 30 cfm).
.. [#] HoursInOperation is combined with the flow rate to form the hourly target ventilation rate (e.g., inputs of 90 cfm and 8 hrs/day produce an hourly target ventilation rate of 30 cfm).
In addition, if AdditionalRuntimeOperatingMode="air handler fan", it defines the minutes per hour that the air handler must provide ventilation (e.g., 8 hrs/day is treated as 20 mins/hr).
.. [#] All other UsedFor... elements (i.e., ``UsedForLocalVentilation``, ``UsedForSeasonalCoolingLoadReduction``, ``UsedForGarageVentilation``) must be omitted or false.
.. [#] HVACDistribution type cannot be :ref:`hvac_distribution_hydronic`.
Expand Down
10 changes: 5 additions & 5 deletions hpxml-measures/.github/workflows/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ jobs:
run-unit-tests:
runs-on: ubuntu-22.04
container:
image: docker://nrel/openstudio:dev-3.9.0-rc1
image: docker://nrel/openstudio:3.9.0
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -77,7 +77,7 @@ jobs:
run-workflow1-tests:
runs-on: ubuntu-22.04
container:
image: docker://nrel/openstudio:dev-3.9.0-rc1
image: docker://nrel/openstudio:3.9.0
steps:
- uses: actions/checkout@v4
with:
Expand All @@ -100,7 +100,7 @@ jobs:
run-workflow2-tests:
runs-on: ubuntu-22.04
container:
image: docker://nrel/openstudio:dev-3.9.0-rc1
image: docker://nrel/openstudio:3.9.0
steps:
- uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -129,8 +129,8 @@ jobs:
- name: Install software and run test
shell: pwsh
run: |
$env:OS_VERSION="3.9.0-rc1"
$env:OS_SHA="fb69e5479c"
$env:OS_VERSION="3.9.0"
$env:OS_SHA="c77fbb9569"
Invoke-WebRequest -OutFile Windows.tar.gz -URI "https://github.com/NREL/OpenStudio/releases/download/v${env:OS_VERSION}/OpenStudio-${env:OS_VERSION}+${env:OS_SHA}-Windows.tar.gz"
tar -xzf Windows.tar.gz
& .\OpenStudio-${env:OS_VERSION}+${env:OS_SHA}-Windows\bin\openstudio.exe workflow\run_simulation.rb -x workflow\sample_files\base.xml --hourly ALL --add-component-loads --add-stochastic-schedules
Expand Down
17 changes: 17 additions & 0 deletions hpxml-measures/BuildResidentialHPXML/measure.rb
Original file line number Diff line number Diff line change
Expand Up @@ -6417,6 +6417,23 @@ def self.set_ventilation_fans(hpxml_bldg, args)

distribution_system_idref = hvac_distribution.id
end
if distribution_system_idref.nil?
# Allow for PTAC/PTHP by automatically adding a DSE=1 distribution system to attach the CFIS to
hpxml_bldg.hvac_systems.each do |hvac_system|
next unless (hvac_system.is_a?(HPXML::CoolingSystem) && [HPXML::HVACTypePTAC, HPXML::HVACTypeRoomAirConditioner].include?(hvac_system.cooling_system_type)) ||
(hvac_system.is_a?(HPXML::HeatPump) && [HPXML::HVACTypeHeatPumpPTHP, HPXML::HVACTypeHeatPumpRoom].include?(hvac_system.heat_pump_type))

hpxml_bldg.hvac_distributions.add(id: "HVACDistribution#{hpxml_bldg.hvac_distributions.size + 1}",
distribution_system_type: HPXML::HVACDistributionTypeDSE,
annual_cooling_dse: 1.0,
annual_heating_dse: 1.0)
hvac_system.distribution_system_idref = hpxml_bldg.hvac_distributions[-1].id
distribution_system_idref = hpxml_bldg.hvac_distributions[-1].id
end
end

return if distribution_system_idref.nil? # No distribution system to attach the CFIS to

cfis_addtl_runtime_operating_mode = HPXML::CFISModeAirHandler
end

Expand Down
6 changes: 3 additions & 3 deletions hpxml-measures/BuildResidentialHPXML/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>build_residential_hpxml</name>
<uid>a13a8983-2b01-4930-8af2-42030b6e4233</uid>
<version_id>8dfdc271-772e-46a3-a611-71ca703a96c2</version_id>
<version_modified>2024-10-14T23:23:50Z</version_modified>
<version_id>6024806a-1640-4c75-86e4-d00329c89e3a</version_id>
<version_modified>2024-10-31T22:43:54Z</version_modified>
<xml_checksum>2C38F48B</xml_checksum>
<class_name>BuildResidentialHPXML</class_name>
<display_name>HPXML Builder</display_name>
Expand Down Expand Up @@ -7544,7 +7544,7 @@
<filename>measure.rb</filename>
<filetype>rb</filetype>
<usage_type>script</usage_type>
<checksum>F2C64E58</checksum>
<checksum>79912FCC</checksum>
</file>
<file>
<filename>constants.rb</filename>
Expand Down
10 changes: 7 additions & 3 deletions hpxml-measures/Changelog.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
## OpenStudio-HPXML v1.9.0

__New Features__
- Updates to OpenStudio 3.9/EnergyPlus 24.2/HPXML v4.0 final release.
- Updates to OpenStudio 3.9/EnergyPlus 24.2/HPXML v4.1-rc1.
- Allows `Site/Address/ZipCode` to be provided instead of `ClimateandRiskZones/WeatherStation/extension/EPWFilePath`, in which case the closest TMY3 weather station will be automatically selected.
- Allows optional inputs for modeling skylight curbs and/or shafts.
- Allows modeling exterior horizontal insulation for a slab-on-grade foundation (or basement/crawlspace floor).
Expand All @@ -21,14 +21,17 @@ __New Features__
- Allows CFIS systems with no strategy to meet remainder of ventilation target (`CFISControls/AdditionalRuntimeOperatingMode="none"`).
- Allows CFIS systems with supplemental fans that run simultaneously with the air handler (`CFISControls/extension/SupplementalFanRunsWithAirHandlerFan=true`).
- Allows CFIS systems with timer control, in which ventilation operation occurs at a fixed interval (`CFISControls/extension/ControlType="timer"`).
- Allows CFIS systems to be attached to ductless HVAC systems like PTHPs (requires using a DSE=1 distribution system, see documentation).
- HVAC Manual J design load and sizing calculations:
- Adds optional `DistributionSystemType/AirDistribution/extension/ManualJInputs/BlowerFanHeatBtuh` input.
- Adds optional `DistributionSystemType/HydronicDistribution/extension/ManualJInputs/HotWaterPipingBtuh` input.
- Adds optional `DistributionSystemType/AirDistribution/extension/ManualJInputs/BlowerFanHeatBtuh` input for HVAC equipment whose performance data has not been adjusted for blower heat.
- Adds optional `DistributionSystemType/AirDistribution/extension/ManualJInputs/DefaultTableDuctLoad` input to use Manual J default duct factor tables instead of ASHRAE 152.
- Adds optional `DistributionSystemType/HydronicDistribution/extension/ManualJInputs/HotWaterPipingBtuh` input to include hydronic distribution piping losses through unconditioned spaces.
- Adds optional `HVACSizingControl/ManualJInputs/InfiltrationShieldingClass` input to specify wind shielding class for infiltration design load calculations.
- Adds optional `HVACSizingControl/ManualJInputs/InfiltrationMethod` input to specify which method to use for infiltration design load calculations.
- Updates heat pump HERS sizing methodology to better prevent unmet hours in warmer climates.
- Misc Manual J design load calculation improvements.
- **Breaking change**: Disaggregates "Walls" into "Above Grade Walls" and "Below Grade Walls" in results_design_load_details.csv output file.
- Significant speed improvements when using optional space-level design load calculations.
- Advanced research features:
- Optional input `SimulationControl/AdvancedResearchFeatures/OnOffThermostatDeadbandTemperature` to model on/off thermostat deadband with start-up degradation for single and two speed AC/ASHP systems and time-based realistic staging for two speed AC/ASHP systems.
- Optional input `SimulationControl/AdvancedResearchFeatures/HeatPumpBackupCapacityIncrement` to model multi-stage electric backup coils with time-based staging.
Expand All @@ -54,6 +57,7 @@ __Bugfixes__
- Fixes default CFIS fan power during ventilation only mode.
- Fixes a bug that potentially oversizes heat pumps when detailed performance capacity fractions are provided.
- For a CFIS system with a supplemental fan, fixes supplemental fan runtime when using sub-hourly timesteps.
- Fixes GSHP rated fan/pump powers in net to gross calculations and improves default modeled pump power (W/ton).

## OpenStudio-HPXML v1.8.1

Expand Down
Loading

0 comments on commit 47530cc

Please sign in to comment.