From 404ffc17ef6eb5171eb623fea4e2c02696b13a93 Mon Sep 17 00:00:00 2001 From: Scott Horowitz Date: Mon, 9 May 2022 16:01:11 -0600 Subject: [PATCH 1/7] Use HPXML's `CondensingSystem` input for boilers; affects the efficiency curve used. --- BuildResidentialHPXML/measure.rb | 12 + BuildResidentialHPXML/measure.xml | 24 +- Changelog.md | 4 +- HPXMLtoOpenStudio/measure.xml | 62 +- HPXMLtoOpenStudio/resources/hpxml.rb | 9 +- HPXMLtoOpenStudio/resources/hpxml_defaults.rb | 13 + .../hpxml_schematron/EPvalidator.xml | 1 + .../hpxml_schematron/HPXMLvalidator.xml | 2 +- HPXMLtoOpenStudio/resources/hvac.rb | 5 +- HPXMLtoOpenStudio/tests/test_defaults.rb | 15 +- docs/source/workflow_inputs.rst | 18 +- tasks.rb | 4 + ...se-hvac-boiler-gas-only-non-condensing.xml | 532 ++++++++++++++++++ 13 files changed, 647 insertions(+), 54 deletions(-) create mode 100644 workflow/sample_files/base-hvac-boiler-gas-only-non-condensing.xml diff --git a/BuildResidentialHPXML/measure.rb b/BuildResidentialHPXML/measure.rb index 682a031d26..5c91e0550d 100644 --- a/BuildResidentialHPXML/measure.rb +++ b/BuildResidentialHPXML/measure.rb @@ -1055,6 +1055,11 @@ def arguments(model) arg.setDefaultValue(1) args << arg + arg = OpenStudio::Measure::OSArgument::makeBoolArgument('heating_system_is_condensing', false) + arg.setDisplayName('Heating System: Is Condensing') + arg.setDescription("Whether the heating system is condensing or not. Only used for a non-electric #{HPXML::HVACTypeBoiler}.") + args << arg + arg = OpenStudio::Measure::OSArgument::makeDoubleArgument('heating_system_airflow_defect_ratio', false) arg.setDisplayName('Heating System: Airflow Defect Ratio') arg.setDescription("The airflow defect ratio, defined as (InstalledAirflow - DesignAirflow) / DesignAirflow, of the heating system per ANSI/RESNET/ACCA Standard 310. A value of zero means no airflow defect. Applies only to #{HPXML::HVACTypeFurnace}.") @@ -4362,6 +4367,12 @@ def self.set_heating_systems(hpxml, runner, args) heating_efficiency_percent = args[:heating_system_heating_efficiency] end + if heating_system_type == HPXML::HVACTypeBoiler && heating_system_fuel != HPXML::FuelTypeElectricity + if args[:heating_system_is_condensing].is_initialized + heating_system_is_condensing = args[:heating_system_is_condensing].get + end + end + if args[:heating_system_airflow_defect_ratio].is_initialized if [HPXML::HVACTypeFurnace].include? heating_system_type airflow_defect_ratio = args[:heating_system_airflow_defect_ratio].get @@ -4387,6 +4398,7 @@ def self.set_heating_systems(hpxml, runner, args) fraction_heat_load_served: fraction_heat_load_served, heating_efficiency_afue: heating_efficiency_afue, heating_efficiency_percent: heating_efficiency_percent, + condensing_system: heating_system_is_condensing, airflow_defect_ratio: airflow_defect_ratio, is_shared_system: is_shared_system, number_of_units_served: number_of_units_served, diff --git a/BuildResidentialHPXML/measure.xml b/BuildResidentialHPXML/measure.xml index 2af481f095..f853768a08 100644 --- a/BuildResidentialHPXML/measure.xml +++ b/BuildResidentialHPXML/measure.xml @@ -3,8 +3,8 @@ 3.0 build_residential_hpxml a13a8983-2b01-4930-8af2-42030b6e4233 - e73136e8-b2ff-4ec5-9153-b36607ff9d05 - 20220509T163201Z + 7d297956-0d45-4768-8b3e-db2a211be95a + 20220509T220030Z 2C38F48B BuildResidentialHPXML HPXML Builder @@ -2046,6 +2046,24 @@ false 1 + + heating_system_is_condensing + Heating System: Is Condensing + Whether the heating system is condensing or not. Only used for a non-electric Boiler. + Boolean + false + false + + + true + true + + + false + false + + + heating_system_airflow_defect_ratio Heating System: Airflow Defect Ratio @@ -6168,7 +6186,7 @@ measure.rb rb script - F68F8FFD + F8EC4B9B diff --git a/Changelog.md b/Changelog.md index e35dcd23d5..9bc6b4b2a8 100644 --- a/Changelog.md +++ b/Changelog.md @@ -13,6 +13,9 @@ __New Features__ - Allows the separate backup system to be a central system (e.g., central furnace w/ ducts). Previously only non-central system types were allowed. - Heat pumps with switchover temperatures are now autosized by taking into account the switchover temperature, if higher than the heating design temperature. - Allows `BackupHeatingLockoutTemperature` as an optional input to control integrated backup heating availability during, e.g., a thermostat heating setback recovery event; defaults to 40F. +- New boiler capabilities: + - Allows an optional `CondensingSystem` boolean input; defaults based on AFUE. + - Updates combi boiler model to be simpler, faster, and more robust by using separate space/water heating plant loops and boilers. - Allows calculating one or more emissions scenarios (e.g., high renewable penetration vs business as usual) for different emissions types (e.g., CO2e). - Updates HVAC fans to use fan power law (cubic relationship between fan speed and power). - Allows specifying a `StormWindow` element for windows/skylights; U-factors and SHGCs are automatically adjusted. @@ -23,7 +26,6 @@ __New Features__ - The `WaterFixturesUsageMultiplier` input now also applies to general water use internal gains and recirculation pump energy (for some control types). - Relaxes requirement for `ConditionedFloorAreaServed` for air distribution systems; now only needed if duct surface areas not provided. - **Breaking change**: Each `VentilationFan` must have one (and only one) `UsedFor...` element set to true. -- Updates combi boiler model to be simpler, faster, and more robust by using separate space/water heating plant loops and boilers. - Switches from EnergyPlus SQL output to MessagePack output for faster performance and reduced file sizes when requesting timeseries outputs. - Allows MessagePack annual/timeseries output files to be generated instead of CSV/JSON. - Switches from ScriptF to CarrollMRT radiant exchange algorithm. diff --git a/HPXMLtoOpenStudio/measure.xml b/HPXMLtoOpenStudio/measure.xml index f26155364e..8fe2cc6ec6 100644 --- a/HPXMLtoOpenStudio/measure.xml +++ b/HPXMLtoOpenStudio/measure.xml @@ -3,8 +3,8 @@ 3.0 hpxm_lto_openstudio b1543b30-9465-45ff-ba04-1d1f85e763bc - 59c701f2-543d-460f-bd88-2fc527a27aae - 20220509T182922Z + 5e64cc44-5c0d-4a52-ad95-1b167fd11d96 + 20220509T220032Z D8922A73 HPXMLtoOpenStudio HPXML to OpenStudio Translator @@ -486,18 +486,6 @@ resource 74292B8C - - test_defaults.rb - rb - test - 23183279 - - - hpxml_schematron/HPXMLvalidator.xml - xml - resource - BF7D8EF1 - test_miscloads.rb rb @@ -516,12 +504,6 @@ resource 9D86278C - - hpxml.rb - rb - resource - 79D7F98E - hpxml_schema/HPXMLDataTypes.xsd xsd @@ -535,34 +517,52 @@ 0408C060 - hpxml_defaults.rb + test_hvac.rb rb - resource - 6BB0ED87 + test + 25C171EE - test_hvac.rb + test_validation.rb rb test - 25C171EE + 7D2B7C4B - hvac.rb + test_defaults.rb rb + test + B4619481 + + + hpxml_schematron/HPXMLvalidator.xml + xml resource - 83A2D8E9 + 8ABCD77B - test_validation.rb + hpxml.rb rb - test - 7D2B7C4B + resource + E241F643 + + + hpxml_defaults.rb + rb + resource + 95E440B0 + + + hvac.rb + rb + resource + CFD8D4A3 hpxml_schematron/EPvalidator.xml xml resource - FAE41B84 + 1F511D88 diff --git a/HPXMLtoOpenStudio/resources/hpxml.rb b/HPXMLtoOpenStudio/resources/hpxml.rb index e5af4b50fb..95037a9613 100644 --- a/HPXMLtoOpenStudio/resources/hpxml.rb +++ b/HPXMLtoOpenStudio/resources/hpxml.rb @@ -3210,7 +3210,8 @@ class HeatingSystem < BaseElement :heating_efficiency_percent, :fraction_heat_load_served, :electric_auxiliary_energy, :third_party_certification, :htg_seed_id, :is_shared_system, :number_of_units_served, :shared_loop_watts, :shared_loop_motor_efficiency, :fan_coil_watts, :fan_watts_per_cfm, - :airflow_defect_ratio, :fan_watts, :heating_airflow_cfm, :location, :primary_system] + :airflow_defect_ratio, :fan_watts, :heating_airflow_cfm, :location, :primary_system, + :condensing_system] attr_accessor(*ATTRS) def distribution_system @@ -3290,7 +3291,10 @@ def to_oga(doc) XMLHelper.add_element(heating_system, 'NumberofUnitsServed', @number_of_units_served, :integer) unless @number_of_units_served.nil? if not @heating_system_type.nil? heating_system_type_el = XMLHelper.add_element(heating_system, 'HeatingSystemType') - XMLHelper.add_element(heating_system_type_el, @heating_system_type) + heating_type_child = XMLHelper.add_element(heating_system_type_el, @heating_system_type) + if @heating_system_type == HPXML::HVACTypeBoiler + XMLHelper.add_element(heating_type_child, 'CondensingSystem', @condensing_system, :boolean, @condensing_system_isdefaulted) unless @condensing_system.nil? + end end XMLHelper.add_element(heating_system, 'HeatingSystemFuel', @heating_system_fuel, :string) unless @heating_system_fuel.nil? XMLHelper.add_element(heating_system, 'HeatingCapacity', @heating_capacity, :float, @heating_capacity_isdefaulted) unless @heating_capacity.nil? @@ -3331,6 +3335,7 @@ def from_oga(heating_system) @is_shared_system = XMLHelper.get_value(heating_system, 'IsSharedSystem', :boolean) @number_of_units_served = XMLHelper.get_value(heating_system, 'NumberofUnitsServed', :integer) @heating_system_type = XMLHelper.get_child_name(heating_system, 'HeatingSystemType') + @condensing_system = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/CondensingSystem', :boolean) @heating_system_fuel = XMLHelper.get_value(heating_system, 'HeatingSystemFuel', :string) @heating_capacity = XMLHelper.get_value(heating_system, 'HeatingCapacity', :float) @heating_efficiency_afue = XMLHelper.get_value(heating_system, "AnnualHeatingEfficiency[Units='#{UnitsAFUE}']/Value", :float) diff --git a/HPXMLtoOpenStudio/resources/hpxml_defaults.rb b/HPXMLtoOpenStudio/resources/hpxml_defaults.rb index 4427661d8b..ead753fa51 100644 --- a/HPXMLtoOpenStudio/resources/hpxml_defaults.rb +++ b/HPXMLtoOpenStudio/resources/hpxml_defaults.rb @@ -982,6 +982,19 @@ def self.apply_hvac(hpxml, weather, convert_shared_systems) heating_system.fan_coil_watts = nil end + # Default boiler type + hpxml.heating_systems.each do |heating_system| + next unless heating_system.heating_system_type == HPXML::HVACTypeBoiler + next unless heating_system.condensing_system.nil? + + if heating_system.heating_efficiency_afue >= 0.883 && heating_system.heating_system_fuel != HPXML::FuelTypeElectricity + heating_system.condensing_system = true + else + heating_system.condensing_system = false + end + heating_system.condensing_system_isdefaulted = true + end + # Default AC/HP sensible heat ratio hpxml.cooling_systems.each do |cooling_system| next unless cooling_system.cooling_shr.nil? diff --git a/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml b/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml index c54ed5ee86..4be1c66aac 100644 --- a/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml +++ b/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml @@ -673,6 +673,7 @@ [HeatingSystemType=Boiler] + Expected 0 or 1 element(s) for xpath: HeatingSystemType/Boiler/CondensingSystem Expected 0 or 1 element(s) for xpath: IsSharedSystem Expected 1 element(s) for xpath: DistributionSystem Expected 1 element(s) for xpath: HeatingSystemFuel diff --git a/HPXMLtoOpenStudio/resources/hpxml_schematron/HPXMLvalidator.xml b/HPXMLtoOpenStudio/resources/hpxml_schematron/HPXMLvalidator.xml index fb27dfb329..a4e61cea60 100644 --- a/HPXMLtoOpenStudio/resources/hpxml_schematron/HPXMLvalidator.xml +++ b/HPXMLtoOpenStudio/resources/hpxml_schematron/HPXMLvalidator.xml @@ -287,7 +287,7 @@ Expected Value to be greater than or equal to 0 - Expected HeatPumpType to be 'water-to-air' or 'water-to-water' or 'air-to-air' or 'air-to-water' or 'mini-split' or 'ground-to-air' or 'ground-to-water' or 'water-loop-to-air' or 'variable refrigerant flow' or 'packaged terminal heat pump' or 'room heat pump' + Expected HeatPumpType to be 'water-to-air' or 'water-to-water' or 'air-to-air' or 'air-to-water' or 'mini-split' or 'ground-to-air' or 'ground-to-water' or 'packaged terminal heat pump' or 'water-loop-to-air' or 'variable refrigerant flow' Expected HeatPumpFuel to be 'electricity' or 'renewable electricity' or 'natural gas' or 'renewable natural gas' or 'fuel oil' or 'fuel oil 1' or 'fuel oil 2' or 'fuel oil 4' or 'fuel oil 5/6' or 'district steam' or 'district hot water' or 'district chilled water' or 'solar hot water' or 'propane' or 'kerosene' or 'diesel' or 'coal' or 'anthracite coal' or 'bituminous coal' or 'coke' or 'wood' or 'wood pellets' or 'combination' or 'other' Expected CompressorType to be 'single stage' or 'two stage' or 'variable speed' Expected CoolingSensibleHeatFraction to be greater than or equal to 0 diff --git a/HPXMLtoOpenStudio/resources/hvac.rb b/HPXMLtoOpenStudio/resources/hvac.rb index 9a9159d4b9..86c960193a 100644 --- a/HPXMLtoOpenStudio/resources/hvac.rb +++ b/HPXMLtoOpenStudio/resources/hvac.rb @@ -423,7 +423,6 @@ def self.apply_water_loop_to_air_heat_pump(model, runner, heat_pump, def self.apply_boiler(model, runner, heating_system, sequential_heat_load_fracs, control_zone) obj_name = Constants.ObjectNameBoiler - is_condensing = false # FUTURE: Expose as input; default based on AFUE oat_reset_enabled = false oat_high = nil oat_low = nil @@ -473,7 +472,7 @@ def self.apply_boiler(model, runner, heating_system, boiler = OpenStudio::Model::BoilerHotWater.new(model) boiler.setName(obj_name) boiler.setFuelType(EPlus.fuel_type(heating_system.heating_system_fuel)) - if is_condensing + if heating_system.condensing_system # Convert Rated Efficiency at 80F and 1.0PLR where the performance curves are derived from to Design condition as input boiler_RatedHWRT = UnitConversions.convert(80.0 - 32.0, 'R', 'K') plr_Rated = 1.0 @@ -503,7 +502,7 @@ def self.apply_boiler(model, runner, heating_system, boiler.additionalProperties.setFeature('HPXML_ID', heating_system.id) # Used by reporting measure set_pump_power_ems_program(model, pump_w, pump, boiler) - if is_condensing && oat_reset_enabled + if oat_reset_enabled setpoint_manager_oar = OpenStudio::Model::SetpointManagerOutdoorAirReset.new(model) setpoint_manager_oar.setName(obj_name + ' outdoor reset') setpoint_manager_oar.setControlVariable('Temperature') diff --git a/HPXMLtoOpenStudio/tests/test_defaults.rb b/HPXMLtoOpenStudio/tests/test_defaults.rb index bc022b27c6..58d8106ce5 100644 --- a/HPXMLtoOpenStudio/tests/test_defaults.rb +++ b/HPXMLtoOpenStudio/tests/test_defaults.rb @@ -1159,18 +1159,20 @@ def test_boilers hpxml.heating_systems[0].heating_capacity = 12345 hpxml.heating_systems[0].heating_efficiency_afue = 0.85 hpxml.heating_systems[0].year_installed = 2010 + hpxml.heating_systems[0].condensing_system = true XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, 12345, 0.85) + _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, 12345, 0.85, true) # Test defaults w/ in-unit boiler hpxml.heating_systems[0].electric_auxiliary_energy = nil hpxml.heating_systems[0].heating_capacity = nil hpxml.heating_systems[0].heating_efficiency_afue = nil hpxml.heating_systems[0].year_installed = 2010 + hpxml.heating_systems[0].condensing_system = nil XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 170.0, nil, 0.797) + _test_default_boiler_values(hpxml_default.heating_systems[0], 170.0, nil, 0.797, false) # Test inputs not overridden by defaults (shared boiler) hpxml = _create_hpxml('base-bldgtype-multifamily-shared-boiler-only-baseboard.xml') @@ -1178,17 +1180,19 @@ def test_boilers hpxml.heating_systems[0].electric_auxiliary_energy = 99.9 hpxml.heating_systems[0].heating_efficiency_afue = 0.85 hpxml.heating_systems[0].year_installed = 1980 + hpxml.heating_systems[0].condensing_system = true XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, nil, 0.85) + _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, nil, 0.85, true) # Test defaults w/ shared boiler hpxml.heating_systems[0].electric_auxiliary_energy = nil hpxml.heating_systems[0].heating_efficiency_afue = nil hpxml.heating_systems[0].year_installed = 1980 + hpxml.heating_systems[0].condensing_system = nil XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 220.0, nil, 0.723) + _test_default_boiler_values(hpxml_default.heating_systems[0], 220.0, nil, 0.723, false) end def test_stoves @@ -3443,7 +3447,7 @@ def _test_default_floor_furnace_values(heating_system, fan_watts, heating_capaci end end - def _test_default_boiler_values(heating_system, eae, heating_capacity, heating_efficiency_afue) + def _test_default_boiler_values(heating_system, eae, heating_capacity, heating_efficiency_afue, condensing_system) assert_equal(eae, heating_system.electric_auxiliary_energy) if heating_capacity.nil? assert(heating_system.heating_capacity > 0) @@ -3455,6 +3459,7 @@ def _test_default_boiler_values(heating_system, eae, heating_capacity, heating_e else assert_equal(heating_system.heating_efficiency_afue, heating_efficiency_afue) end + assert_equal(heating_system.condensing_system, condensing_system) end def _test_default_stove_values(heating_system, fan_watts, heating_capacity, heating_efficiency_percent) diff --git a/docs/source/workflow_inputs.rst b/docs/source/workflow_inputs.rst index 3ea104c0c9..acc8147d44 100644 --- a/docs/source/workflow_inputs.rst +++ b/docs/source/workflow_inputs.rst @@ -1075,7 +1075,7 @@ If a furnace is specified, additional information is entered in ``HeatingSystem` ==================================================================== ================= ========= =============== ======== ======== ================================================ Element Type Units Constraints Required Default Notes ==================================================================== ================= ========= =============== ======== ======== ================================================ - ``DistributionSystem`` idref See [#]_ Yes ID of attached distribution system + ``DistributionSystem`` idref See [#]_ Yes ID of attached distribution system ``AnnualHeatingEfficiency[Units="AFUE"]/Value`` or ``YearInstalled`` double or integer frac or # 0 - 1 or > 1600 Yes See [#]_ Rated efficiency or Year installed ``extension/FanPowerWattsPerCFM`` double W/cfm >= 0 No See [#]_ Blower fan efficiency at maximum fan speed [#]_ ``extension/AirflowDefectRatio`` double frac -0.9 - 9 No 0.0 Deviation between design/installed airflows [#]_ @@ -1112,11 +1112,13 @@ If a boiler is specified, additional information is entered in ``HeatingSystem`` ==================================================================== ================= ========= =============== ======== ======== ========================================= Element Type Units Constraints Required Default Notes ==================================================================== ================= ========= =============== ======== ======== ========================================= - ``IsSharedSystem`` boolean No false Whether it serves multiple dwelling units - ``DistributionSystem`` idref See [#]_ Yes ID of attached distribution system + ``HeatingSystemType/Boiler/CondensingSystem`` boolean No See [#]_ Whether it is a condensing boiler + ``IsSharedSystem`` boolean No false Whether it serves multiple dwelling units + ``DistributionSystem`` idref See [#]_ Yes ID of attached distribution system ``AnnualHeatingEfficiency[Units="AFUE"]/Value`` or ``YearInstalled`` double or integer frac or # 0 - 1 or > 1600 Yes See [#]_ Rated efficiency or Year installed ==================================================================== ================= ========= =============== ======== ======== ========================================= + .. [#] If CondensingSystem not provided, defaults to true if non-electric and AFUE > 0.883 (based on the AHRI directory of certified boilers), otherwise false. .. [#] For in-unit boilers, HVACDistribution type must be HydronicDistribution (type: "radiator", "baseboard", "radiant floor", or "radiant ceiling") or DSE. For shared boilers, HVACDistribution type must be HydronicDistribution (type: "radiator", "baseboard", "radiant floor", "radiant ceiling", or "water loop") or AirDistribution (type: "fan coil"). If the shared boiler has "water loop" distribution, a :ref:`hvac_heatpump_wlhp` must also be specified. @@ -1224,7 +1226,7 @@ If a central air conditioner is specified, additional information is entered in ==================================================================== ================= =========== =============== ======== ========= ================================================ Element Type Units Constraints Required Default Notes ==================================================================== ================= =========== =============== ======== ========= ================================================ - ``DistributionSystem`` idref See [#]_ Yes ID of attached distribution system + ``DistributionSystem`` idref See [#]_ Yes ID of attached distribution system ``AnnualCoolingEfficiency[Units="SEER"]/Value`` or ``YearInstalled`` double or integer Btu/Wh or # > 0 or > 1600 Yes See [#]_ Rated efficiency or Year installed ``CoolingCapacity`` double Btu/hr >= 0 No autosized Cooling output capacity ``SensibleHeatFraction`` double frac 0 - 1 No Sensible heat fraction @@ -1282,7 +1284,7 @@ If an evaporative cooler is specified, additional information is entered in ``Co ================================= ======== ====== =========== ======== ========= ================================== Element Type Units Constraints Required Default Notes ================================= ======== ====== =========== ======== ========= ================================== - ``DistributionSystem`` idref See [#]_ No ID of attached distribution system + ``DistributionSystem`` idref See [#]_ No ID of attached distribution system ``CoolingCapacity`` double Btu/hr >= 0 No autosized Cooling output capacity ================================= ======== ====== =========== ======== ========= ================================== @@ -1296,7 +1298,7 @@ If a mini-split is specified, additional information is entered in ``CoolingSyst =============================================== ======== ====== =========== ======== ========= =============================================== Element Type Units Constraints Required Default Notes =============================================== ======== ====== =========== ======== ========= =============================================== - ``DistributionSystem`` idref See [#]_ No ID of attached distribution system + ``DistributionSystem`` idref See [#]_ No ID of attached distribution system ``AnnualCoolingEfficiency[Units="SEER"]/Value`` double Btu/Wh > 0 Yes Rated cooling efficiency ``CoolingCapacity`` double Btu/hr >= 0 No autosized Cooling output capacity ``SensibleHeatFraction`` double frac 0 - 1 No Sensible heat fraction @@ -1468,7 +1470,7 @@ If a mini-split heat pump is specified, additional information is entered in ``H =============================================== ======== ====== ======================== ======== ========= ============================================== Element Type Units Constraints Required Default Notes =============================================== ======== ====== ======================== ======== ========= ============================================== - ``DistributionSystem`` idref See [#]_ No ID of attached distribution system, if present + ``DistributionSystem`` idref See [#]_ No ID of attached distribution system, if present ``HeatingCapacity`` double Btu/hr >= 0 No autosized Heating output capacity (excluding any backup heating) ``HeatingCapacity17F`` double Btu/hr >= 0, <= HeatingCapacity No Heating output capacity at 17F, if available ``CoolingCapacity`` double Btu/hr >= 0 No autosized Cooling output capacity @@ -1683,7 +1685,7 @@ Each separate HVAC distribution system is entered as a ``/HPXML/Building/Buildin Element Type Units Constraints Required Default Notes ============================== ======= ======= =========== ======== ========= ============================= ``SystemIdentifier`` id Yes Unique identifier - ``DistributionSystemType`` element 1 [#]_ Yes Type of distribution system + ``DistributionSystemType`` element See [#]_ Yes Type of distribution system ``ConditionedFloorAreaServed`` double ft2 > 0 See [#]_ Conditioned floor area served ============================== ======= ======= =========== ======== ========= ============================= diff --git a/tasks.rb b/tasks.rb index dd8baafa14..9ea4b7c305 100644 --- a/tasks.rb +++ b/tasks.rb @@ -259,6 +259,7 @@ def create_hpxmls 'base-hvac-boiler-elec-only.xml' => 'base.xml', 'base-hvac-boiler-gas-central-ac-1-speed.xml' => 'base.xml', 'base-hvac-boiler-gas-only.xml' => 'base.xml', + 'base-hvac-boiler-gas-only-non-condensing.xml' => 'base-hvac-boiler-gas-only.xml', 'base-hvac-boiler-oil-only.xml' => 'base-hvac-boiler-gas-only.xml', 'base-hvac-boiler-propane-only.xml' => 'base-hvac-boiler-gas-only.xml', 'base-hvac-boiler-wood-only.xml' => 'base-hvac-boiler-gas-only.xml', @@ -1868,6 +1869,9 @@ def set_measure_argument_values(hpxml_file, args, sch_args, orig_parent) elsif ['base-hvac-boiler-gas-only.xml'].include? hpxml_file args['heating_system_type'] = HPXML::HVACTypeBoiler args['cooling_system_type'] = 'none' + elsif ['base-hvac-boiler-gas-only-non-condensing.xml'].include? hpxml_file + args['heating_system_is_condensing'] = false + args['heating_system_heating_efficiency'] = 0.86 elsif ['base-hvac-boiler-oil-only.xml', 'base-hvac-furnace-oil-only.xml'].include? hpxml_file args['heating_system_fuel'] = HPXML::FuelTypeOil diff --git a/workflow/sample_files/base-hvac-boiler-gas-only-non-condensing.xml b/workflow/sample_files/base-hvac-boiler-gas-only-non-condensing.xml new file mode 100644 index 0000000000..aa1d2d8d24 --- /dev/null +++ b/workflow/sample_files/base-hvac-boiler-gas-only-non-condensing.xml @@ -0,0 +1,532 @@ + + + + HPXML + tasks.rb + 2000-01-01T00:00:00-07:00 + create + + + + asset + + 60 + + + base-hvac-boiler-gas-only.xml + + + + + + + +
+ CO +
+
+ + proposed workscope + + + + + suburban + stand-alone + no units above or below + 180 + + electricity + natural gas + + + + 3.0 + + + single-family detached + 2.0 + 1.0 + 8.0 + 3 + 2 + 2700.0 + 21600.0 + + + + + 2006 + 5B + + + + USA_CO_Denver.Intl.AP.725650_TMY3 + + USA_CO_Denver.Intl.AP.725650_TMY3.epw + + + + + + + + 50.0 + + ACH + 3.0 + + 21600.0 + + + + + + + + false + + + false + + + + + + + + + + + true + + + + + + + + + + + attic - unvented + 1509.4 + asphalt or fiberglass shingles + 0.7 + 0.92 + 6.0 + false + + + 2.3 + + + + + + + outside + basement - conditioned + 115.6 + wood siding + 0.7 + 0.92 + + + 23.0 + + + + + + + outside + living space + + + + 1200.0 + wood siding + 0.7 + 0.92 + + gypsum board + + + + 23.0 + + + + + outside + attic - unvented + gable + + + + 225.0 + wood siding + 0.7 + 0.92 + + + 4.0 + + + + + + + ground + basement - conditioned + 8.0 + 1200.0 + 8.0 + 7.0 + + gypsum board + + + + + continuous - exterior + 8.9 + 0.0 + 8.0 + + + continuous - interior + 0.0 + + + + + + + + attic - unvented + living space + 1350.0 + + gypsum board + + + + 39.3 + + + + + + + basement - conditioned + 1350.0 + 4.0 + 150.0 + + + + 0.0 + 0.0 + + + + + + 0.0 + 0.0 + + + + 0.0 + 0.0 + + + + + + + 108.0 + 0 + 0.33 + 0.45 + + + 0.7 + 0.85 + + 0.67 + + + + + 72.0 + 90 + 0.33 + 0.45 + + + 0.7 + 0.85 + + 0.67 + + + + + 108.0 + 180 + 0.33 + 0.45 + + + 0.7 + 0.85 + + 0.67 + + + + + 72.0 + 270 + 0.33 + 0.45 + + + 0.7 + 0.85 + + 0.67 + + + + + + + + 40.0 + 180 + 4.4 + + + + + + + + + + + + + + + false + + + natural gas + 36000.0 + + AFUE + 0.86 + + 1.0 + 200.0 + + + + + 68.0 + + + + + + baseboard + + + + + + + + electricity + storage water heater + living space + 40.0 + 1.0 + 18767.0 + 0.95 + 125.0 + + + + + + 50.0 + + + + 0.0 + + + + + shower head + true + + + + faucet + false + + + + + + + living space + 1.21 + 380.0 + 0.12 + 1.09 + 27.0 + 6.0 + 3.2 + + + + living space + electricity + 3.73 + true + 150.0 + + + + living space + 307.0 + 12 + 0.12 + 1.09 + 22.32 + 4.0 + + + + living space + 650.0 + true + + + + living space + electricity + false + + + + false + + + + + + interior + 0.4 + + + + + + + exterior + 0.4 + + + + + + + garage + 0.4 + + + + + + + interior + 0.1 + + + + + + + exterior + 0.1 + + + + + + + garage + 0.1 + + + + + + + interior + 0.25 + + + + + + + exterior + 0.25 + + + + + + + garage + 0.25 + + + + + + + + + TV other + + kWh/year + 620.0 + + + + + other + + kWh/year + 2457.0 + + + 0.855 + 0.045 + + + + +
+
\ No newline at end of file From 31509854a73a873b240ac0f1a367ccf305feeae2 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 9 May 2022 22:45:22 +0000 Subject: [PATCH 2/7] Latest results. --- workflow/tests/base_results/results.csv | 57 ++++++++++--------- workflow/tests/base_results/results_bills.csv | 55 +++++++++--------- .../base_results/results_hvac_sizing.csv | 1 + 3 files changed, 58 insertions(+), 55 deletions(-) diff --git a/workflow/tests/base_results/results.csv b/workflow/tests/base_results/results.csv index 6a16b7556c..244fd50c46 100644 --- a/workflow/tests/base_results/results.csv +++ b/workflow/tests/base_results/results.csv @@ -25,16 +25,16 @@ base-bldgtype-multifamily-adjacent-to-non-freezing-space.xml,49.651,49.651,24.66 base-bldgtype-multifamily-adjacent-to-other-heated-space.xml,25.825,25.825,24.462,24.462,1.364,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.01,1.456,0.17,9.743,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.364,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.263,2.65,9.539,0.637,0.0,0.0,0.0,0.0,1563.0,1805.1,3.416,5.784,0.0,0.353,3.153,0.0,0.0,0.376,-0.006,0.0,0.375,0.0,-0.006,1.699,0.0,0.0,0.0,0.387,-5.136,0.0,-0.808,-0.442,0.0,0.0,-0.071,1.061,0.0,-0.825,0.0,-0.002,-0.385,-0.918,0.0,0.0,0.505,4.563,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-bldgtype-multifamily-adjacent-to-other-housing-unit.xml,26.039,26.039,24.919,24.919,1.119,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.008,1.862,0.27,9.697,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.119,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.037,4.303,9.539,0.588,0.0,0.0,0.0,0.0,1556.2,1769.8,3.707,4.327,0.0,-0.003,3.197,0.0,0.0,0.368,0.125,0.0,-0.002,0.0,-0.062,1.761,0.0,0.0,0.0,0.322,-4.714,0.0,-0.0,-0.541,0.0,0.0,-0.041,0.994,0.0,0.0,0.0,-0.058,-0.524,-1.231,0.0,0.0,0.766,4.984,1354.8,997.6,11399.5,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-bldgtype-multifamily-calctype-operational.xml,19.494,19.494,18.186,18.186,1.308,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.01,2.036,0.309,4.597,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.169,0.22,0.912,1.184,0.0,1.505,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.308,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.21,5.253,4.213,0.588,0.0,0.0,0.0,0.0,1077.5,1591.0,3.915,6.47,0.0,-0.014,2.621,0.0,0.0,0.419,1.133,0.0,-0.012,0.0,-0.303,1.301,0.0,0.75,0.0,0.0,-4.764,0.0,-0.009,-0.725,0.0,0.0,-0.006,3.907,0.0,-0.007,0.0,-0.295,-0.379,-2.778,-0.264,0.0,0.0,5.894,817.2,530.6,4779.7,1341.4,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-bldgtype-multifamily-shared-boiler-chiller-baseboard.xml,26.723,26.723,26.023,26.023,0.7,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.034,2.577,0.643,9.687,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.7,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.626,6.935,9.539,0.578,0.0,0.0,0.0,0.0,1573.4,2026.6,3.451,6.994,0.0,-0.013,2.524,0.0,0.0,0.42,1.418,0.0,-0.009,0.0,-0.343,1.282,0.0,0.689,0.0,0.0,-5.46,0.0,-0.008,-1.002,0.0,0.0,-0.038,3.914,0.0,-0.004,0.0,-0.333,-0.49,-3.16,-0.367,0.0,0.0,8.536,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-bldgtype-multifamily-shared-boiler-chiller-fan-coil-ducted.xml,27.382,27.382,26.634,26.634,0.747,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.059,3.076,0.729,9.687,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.747,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.664,7.875,9.539,0.578,0.0,0.0,0.0,0.0,1581.8,2216.2,3.602,8.083,0.0,-0.013,2.522,0.0,0.0,0.419,1.408,0.0,-0.008,0.0,-0.341,1.279,0.0,0.688,0.0,0.038,-5.445,0.0,-0.008,-1.005,0.0,0.0,-0.039,3.904,0.0,-0.003,0.0,-0.331,-0.493,-3.169,-0.369,0.0,0.952,8.55,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-bldgtype-multifamily-shared-boiler-chiller-fan-coil.xml,26.951,26.951,26.287,26.287,0.664,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.079,2.795,0.643,9.687,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.664,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.626,6.935,9.539,0.578,0.0,0.0,0.0,0.0,1595.2,2092.5,3.454,6.994,0.0,-0.013,2.524,0.0,0.0,0.42,1.418,0.0,-0.009,0.0,-0.343,1.282,0.0,0.689,0.0,0.0,-5.46,0.0,-0.008,-1.002,0.0,0.0,-0.038,3.914,0.0,-0.004,0.0,-0.333,-0.49,-3.16,-0.367,0.0,0.0,8.536,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-bldgtype-multifamily-shared-boiler-chiller-water-loop-heat-pump.xml,31.105,31.105,30.549,30.549,0.556,0.0,0.0,0.0,0.0,0.0,0.035,0.0,0.03,6.986,0.729,9.687,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.556,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.64,7.875,9.539,0.578,0.0,0.0,0.0,0.0,1585.1,3417.4,3.535,8.083,0.0,-0.013,2.522,0.0,0.0,0.419,1.408,0.0,-0.008,0.0,-0.341,1.279,0.0,0.688,0.0,0.015,-5.445,0.0,-0.008,-1.005,0.0,0.0,-0.039,3.904,0.0,-0.003,0.0,-0.331,-0.493,-3.169,-0.369,0.0,0.952,8.55,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-bldgtype-multifamily-shared-boiler-cooling-tower-water-loop-heat-pump.xml,27.042,27.042,26.486,26.486,0.556,0.0,0.0,0.0,0.0,0.0,0.035,0.0,0.03,2.923,0.729,9.687,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.556,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.64,7.875,9.539,0.578,0.0,0.0,0.0,0.0,1585.1,2169.2,3.535,8.083,0.0,-0.013,2.522,0.0,0.0,0.419,1.408,0.0,-0.008,0.0,-0.341,1.279,0.0,0.688,0.0,0.015,-5.445,0.0,-0.008,-1.005,0.0,0.0,-0.039,3.904,0.0,-0.003,0.0,-0.331,-0.493,-3.169,-0.369,0.0,0.952,8.55,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-bldgtype-multifamily-shared-boiler-only-baseboard.xml,23.348,23.348,22.75,22.75,0.598,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.029,0.0,0.0,9.638,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.598,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.535,0.0,9.539,0.528,0.0,0.0,0.0,0.0,1523.3,0.0,3.451,0.0,0.0,-0.003,3.446,0.0,0.0,0.488,0.999,0.0,-0.003,0.0,-0.004,1.657,0.0,0.963,0.0,0.0,-7.204,0.0,0.001,-0.922,0.0,0.0,-0.127,2.191,0.0,0.001,0.0,0.005,-0.456,-7.165,-0.315,0.0,0.0,6.741,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-bldgtype-multifamily-shared-boiler-only-fan-coil-ducted.xml,23.411,23.411,22.771,22.771,0.639,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.051,0.0,0.0,9.638,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.639,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.568,0.0,9.539,0.528,0.0,0.0,0.0,0.0,1531.6,0.0,3.603,0.0,0.0,-0.003,3.446,0.0,0.0,0.488,0.998,0.0,-0.003,0.0,-0.004,1.657,0.0,0.963,0.0,0.033,-7.204,0.0,0.001,-0.922,0.0,0.0,-0.127,2.191,0.0,0.001,0.0,0.005,-0.456,-7.165,-0.315,0.0,-0.0,6.741,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-bldgtype-multifamily-shared-boiler-only-fan-coil-eae.xml,23.356,23.356,22.786,22.786,0.57,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.065,0.0,0.0,9.638,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.57,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.535,0.0,9.539,0.528,0.0,0.0,0.0,0.0,1543.4,0.0,3.455,0.0,0.0,-0.003,3.446,0.0,0.0,0.488,0.999,0.0,-0.003,0.0,-0.004,1.657,0.0,0.963,0.0,0.0,-7.204,0.0,0.001,-0.922,0.0,0.0,-0.127,2.191,0.0,0.001,0.0,0.005,-0.456,-7.165,-0.315,0.0,0.0,6.741,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-bldgtype-multifamily-shared-boiler-only-fan-coil.xml,23.356,23.356,22.788,22.788,0.568,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.068,0.0,0.0,9.638,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.568,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.535,0.0,9.539,0.528,0.0,0.0,0.0,0.0,1545.4,0.0,3.455,0.0,0.0,-0.003,3.446,0.0,0.0,0.488,0.999,0.0,-0.003,0.0,-0.004,1.657,0.0,0.963,0.0,0.0,-7.204,0.0,0.001,-0.922,0.0,0.0,-0.127,2.191,0.0,0.001,0.0,0.005,-0.456,-7.165,-0.315,0.0,0.0,6.741,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-bldgtype-multifamily-shared-boiler-only-water-loop-heat-pump.xml,23.251,23.251,22.776,22.776,0.476,0.0,0.0,0.0,0.0,0.0,0.029,0.0,0.026,0.0,0.0,9.638,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.476,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.547,0.0,9.539,0.528,0.0,0.0,0.0,0.0,1535.1,0.0,3.536,0.0,0.0,-0.003,3.446,0.0,0.0,0.488,0.998,0.0,-0.003,0.0,-0.004,1.657,0.0,0.963,0.0,0.013,-7.204,0.0,0.001,-0.922,0.0,0.0,-0.127,2.191,0.0,0.001,0.0,0.005,-0.456,-7.165,-0.315,0.0,0.0,6.741,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-bldgtype-multifamily-shared-boiler-chiller-baseboard.xml,26.701,26.701,26.023,26.023,0.678,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.034,2.577,0.643,9.687,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.678,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.626,6.935,9.539,0.578,0.0,0.0,0.0,0.0,1573.4,2026.6,3.451,6.994,0.0,-0.013,2.524,0.0,0.0,0.42,1.418,0.0,-0.009,0.0,-0.343,1.282,0.0,0.689,0.0,0.0,-5.46,0.0,-0.008,-1.002,0.0,0.0,-0.038,3.914,0.0,-0.004,0.0,-0.333,-0.49,-3.16,-0.367,0.0,0.0,8.536,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-bldgtype-multifamily-shared-boiler-chiller-fan-coil-ducted.xml,27.378,27.378,26.634,26.634,0.744,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.059,3.076,0.729,9.687,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.744,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.664,7.875,9.539,0.578,0.0,0.0,0.0,0.0,1581.8,2216.2,3.602,8.083,0.0,-0.013,2.522,0.0,0.0,0.419,1.408,0.0,-0.008,0.0,-0.341,1.279,0.0,0.688,0.0,0.038,-5.445,0.0,-0.008,-1.005,0.0,0.0,-0.039,3.904,0.0,-0.003,0.0,-0.331,-0.493,-3.169,-0.369,0.0,0.952,8.55,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-bldgtype-multifamily-shared-boiler-chiller-fan-coil.xml,26.965,26.965,26.287,26.287,0.678,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.079,2.795,0.643,9.687,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.678,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.626,6.935,9.539,0.578,0.0,0.0,0.0,0.0,1595.2,2092.5,3.454,6.994,0.0,-0.013,2.524,0.0,0.0,0.42,1.418,0.0,-0.009,0.0,-0.343,1.282,0.0,0.689,0.0,0.0,-5.46,0.0,-0.008,-1.002,0.0,0.0,-0.038,3.914,0.0,-0.004,0.0,-0.333,-0.49,-3.16,-0.367,0.0,0.0,8.536,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-bldgtype-multifamily-shared-boiler-chiller-water-loop-heat-pump.xml,31.081,31.081,30.549,30.549,0.532,0.0,0.0,0.0,0.0,0.0,0.035,0.0,0.03,6.986,0.729,9.687,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.532,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.64,7.875,9.539,0.578,0.0,0.0,0.0,0.0,1585.1,3417.4,3.535,8.083,0.0,-0.013,2.522,0.0,0.0,0.419,1.408,0.0,-0.008,0.0,-0.341,1.279,0.0,0.688,0.0,0.015,-5.445,0.0,-0.008,-1.005,0.0,0.0,-0.039,3.904,0.0,-0.003,0.0,-0.331,-0.493,-3.169,-0.369,0.0,0.952,8.55,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-bldgtype-multifamily-shared-boiler-cooling-tower-water-loop-heat-pump.xml,27.018,27.018,26.486,26.486,0.532,0.0,0.0,0.0,0.0,0.0,0.035,0.0,0.03,2.923,0.729,9.687,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.532,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.64,7.875,9.539,0.578,0.0,0.0,0.0,0.0,1585.1,2169.2,3.535,8.083,0.0,-0.013,2.522,0.0,0.0,0.419,1.408,0.0,-0.008,0.0,-0.341,1.279,0.0,0.688,0.0,0.015,-5.445,0.0,-0.008,-1.005,0.0,0.0,-0.039,3.904,0.0,-0.003,0.0,-0.331,-0.493,-3.169,-0.369,0.0,0.952,8.55,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-bldgtype-multifamily-shared-boiler-only-baseboard.xml,23.33,23.33,22.75,22.75,0.58,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.029,0.0,0.0,9.638,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.58,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.535,0.0,9.539,0.528,0.0,0.0,0.0,0.0,1523.3,0.0,3.451,0.0,0.0,-0.003,3.446,0.0,0.0,0.488,0.999,0.0,-0.003,0.0,-0.004,1.657,0.0,0.963,0.0,0.0,-7.204,0.0,0.001,-0.922,0.0,0.0,-0.127,2.191,0.0,0.001,0.0,0.005,-0.456,-7.165,-0.315,0.0,0.0,6.741,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-bldgtype-multifamily-shared-boiler-only-fan-coil-ducted.xml,23.408,23.408,22.771,22.771,0.637,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.051,0.0,0.0,9.638,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.637,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.568,0.0,9.539,0.528,0.0,0.0,0.0,0.0,1531.6,0.0,3.603,0.0,0.0,-0.003,3.446,0.0,0.0,0.488,0.998,0.0,-0.003,0.0,-0.004,1.657,0.0,0.963,0.0,0.033,-7.204,0.0,0.001,-0.922,0.0,0.0,-0.127,2.191,0.0,0.001,0.0,0.005,-0.456,-7.165,-0.315,0.0,-0.0,6.741,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-bldgtype-multifamily-shared-boiler-only-fan-coil-eae.xml,23.368,23.368,22.786,22.786,0.582,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.065,0.0,0.0,9.638,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.582,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.535,0.0,9.539,0.528,0.0,0.0,0.0,0.0,1543.4,0.0,3.455,0.0,0.0,-0.003,3.446,0.0,0.0,0.488,0.999,0.0,-0.003,0.0,-0.004,1.657,0.0,0.963,0.0,0.0,-7.204,0.0,0.001,-0.922,0.0,0.0,-0.127,2.191,0.0,0.001,0.0,0.005,-0.456,-7.165,-0.315,0.0,0.0,6.741,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-bldgtype-multifamily-shared-boiler-only-fan-coil.xml,23.368,23.368,22.788,22.788,0.58,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.068,0.0,0.0,9.638,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.58,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.535,0.0,9.539,0.528,0.0,0.0,0.0,0.0,1545.4,0.0,3.455,0.0,0.0,-0.003,3.446,0.0,0.0,0.488,0.999,0.0,-0.003,0.0,-0.004,1.657,0.0,0.963,0.0,0.0,-7.204,0.0,0.001,-0.922,0.0,0.0,-0.127,2.191,0.0,0.001,0.0,0.005,-0.456,-7.165,-0.315,0.0,0.0,6.741,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-bldgtype-multifamily-shared-boiler-only-water-loop-heat-pump.xml,23.231,23.231,22.776,22.776,0.455,0.0,0.0,0.0,0.0,0.0,0.029,0.0,0.026,0.0,0.0,9.638,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.455,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.547,0.0,9.539,0.528,0.0,0.0,0.0,0.0,1535.1,0.0,3.536,0.0,0.0,-0.003,3.446,0.0,0.0,0.488,0.998,0.0,-0.003,0.0,-0.004,1.657,0.0,0.963,0.0,0.013,-7.204,0.0,0.001,-0.922,0.0,0.0,-0.127,2.191,0.0,0.001,0.0,0.005,-0.456,-7.165,-0.315,0.0,0.0,6.741,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-bldgtype-multifamily-shared-chiller-only-baseboard.xml,25.976,25.976,25.976,25.976,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.561,0.637,9.696,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.861,9.539,0.587,0.0,0.0,0.0,0.0,0.0,2026.6,0.0,6.994,0.0,-0.012,2.414,0.0,0.0,0.391,1.119,0.0,-0.009,0.0,-0.31,1.194,0.0,0.661,0.0,0.0,-5.569,0.0,-0.007,-0.964,0.0,0.0,-0.04,3.842,0.0,-0.003,0.0,-0.3,-0.481,-3.156,-0.355,0.0,0.0,8.435,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-bldgtype-multifamily-shared-chiller-only-fan-coil-ducted.xml,26.558,26.558,26.558,26.558,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.058,0.722,9.696,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,7.797,9.539,0.587,0.0,0.0,0.0,0.0,0.0,2216.2,0.0,8.083,0.0,-0.012,2.411,0.0,0.0,0.39,1.104,0.0,-0.008,0.0,-0.308,1.19,0.0,0.659,0.0,-0.0,-5.546,0.0,-0.006,-0.968,0.0,0.0,-0.041,3.827,0.0,-0.002,0.0,-0.298,-0.486,-3.165,-0.357,0.0,0.947,8.458,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-bldgtype-multifamily-shared-chiller-only-fan-coil.xml,26.193,26.193,26.193,26.193,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.778,0.637,9.696,0.0,0.0,2.026,0.0,0.206,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,2.791,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.861,9.539,0.587,0.0,0.0,0.0,0.0,0.0,2092.5,0.0,6.994,0.0,-0.012,2.414,0.0,0.0,0.391,1.119,0.0,-0.009,0.0,-0.31,1.194,0.0,0.661,0.0,0.0,-5.569,0.0,-0.007,-0.964,0.0,0.0,-0.04,3.842,0.0,-0.003,0.0,-0.3,-0.481,-3.156,-0.355,0.0,0.0,8.435,1354.8,997.6,11399.6,3156.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 @@ -57,8 +57,8 @@ base-calctype-operational-misc-defaults.xml,67.299,47.199,39.652,19.553,27.647,0 base-calctype-operational-misc-loads-large-uncommon.xml,98.039,98.039,51.045,51.045,39.088,0.0,2.609,5.297,0.0,0.0,0.0,0.0,0.311,3.773,0.692,3.941,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,4.61,1.024,0.0,0.158,0.21,0.868,1.158,0.0,1.46,8.374,5.687,1.186,0.0,6.721,3.032,2.994,0.0,0.0,18.866,0.0,0.0,0.0,0.0,0.0,18.628,0.0,0.0,1.594,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.609,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,5.297,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.666,11.697,3.621,0.615,0.0,0.0,0.0,0.0,2604.5,4420.2,22.229,18.468,0.0,3.601,3.669,0.517,7.199,0.637,-1.947,0.0,0.0,6.756,-0.12,4.817,0.0,0.729,0.0,4.157,-12.689,0.0,-0.035,-0.452,-0.05,2.854,-0.024,9.891,0.0,0.0,-5.754,-0.059,-1.14,-7.35,-0.161,0.0,2.901,11.269,777.8,496.4,4294.0,850.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-calctype-operational-misc-loads-large-uncommon2.xml,76.985,76.985,48.619,48.619,20.46,2.609,0.0,0.0,5.297,0.0,0.0,0.0,0.311,3.773,0.692,3.941,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,4.61,1.024,0.0,0.158,0.21,0.868,1.158,0.0,1.46,8.374,5.687,1.186,0.0,6.721,0.606,2.994,0.0,0.0,18.866,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,1.594,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.609,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,5.297,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.666,11.697,3.621,0.615,0.0,0.0,0.0,0.0,2406.1,4160.4,22.229,18.468,0.0,3.601,3.669,0.517,7.199,0.637,-1.947,0.0,0.0,6.756,-0.12,4.817,0.0,0.729,0.0,4.157,-12.689,0.0,-0.035,-0.452,-0.05,2.854,-0.024,9.891,0.0,0.0,-5.754,-0.059,-1.14,-7.35,-0.161,0.0,2.901,11.269,777.8,496.4,4294.0,850.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-calctype-operational.xml,49.815,49.815,27.513,27.513,22.302,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.368,3.325,0.585,3.943,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.158,0.21,0.868,1.158,0.0,1.46,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,22.302,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,20.885,9.873,3.621,0.617,0.0,0.0,0.0,0.0,1628.0,2946.5,22.879,17.084,0.0,3.548,3.638,0.512,7.099,0.631,-2.059,0.0,0.0,6.632,-0.116,4.805,0.0,0.726,0.0,4.833,-9.683,0.0,0.043,-0.387,-0.041,3.033,-0.007,10.063,0.0,0.0,-5.471,-0.055,-1.086,-6.634,-0.153,0.0,2.547,8.214,777.8,496.4,4294.1,850.6,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-dhw-combi-tankless-outside.xml,50.86,50.86,21.419,21.419,29.441,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.143,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,18.975,0.0,10.466,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.936,0.0,9.337,0.0,0.0,0.0,0.0,0.0,1376.7,0.0,16.511,0.0,0.0,3.746,3.647,0.513,7.113,0.632,-2.043,0.0,0.0,6.583,-0.114,5.889,0.0,0.728,0.0,0.0,-11.073,0.0,-0.179,-0.693,-0.085,2.13,-0.085,9.115,0.0,0.0,-6.713,-0.054,-1.631,-10.731,-0.215,0.0,0.0,9.6,1068.6,776.0,8563.5,1965.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-dhw-combi-tankless.xml,50.86,50.86,21.419,21.419,29.441,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.143,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,18.975,0.0,10.466,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.936,0.0,9.337,0.0,0.0,0.0,0.0,0.0,1376.7,0.0,16.511,0.0,0.0,3.746,3.647,0.513,7.113,0.632,-2.043,0.0,0.0,6.583,-0.114,5.889,0.0,0.728,0.0,0.0,-11.073,0.0,-0.179,-0.693,-0.085,2.13,-0.085,9.115,0.0,0.0,-6.713,-0.054,-1.631,-10.731,-0.215,0.0,0.0,9.6,1068.6,776.0,8563.5,1965.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-dhw-combi-tankless-outside.xml,48.906,48.906,21.419,21.419,27.486,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.143,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.851,0.0,9.635,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.936,0.0,9.337,0.0,0.0,0.0,0.0,0.0,1376.7,0.0,16.511,0.0,0.0,3.746,3.647,0.513,7.113,0.632,-2.043,0.0,0.0,6.583,-0.114,5.889,0.0,0.728,0.0,0.0,-11.073,0.0,-0.179,-0.693,-0.085,2.13,-0.085,9.115,0.0,0.0,-6.713,-0.054,-1.631,-10.731,-0.215,0.0,0.0,9.6,1068.6,776.0,8563.5,1965.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-dhw-combi-tankless.xml,48.906,48.906,21.419,21.419,27.486,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.143,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.851,0.0,9.635,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.936,0.0,9.337,0.0,0.0,0.0,0.0,0.0,1376.7,0.0,16.511,0.0,0.0,3.746,3.647,0.513,7.113,0.632,-2.043,0.0,0.0,6.583,-0.114,5.889,0.0,0.728,0.0,0.0,-11.073,0.0,-0.179,-0.693,-0.085,2.13,-0.085,9.115,0.0,0.0,-6.713,-0.054,-1.631,-10.731,-0.215,0.0,0.0,9.6,1068.6,776.0,8563.5,1965.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-desuperheater-2-speed.xml,31.96,31.96,31.96,31.96,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.904,0.626,7.154,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,11.699,9.233,0.659,2.498,0.0,0.0,0.0,0.0,2739.0,0.0,18.818,0.0,2.777,2.644,0.37,4.253,0.378,-4.978,0.0,0.0,1.765,-0.203,3.23,0.0,0.543,0.0,0.0,-11.111,0.0,-0.043,-0.432,-0.047,2.917,-0.022,10.022,0.0,0.0,-6.137,-0.058,-1.147,-6.914,-0.16,0.0,3.37,10.545,1354.8,997.6,11406.8,2617.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-desuperheater-gshp.xml,36.28,36.28,36.28,36.28,0.0,0.0,0.0,0.0,0.0,0.0,4.822,0.0,0.397,1.958,0.797,7.03,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.974,10.202,9.233,0.615,2.426,0.0,0.0,0.0,3188.4,2129.2,20.613,15.055,0.0,3.616,3.648,0.514,7.129,0.633,-2.027,0.0,0.0,6.66,-0.118,4.809,0.0,0.729,0.0,3.145,-11.085,0.0,0.05,-0.419,-0.045,2.939,-0.015,9.969,0.0,0.0,-5.619,-0.057,-1.116,-7.102,-0.157,0.0,1.632,10.364,1354.8,997.6,11407.7,2617.7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-desuperheater-hpwh.xml,53.481,53.481,28.795,28.795,24.686,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.407,3.629,0.658,2.824,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24.686,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,23.117,11.051,9.25,1.807,2.502,0.0,0.0,0.0,1878.1,3056.1,22.763,18.476,0.0,3.542,3.643,0.513,7.11,0.629,-2.118,0.0,0.0,6.682,-0.1,4.798,0.0,0.727,0.0,5.241,-7.901,0.0,0.045,-0.376,-0.039,3.064,-0.006,10.029,0.0,0.0,-5.4,-0.042,-1.072,-6.622,-0.148,0.0,2.744,9.227,1354.7,997.5,11327.0,2599.2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 @@ -66,17 +66,17 @@ base-dhw-desuperheater-tankless.xml,33.081,33.081,33.081,33.081,0.0,0.0,0.0,0.0, base-dhw-desuperheater-var-speed.xml,31.307,31.307,31.307,31.307,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.58,0.285,7.165,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,12.373,9.233,0.659,2.481,0.0,0.0,0.0,0.0,2509.0,0.0,18.757,0.0,2.777,2.644,0.37,4.253,0.378,-4.978,0.0,0.0,1.765,-0.203,3.23,0.0,0.543,0.0,0.0,-11.111,0.0,-0.078,-0.432,-0.047,2.918,-0.022,10.023,0.0,0.0,-6.137,-0.058,-1.147,-6.92,-0.16,0.0,4.093,10.54,1354.8,997.6,11408.0,2617.8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-desuperheater.xml,33.071,33.071,33.071,33.071,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.716,0.94,7.139,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,11.186,9.232,0.659,2.519,0.0,0.0,0.0,0.0,3176.4,0.0,18.164,0.0,2.777,2.644,0.37,4.253,0.378,-4.978,0.0,0.0,1.765,-0.203,3.23,0.0,0.543,0.0,0.0,-11.111,0.0,-0.023,-0.432,-0.047,2.916,-0.023,10.022,0.0,0.0,-6.138,-0.058,-1.147,-6.915,-0.16,0.0,2.849,10.55,1354.8,997.6,11410.4,2618.3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-dwhr.xml,52.964,52.964,32.758,32.758,20.205,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.333,3.578,0.645,6.926,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,20.205,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,18.921,10.829,6.826,0.616,0.0,0.0,0.0,0.0,2103.0,3300.1,22.275,17.78,0.0,3.572,3.648,0.514,7.134,0.632,-2.018,0.0,0.0,6.66,-0.116,4.808,0.0,0.729,0.0,4.414,-11.391,0.0,0.003,-0.421,-0.046,2.937,-0.016,9.972,0.0,0.0,-5.627,-0.055,-1.121,-7.064,-0.158,0.0,2.725,9.898,1354.8,997.6,10264.9,2355.5,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-dhw-indirect-dse.xml,57.078,57.078,21.442,21.442,35.636,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.166,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,21.982,0.0,13.654,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.742,0.0,9.261,2.322,0.0,0.0,0.0,0.0,1375.9,0.0,16.22,0.0,0.0,3.748,3.649,0.514,7.125,0.633,-2.006,0.0,0.0,6.577,-0.118,5.895,0.0,0.729,0.0,0.0,-12.34,0.0,-0.214,-0.73,-0.09,2.027,-0.095,9.032,0.0,0.0,-6.869,-0.057,-1.676,-11.287,-0.223,0.0,0.0,10.655,1135.9,823.9,9517.9,2184.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-dhw-indirect-outside.xml,55.203,55.203,21.419,21.419,33.783,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.143,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,18.975,0.0,14.809,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.936,0.0,9.263,3.3,0.0,0.0,0.0,0.0,1376.7,0.0,16.511,0.0,0.0,3.746,3.647,0.513,7.113,0.632,-2.043,0.0,0.0,6.583,-0.114,5.889,0.0,0.728,0.0,0.0,-11.073,0.0,-0.179,-0.693,-0.085,2.13,-0.085,9.115,0.0,0.0,-6.713,-0.054,-1.631,-10.731,-0.215,0.0,0.0,9.6,1120.1,811.3,9405.5,2158.3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-dhw-indirect-standbyloss.xml,52.897,52.897,21.407,21.407,31.49,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.13,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.328,0.0,14.162,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.521,0.0,9.262,2.755,0.0,0.0,0.0,0.0,1375.7,0.0,16.147,0.0,0.0,3.749,3.651,0.514,7.128,0.633,-2.001,0.0,0.0,6.579,-0.119,5.897,0.0,0.729,0.0,0.0,-12.58,0.0,-0.219,-0.735,-0.091,2.009,-0.096,9.014,0.0,0.0,-6.894,-0.058,-1.684,-11.396,-0.224,0.0,0.0,10.848,1124.3,813.8,9456.1,2169.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-dhw-indirect-with-solar-fraction.xml,44.671,44.671,21.416,21.416,23.256,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.139,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,18.491,0.0,4.765,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.519,0.0,9.24,0.803,0.0,6.006,0.0,0.0,1376.4,0.0,16.389,0.0,0.0,3.747,3.648,0.514,7.117,0.633,-2.03,0.0,0.0,6.583,-0.117,5.892,0.0,0.728,0.0,0.0,-11.516,0.0,-0.191,-0.706,-0.087,2.095,-0.088,9.087,0.0,0.0,-6.765,-0.057,-1.646,-10.923,-0.218,0.0,0.0,9.961,405.7,298.8,3337.6,765.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-dhw-indirect.xml,52.648,52.648,21.409,21.409,31.24,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.132,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.586,0.0,13.654,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.742,0.0,9.261,2.322,0.0,0.0,0.0,0.0,1375.9,0.0,16.22,0.0,0.0,3.748,3.649,0.514,7.125,0.633,-2.006,0.0,0.0,6.577,-0.118,5.895,0.0,0.729,0.0,0.0,-12.34,0.0,-0.214,-0.73,-0.09,2.027,-0.095,9.032,0.0,0.0,-6.869,-0.057,-1.676,-11.287,-0.223,0.0,0.0,10.655,1135.9,823.9,9517.9,2184.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-dhw-indirect-dse.xml,54.653,54.653,21.442,21.442,33.211,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.166,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,20.641,0.0,12.57,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.742,0.0,9.261,2.322,0.0,0.0,0.0,0.0,1375.9,0.0,16.22,0.0,0.0,3.748,3.649,0.514,7.125,0.633,-2.006,0.0,0.0,6.577,-0.118,5.895,0.0,0.729,0.0,0.0,-12.34,0.0,-0.214,-0.73,-0.09,2.027,-0.095,9.032,0.0,0.0,-6.869,-0.057,-1.676,-11.287,-0.223,0.0,0.0,10.655,1135.9,823.9,9517.9,2184.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-dhw-indirect-outside.xml,52.905,52.905,21.419,21.419,31.486,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.143,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.851,0.0,13.635,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.936,0.0,9.263,3.3,0.0,0.0,0.0,0.0,1376.7,0.0,16.511,0.0,0.0,3.746,3.647,0.513,7.113,0.632,-2.043,0.0,0.0,6.583,-0.114,5.889,0.0,0.728,0.0,0.0,-11.073,0.0,-0.179,-0.693,-0.085,2.13,-0.085,9.115,0.0,0.0,-6.713,-0.054,-1.631,-10.731,-0.215,0.0,0.0,9.6,1120.1,811.3,9405.5,2158.3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-dhw-indirect-standbyloss.xml,50.711,50.711,21.407,21.407,29.305,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.13,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.265,0.0,13.04,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.521,0.0,9.262,2.755,0.0,0.0,0.0,0.0,1375.7,0.0,16.147,0.0,0.0,3.749,3.651,0.514,7.128,0.633,-2.001,0.0,0.0,6.579,-0.119,5.897,0.0,0.729,0.0,0.0,-12.58,0.0,-0.219,-0.735,-0.091,2.009,-0.096,9.014,0.0,0.0,-6.894,-0.058,-1.684,-11.396,-0.224,0.0,0.0,10.848,1124.3,813.8,9456.1,2169.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-dhw-indirect-with-solar-fraction.xml,43.184,43.184,21.416,21.416,21.768,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.139,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.384,0.0,4.384,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.519,0.0,9.24,0.803,0.0,6.006,0.0,0.0,1376.4,0.0,16.389,0.0,0.0,3.747,3.648,0.514,7.117,0.633,-2.03,0.0,0.0,6.583,-0.117,5.892,0.0,0.728,0.0,0.0,-11.516,0.0,-0.191,-0.706,-0.087,2.095,-0.088,9.087,0.0,0.0,-6.765,-0.057,-1.646,-10.923,-0.218,0.0,0.0,9.961,405.7,298.8,3337.6,765.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-dhw-indirect.xml,50.492,50.492,21.409,21.409,29.083,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.132,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.512,0.0,12.57,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.742,0.0,9.261,2.322,0.0,0.0,0.0,0.0,1375.9,0.0,16.22,0.0,0.0,3.748,3.649,0.514,7.125,0.633,-2.006,0.0,0.0,6.577,-0.118,5.895,0.0,0.729,0.0,0.0,-12.34,0.0,-0.214,-0.73,-0.09,2.027,-0.095,9.032,0.0,0.0,-6.869,-0.057,-1.676,-11.287,-0.223,0.0,0.0,10.655,1135.9,823.9,9517.9,2184.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-jacket-electric.xml,55.095,55.095,34.676,34.676,20.419,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.337,3.555,0.64,8.868,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,20.419,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,19.121,10.737,9.234,0.296,0.0,0.0,0.0,0.0,2130.0,3604.3,22.328,17.721,0.0,3.572,3.649,0.514,7.134,0.632,-2.034,0.0,0.0,6.664,-0.113,4.807,0.0,0.729,0.0,4.456,-11.222,0.0,0.009,-0.417,-0.045,2.946,-0.015,9.965,0.0,0.0,-5.611,-0.051,-1.117,-7.025,-0.157,0.0,2.707,9.748,1354.8,997.6,11399.6,2615.8,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-jacket-gas.xml,61.161,61.161,25.934,25.934,35.227,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.344,3.651,0.662,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,20.827,0.0,14.4,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,19.503,11.12,9.234,2.733,0.0,0.0,0.0,0.0,1463.8,3019.3,22.826,18.214,0.0,3.567,3.648,0.514,7.133,0.632,-2.01,0.0,0.0,6.66,-0.117,5.892,0.0,0.728,0.0,4.543,-12.023,0.0,-0.002,-0.423,-0.046,2.934,-0.016,9.977,0.0,0.0,-5.631,-0.056,-1.389,-7.097,-0.158,0.0,2.789,10.433,1354.8,997.6,11399.8,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-jacket-hpwh.xml,53.407,53.407,28.713,28.713,24.694,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.407,3.181,0.553,3.296,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,24.694,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,23.125,9.283,9.287,1.314,0.0,0.0,0.0,0.0,1895.9,2931.6,22.855,17.579,0.0,3.54,3.64,0.512,7.102,0.631,-2.099,0.0,0.0,6.673,-0.104,4.798,0.0,0.727,0.0,5.241,-7.881,0.0,0.065,-0.368,-0.038,3.085,-0.002,10.081,0.0,0.0,-5.365,-0.045,-1.063,-6.337,-0.146,0.0,2.391,7.406,1354.8,997.6,10994.5,2522.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-dhw-jacket-indirect.xml,52.435,52.435,21.41,21.41,31.025,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.134,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.803,0.0,13.221,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.929,0.0,9.259,1.956,0.0,0.0,0.0,0.0,1376.1,0.0,16.244,0.0,0.0,3.746,3.648,0.514,7.121,0.633,-2.007,0.0,0.0,6.576,-0.118,5.894,0.0,0.729,0.0,0.0,-12.139,0.0,-0.209,-0.725,-0.09,2.043,-0.093,9.05,0.0,0.0,-6.846,-0.058,-1.669,-11.197,-0.222,0.0,0.0,10.49,1142.9,828.0,9571.2,2196.3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-dhw-jacket-indirect.xml,50.304,50.304,21.41,21.41,28.894,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.134,0.0,0.0,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.722,0.0,12.172,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.929,0.0,9.259,1.956,0.0,0.0,0.0,0.0,1376.1,0.0,16.244,0.0,0.0,3.746,3.648,0.514,7.121,0.633,-2.007,0.0,0.0,6.576,-0.118,5.894,0.0,0.729,0.0,0.0,-12.139,0.0,-0.209,-0.725,-0.09,2.043,-0.093,9.05,0.0,0.0,-6.846,-0.058,-1.669,-11.197,-0.222,0.0,0.0,10.49,1142.9,828.0,9571.2,2196.3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-low-flow-fixtures.xml,54.835,54.835,34.63,34.63,20.205,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.333,3.578,0.645,8.798,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,20.205,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,18.921,10.829,8.838,0.616,0.0,0.0,0.0,0.0,2106.1,3281.5,22.273,17.78,0.0,3.572,3.648,0.514,7.134,0.632,-2.018,0.0,0.0,6.66,-0.116,4.808,0.0,0.729,0.0,4.414,-11.391,0.0,0.003,-0.421,-0.046,2.937,-0.016,9.972,0.0,0.0,-5.627,-0.055,-1.121,-7.064,-0.158,0.0,2.725,9.898,1354.8,997.6,10829.6,2485.1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-dhw-multiple.xml,45.379,45.379,23.372,23.372,22.006,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.135,0.0,0.0,1.961,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,18.008,0.0,3.998,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.109,0.0,9.225,2.884,0.0,5.996,0.0,0.0,2110.7,0.0,18.228,0.0,0.0,3.746,3.648,0.514,7.123,0.632,-2.014,0.0,0.0,6.581,-0.117,5.893,0.0,0.729,0.0,0.0,-11.958,0.0,-0.205,-0.719,-0.089,2.062,-0.092,9.06,0.0,0.0,-6.818,-0.056,-1.663,-11.115,-0.22,0.0,0.0,10.362,471.9,347.4,3997.4,917.3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-dhw-multiple.xml,44.189,44.189,23.372,23.372,20.816,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.135,0.0,0.0,1.961,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.925,0.0,3.892,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.109,0.0,9.225,2.884,0.0,5.996,0.0,0.0,2110.7,0.0,18.228,0.0,0.0,3.746,3.648,0.514,7.123,0.632,-2.014,0.0,0.0,6.581,-0.117,5.893,0.0,0.729,0.0,0.0,-11.958,0.0,-0.205,-0.719,-0.089,2.062,-0.092,9.06,0.0,0.0,-6.818,-0.056,-1.663,-11.115,-0.22,0.0,0.0,10.362,471.9,347.4,3997.4,917.3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-none.xml,43.786,43.786,23.612,23.612,20.174,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.333,3.558,0.641,0.0,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.0,0.0,0.0,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,20.174,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,18.892,10.79,0.0,0.0,0.0,0.0,0.0,0.0,1360.1,2873.8,22.313,17.742,0.0,3.574,3.65,0.514,7.14,0.633,-2.013,0.0,0.0,6.669,-0.116,5.406,0.0,0.0,0.0,4.409,-11.306,0.0,0.002,-0.423,-0.046,2.932,-0.016,9.967,0.0,0.0,-5.634,-0.055,-1.251,-7.065,0.0,0.0,2.71,9.865,0.0,0.0,0.0,0.0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-recirc-demand.xml,55.154,55.154,34.949,34.949,20.205,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.333,3.578,0.645,9.09,0.026,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,20.205,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,18.921,10.829,9.174,0.616,0.0,0.0,0.0,0.0,2131.3,3394.1,22.273,17.78,0.0,3.572,3.648,0.514,7.134,0.632,-2.018,0.0,0.0,6.66,-0.116,4.808,0.0,0.729,0.0,4.414,-11.391,0.0,0.003,-0.421,-0.046,2.937,-0.016,9.972,0.0,0.0,-5.627,-0.055,-1.121,-7.064,-0.158,0.0,2.725,9.898,1354.8,997.6,11399.6,2510.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-dhw-recirc-manual.xml,54.727,54.727,34.522,34.522,20.205,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.333,3.578,0.645,8.672,0.017,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,20.205,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,18.921,10.829,9.174,0.616,0.0,0.0,0.0,0.0,2116.4,3384.7,22.273,17.78,0.0,3.572,3.648,0.514,7.134,0.632,-2.018,0.0,0.0,6.66,-0.116,4.808,0.0,0.729,0.0,4.414,-11.391,0.0,0.003,-0.421,-0.046,2.937,-0.016,9.972,0.0,0.0,-5.627,-0.055,-1.121,-7.064,-0.158,0.0,2.725,9.898,1354.8,997.6,11399.6,2510.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 @@ -176,8 +176,8 @@ base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-acca.xml,40 base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-hers.xml,40.023,40.023,40.023,40.023,0.0,0.0,0.0,0.0,0.0,0.0,6.64,0.06,0.743,1.955,0.183,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,23.65,11.498,9.234,0.616,0.0,0.0,0.0,0.0,4977.7,2655.3,24.08,17.531,0.0,3.391,3.652,0.514,7.143,0.633,-2.026,0.0,0.0,6.676,-0.113,4.809,0.0,0.729,0.0,9.275,-11.395,0.0,-0.022,-0.419,-0.045,2.94,-0.016,9.96,0.0,0.0,-5.619,-0.052,-1.12,-7.064,-0.158,0.0,3.424,9.894,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-maxload.xml,39.715,39.715,39.715,39.715,0.0,0.0,0.0,0.0,0.0,0.0,6.503,0.0,0.673,1.944,0.154,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,21.749,10.595,9.234,0.616,0.0,0.0,0.0,0.0,4087.0,2454.8,23.199,16.316,0.0,3.464,3.651,0.514,7.14,0.633,-2.027,0.0,0.0,6.673,-0.113,4.809,0.0,0.729,0.0,7.321,-11.395,0.0,0.018,-0.419,-0.046,2.939,-0.016,9.959,0.0,0.0,-5.62,-0.052,-1.12,-7.061,-0.158,0.0,2.499,9.894,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-autosize-boiler-elec-only.xml,46.323,46.323,46.323,46.323,0.0,0.0,0.0,0.0,0.0,0.0,15.725,0.0,0.169,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,5617.0,0.0,15.859,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-hvac-autosize-boiler-gas-central-ac-1-speed.xml,52.254,52.254,35.444,35.444,16.81,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.199,3.829,0.973,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.81,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.654,11.774,9.234,0.616,0.0,0.0,0.0,12.0,2091.7,3174.4,15.859,17.288,0.0,3.745,3.647,0.514,7.129,0.632,-2.019,0.0,0.0,6.652,-0.118,4.808,0.0,0.729,0.0,0.0,-11.393,0.0,-0.039,-0.421,-0.046,2.937,-0.016,9.974,0.0,0.0,-5.627,-0.056,-1.12,-7.067,-0.158,0.0,3.688,9.896,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-hvac-autosize-boiler-gas-only.xml,47.351,47.351,30.627,30.627,16.724,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.198,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.724,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2041.7,0.0,15.859,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-autosize-boiler-gas-central-ac-1-speed.xml,51.84,51.84,35.444,35.444,16.397,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.199,3.829,0.973,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.397,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.654,11.774,9.234,0.616,0.0,0.0,0.0,12.0,2091.7,3174.4,15.859,17.288,0.0,3.745,3.647,0.514,7.129,0.632,-2.019,0.0,0.0,6.652,-0.118,4.808,0.0,0.729,0.0,0.0,-11.393,0.0,-0.039,-0.421,-0.046,2.937,-0.016,9.974,0.0,0.0,-5.627,-0.056,-1.12,-7.067,-0.158,0.0,3.688,9.896,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-autosize-boiler-gas-only.xml,46.939,46.939,30.627,30.627,16.312,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.198,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.312,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2041.7,0.0,15.859,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-autosize-central-ac-only-1-speed.xml,35.187,35.187,35.187,35.187,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.756,0.95,9.205,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,11.479,9.234,0.659,0.0,0.0,0.0,12.0,0.0,3452.5,0.0,17.219,0.0,2.788,2.655,0.372,4.288,0.381,-4.945,0.0,0.0,1.82,-0.203,3.246,0.0,0.546,0.0,0.0,-11.287,0.0,-0.055,-0.433,-0.047,2.915,-0.023,10.019,0.0,0.0,-6.132,-0.058,-1.148,-6.872,-0.16,0.0,3.614,10.046,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-autosize-central-ac-only-2-speed.xml,34.071,34.071,34.071,34.071,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.959,0.631,9.205,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,11.905,9.234,0.659,0.0,0.0,0.0,4.0,0.0,3144.0,0.0,17.649,0.0,2.788,2.655,0.372,4.288,0.381,-4.945,0.0,0.0,1.82,-0.203,3.246,0.0,0.546,0.0,0.0,-11.287,0.0,-0.073,-0.433,-0.047,2.916,-0.023,10.021,0.0,0.0,-6.13,-0.058,-1.148,-6.87,-0.16,0.0,4.042,10.046,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-autosize-central-ac-only-var-speed.xml,33.485,33.485,33.485,33.485,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.597,0.406,9.205,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,12.358,9.234,0.659,0.0,0.0,0.0,11.0,0.0,2834.4,0.0,17.022,0.0,2.788,2.655,0.372,4.288,0.381,-4.945,0.0,0.0,1.82,-0.203,3.246,0.0,0.546,0.0,0.0,-11.287,0.0,-0.099,-0.433,-0.047,2.916,-0.023,10.02,0.0,0.0,-6.131,-0.058,-1.148,-6.879,-0.16,0.0,4.539,10.046,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 @@ -215,13 +215,14 @@ base-hvac-autosize-room-ac-only.xml,34.36,34.36,34.36,34.36,0.0,0.0,0.0,0.0,0.0, base-hvac-autosize-stove-oil-only.xml,49.954,49.954,30.52,30.52,0.0,19.435,0.0,0.0,0.0,0.0,0.0,0.0,0.09,0.0,0.0,9.154,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,19.435,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.624,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2037.1,0.0,16.428,0.0,0.0,3.745,3.646,0.513,7.115,0.632,-2.025,0.0,0.0,6.579,-0.118,5.891,0.0,0.728,0.0,0.0,-11.401,0.0,-0.19,-0.704,-0.087,2.103,-0.088,9.102,0.0,0.0,-6.756,-0.058,-1.643,-10.876,-0.217,0.0,0.0,9.875,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-autosize-wall-furnace-elec-only.xml,45.317,45.317,45.317,45.317,0.0,0.0,0.0,0.0,0.0,0.0,14.888,0.0,0.0,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,5692.6,0.0,15.871,0.0,0.0,3.746,3.647,0.514,7.121,0.632,-2.01,0.0,0.0,6.572,-0.119,4.808,0.0,0.729,0.0,0.0,-11.389,0.0,-0.201,-0.716,-0.088,2.066,-0.091,9.075,0.0,0.0,-6.814,-0.058,-1.335,-11.036,-0.22,0.0,0.0,9.887,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-autosize.xml,56.568,56.568,35.355,35.355,21.213,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.459,3.759,0.694,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,21.213,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,19.976,11.696,9.234,0.616,0.0,0.0,0.0,12.0,2135.6,3075.0,23.767,17.479,0.0,3.537,3.651,0.514,7.137,0.633,-2.03,0.0,0.0,6.667,-0.113,4.809,0.0,0.729,0.0,5.498,-11.395,0.0,-0.03,-0.419,-0.046,2.939,-0.016,9.959,0.0,0.0,-5.621,-0.052,-1.12,-7.067,-0.158,0.0,3.608,9.894,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-hvac-boiler-coal-only.xml,47.979,47.979,30.644,30.644,0.0,0.0,0.0,0.0,0.0,17.335,0.0,0.0,0.215,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.335,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2044.0,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-boiler-coal-only.xml,46.889,46.889,30.644,30.644,0.0,0.0,0.0,0.0,0.0,16.245,0.0,0.0,0.215,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.245,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2044.0,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-boiler-elec-only.xml,46.907,46.907,46.907,46.907,0.0,0.0,0.0,0.0,0.0,0.0,16.366,0.0,0.111,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,5769.9,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-hvac-boiler-gas-central-ac-1-speed.xml,52.645,52.645,35.14,35.14,17.505,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.132,3.649,0.917,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.505,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.654,10.912,9.234,0.616,0.0,0.0,0.0,0.0,2082.9,3460.5,15.857,17.946,0.0,3.745,3.647,0.514,7.129,0.632,-2.019,0.0,0.0,6.652,-0.118,4.808,0.0,0.729,0.0,0.0,-11.393,0.0,-0.002,-0.421,-0.046,2.937,-0.016,9.975,0.0,0.0,-5.626,-0.056,-1.12,-7.063,-0.158,0.0,2.808,9.896,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-hvac-boiler-gas-only.xml,47.975,47.975,30.56,30.56,17.415,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.131,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.415,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2032.9,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-hvac-boiler-oil-only.xml,47.979,47.979,30.644,30.644,0.0,17.335,0.0,0.0,0.0,0.0,0.0,0.0,0.215,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.335,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2044.0,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-hvac-boiler-propane-only.xml,47.974,47.974,30.54,30.54,0.0,0.0,17.434,0.0,0.0,0.0,0.0,0.0,0.111,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.434,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2030.3,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-hvac-boiler-wood-only.xml,47.974,47.974,30.54,30.54,0.0,0.0,0.0,17.434,0.0,0.0,0.0,0.0,0.111,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.434,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2030.3,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-boiler-gas-central-ac-1-speed.xml,51.552,51.552,35.14,35.14,16.412,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.132,3.649,0.917,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.412,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.654,10.912,9.234,0.616,0.0,0.0,0.0,0.0,2082.9,3460.5,15.857,17.946,0.0,3.745,3.647,0.514,7.129,0.632,-2.019,0.0,0.0,6.652,-0.118,4.808,0.0,0.729,0.0,0.0,-11.393,0.0,-0.002,-0.421,-0.046,2.937,-0.016,9.975,0.0,0.0,-5.626,-0.056,-1.12,-7.063,-0.158,0.0,2.808,9.896,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-boiler-gas-only-non-condensing.xml,50.481,50.481,30.57,30.57,19.911,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.14,0.0,0.0,9.154,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,19.911,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.624,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2046.3,0.0,16.438,0.0,0.0,3.746,3.647,0.514,7.116,0.633,-2.032,0.0,0.0,6.582,-0.116,5.891,0.0,0.728,0.0,0.0,-11.404,0.0,-0.189,-0.703,-0.087,2.103,-0.088,9.095,0.0,0.0,-6.753,-0.056,-1.642,-10.876,-0.217,0.0,0.0,9.873,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-boiler-gas-only.xml,46.887,46.887,30.56,30.56,16.327,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.131,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.327,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2032.9,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-boiler-oil-only.xml,46.889,46.889,30.644,30.644,0.0,16.245,0.0,0.0,0.0,0.0,0.0,0.0,0.215,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.245,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2044.0,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-boiler-propane-only.xml,46.886,46.886,30.54,30.54,0.0,0.0,16.346,0.0,0.0,0.0,0.0,0.0,0.111,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.346,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2030.3,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-boiler-wood-only.xml,46.886,46.886,30.54,30.54,0.0,0.0,0.0,16.346,0.0,0.0,0.0,0.0,0.111,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.346,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2030.3,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-central-ac-only-1-speed.xml,34.954,34.954,34.954,34.954,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.578,0.894,9.205,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,10.63,9.234,0.659,0.0,0.0,0.0,0.0,0.0,3484.4,0.0,17.646,0.0,2.788,2.655,0.372,4.288,0.381,-4.945,0.0,0.0,1.82,-0.203,3.246,0.0,0.546,0.0,0.0,-11.287,0.0,-0.019,-0.433,-0.047,2.915,-0.023,10.02,0.0,0.0,-6.132,-0.058,-1.148,-6.868,-0.16,0.0,2.749,10.046,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-central-ac-only-2-speed.xml,33.888,33.888,33.888,33.888,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.809,0.597,9.205,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,11.143,9.234,0.659,0.0,0.0,0.0,0.0,0.0,3001.6,0.0,18.435,0.0,2.788,2.655,0.372,4.288,0.381,-4.945,0.0,0.0,1.82,-0.203,3.246,0.0,0.546,0.0,0.0,-11.287,0.0,-0.039,-0.433,-0.047,2.916,-0.023,10.02,0.0,0.0,-6.131,-0.058,-1.148,-6.867,-0.16,0.0,3.266,10.046,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-central-ac-only-var-speed.xml,33.254,33.254,33.254,33.254,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.508,0.265,9.205,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,11.861,9.234,0.659,0.0,0.0,0.0,0.0,0.0,2818.6,0.0,18.345,0.0,2.788,2.655,0.372,4.288,0.381,-4.945,0.0,0.0,1.82,-0.203,3.246,0.0,0.546,0.0,0.0,-11.287,0.0,-0.075,-0.433,-0.047,2.917,-0.023,10.021,0.0,0.0,-6.13,-0.058,-1.148,-6.873,-0.16,0.0,4.026,10.046,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 @@ -274,7 +275,7 @@ base-hvac-mini-split-heat-pump-ducted-heating-only.xml,35.332,35.332,35.332,35.3 base-hvac-mini-split-heat-pump-ducted.xml,37.125,37.125,37.125,37.125,0.0,0.0,0.0,0.0,0.0,0.0,4.692,0.006,0.261,1.664,0.06,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,17.39,8.922,9.234,0.616,0.0,0.0,0.0,0.0,3648.9,2188.1,18.654,12.71,0.0,3.626,3.648,0.514,7.133,0.632,-2.018,0.0,0.0,6.657,-0.116,4.808,0.0,0.729,0.0,2.842,-11.391,0.0,0.076,-0.421,-0.046,2.936,-0.016,9.971,0.0,0.0,-5.629,-0.055,-1.121,-7.056,-0.158,0.0,0.791,9.898,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-mini-split-heat-pump-ductless-backup-stove.xml,37.163,37.163,36.661,36.661,0.0,0.502,0.0,0.0,0.0,0.0,4.586,0.0,0.102,1.508,0.022,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.502,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.7,8.099,9.234,0.616,0.0,0.0,0.0,0.0,3168.7,2131.0,16.428,11.142,0.0,3.745,3.646,0.513,7.123,0.632,-2.036,0.0,0.0,6.657,-0.115,5.891,0.0,0.728,0.0,0.0,-11.404,0.0,0.084,-0.412,-0.044,2.963,-0.013,9.99,0.0,0.0,-5.583,-0.055,-1.373,-6.941,-0.156,0.0,0.0,9.886,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-mini-split-heat-pump-ductless.xml,36.344,36.344,36.344,36.344,0.0,0.0,0.0,0.0,0.0,0.0,4.153,0.0,0.086,1.642,0.021,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.655,8.144,9.234,0.616,0.0,0.0,0.0,0.0,3368.3,2156.1,15.871,10.986,0.0,3.744,3.646,0.513,7.128,0.632,-2.014,0.0,0.0,6.648,-0.118,4.807,0.0,0.729,0.0,0.0,-11.389,0.0,0.075,-0.422,-0.046,2.936,-0.016,9.98,0.0,0.0,-5.631,-0.056,-1.121,-7.045,-0.158,0.0,0.0,9.901,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 -base-hvac-multiple.xml,60.968,60.968,48.033,48.033,6.421,3.221,3.294,0.0,0.0,0.0,11.631,0.153,0.779,4.594,0.433,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.421,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.221,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.294,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,29.296,15.094,9.234,0.616,0.0,0.0,0.0,4.0,6163.2,3957.1,36.693,22.704,0.0,3.457,3.65,0.514,7.133,0.633,-2.044,0.0,0.0,6.676,-0.112,5.891,0.0,0.728,0.0,13.846,-11.408,0.0,-0.059,-0.411,-0.044,2.964,-0.013,9.975,0.0,0.0,-5.579,-0.052,-1.374,-7.004,-0.156,0.0,7.102,9.882,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-multiple.xml,60.776,60.776,48.033,48.033,6.228,3.221,3.294,0.0,0.0,0.0,11.631,0.153,0.779,4.594,0.433,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,6.228,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.221,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,3.294,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,29.296,15.094,9.234,0.616,0.0,0.0,0.0,4.0,6163.2,3957.1,36.693,22.704,0.0,3.457,3.65,0.514,7.133,0.633,-2.044,0.0,0.0,6.676,-0.112,5.891,0.0,0.728,0.0,13.846,-11.408,0.0,-0.059,-0.411,-0.044,2.964,-0.013,9.975,0.0,0.0,-5.579,-0.052,-1.374,-7.004,-0.156,0.0,7.102,9.882,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-none.xml,30.474,30.474,30.474,30.474,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,9.197,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,9.234,0.65,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,2.704,2.566,0.359,4.243,0.358,-5.223,0.0,0.0,2.43,-0.159,3.132,0.0,0.53,0.0,0.0,-11.29,0.0,-0.194,-0.701,-0.085,2.046,-0.091,9.196,0.0,0.0,-7.606,-0.061,-1.342,-10.506,-0.217,0.0,0.0,10.033,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-portable-heater-gas-only.xml,45.02,45.02,30.429,30.429,14.591,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.591,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2020.7,0.0,15.871,0.0,0.0,3.746,3.647,0.514,7.121,0.632,-2.01,0.0,0.0,6.572,-0.119,4.808,0.0,0.729,0.0,0.0,-11.389,0.0,-0.201,-0.716,-0.088,2.066,-0.091,9.075,0.0,0.0,-6.814,-0.058,-1.335,-11.036,-0.22,0.0,0.0,9.887,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-ptac-with-heating.xml,48.497,48.497,48.497,48.497,0.0,0.0,0.0,0.0,0.0,0.0,14.666,0.0,0.0,3.388,0.0,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.653,8.144,9.234,0.616,0.0,0.0,0.0,0.0,5610.2,2823.1,15.871,10.986,0.0,3.744,3.646,0.513,7.128,0.632,-2.014,0.0,0.0,6.647,-0.118,4.807,0.0,0.729,0.0,0.0,-11.389,0.0,0.075,-0.422,-0.046,2.936,-0.016,9.98,0.0,0.0,-5.631,-0.056,-1.121,-7.045,-0.158,0.0,0.0,9.901,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/workflow/tests/base_results/results_bills.csv b/workflow/tests/base_results/results_bills.csv index cfcaf07028..1cf4e7c2fc 100644 --- a/workflow/tests/base_results/results_bills.csv +++ b/workflow/tests/base_results/results_bills.csv @@ -25,16 +25,16 @@ base-bldgtype-multifamily-adjacent-to-non-freezing-space.xml,1288.44,144.0,821.2 base-bldgtype-multifamily-adjacent-to-other-heated-space.xml,1112.37,144.0,814.59,0.0,958.59,144.0,9.78,153.78,0.0,0.0,0.0,0.0,0.0 base-bldgtype-multifamily-adjacent-to-other-housing-unit.xml,1125.86,144.0,829.83,0.0,973.83,144.0,8.03,152.03,0.0,0.0,0.0,0.0,0.0 base-bldgtype-multifamily-calctype-operational.xml,902.98,144.0,605.6,0.0,749.6,144.0,9.38,153.38,0.0,0.0,0.0,0.0,0.0 -base-bldgtype-multifamily-shared-boiler-chiller-baseboard.xml,1159.61,144.0,866.59,0.0,1010.59,144.0,5.02,149.02,0.0,0.0,0.0,0.0,0.0 -base-bldgtype-multifamily-shared-boiler-chiller-fan-coil-ducted.xml,1180.3,144.0,886.94,0.0,1030.94,144.0,5.36,149.36,0.0,0.0,0.0,0.0,0.0 -base-bldgtype-multifamily-shared-boiler-chiller-fan-coil.xml,1168.14,144.0,875.38,0.0,1019.38,144.0,4.76,148.76,0.0,0.0,0.0,0.0,0.0 -base-bldgtype-multifamily-shared-boiler-chiller-water-loop-heat-pump.xml,1309.3,144.0,1017.31,0.0,1161.31,144.0,3.99,147.99,0.0,0.0,0.0,0.0,0.0 -base-bldgtype-multifamily-shared-boiler-cooling-tower-water-loop-heat-pump.xml,1174.0,144.0,882.01,0.0,1026.01,144.0,3.99,147.99,0.0,0.0,0.0,0.0,0.0 -base-bldgtype-multifamily-shared-boiler-only-baseboard.xml,1049.87,144.0,757.58,0.0,901.58,144.0,4.29,148.29,0.0,0.0,0.0,0.0,0.0 -base-bldgtype-multifamily-shared-boiler-only-fan-coil-ducted.xml,1050.88,144.0,758.3,0.0,902.3,144.0,4.58,148.58,0.0,0.0,0.0,0.0,0.0 -base-bldgtype-multifamily-shared-boiler-only-fan-coil-eae.xml,1050.88,144.0,758.79,0.0,902.79,144.0,4.09,148.09,0.0,0.0,0.0,0.0,0.0 -base-bldgtype-multifamily-shared-boiler-only-fan-coil.xml,1050.94,144.0,758.87,0.0,902.87,144.0,4.07,148.07,0.0,0.0,0.0,0.0,0.0 -base-bldgtype-multifamily-shared-boiler-only-water-loop-heat-pump.xml,1049.85,144.0,758.44,0.0,902.44,144.0,3.41,147.41,0.0,0.0,0.0,0.0,0.0 +base-bldgtype-multifamily-shared-boiler-chiller-baseboard.xml,1159.45,144.0,866.59,0.0,1010.59,144.0,4.86,148.86,0.0,0.0,0.0,0.0,0.0 +base-bldgtype-multifamily-shared-boiler-chiller-fan-coil-ducted.xml,1180.27,144.0,886.94,0.0,1030.94,144.0,5.33,149.33,0.0,0.0,0.0,0.0,0.0 +base-bldgtype-multifamily-shared-boiler-chiller-fan-coil.xml,1168.24,144.0,875.38,0.0,1019.38,144.0,4.86,148.86,0.0,0.0,0.0,0.0,0.0 +base-bldgtype-multifamily-shared-boiler-chiller-water-loop-heat-pump.xml,1309.12,144.0,1017.31,0.0,1161.31,144.0,3.81,147.81,0.0,0.0,0.0,0.0,0.0 +base-bldgtype-multifamily-shared-boiler-cooling-tower-water-loop-heat-pump.xml,1173.82,144.0,882.01,0.0,1026.01,144.0,3.81,147.81,0.0,0.0,0.0,0.0,0.0 +base-bldgtype-multifamily-shared-boiler-only-baseboard.xml,1049.74,144.0,757.58,0.0,901.58,144.0,4.16,148.16,0.0,0.0,0.0,0.0,0.0 +base-bldgtype-multifamily-shared-boiler-only-fan-coil-ducted.xml,1050.86,144.0,758.3,0.0,902.3,144.0,4.56,148.56,0.0,0.0,0.0,0.0,0.0 +base-bldgtype-multifamily-shared-boiler-only-fan-coil-eae.xml,1050.96,144.0,758.79,0.0,902.79,144.0,4.17,148.17,0.0,0.0,0.0,0.0,0.0 +base-bldgtype-multifamily-shared-boiler-only-fan-coil.xml,1051.03,144.0,758.87,0.0,902.87,144.0,4.16,148.16,0.0,0.0,0.0,0.0,0.0 +base-bldgtype-multifamily-shared-boiler-only-water-loop-heat-pump.xml,1049.7,144.0,758.44,0.0,902.44,144.0,3.26,147.26,0.0,0.0,0.0,0.0,0.0 base-bldgtype-multifamily-shared-chiller-only-baseboard.xml,1009.02,144.0,865.02,0.0,1009.02,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-bldgtype-multifamily-shared-chiller-only-fan-coil-ducted.xml,1028.4,144.0,884.4,0.0,1028.4,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-bldgtype-multifamily-shared-chiller-only-fan-coil.xml,1016.23,144.0,872.23,0.0,1016.23,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 @@ -57,8 +57,8 @@ base-calctype-operational-misc-defaults.xml,1137.35,144.0,1320.45,-669.34,795.12 base-calctype-operational-misc-loads-large-uncommon.xml,2417.42,144.0,1699.83,0.0,1843.83,144.0,280.26,424.26,0.0,69.87,79.46,0.0,0.0 base-calctype-operational-misc-loads-large-uncommon2.xml,2198.8,144.0,1619.04,0.0,1763.04,144.0,146.7,290.7,65.6,0.0,0.0,79.46,0.0 base-calctype-operational.xml,1364.12,144.0,916.22,0.0,1060.22,144.0,159.9,303.9,0.0,0.0,0.0,0.0,0.0 -base-dhw-combi-tankless-outside.xml,1212.37,144.0,713.28,0.0,857.28,144.0,211.09,355.09,0.0,0.0,0.0,0.0,0.0 -base-dhw-combi-tankless.xml,1212.37,144.0,713.28,0.0,857.28,144.0,211.09,355.09,0.0,0.0,0.0,0.0,0.0 +base-dhw-combi-tankless-outside.xml,1198.36,144.0,713.28,0.0,857.28,144.0,197.08,341.08,0.0,0.0,0.0,0.0,0.0 +base-dhw-combi-tankless.xml,1198.36,144.0,713.28,0.0,857.28,144.0,197.08,341.08,0.0,0.0,0.0,0.0,0.0 base-dhw-desuperheater-2-speed.xml,1208.29,144.0,1064.29,0.0,1208.29,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-dhw-desuperheater-gshp.xml,1352.15,144.0,1208.15,0.0,1352.15,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-dhw-desuperheater-hpwh.xml,1423.91,144.0,958.91,0.0,1102.91,144.0,177.0,321.0,0.0,0.0,0.0,0.0,0.0 @@ -67,16 +67,16 @@ base-dhw-desuperheater-var-speed.xml,1186.55,144.0,1042.55,0.0,1186.55,0.0,0.0,0 base-dhw-desuperheater.xml,1245.3,144.0,1101.3,0.0,1245.3,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-dhw-dwhr.xml,1523.75,144.0,1090.88,0.0,1234.88,144.0,144.87,288.87,0.0,0.0,0.0,0.0,0.0 base-dhw-indirect-dse.xml,,,,,,,,,,,,, -base-dhw-indirect-outside.xml,1243.5,144.0,713.28,0.0,857.28,144.0,242.22,386.22,0.0,0.0,0.0,0.0,0.0 -base-dhw-indirect-standbyloss.xml,1226.64,144.0,712.86,0.0,856.86,144.0,225.78,369.78,0.0,0.0,0.0,0.0,0.0 -base-dhw-indirect-with-solar-fraction.xml,1167.9,144.0,713.16,0.0,857.16,144.0,166.74,310.74,0.0,0.0,0.0,0.0,0.0 -base-dhw-indirect.xml,1224.91,144.0,712.92,0.0,856.92,144.0,223.99,367.99,0.0,0.0,0.0,0.0,0.0 +base-dhw-indirect-outside.xml,1227.03,144.0,713.28,0.0,857.28,144.0,225.75,369.75,0.0,0.0,0.0,0.0,0.0 +base-dhw-indirect-standbyloss.xml,1210.97,144.0,712.86,0.0,856.86,144.0,210.11,354.11,0.0,0.0,0.0,0.0,0.0 +base-dhw-indirect-with-solar-fraction.xml,1157.24,144.0,713.16,0.0,857.16,144.0,156.08,300.08,0.0,0.0,0.0,0.0,0.0 +base-dhw-indirect.xml,1209.44,144.0,712.92,0.0,856.92,144.0,208.52,352.52,0.0,0.0,0.0,0.0,0.0 base-dhw-jacket-electric.xml,1589.15,144.0,1154.75,0.0,1298.75,144.0,146.4,290.4,0.0,0.0,0.0,0.0,0.0 base-dhw-jacket-gas.xml,1404.19,144.0,863.61,0.0,1007.61,144.0,252.58,396.58,0.0,0.0,0.0,0.0,0.0 base-dhw-jacket-hpwh.xml,1421.23,144.0,956.17,0.0,1100.17,144.0,177.06,321.06,0.0,0.0,0.0,0.0,0.0 -base-dhw-jacket-indirect.xml,1223.43,144.0,712.98,0.0,856.98,144.0,222.45,366.45,0.0,0.0,0.0,0.0,0.0 +base-dhw-jacket-indirect.xml,1208.15,144.0,712.98,0.0,856.98,144.0,207.17,351.17,0.0,0.0,0.0,0.0,0.0 base-dhw-low-flow-fixtures.xml,1586.08,144.0,1153.21,0.0,1297.21,144.0,144.87,288.87,0.0,0.0,0.0,0.0,0.0 -base-dhw-multiple.xml,1224.1,144.0,778.32,0.0,922.32,144.0,157.78,301.78,0.0,0.0,0.0,0.0,0.0 +base-dhw-multiple.xml,1215.57,144.0,778.32,0.0,922.32,144.0,149.25,293.25,0.0,0.0,0.0,0.0,0.0 base-dhw-none.xml,1218.94,144.0,786.29,0.0,930.29,144.0,144.65,288.65,0.0,0.0,0.0,0.0,0.0 base-dhw-recirc-demand.xml,1596.68,144.0,1163.81,0.0,1307.81,144.0,144.87,288.87,0.0,0.0,0.0,0.0,0.0 base-dhw-recirc-manual.xml,1582.47,144.0,1149.6,0.0,1293.6,144.0,144.87,288.87,0.0,0.0,0.0,0.0,0.0 @@ -176,8 +176,8 @@ base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-acca.xml,15 base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-hers.xml,1476.8,144.0,1332.8,0.0,1476.8,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-maxload.xml,1466.53,144.0,1322.53,0.0,1466.53,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-hvac-autosize-boiler-elec-only.xml,1686.59,144.0,1542.59,0.0,1686.59,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 -base-hvac-autosize-boiler-gas-central-ac-1-speed.xml,1588.83,144.0,1180.3,0.0,1324.3,144.0,120.53,264.53,0.0,0.0,0.0,0.0,0.0 -base-hvac-autosize-boiler-gas-only.xml,1427.82,144.0,1019.91,0.0,1163.91,144.0,119.91,263.91,0.0,0.0,0.0,0.0,0.0 +base-hvac-autosize-boiler-gas-central-ac-1-speed.xml,1585.86,144.0,1180.3,0.0,1324.3,144.0,117.56,261.56,0.0,0.0,0.0,0.0,0.0 +base-hvac-autosize-boiler-gas-only.xml,1424.86,144.0,1019.91,0.0,1163.91,144.0,116.95,260.95,0.0,0.0,0.0,0.0,0.0 base-hvac-autosize-central-ac-only-1-speed.xml,1315.76,144.0,1171.76,0.0,1315.76,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-hvac-autosize-central-ac-only-2-speed.xml,1278.6,144.0,1134.6,0.0,1278.6,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-hvac-autosize-central-ac-only-var-speed.xml,1259.07,144.0,1115.07,0.0,1259.07,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 @@ -215,13 +215,14 @@ base-hvac-autosize-room-ac-only.xml,1288.23,144.0,1144.23,0.0,1288.23,0.0,0.0,0. base-hvac-autosize-stove-oil-only.xml,1649.04,144.0,1016.33,0.0,1160.33,0.0,0.0,0.0,488.71,0.0,0.0,0.0,0.0 base-hvac-autosize-wall-furnace-elec-only.xml,1653.1,144.0,1509.1,0.0,1653.1,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-hvac-autosize.xml,1617.44,144.0,1177.34,0.0,1321.34,144.0,152.1,296.1,0.0,0.0,0.0,0.0,0.0 -base-hvac-boiler-coal-only.xml,1424.5,144.0,1020.47,0.0,1164.47,0.0,0.0,0.0,0.0,0.0,0.0,0.0,260.03 +base-hvac-boiler-coal-only.xml,1408.14,144.0,1020.47,0.0,1164.47,0.0,0.0,0.0,0.0,0.0,0.0,0.0,243.67 base-hvac-boiler-elec-only.xml,1706.03,144.0,1562.03,0.0,1706.03,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 -base-hvac-boiler-gas-central-ac-1-speed.xml,1583.71,144.0,1170.2,0.0,1314.2,144.0,125.51,269.51,0.0,0.0,0.0,0.0,0.0 -base-hvac-boiler-gas-only.xml,1430.54,144.0,1017.67,0.0,1161.67,144.0,124.87,268.87,0.0,0.0,0.0,0.0,0.0 -base-hvac-boiler-oil-only.xml,1600.39,144.0,1020.47,0.0,1164.47,0.0,0.0,0.0,435.92,0.0,0.0,0.0,0.0 -base-hvac-boiler-propane-only.xml,1627.93,144.0,1017.02,0.0,1161.02,0.0,0.0,0.0,0.0,466.91,0.0,0.0,0.0 -base-hvac-boiler-wood-only.xml,1422.52,144.0,1017.02,0.0,1161.02,0.0,0.0,0.0,0.0,0.0,261.5,0.0,0.0 +base-hvac-boiler-gas-central-ac-1-speed.xml,1575.87,144.0,1170.2,0.0,1314.2,144.0,117.67,261.67,0.0,0.0,0.0,0.0,0.0 +base-hvac-boiler-gas-only-non-condensing.xml,1448.78,144.0,1018.02,0.0,1162.02,144.0,142.76,286.76,0.0,0.0,0.0,0.0,0.0 +base-hvac-boiler-gas-only.xml,1422.73,144.0,1017.67,0.0,1161.67,144.0,117.06,261.06,0.0,0.0,0.0,0.0,0.0 +base-hvac-boiler-oil-only.xml,1572.97,144.0,1020.47,0.0,1164.47,0.0,0.0,0.0,408.5,0.0,0.0,0.0,0.0 +base-hvac-boiler-propane-only.xml,1598.8,144.0,1017.02,0.0,1161.02,0.0,0.0,0.0,0.0,437.78,0.0,0.0,0.0 +base-hvac-boiler-wood-only.xml,1406.21,144.0,1017.02,0.0,1161.02,0.0,0.0,0.0,0.0,0.0,245.19,0.0,0.0 base-hvac-central-ac-only-1-speed.xml,1307.98,144.0,1163.98,0.0,1307.98,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-hvac-central-ac-only-2-speed.xml,1272.48,144.0,1128.48,0.0,1272.48,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-hvac-central-ac-only-var-speed.xml,1251.39,144.0,1107.39,0.0,1251.39,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 @@ -274,7 +275,7 @@ base-hvac-mini-split-heat-pump-ducted-heating-only.xml,1320.58,144.0,1176.58,0.0 base-hvac-mini-split-heat-pump-ducted.xml,1380.29,144.0,1236.29,0.0,1380.29,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-hvac-mini-split-heat-pump-ductless-backup-stove.xml,1377.45,144.0,1220.83,0.0,1364.83,0.0,0.0,0.0,12.62,0.0,0.0,0.0,0.0 base-hvac-mini-split-heat-pump-ductless.xml,1354.29,144.0,1210.29,0.0,1354.29,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 -base-hvac-multiple.xml,2102.78,144.0,1599.53,0.0,1743.53,144.0,46.04,190.04,81.0,88.21,0.0,0.0,0.0 +base-hvac-multiple.xml,2101.39,144.0,1599.53,0.0,1743.53,144.0,44.65,188.65,81.0,88.21,0.0,0.0,0.0 base-hvac-none.xml,1158.8,144.0,1014.8,0.0,1158.8,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-hvac-portable-heater-gas-only.xml,1405.92,144.0,1013.31,0.0,1157.31,144.0,104.61,248.61,0.0,0.0,0.0,0.0,0.0 base-hvac-ptac-with-heating.xml,1758.98,144.0,1614.98,0.0,1758.98,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 diff --git a/workflow/tests/base_results/results_hvac_sizing.csv b/workflow/tests/base_results/results_hvac_sizing.csv index 95b387571e..77a711f9f5 100644 --- a/workflow/tests/base_results/results_hvac_sizing.csv +++ b/workflow/tests/base_results/results_hvac_sizing.csv @@ -218,6 +218,7 @@ base-hvac-autosize.xml,32302.0,8597.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,217 base-hvac-boiler-coal-only.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 base-hvac-boiler-elec-only.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 base-hvac-boiler-gas-central-ac-1-speed.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,17964.0,5216.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,24000.0,998.0 +base-hvac-boiler-gas-only-non-condensing.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 base-hvac-boiler-gas-only.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 base-hvac-boiler-oil-only.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 base-hvac-boiler-propane-only.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 From 771c927f4ce5711675aadecf5d8d879fee696dd8 Mon Sep 17 00:00:00 2001 From: Scott Horowitz Date: Mon, 9 May 2022 19:46:58 -0600 Subject: [PATCH 3/7] Update tests and some code cleanup. --- HPXMLtoOpenStudio/measure.xml | 198 +++++++++--------- HPXMLtoOpenStudio/resources/hvac.rb | 18 +- HPXMLtoOpenStudio/tests/test_airflow.rb | 7 +- HPXMLtoOpenStudio/tests/test_battery.rb | 7 +- HPXMLtoOpenStudio/tests/test_defaults.rb | 7 +- HPXMLtoOpenStudio/tests/test_enclosure.rb | 7 +- HPXMLtoOpenStudio/tests/test_generator.rb | 7 +- .../tests/test_hotwater_appliance.rb | 7 +- HPXMLtoOpenStudio/tests/test_hvac.rb | 42 ++-- HPXMLtoOpenStudio/tests/test_hvac_sizing.rb | 7 +- HPXMLtoOpenStudio/tests/test_lighting.rb | 7 +- HPXMLtoOpenStudio/tests/test_location.rb | 7 +- HPXMLtoOpenStudio/tests/test_miscloads.rb | 7 +- HPXMLtoOpenStudio/tests/test_pv.rb | 7 +- HPXMLtoOpenStudio/tests/test_schedules.rb | 7 +- HPXMLtoOpenStudio/tests/test_simcontrols.rb | 7 +- HPXMLtoOpenStudio/tests/test_water_heater.rb | 7 +- 17 files changed, 192 insertions(+), 164 deletions(-) diff --git a/HPXMLtoOpenStudio/measure.xml b/HPXMLtoOpenStudio/measure.xml index 8fe2cc6ec6..46daca63f3 100644 --- a/HPXMLtoOpenStudio/measure.xml +++ b/HPXMLtoOpenStudio/measure.xml @@ -3,8 +3,8 @@ 3.0 hpxm_lto_openstudio b1543b30-9465-45ff-ba04-1d1f85e763bc - 5e64cc44-5c0d-4a52-ad95-1b167fd11d96 - 20220509T220032Z + 11b129ae-dde0-49b0-bca2-79f7a44f4e7d + 20220510T014645Z D8922A73 HPXMLtoOpenStudio HPXML to OpenStudio Translator @@ -127,18 +127,6 @@ resource 38ED685E - - test_location.rb - rb - test - CD66BA0D - - - test_simcontrols.rb - rb - test - BC336934 - generator.rb rb @@ -151,24 +139,12 @@ resource BF53D293 - - test_lighting.rb - rb - test - 852E38C5 - xmlhelper.rb rb resource DAFB64CF - - test_airflow.rb - rb - test - F1FF6B39 - util.rb rb @@ -181,18 +157,6 @@ resource 64E3EB57 - - test_pv.rb - rb - test - C5872A36 - - - test_generator.rb - rb - test - 61E63336 - pv.rb rb @@ -301,12 +265,6 @@ resource 1D3AE970 - - test_battery.rb - rb - test - 2CB59B38 - geometry.rb rb @@ -331,18 +289,6 @@ resource 4D0DEF4F - - test_hvac_sizing.rb - rb - test - C6BCBA97 - - - test_water_heater.rb - rb - test - E955AF3A - hvac_sizing.rb rb @@ -379,12 +325,6 @@ resource 868FE0BE - - test_enclosure.rb - rb - test - 32CF1B56 - airflow.rb rb @@ -414,12 +354,6 @@ script 5A10A311 - - test_schedules.rb - rb - test - 7A5FC44E - schedule_files/occupancy-smooth.csv csv @@ -486,18 +420,6 @@ resource 74292B8C - - test_miscloads.rb - rb - test - D214E11E - - - test_hotwater_appliance.rb - rb - test - 96E7469D - hotwater_appliances.rb rb @@ -516,24 +438,12 @@ resource 0408C060 - - test_hvac.rb - rb - test - 25C171EE - test_validation.rb rb test 7D2B7C4B - - test_defaults.rb - rb - test - B4619481 - hpxml_schematron/HPXMLvalidator.xml xml @@ -552,17 +462,113 @@ resource 95E440B0 + + hpxml_schematron/EPvalidator.xml + xml + resource + 1F511D88 + + + test_location.rb + rb + test + FBACF5E7 + + + test_simcontrols.rb + rb + test + 99847070 + + + test_lighting.rb + rb + test + D0818742 + + + test_airflow.rb + rb + test + 1EA5B5F2 + + + test_pv.rb + rb + test + 3309A78F + + + test_generator.rb + rb + test + 0493A01E + + + test_battery.rb + rb + test + CA108780 + + + test_hvac_sizing.rb + rb + test + C328713A + + + test_water_heater.rb + rb + test + 7DB85E18 + + + test_enclosure.rb + rb + test + 9934BE0D + + + test_schedules.rb + rb + test + 1EE2C1FB + + + test_miscloads.rb + rb + test + 5DFDCE6C + + + test_hotwater_appliance.rb + rb + test + FB2576A0 + + + test_defaults.rb + rb + test + 5920CC90 + + + test_hvac.rb + rb + test + 3C141B85 + hvac.rb rb resource - CFD8D4A3 + ECF15B82 - hpxml_schematron/EPvalidator.xml + in.xml xml - resource - 1F511D88 + test + 6CA21538 diff --git a/HPXMLtoOpenStudio/resources/hvac.rb b/HPXMLtoOpenStudio/resources/hvac.rb index 86c960193a..da333d35e8 100644 --- a/HPXMLtoOpenStudio/resources/hvac.rb +++ b/HPXMLtoOpenStudio/resources/hvac.rb @@ -474,17 +474,15 @@ def self.apply_boiler(model, runner, heating_system, boiler.setFuelType(EPlus.fuel_type(heating_system.heating_system_fuel)) if heating_system.condensing_system # Convert Rated Efficiency at 80F and 1.0PLR where the performance curves are derived from to Design condition as input - boiler_RatedHWRT = UnitConversions.convert(80.0 - 32.0, 'R', 'K') - plr_Rated = 1.0 - plr_Design = 1.0 - boiler_DesignHWRT = UnitConversions.convert(design_temp - 20.0 - 32.0, 'R', 'K') - # Efficiency curves are normalized using 80F return water temperature, at 0.254PLR - condBlr_TE_Coeff = [1.058343061, 0.052650153, 0.0087272, 0.001742217, 0.00000333715, 0.000513723] - boilerEff_Norm = heating_system.heating_efficiency_afue / (condBlr_TE_Coeff[0] - condBlr_TE_Coeff[1] * plr_Rated - condBlr_TE_Coeff[2] * plr_Rated**2 - condBlr_TE_Coeff[3] * boiler_RatedHWRT + condBlr_TE_Coeff[4] * boiler_RatedHWRT**2 + condBlr_TE_Coeff[5] * boiler_RatedHWRT * plr_Rated) - boilerEff_Design = boilerEff_Norm * (condBlr_TE_Coeff[0] - condBlr_TE_Coeff[1] * plr_Design - condBlr_TE_Coeff[2] * plr_Design**2 - condBlr_TE_Coeff[3] * boiler_DesignHWRT + condBlr_TE_Coeff[4] * boiler_DesignHWRT**2 + condBlr_TE_Coeff[5] * boiler_DesignHWRT * plr_Design) - boiler.setNominalThermalEfficiency(boilerEff_Design) + boiler_rated_HWRT = UnitConversions.convert(80.0 - 32.0, 'R', 'K') + boiler_design_HWRT = UnitConversions.convert(design_temp - 20.0 - 32.0, 'R', 'K') + cond_boiler_te_coeff = [1.058343061, -0.052650153, -0.0087272, -0.001742217, 0.00000333715, 0.000513723] boiler.setEfficiencyCurveTemperatureEvaluationVariable('EnteringBoiler') - boiler_eff_curve = create_curve_biquadratic(model, [1.058343061, -0.052650153, -0.0087272, -0.001742217, 0.00000333715, 0.000513723], 'CondensingBoilerEff', 0.2, 1.0, 30.0, 85.0) + boiler_eff_curve = create_curve_biquadratic(model, cond_boiler_te_coeff, 'CondensingBoilerEff', 0.2, 1.0, 30.0, 85.0) + + curve_rated_value = MathTools.biquadratic(1.0, boiler_rated_HWRT, cond_boiler_te_coeff) + curve_design_value = MathTools.biquadratic(1.0, boiler_design_HWRT, cond_boiler_te_coeff) + boiler.setNominalThermalEfficiency(heating_system.heating_efficiency_afue / curve_rated_value * curve_design_value) else boiler.setNominalThermalEfficiency(heating_system.heating_efficiency_afue) boiler.setEfficiencyCurveTemperatureEvaluationVariable('LeavingBoiler') diff --git a/HPXMLtoOpenStudio/tests/test_airflow.rb b/HPXMLtoOpenStudio/tests/test_airflow.rb index 58055d5698..650e5a1c28 100644 --- a/HPXMLtoOpenStudio/tests/test_airflow.rb +++ b/HPXMLtoOpenStudio/tests/test_airflow.rb @@ -617,10 +617,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_battery.rb b/HPXMLtoOpenStudio/tests/test_battery.rb index 68ff901627..fb5766069f 100644 --- a/HPXMLtoOpenStudio/tests/test_battery.rb +++ b/HPXMLtoOpenStudio/tests/test_battery.rb @@ -232,10 +232,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_defaults.rb b/HPXMLtoOpenStudio/tests/test_defaults.rb index 58d8106ce5..902e7f2191 100644 --- a/HPXMLtoOpenStudio/tests/test_defaults.rb +++ b/HPXMLtoOpenStudio/tests/test_defaults.rb @@ -3084,9 +3084,12 @@ def _test_measure() # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml_default = HPXML.new(hpxml_path: File.join(@tmp_output_path, 'in.xml')) + hpxml_defaults_path = File.join(@tmp_output_path, 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - return hpxml_default + File.delete(hpxml_defaults_path) + + return hpxml_defaults end def _test_default_header_values(hpxml, tstep, sim_begin_month, sim_begin_day, sim_end_month, sim_end_day, sim_calendar_year, diff --git a/HPXMLtoOpenStudio/tests/test_enclosure.rb b/HPXMLtoOpenStudio/tests/test_enclosure.rb index e394dbf414..0d74a639f3 100644 --- a/HPXMLtoOpenStudio/tests/test_enclosure.rb +++ b/HPXMLtoOpenStudio/tests/test_enclosure.rb @@ -811,11 +811,12 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: File.join(File.dirname(__FILE__), 'in.xml')) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end def _create_hpxml(hpxml_name) diff --git a/HPXMLtoOpenStudio/tests/test_generator.rb b/HPXMLtoOpenStudio/tests/test_generator.rb index a3946eedce..d871471abf 100644 --- a/HPXMLtoOpenStudio/tests/test_generator.rb +++ b/HPXMLtoOpenStudio/tests/test_generator.rb @@ -91,10 +91,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_hotwater_appliance.rb b/HPXMLtoOpenStudio/tests/test_hotwater_appliance.rb index 36e56fe112..cfd72fead8 100644 --- a/HPXMLtoOpenStudio/tests/test_hotwater_appliance.rb +++ b/HPXMLtoOpenStudio/tests/test_hotwater_appliance.rb @@ -1057,10 +1057,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_hvac.rb b/HPXMLtoOpenStudio/tests/test_hvac.rb index 83b62927c4..8ff991c5a9 100644 --- a/HPXMLtoOpenStudio/tests/test_hvac.rb +++ b/HPXMLtoOpenStudio/tests/test_hvac.rb @@ -257,13 +257,14 @@ def test_boiler_gas # Get HPXML values heating_system = hpxml.heating_systems[0] afue = heating_system.heating_efficiency_afue + condensing_factor = heating_system.condensing_system ? 0.96 : 1.0 capacity = UnitConversions.convert(heating_system.heating_capacity, 'Btu/hr', 'W') fuel = heating_system.heating_system_fuel # Check boiler assert_equal(1, model.getBoilerHotWaters.size) boiler = model.getBoilerHotWaters[0] - assert_in_epsilon(afue, boiler.nominalThermalEfficiency, 0.01) + assert_in_epsilon(afue * condensing_factor, boiler.nominalThermalEfficiency, 0.01) assert_in_epsilon(capacity, boiler.nominalCapacity.get, 0.01) assert_equal(EPlus.fuel_type(fuel), boiler.fuelType) end @@ -276,13 +277,14 @@ def test_boiler_coal # Get HPXML values heating_system = hpxml.heating_systems[0] afue = heating_system.heating_efficiency_afue + condensing_factor = heating_system.condensing_system ? 0.96 : 1.0 capacity = UnitConversions.convert(heating_system.heating_capacity, 'Btu/hr', 'W') fuel = heating_system.heating_system_fuel # Check boiler assert_equal(1, model.getBoilerHotWaters.size) boiler = model.getBoilerHotWaters[0] - assert_in_epsilon(afue, boiler.nominalThermalEfficiency, 0.01) + assert_in_epsilon(afue * condensing_factor, boiler.nominalThermalEfficiency, 0.01) assert_in_epsilon(capacity, boiler.nominalCapacity.get, 0.01) assert_equal(EPlus.fuel_type(fuel), boiler.fuelType) end @@ -295,13 +297,14 @@ def test_boiler_electric # Get HPXML values heating_system = hpxml.heating_systems[0] afue = heating_system.heating_efficiency_afue + condensing_factor = heating_system.condensing_system ? 0.96 : 1.0 capacity = UnitConversions.convert(heating_system.heating_capacity, 'Btu/hr', 'W') fuel = heating_system.heating_system_fuel # Check boiler assert_equal(1, model.getBoilerHotWaters.size) boiler = model.getBoilerHotWaters[0] - assert_in_epsilon(afue, boiler.nominalThermalEfficiency, 0.01) + assert_in_epsilon(afue * condensing_factor, boiler.nominalThermalEfficiency, 0.01) assert_in_epsilon(capacity, boiler.nominalCapacity.get, 0.01) assert_equal(EPlus.fuel_type(fuel), boiler.fuelType) end @@ -598,7 +601,7 @@ def test_shared_chiller_baseboard clg_coil = model.getCoilCoolingDXSingleSpeeds[0] cop = 3.85 # Expected value assert_in_epsilon(cop, clg_coil.ratedCOP.get, 0.01) - refute_in_epsilon(capacity, clg_coil.ratedTotalCoolingCapacity.get, 0.01) # Uses autosized capacity + assert_in_epsilon(capacity, clg_coil.ratedTotalCoolingCapacity.get, 0.01) end def test_shared_chiller_fan_coil @@ -615,7 +618,7 @@ def test_shared_chiller_fan_coil clg_coil = model.getCoilCoolingDXSingleSpeeds[0] cop = 3.45 # Expected value assert_in_epsilon(cop, clg_coil.ratedCOP.get, 0.01) - refute_in_epsilon(capacity, clg_coil.ratedTotalCoolingCapacity.get, 0.01) # Uses autosized capacity + assert_in_epsilon(capacity, clg_coil.ratedTotalCoolingCapacity.get, 0.01) end def test_shared_chiller_water_loop_heat_pump @@ -632,7 +635,7 @@ def test_shared_chiller_water_loop_heat_pump clg_coil = model.getCoilCoolingDXSingleSpeeds[0] cop = 1.30 # Expected value assert_in_epsilon(cop, clg_coil.ratedCOP.get, 0.01) - refute_in_epsilon(capacity, clg_coil.ratedTotalCoolingCapacity.get, 0.01) # Uses autosized capacity + assert_in_epsilon(capacity, clg_coil.ratedTotalCoolingCapacity.get, 0.01) end def test_shared_cooling_tower_water_loop_heat_pump @@ -649,7 +652,7 @@ def test_shared_cooling_tower_water_loop_heat_pump clg_coil = model.getCoilCoolingDXSingleSpeeds[0] cop = 3.68 # Expected value assert_in_epsilon(cop, clg_coil.ratedCOP.get, 0.01) - refute_in_epsilon(capacity, clg_coil.ratedTotalCoolingCapacity.get, 0.01) # Uses autosized capacity + assert_in_epsilon(capacity, clg_coil.ratedTotalCoolingCapacity.get, 0.01) end def test_shared_boiler_baseboard @@ -660,14 +663,15 @@ def test_shared_boiler_baseboard # Get HPXML values heating_system = hpxml.heating_systems[0] afue = heating_system.heating_efficiency_afue + condensing_factor = heating_system.condensing_system ? 0.96 : 1.0 capacity = UnitConversions.convert(heating_system.heating_capacity.to_f, 'Btu/hr', 'W') fuel = heating_system.heating_system_fuel # Check boiler assert_equal(1, model.getBoilerHotWaters.size) boiler = model.getBoilerHotWaters[0] - assert_in_epsilon(afue, boiler.nominalThermalEfficiency, 0.01) - refute_in_epsilon(capacity, boiler.nominalCapacity.get, 0.01) # Uses autosized capacity + assert_in_epsilon(afue * condensing_factor, boiler.nominalThermalEfficiency, 0.01) + assert_in_epsilon(capacity, boiler.nominalCapacity.get, 0.01) assert_equal(EPlus.fuel_type(fuel), boiler.fuelType) end @@ -679,14 +683,15 @@ def test_shared_boiler_fan_coil # Get HPXML values heating_system = hpxml.heating_systems[0] afue = heating_system.heating_efficiency_afue + condensing_factor = heating_system.condensing_system ? 0.96 : 1.0 capacity = UnitConversions.convert(heating_system.heating_capacity.to_f, 'Btu/hr', 'W') fuel = heating_system.heating_system_fuel # Check boiler assert_equal(1, model.getBoilerHotWaters.size) boiler = model.getBoilerHotWaters[0] - assert_in_epsilon(afue, boiler.nominalThermalEfficiency, 0.01) - refute_in_epsilon(capacity, boiler.nominalCapacity.get, 0.01) # Uses autosized capacity + assert_in_epsilon(afue * condensing_factor, boiler.nominalThermalEfficiency, 0.01) + assert_in_epsilon(capacity, boiler.nominalCapacity.get, 0.01) assert_equal(EPlus.fuel_type(fuel), boiler.fuelType) end @@ -698,16 +703,18 @@ def test_shared_boiler_water_loop_heat_pump # Get HPXML values heating_system = hpxml.heating_systems[0] afue = heating_system.heating_efficiency_afue + condensing_factor = heating_system.condensing_system ? 0.96 : 1.0 capacity = UnitConversions.convert(heating_system.heating_capacity.to_f, 'Btu/hr', 'W') fuel = heating_system.heating_system_fuel heat_pump = hpxml.heat_pumps[0] wlhp_cop = heat_pump.heating_efficiency_cop + wlhp_capacity = UnitConversions.convert(heat_pump.heating_capacity.to_f, 'Btu/hr', 'W') # Check boiler assert_equal(1, model.getBoilerHotWaters.size) boiler = model.getBoilerHotWaters[0] - assert_in_epsilon(afue, boiler.nominalThermalEfficiency, 0.01) - refute_in_epsilon(capacity, boiler.nominalCapacity.get, 0.01) # Uses autosized capacity + assert_in_epsilon(afue * condensing_factor, boiler.nominalThermalEfficiency, 0.01) + assert_in_epsilon(capacity, boiler.nominalCapacity.get, 0.01) assert_equal(EPlus.fuel_type(fuel), boiler.fuelType) # Check cooling coil @@ -717,7 +724,7 @@ def test_shared_boiler_water_loop_heat_pump assert_equal(1, model.getCoilHeatingDXSingleSpeeds.size) htg_coil = model.getCoilHeatingDXSingleSpeeds[0] assert_in_epsilon(wlhp_cop, htg_coil.ratedCOP, 0.01) - refute_in_epsilon(capacity, htg_coil.ratedTotalHeatingCapacity.get, 0.01) # Uses autosized capacity + assert_in_epsilon(wlhp_capacity, htg_coil.ratedTotalHeatingCapacity.get, 0.01) # Check supp heating coil assert_equal(0, model.getCoilHeatingElectrics.size) @@ -1042,11 +1049,12 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end def _check_install_quality_multispeed_ratio(hpxml_clg_sys, model, hpxml_htg_sys = nil) diff --git a/HPXMLtoOpenStudio/tests/test_hvac_sizing.rb b/HPXMLtoOpenStudio/tests/test_hvac_sizing.rb index 8ad4b6597e..6d29de2eb5 100644 --- a/HPXMLtoOpenStudio/tests/test_hvac_sizing.rb +++ b/HPXMLtoOpenStudio/tests/test_hvac_sizing.rb @@ -114,10 +114,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: File.join(File.dirname(__FILE__), 'in.xml')) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_lighting.rb b/HPXMLtoOpenStudio/tests/test_lighting.rb index c009fe44f5..640ee653c9 100644 --- a/HPXMLtoOpenStudio/tests/test_lighting.rb +++ b/HPXMLtoOpenStudio/tests/test_lighting.rb @@ -111,10 +111,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_location.rb b/HPXMLtoOpenStudio/tests/test_location.rb index 58a318df0b..f6f7e202f7 100644 --- a/HPXMLtoOpenStudio/tests/test_location.rb +++ b/HPXMLtoOpenStudio/tests/test_location.rb @@ -88,10 +88,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_miscloads.rb b/HPXMLtoOpenStudio/tests/test_miscloads.rb index 735656e2bf..29042252a4 100644 --- a/HPXMLtoOpenStudio/tests/test_miscloads.rb +++ b/HPXMLtoOpenStudio/tests/test_miscloads.rb @@ -404,10 +404,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_pv.rb b/HPXMLtoOpenStudio/tests/test_pv.rb index 6c9b55f5a2..cd46d95c47 100644 --- a/HPXMLtoOpenStudio/tests/test_pv.rb +++ b/HPXMLtoOpenStudio/tests/test_pv.rb @@ -100,10 +100,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_schedules.rb b/HPXMLtoOpenStudio/tests/test_schedules.rb index b38c6d774b..3227705905 100644 --- a/HPXMLtoOpenStudio/tests/test_schedules.rb +++ b/HPXMLtoOpenStudio/tests/test_schedules.rb @@ -177,10 +177,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_simcontrols.rb b/HPXMLtoOpenStudio/tests/test_simcontrols.rb index 16a13dd45a..8032137628 100644 --- a/HPXMLtoOpenStudio/tests/test_simcontrols.rb +++ b/HPXMLtoOpenStudio/tests/test_simcontrols.rb @@ -92,10 +92,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end diff --git a/HPXMLtoOpenStudio/tests/test_water_heater.rb b/HPXMLtoOpenStudio/tests/test_water_heater.rb index 061807426b..3f601445aa 100644 --- a/HPXMLtoOpenStudio/tests/test_water_heater.rb +++ b/HPXMLtoOpenStudio/tests/test_water_heater.rb @@ -1128,10 +1128,11 @@ def _test_measure(args_hash) # assert that it ran correctly assert_equal('Success', result.value.valueName) - hpxml = HPXML.new(hpxml_path: args_hash['hpxml_path']) + hpxml_defaults_path = File.join(File.dirname(__FILE__), 'in.xml') + hpxml_defaults = HPXML.new(hpxml_path: hpxml_defaults_path) - File.delete(File.join(File.dirname(__FILE__), 'in.xml')) + File.delete(hpxml_defaults_path) - return model, hpxml + return model, hpxml_defaults end end From 7ccd2829524ab398eba94f32eebbd87867b7a3c3 Mon Sep 17 00:00:00 2001 From: Scott Horowitz Date: Tue, 10 May 2022 14:58:40 -0600 Subject: [PATCH 4/7] Add outdoor reset capability. --- BuildResidentialHPXML/measure.rb | 12 + BuildResidentialHPXML/measure.xml | 24 +- Changelog.md | 3 +- HPXMLtoOpenStudio/measure.xml | 60 +- HPXMLtoOpenStudio/resources/hpxml.rb | 13 +- HPXMLtoOpenStudio/resources/hpxml_defaults.rb | 53 +- .../hpxml_schema/HPXMLBaseElements.xsd | 5 + .../hpxml_schematron/EPvalidator.xml | 13 + HPXMLtoOpenStudio/resources/hvac.rb | 42 +- HPXMLtoOpenStudio/tests/test_defaults.rb | 47 +- HPXMLtoOpenStudio/tests/test_hvac.rb | 22 + docs/source/workflow_inputs.rst | 13 +- tasks.rb | 9 + ...-boiler-gas-only-outdoor-reset-control.xml | 538 ++++++++++++++++++ 14 files changed, 769 insertions(+), 85 deletions(-) create mode 100644 workflow/sample_files/base-hvac-boiler-gas-only-outdoor-reset-control.xml diff --git a/BuildResidentialHPXML/measure.rb b/BuildResidentialHPXML/measure.rb index 5c91e0550d..a7323e977b 100644 --- a/BuildResidentialHPXML/measure.rb +++ b/BuildResidentialHPXML/measure.rb @@ -1060,6 +1060,11 @@ def arguments(model) arg.setDescription("Whether the heating system is condensing or not. Only used for a non-electric #{HPXML::HVACTypeBoiler}.") args << arg + arg = OpenStudio::Measure::OSArgument::makeBoolArgument('heating_system_outdoor_reset_control', false) + arg.setDisplayName('Heating System: Outdoor Reset Control') + arg.setDescription("Whether the heating system has outdoor reset control. Only used for a #{HPXML::HVACTypeBoiler}.") + args << arg + arg = OpenStudio::Measure::OSArgument::makeDoubleArgument('heating_system_airflow_defect_ratio', false) arg.setDisplayName('Heating System: Airflow Defect Ratio') arg.setDescription("The airflow defect ratio, defined as (InstalledAirflow - DesignAirflow) / DesignAirflow, of the heating system per ANSI/RESNET/ACCA Standard 310. A value of zero means no airflow defect. Applies only to #{HPXML::HVACTypeFurnace}.") @@ -4373,6 +4378,12 @@ def self.set_heating_systems(hpxml, runner, args) end end + if heating_system_type == HPXML::HVACTypeBoiler + if args[:heating_system_outdoor_reset_control].is_initialized + heating_system_outdoor_reset_control = args[:heating_system_outdoor_reset_control].get + end + end + if args[:heating_system_airflow_defect_ratio].is_initialized if [HPXML::HVACTypeFurnace].include? heating_system_type airflow_defect_ratio = args[:heating_system_airflow_defect_ratio].get @@ -4399,6 +4410,7 @@ def self.set_heating_systems(hpxml, runner, args) heating_efficiency_afue: heating_efficiency_afue, heating_efficiency_percent: heating_efficiency_percent, condensing_system: heating_system_is_condensing, + boiler_reset_control: heating_system_outdoor_reset_control, airflow_defect_ratio: airflow_defect_ratio, is_shared_system: is_shared_system, number_of_units_served: number_of_units_served, diff --git a/BuildResidentialHPXML/measure.xml b/BuildResidentialHPXML/measure.xml index f853768a08..86662c5a0b 100644 --- a/BuildResidentialHPXML/measure.xml +++ b/BuildResidentialHPXML/measure.xml @@ -3,8 +3,8 @@ 3.0 build_residential_hpxml a13a8983-2b01-4930-8af2-42030b6e4233 - 7d297956-0d45-4768-8b3e-db2a211be95a - 20220509T220030Z + aff47a13-7365-4031-84dd-8341ab65b321 + 20220510T195153Z 2C38F48B BuildResidentialHPXML HPXML Builder @@ -2064,6 +2064,24 @@
+ + heating_system_outdoor_reset_control + Heating System: Outdoor Reset Control + Whether the heating system has outdoor reset control. Only used for a Boiler. + Boolean + false + false + + + true + true + + + false + false + + + heating_system_airflow_defect_ratio Heating System: Airflow Defect Ratio @@ -6186,7 +6204,7 @@ measure.rb rb script - F8EC4B9B + 2518C3A2 diff --git a/Changelog.md b/Changelog.md index 9bc6b4b2a8..de04f4f98d 100644 --- a/Changelog.md +++ b/Changelog.md @@ -14,7 +14,8 @@ __New Features__ - Heat pumps with switchover temperatures are now autosized by taking into account the switchover temperature, if higher than the heating design temperature. - Allows `BackupHeatingLockoutTemperature` as an optional input to control integrated backup heating availability during, e.g., a thermostat heating setback recovery event; defaults to 40F. - New boiler capabilities: - - Allows an optional `CondensingSystem` boolean input; defaults based on AFUE. + - Allows optionally specifying whether a boiler is condensing; defaults based on AFUE and fuel type. + - Allows defining an outdoor reset control for a boiler. - Updates combi boiler model to be simpler, faster, and more robust by using separate space/water heating plant loops and boilers. - Allows calculating one or more emissions scenarios (e.g., high renewable penetration vs business as usual) for different emissions types (e.g., CO2e). - Updates HVAC fans to use fan power law (cubic relationship between fan speed and power). diff --git a/HPXMLtoOpenStudio/measure.xml b/HPXMLtoOpenStudio/measure.xml index 46daca63f3..cf640399e3 100644 --- a/HPXMLtoOpenStudio/measure.xml +++ b/HPXMLtoOpenStudio/measure.xml @@ -3,8 +3,8 @@ 3.0 hpxm_lto_openstudio b1543b30-9465-45ff-ba04-1d1f85e763bc - 11b129ae-dde0-49b0-bca2-79f7a44f4e7d - 20220510T014645Z + f801dbf6-226d-40c0-947c-291bb8071042 + 20220510T205809Z D8922A73 HPXMLtoOpenStudio HPXML to OpenStudio Translator @@ -432,12 +432,6 @@ resource 698F71DC - - hpxml_schema/HPXMLBaseElements.xsd - xsd - resource - 0408C060 - test_validation.rb rb @@ -450,24 +444,6 @@ resource 8ABCD77B - - hpxml.rb - rb - resource - E241F643 - - - hpxml_defaults.rb - rb - resource - 95E440B0 - - - hpxml_schematron/EPvalidator.xml - xml - resource - 1F511D88 - test_location.rb rb @@ -546,29 +522,47 @@ test FB2576A0 + + hpxml_schema/HPXMLBaseElements.xsd + xsd + resource + BEF21D0F + + + hpxml_defaults.rb + rb + resource + 5E59ED08 + + + hpxml_schematron/EPvalidator.xml + xml + resource + 7FFF6E3A + test_defaults.rb rb test - 5920CC90 + C773EC41 test_hvac.rb rb test - 3C141B85 + B93778D3 hvac.rb rb resource - ECF15B82 + 0B9F045D - in.xml - xml - test - 6CA21538 + hpxml.rb + rb + resource + 6B2ADB3C diff --git a/HPXMLtoOpenStudio/resources/hpxml.rb b/HPXMLtoOpenStudio/resources/hpxml.rb index 95037a9613..3d1ea7441a 100644 --- a/HPXMLtoOpenStudio/resources/hpxml.rb +++ b/HPXMLtoOpenStudio/resources/hpxml.rb @@ -3211,7 +3211,8 @@ class HeatingSystem < BaseElement :third_party_certification, :htg_seed_id, :is_shared_system, :number_of_units_served, :shared_loop_watts, :shared_loop_motor_efficiency, :fan_coil_watts, :fan_watts_per_cfm, :airflow_defect_ratio, :fan_watts, :heating_airflow_cfm, :location, :primary_system, - :condensing_system] + :condensing_system, :boiler_reset_control, :boiler_reset_low_oat, + :boiler_reset_high_oat, :boiler_reset_setpoint_at_low_oat, :boiler_reset_setpoint_at_high_oat] attr_accessor(*ATTRS) def distribution_system @@ -3294,6 +3295,11 @@ def to_oga(doc) heating_type_child = XMLHelper.add_element(heating_system_type_el, @heating_system_type) if @heating_system_type == HPXML::HVACTypeBoiler XMLHelper.add_element(heating_type_child, 'CondensingSystem', @condensing_system, :boolean, @condensing_system_isdefaulted) unless @condensing_system.nil? + XMLHelper.add_element(heating_type_child, 'OutdoorResetControl', @boiler_reset_control, :boolean, @boiler_reset_control_isdefaulted) unless @boiler_reset_control.nil? + XMLHelper.add_extension(heating_type_child, 'OutdoorResetLowOutdoorTemperature', @boiler_reset_low_oat, :float, @boiler_reset_low_oat_isdefaulted) unless @boiler_reset_low_oat.nil? + XMLHelper.add_extension(heating_type_child, 'OutdoorResetSetpointAtLowOutdoorTemperature', @boiler_reset_setpoint_at_low_oat, :float, @boiler_reset_setpoint_at_low_oat_isdefaulted) unless @boiler_reset_setpoint_at_low_oat.nil? + XMLHelper.add_extension(heating_type_child, 'OutdoorResetHighOutdoorTemperature', @boiler_reset_high_oat, :float, @boiler_reset_high_oat_isdefaulted) unless @boiler_reset_high_oat.nil? + XMLHelper.add_extension(heating_type_child, 'OutdoorResetSetpointAtHighOutdoorTemperature', @boiler_reset_setpoint_at_high_oat, :float, @boiler_reset_setpoint_at_high_oat_isdefaulted) unless @boiler_reset_setpoint_at_high_oat.nil? end end XMLHelper.add_element(heating_system, 'HeatingSystemFuel', @heating_system_fuel, :string) unless @heating_system_fuel.nil? @@ -3336,6 +3342,11 @@ def from_oga(heating_system) @number_of_units_served = XMLHelper.get_value(heating_system, 'NumberofUnitsServed', :integer) @heating_system_type = XMLHelper.get_child_name(heating_system, 'HeatingSystemType') @condensing_system = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/CondensingSystem', :boolean) + @boiler_reset_control = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/OutdoorResetControl', :boolean) + @boiler_reset_low_oat = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/extension/OutdoorResetLowOutdoorTemperature', :float) + @boiler_reset_setpoint_at_low_oat = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/extension/OutdoorResetSetpointAtLowOutdoorTemperature', :float) + @boiler_reset_high_oat = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/extension/OutdoorResetHighOutdoorTemperature', :float) + @boiler_reset_setpoint_at_high_oat = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/extension/OutdoorResetSetpointAtHighOutdoorTemperature', :float) @heating_system_fuel = XMLHelper.get_value(heating_system, 'HeatingSystemFuel', :string) @heating_capacity = XMLHelper.get_value(heating_system, 'HeatingCapacity', :float) @heating_efficiency_afue = XMLHelper.get_value(heating_system, "AnnualHeatingEfficiency[Units='#{UnitsAFUE}']/Value", :float) diff --git a/HPXMLtoOpenStudio/resources/hpxml_defaults.rb b/HPXMLtoOpenStudio/resources/hpxml_defaults.rb index ead753fa51..332dc2db5b 100644 --- a/HPXMLtoOpenStudio/resources/hpxml_defaults.rb +++ b/HPXMLtoOpenStudio/resources/hpxml_defaults.rb @@ -971,28 +971,53 @@ def self.apply_hvac(hpxml, weather, convert_shared_systems) heat_pump.backup_heating_lockout_temp_isdefaulted = true end - # Default boiler EAE + # Default boiler properties hpxml.heating_systems.each do |heating_system| - next unless heating_system.electric_auxiliary_energy.nil? + next unless heating_system.heating_system_type == HPXML::HVACTypeBoiler + + if heating_system.electric_auxiliary_energy.nil? + heating_system.electric_auxiliary_energy_isdefaulted = true + heating_system.electric_auxiliary_energy = HVAC.get_default_boiler_eae(heating_system) + heating_system.shared_loop_watts = nil + heating_system.shared_loop_motor_efficiency = nil + heating_system.fan_coil_watts = nil + end + if heating_system.condensing_system.nil? + if heating_system.heating_efficiency_afue >= 0.883 && heating_system.heating_system_fuel != HPXML::FuelTypeElectricity + heating_system.condensing_system = true + else + heating_system.condensing_system = false + end + heating_system.condensing_system_isdefaulted = true + end + if heating_system.boiler_reset_control.nil? + heating_system.boiler_reset_control = false + heating_system.boiler_reset_control_isdefaulted = true + end + next unless heating_system.boiler_reset_control - heating_system.electric_auxiliary_energy_isdefaulted = true - heating_system.electric_auxiliary_energy = HVAC.get_default_boiler_eae(heating_system) - heating_system.shared_loop_watts = nil - heating_system.shared_loop_motor_efficiency = nil - heating_system.fan_coil_watts = nil + if heating_system.boiler_reset_low_oat.nil? + heating_system.boiler_reset_low_oat = 0.0 + heating_system.boiler_reset_low_oat_isdefaulted = true + end + if heating_system.boiler_reset_setpoint_at_low_oat.nil? + heating_system.boiler_reset_setpoint_at_low_oat = 180.0 + heating_system.boiler_reset_setpoint_at_low_oat_isdefaulted = true + end + if heating_system.boiler_reset_high_oat.nil? + heating_system.boiler_reset_high_oat = 68.0 + heating_system.boiler_reset_high_oat_isdefaulted = true + end + if heating_system.boiler_reset_setpoint_at_high_oat.nil? + heating_system.boiler_reset_setpoint_at_high_oat = 95.0 + heating_system.boiler_reset_setpoint_at_high_oat_isdefaulted = true + end end # Default boiler type hpxml.heating_systems.each do |heating_system| next unless heating_system.heating_system_type == HPXML::HVACTypeBoiler next unless heating_system.condensing_system.nil? - - if heating_system.heating_efficiency_afue >= 0.883 && heating_system.heating_system_fuel != HPXML::FuelTypeElectricity - heating_system.condensing_system = true - else - heating_system.condensing_system = false - end - heating_system.condensing_system_isdefaulted = true end # Default AC/HP sensible heat ratio diff --git a/HPXMLtoOpenStudio/resources/hpxml_schema/HPXMLBaseElements.xsd b/HPXMLtoOpenStudio/resources/hpxml_schema/HPXMLBaseElements.xsd index 30b1b27cd9..a2b12b2d41 100644 --- a/HPXMLtoOpenStudio/resources/hpxml_schema/HPXMLBaseElements.xsd +++ b/HPXMLtoOpenStudio/resources/hpxml_schema/HPXMLBaseElements.xsd @@ -3681,6 +3681,11 @@ + + + Outdoor Reset controls respond to changes in weather by changing the boiler water temperature circulating throughout the building, in order to save fuel. + + diff --git a/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml b/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml index 4be1c66aac..4ddd40f647 100644 --- a/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml +++ b/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml @@ -674,6 +674,7 @@ [HeatingSystemType=Boiler] Expected 0 or 1 element(s) for xpath: HeatingSystemType/Boiler/CondensingSystem + Expected 0 or 1 element(s) for xpath: HeatingSystemType/Boiler/OutdoorResetControl Expected 0 or 1 element(s) for xpath: IsSharedSystem Expected 1 element(s) for xpath: DistributionSystem Expected 1 element(s) for xpath: HeatingSystemFuel @@ -685,6 +686,18 @@ + + [HeatingSystemType=BoilerWithOutdoorResetControl] + + Expected 0 or 1 element(s) for xpath: extension/OutdoorResetLowOutdoorTemperature + Expected 0 or 1 element(s) for xpath: extension/OutdoorResetSetpointAtLowOutdoorTemperature + Expected 0 or 1 element(s) for xpath: extension/OutdoorResetHighOutdoorTemperature + Expected extension/OutdoorResetHighOutdoorTemperature to be greater than extension/OutdoorResetLowOutdoorTemperature + Expected 0 or 1 element(s) for xpath: extension/OutdoorResetSetpointAtHighOutdoorTemperature + Expected extension/OutdoorResetSetpointAtHighOutdoorTemperature to be less than extension/OutdoorResetSetpointAtLowOutdoorTemperature + + + [HeatingSystemType=InUnitBoiler] diff --git a/HPXMLtoOpenStudio/resources/hvac.rb b/HPXMLtoOpenStudio/resources/hvac.rb index da333d35e8..008977ce0a 100644 --- a/HPXMLtoOpenStudio/resources/hvac.rb +++ b/HPXMLtoOpenStudio/resources/hvac.rb @@ -423,20 +423,8 @@ def self.apply_water_loop_to_air_heat_pump(model, runner, heat_pump, def self.apply_boiler(model, runner, heating_system, sequential_heat_load_fracs, control_zone) obj_name = Constants.ObjectNameBoiler - oat_reset_enabled = false - oat_high = nil - oat_low = nil - oat_hwst_high = nil - oat_hwst_low = nil design_temp = 180.0 # deg-F - if oat_reset_enabled - if oat_high.nil? || oat_low.nil? || oat_hwst_low.nil? || oat_hwst_high.nil? - runner.registerWarning('Boiler outdoor air temperature (OAT) reset is enabled but no setpoints were specified so OAT reset is being disabled.') - oat_reset_enabled = false - end - end - # Plant Loop plant_loop = OpenStudio::Model::PlantLoop.new(model) plant_loop.setName(obj_name + ' hydronic heat loop') @@ -472,7 +460,7 @@ def self.apply_boiler(model, runner, heating_system, boiler = OpenStudio::Model::BoilerHotWater.new(model) boiler.setName(obj_name) boiler.setFuelType(EPlus.fuel_type(heating_system.heating_system_fuel)) - if heating_system.condensing_system + if heating_system.condensing_system && heating_system.heating_system_fuel != HPXML::FuelTypeElectricity # Convert Rated Efficiency at 80F and 1.0PLR where the performance curves are derived from to Design condition as input boiler_rated_HWRT = UnitConversions.convert(80.0 - 32.0, 'R', 'K') boiler_design_HWRT = UnitConversions.convert(design_temp - 20.0 - 32.0, 'R', 'K') @@ -500,25 +488,25 @@ def self.apply_boiler(model, runner, heating_system, boiler.additionalProperties.setFeature('HPXML_ID', heating_system.id) # Used by reporting measure set_pump_power_ems_program(model, pump_w, pump, boiler) - if oat_reset_enabled + if heating_system.boiler_reset_control setpoint_manager_oar = OpenStudio::Model::SetpointManagerOutdoorAirReset.new(model) setpoint_manager_oar.setName(obj_name + ' outdoor reset') setpoint_manager_oar.setControlVariable('Temperature') - setpoint_manager_oar.setSetpointatOutdoorLowTemperature(UnitConversions.convert(oat_hwst_low, 'F', 'C')) - setpoint_manager_oar.setOutdoorLowTemperature(UnitConversions.convert(oat_low, 'F', 'C')) - setpoint_manager_oar.setSetpointatOutdoorHighTemperature(UnitConversions.convert(oat_hwst_high, 'F', 'C')) - setpoint_manager_oar.setOutdoorHighTemperature(UnitConversions.convert(oat_high, 'F', 'C')) + setpoint_manager_oar.setOutdoorLowTemperature(UnitConversions.convert(heating_system.boiler_reset_low_oat, 'F', 'C')) + setpoint_manager_oar.setSetpointatOutdoorLowTemperature(UnitConversions.convert(heating_system.boiler_reset_setpoint_at_low_oat, 'F', 'C')) + setpoint_manager_oar.setOutdoorHighTemperature(UnitConversions.convert(heating_system.boiler_reset_high_oat, 'F', 'C')) + setpoint_manager_oar.setSetpointatOutdoorHighTemperature(UnitConversions.convert(heating_system.boiler_reset_setpoint_at_high_oat, 'F', 'C')) setpoint_manager_oar.addToNode(plant_loop.supplyOutletNode) - end - - hydronic_heat_supply_setpoint = OpenStudio::Model::ScheduleConstant.new(model) - hydronic_heat_supply_setpoint.setName(obj_name + ' hydronic heat supply setpoint') - hydronic_heat_supply_setpoint.setValue(UnitConversions.convert(design_temp, 'F', 'C')) + else + hydronic_heat_supply_setpoint = OpenStudio::Model::ScheduleConstant.new(model) + hydronic_heat_supply_setpoint.setName(obj_name + ' hydronic heat supply setpoint') + hydronic_heat_supply_setpoint.setValue(UnitConversions.convert(design_temp, 'F', 'C')) - setpoint_manager_scheduled = OpenStudio::Model::SetpointManagerScheduled.new(model, hydronic_heat_supply_setpoint) - setpoint_manager_scheduled.setName(obj_name + ' hydronic heat loop setpoint manager') - setpoint_manager_scheduled.setControlVariable('Temperature') - setpoint_manager_scheduled.addToNode(plant_loop.supplyOutletNode) + setpoint_manager_scheduled = OpenStudio::Model::SetpointManagerScheduled.new(model, hydronic_heat_supply_setpoint) + setpoint_manager_scheduled.setName(obj_name + ' hydronic heat loop setpoint manager') + setpoint_manager_scheduled.setControlVariable('Temperature') + setpoint_manager_scheduled.addToNode(plant_loop.supplyOutletNode) + end pipe_supply_bypass = OpenStudio::Model::PipeAdiabatic.new(model) plant_loop.addSupplyBranchForComponent(pipe_supply_bypass) diff --git a/HPXMLtoOpenStudio/tests/test_defaults.rb b/HPXMLtoOpenStudio/tests/test_defaults.rb index 902e7f2191..9286fbed07 100644 --- a/HPXMLtoOpenStudio/tests/test_defaults.rb +++ b/HPXMLtoOpenStudio/tests/test_defaults.rb @@ -1160,9 +1160,14 @@ def test_boilers hpxml.heating_systems[0].heating_efficiency_afue = 0.85 hpxml.heating_systems[0].year_installed = 2010 hpxml.heating_systems[0].condensing_system = true + hpxml.heating_systems[0].boiler_reset_control = true + hpxml.heating_systems[0].boiler_reset_low_oat = 1.0 + hpxml.heating_systems[0].boiler_reset_setpoint_at_low_oat = 199.0 + hpxml.heating_systems[0].boiler_reset_high_oat = 69.0 + hpxml.heating_systems[0].boiler_reset_setpoint_at_high_oat = 99.0 XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, 12345, 0.85, true) + _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, 12345, 0.85, true, true, 1.0, 199.0, 69.0, 99.0) # Test defaults w/ in-unit boiler hpxml.heating_systems[0].electric_auxiliary_energy = nil @@ -1170,9 +1175,16 @@ def test_boilers hpxml.heating_systems[0].heating_efficiency_afue = nil hpxml.heating_systems[0].year_installed = 2010 hpxml.heating_systems[0].condensing_system = nil + hpxml.heating_systems[0].boiler_reset_control = nil XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 170.0, nil, 0.797, false) + _test_default_boiler_values(hpxml_default.heating_systems[0], 170.0, nil, 0.797, false, false) + + # Test defaults w/ in-unit boiler and outdoor reset + hpxml.heating_systems[0].boiler_reset_control = true + XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) + hpxml_default = _test_measure() + _test_default_boiler_values(hpxml_default.heating_systems[0], 170.0, nil, 0.797, false, false, 0.0, 180.0, 68.0, 95.0) # Test inputs not overridden by defaults (shared boiler) hpxml = _create_hpxml('base-bldgtype-multifamily-shared-boiler-only-baseboard.xml') @@ -1181,18 +1193,20 @@ def test_boilers hpxml.heating_systems[0].heating_efficiency_afue = 0.85 hpxml.heating_systems[0].year_installed = 1980 hpxml.heating_systems[0].condensing_system = true + hpxml.heating_systems[0].boiler_reset_control = true XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, nil, 0.85, true) + _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, nil, 0.85, true, true) # Test defaults w/ shared boiler hpxml.heating_systems[0].electric_auxiliary_energy = nil hpxml.heating_systems[0].heating_efficiency_afue = nil hpxml.heating_systems[0].year_installed = 1980 hpxml.heating_systems[0].condensing_system = nil + hpxml.heating_systems[0].boiler_reset_control = nil XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 220.0, nil, 0.723, false) + _test_default_boiler_values(hpxml_default.heating_systems[0], 220.0, nil, 0.723, false, false) end def test_stoves @@ -3450,7 +3464,9 @@ def _test_default_floor_furnace_values(heating_system, fan_watts, heating_capaci end end - def _test_default_boiler_values(heating_system, eae, heating_capacity, heating_efficiency_afue, condensing_system) + def _test_default_boiler_values(heating_system, eae, heating_capacity, heating_efficiency_afue, condensing_system, + reset_control, reset_low_oat = nil, reset_setpoint_at_low_oat = nil, + reset_hight_oat = nil, reset_setpoint_at_high_oat = nil) assert_equal(eae, heating_system.electric_auxiliary_energy) if heating_capacity.nil? assert(heating_system.heating_capacity > 0) @@ -3463,6 +3479,27 @@ def _test_default_boiler_values(heating_system, eae, heating_capacity, heating_e assert_equal(heating_system.heating_efficiency_afue, heating_efficiency_afue) end assert_equal(heating_system.condensing_system, condensing_system) + assert_equal(heating_system.reset_control, reset_control) + if reset_low_oat.nil? + assert_nil(heating_system.boiler_reset_low_oat) + else + assert_equal(heating_system.boiler_reset_low_oat, reset_low_oat) + end + if reset_setpoint_at_low_oat.nil? + assert_nil(heating_system.boiler_setpoint_at_reset_low_oat) + else + assert_equal(heating_system.boiler_setpoint_at_reset_low_oat, reset_setpoint_at_low_oat) + end + if reset_high_oat.nil? + assert_nil(heating_system.boiler_reset_high_oat) + else + assert_equal(heating_system.boiler_reset_high_oat, reset_high_oat) + end + if reset_setpoint_at_high_oat.nil? + assert_nil(heating_system.boiler_reset_setpoint_at_high_oat) + else + assert_equal(heating_system.boiler_reset_setpoint_at_high_oat, reset_setpoint_at_high_oat) + end end def _test_default_stove_values(heating_system, fan_watts, heating_capacity, heating_efficiency_percent) diff --git a/HPXMLtoOpenStudio/tests/test_hvac.rb b/HPXMLtoOpenStudio/tests/test_hvac.rb index 8ff991c5a9..8b04d5e146 100644 --- a/HPXMLtoOpenStudio/tests/test_hvac.rb +++ b/HPXMLtoOpenStudio/tests/test_hvac.rb @@ -269,6 +269,28 @@ def test_boiler_gas assert_equal(EPlus.fuel_type(fuel), boiler.fuelType) end + def test_boiler_gas_outdoor_reset_control + args_hash = {} + args_hash['hpxml_path'] = File.absolute_path(File.join(sample_files_dir, 'base-hvac-boiler-gas-only-outdoor-reset-control.xml')) + model, hpxml = _test_measure(args_hash) + + # Get HPXML values + heating_system = hpxml.heating_systems[0] + reset_low_oat = heating_system.boiler_reset_low_oat + reset_setpoint_at_low_oat = heating_system.boiler_reset_setpoint_at_low_oat + reset_high_oat = heating_system.boiler_reset_high_oat + reset_setpoint_at_high_oat = heating_system.boiler_reset_setpoint_at_high_oat + + # Check for outdoor air reset setpoint manager + File.write('foo.osm', model.to_s) + assert_equal(1, model.getSetpointManagerOutdoorAirResets.size) + setpoint_manager_oar = model.getSetpointManagerOutdoorAirResets[0] + assert_in_epsilon(setpoint_manager_oar.outdoorLowTemperature, UnitConversions.convert(reset_low_oat, 'F', 'C'), 0.001) + assert_in_epsilon(setpoint_manager_oar.setpointatOutdoorLowTemperature, UnitConversions.convert(reset_setpoint_at_low_oat, 'F', 'C'), 0.001) + assert_in_epsilon(setpoint_manager_oar.outdoorHighTemperature, UnitConversions.convert(reset_high_oat, 'F', 'C'), 0.001) + assert_in_epsilon(setpoint_manager_oar.setpointatOutdoorHighTemperature, UnitConversions.convert(reset_setpoint_at_high_oat, 'F', 'C'), 0.001) + end + def test_boiler_coal args_hash = {} args_hash['hpxml_path'] = File.absolute_path(File.join(sample_files_dir, 'base-hvac-boiler-coal-only.xml')) diff --git a/docs/source/workflow_inputs.rst b/docs/source/workflow_inputs.rst index acc8147d44..8873cc07ed 100644 --- a/docs/source/workflow_inputs.rst +++ b/docs/source/workflow_inputs.rst @@ -1113,6 +1113,7 @@ If a boiler is specified, additional information is entered in ``HeatingSystem`` Element Type Units Constraints Required Default Notes ==================================================================== ================= ========= =============== ======== ======== ========================================= ``HeatingSystemType/Boiler/CondensingSystem`` boolean No See [#]_ Whether it is a condensing boiler + ``HeatingSystemType/Boiler/OutdoorResetControl`` boolean No false Whether it is has outdoor reset controls ``IsSharedSystem`` boolean No false Whether it serves multiple dwelling units ``DistributionSystem`` idref See [#]_ Yes ID of attached distribution system ``AnnualHeatingEfficiency[Units="AFUE"]/Value`` or ``YearInstalled`` double or integer frac or # 0 - 1 or > 1600 Yes See [#]_ Rated efficiency or Year installed @@ -1123,7 +1124,17 @@ If a boiler is specified, additional information is entered in ``HeatingSystem`` For shared boilers, HVACDistribution type must be HydronicDistribution (type: "radiator", "baseboard", "radiant floor", "radiant ceiling", or "water loop") or AirDistribution (type: "fan coil"). If the shared boiler has "water loop" distribution, a :ref:`hvac_heatpump_wlhp` must also be specified. .. [#] If AnnualHeatingEfficiency[Units="AFUE"]/Value not provided, defaults to 0.98 if FuelType is "electricity", else AFUE from the lookup table that can be found at ``HPXMLtoOpenStudio/resources/data/hvac_equipment_efficiency.csv`` based on YearInstalled. - + +If the boiler has outdoor reset control, additional information is entered in ``HeatingSystem``. + + =================================================================================== ====== ===== ============================================== ======== ======== ========================================= + Element Type Units Constraints Required Default Notes + =================================================================================== ====== ===== ============================================== ======== ======== ========================================= + ``HeatingSystemType/Boiler/extension/OutdoorResetLowOutdoorTemperature`` double F No 0.0 Low outdoor air temperature + ``HeatingSystemType/Boiler/extension/OutdoorResetSetpointAtLowOutdoorTemperature`` double F No 180.0 Hot water setpoint at low outdoor air temperature + ``HeatingSystemType/Boiler/extension/OutdoorResetHighOutdoorTemperature`` double F > OutdoorResetLowOutdoorTemperature No 68.0 High outdoor air temperature + ``HeatingSystemType/Boiler/extension/OutdoorResetSetpointAtHighOutdoorTemperature`` double F < OutdoorResetSetpointAtHighOutdoorTemperature No 95.0 Hot water setpoint at high outdoor air temperature + =================================================================================== ====== ===== ============================================== ======== ======== ========================================= If an in-unit boiler if specified, additional information is entered in ``HeatingSystem``. diff --git a/tasks.rb b/tasks.rb index 9ea4b7c305..c15e21e9e0 100644 --- a/tasks.rb +++ b/tasks.rb @@ -260,6 +260,7 @@ def create_hpxmls 'base-hvac-boiler-gas-central-ac-1-speed.xml' => 'base.xml', 'base-hvac-boiler-gas-only.xml' => 'base.xml', 'base-hvac-boiler-gas-only-non-condensing.xml' => 'base-hvac-boiler-gas-only.xml', + 'base-hvac-boiler-gas-only-outdoor-reset-control.xml' => 'base-hvac-boiler-gas-only.xml', 'base-hvac-boiler-oil-only.xml' => 'base-hvac-boiler-gas-only.xml', 'base-hvac-boiler-propane-only.xml' => 'base-hvac-boiler-gas-only.xml', 'base-hvac-boiler-wood-only.xml' => 'base-hvac-boiler-gas-only.xml', @@ -1872,6 +1873,8 @@ def set_measure_argument_values(hpxml_file, args, sch_args, orig_parent) elsif ['base-hvac-boiler-gas-only-non-condensing.xml'].include? hpxml_file args['heating_system_is_condensing'] = false args['heating_system_heating_efficiency'] = 0.86 + elsif ['base-hvac-boiler-gas-only-outdoor-reset-control.xml'].include? hpxml_file + args['heating_system_outdoor_reset_control'] = true elsif ['base-hvac-boiler-oil-only.xml', 'base-hvac-furnace-oil-only.xml'].include? hpxml_file args['heating_system_fuel'] = HPXML::FuelTypeOil @@ -4128,6 +4131,12 @@ def apply_hpxml_modification(hpxml_file, hpxml) hpxml.hvac_distributions[0].ducts << hpxml.hvac_distributions[1].ducts[0].dup hpxml.hvac_distributions[0].ducts << hpxml.hvac_distributions[1].ducts[1].dup end + if ['base-hvac-boiler-gas-only-outdoor-reset-control.xml'].include? hpxml_file + hpxml.heating_systems[0].boiler_reset_low_oat = 5.0 + hpxml.heating_systems[0].boiler_reset_setpoint_at_low_oat = 190.0 + hpxml.heating_systems[0].boiler_reset_high_oat = 70.0 + hpxml.heating_systems[0].boiler_reset_setpoint_at_high_oat = 100.0 + end # ------------------ # # HPXML WaterHeating # diff --git a/workflow/sample_files/base-hvac-boiler-gas-only-outdoor-reset-control.xml b/workflow/sample_files/base-hvac-boiler-gas-only-outdoor-reset-control.xml new file mode 100644 index 0000000000..0a21b2b754 --- /dev/null +++ b/workflow/sample_files/base-hvac-boiler-gas-only-outdoor-reset-control.xml @@ -0,0 +1,538 @@ + + + + HPXML + tasks.rb + 2000-01-01T00:00:00-07:00 + create + + + + asset + + 60 + + + base-hvac-boiler-gas-only.xml + + + + + + + +
+ CO +
+
+ + proposed workscope + + + + + suburban + stand-alone + no units above or below + 180 + + electricity + natural gas + + + + 3.0 + + + single-family detached + 2.0 + 1.0 + 8.0 + 3 + 2 + 2700.0 + 21600.0 + + + + + 2006 + 5B + + + + USA_CO_Denver.Intl.AP.725650_TMY3 + + USA_CO_Denver.Intl.AP.725650_TMY3.epw + + + + + + + + 50.0 + + ACH + 3.0 + + 21600.0 + + + + + + + + false + + + false + + + + + + + + + + + true + + + + + + + + + + + attic - unvented + 1509.4 + asphalt or fiberglass shingles + 0.7 + 0.92 + 6.0 + false + + + 2.3 + + + + + + + outside + basement - conditioned + 115.6 + wood siding + 0.7 + 0.92 + + + 23.0 + + + + + + + outside + living space + + + + 1200.0 + wood siding + 0.7 + 0.92 + + gypsum board + + + + 23.0 + + + + + outside + attic - unvented + gable + + + + 225.0 + wood siding + 0.7 + 0.92 + + + 4.0 + + + + + + + ground + basement - conditioned + 8.0 + 1200.0 + 8.0 + 7.0 + + gypsum board + + + + + continuous - exterior + 8.9 + 0.0 + 8.0 + + + continuous - interior + 0.0 + + + + + + + + attic - unvented + living space + 1350.0 + + gypsum board + + + + 39.3 + + + + + + + basement - conditioned + 1350.0 + 4.0 + 150.0 + + + + 0.0 + 0.0 + + + + + + 0.0 + 0.0 + + + + 0.0 + 0.0 + + + + + + + 108.0 + 0 + 0.33 + 0.45 + + + 0.7 + 0.85 + + 0.67 + + + + + 72.0 + 90 + 0.33 + 0.45 + + + 0.7 + 0.85 + + 0.67 + + + + + 108.0 + 180 + 0.33 + 0.45 + + + 0.7 + 0.85 + + 0.67 + + + + + 72.0 + 270 + 0.33 + 0.45 + + + 0.7 + 0.85 + + 0.67 + + + + + + + + 40.0 + 180 + 4.4 + + + + + + + + + + + + + + + true + + 5.0 + 190.0 + 70.0 + 100.0 + + + + natural gas + 36000.0 + + AFUE + 0.92 + + 1.0 + 200.0 + + + + + 68.0 + + + + + + baseboard + + + + + + + + electricity + storage water heater + living space + 40.0 + 1.0 + 18767.0 + 0.95 + 125.0 + + + + + + 50.0 + + + + 0.0 + + + + + shower head + true + + + + faucet + false + + + + + + + living space + 1.21 + 380.0 + 0.12 + 1.09 + 27.0 + 6.0 + 3.2 + + + + living space + electricity + 3.73 + true + 150.0 + + + + living space + 307.0 + 12 + 0.12 + 1.09 + 22.32 + 4.0 + + + + living space + 650.0 + true + + + + living space + electricity + false + + + + false + + + + + + interior + 0.4 + + + + + + + exterior + 0.4 + + + + + + + garage + 0.4 + + + + + + + interior + 0.1 + + + + + + + exterior + 0.1 + + + + + + + garage + 0.1 + + + + + + + interior + 0.25 + + + + + + + exterior + 0.25 + + + + + + + garage + 0.25 + + + + + + + + + TV other + + kWh/year + 620.0 + + + + + other + + kWh/year + 2457.0 + + + 0.855 + 0.045 + + + + +
+
\ No newline at end of file From d99fe2b655b72b04754be260889581c2fa3c9bae Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 10 May 2022 21:35:15 +0000 Subject: [PATCH 5/7] Latest results. --- workflow/tests/base_results/results.csv | 1 + workflow/tests/base_results/results_bills.csv | 1 + workflow/tests/base_results/results_hvac_sizing.csv | 1 + 3 files changed, 3 insertions(+) diff --git a/workflow/tests/base_results/results.csv b/workflow/tests/base_results/results.csv index 244fd50c46..4509aae838 100644 --- a/workflow/tests/base_results/results.csv +++ b/workflow/tests/base_results/results.csv @@ -219,6 +219,7 @@ base-hvac-boiler-coal-only.xml,46.889,46.889,30.644,30.644,0.0,0.0,0.0,0.0,0.0,1 base-hvac-boiler-elec-only.xml,46.907,46.907,46.907,46.907,0.0,0.0,0.0,0.0,0.0,0.0,16.366,0.0,0.111,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,5769.9,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-boiler-gas-central-ac-1-speed.xml,51.552,51.552,35.14,35.14,16.412,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.132,3.649,0.917,9.166,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.412,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.654,10.912,9.234,0.616,0.0,0.0,0.0,0.0,2082.9,3460.5,15.857,17.946,0.0,3.745,3.647,0.514,7.129,0.632,-2.019,0.0,0.0,6.652,-0.118,4.808,0.0,0.729,0.0,0.0,-11.393,0.0,-0.002,-0.421,-0.046,2.937,-0.016,9.975,0.0,0.0,-5.626,-0.056,-1.12,-7.063,-0.158,0.0,2.808,9.896,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-boiler-gas-only-non-condensing.xml,50.481,50.481,30.57,30.57,19.911,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.14,0.0,0.0,9.154,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,19.911,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,15.624,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2046.3,0.0,16.438,0.0,0.0,3.746,3.647,0.514,7.116,0.633,-2.032,0.0,0.0,6.582,-0.116,5.891,0.0,0.728,0.0,0.0,-11.404,0.0,-0.189,-0.703,-0.087,2.103,-0.088,9.095,0.0,0.0,-6.753,-0.056,-1.642,-10.876,-0.217,0.0,0.0,9.873,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 +base-hvac-boiler-gas-only-outdoor-reset-control.xml,46.916,46.916,30.56,30.56,16.356,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.131,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.356,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2033.8,0.0,15.861,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-boiler-gas-only.xml,46.887,46.887,30.56,30.56,16.327,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.131,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.327,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2032.9,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-boiler-oil-only.xml,46.889,46.889,30.644,30.644,0.0,16.245,0.0,0.0,0.0,0.0,0.0,0.0,0.215,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.245,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2044.0,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 base-hvac-boiler-propane-only.xml,46.886,46.886,30.54,30.54,0.0,0.0,16.346,0.0,0.0,0.0,0.0,0.0,0.111,0.0,0.0,9.153,0.0,0.0,4.51,0.0,0.334,0.0,0.0,0.0,0.0,2.22,0.0,0.0,0.319,0.365,1.513,1.528,0.0,2.114,8.374,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,16.346,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0,14.578,0.0,9.234,0.603,0.0,0.0,0.0,0.0,2030.3,0.0,15.857,0.0,0.0,3.747,3.648,0.514,7.122,0.633,-2.015,0.0,0.0,6.576,-0.119,4.809,0.0,0.729,0.0,0.0,-11.393,0.0,-0.2,-0.715,-0.088,2.067,-0.091,9.07,0.0,0.0,-6.81,-0.058,-1.334,-11.036,-0.22,0.0,0.0,9.883,1354.8,997.6,11399.6,2615.9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 diff --git a/workflow/tests/base_results/results_bills.csv b/workflow/tests/base_results/results_bills.csv index 1cf4e7c2fc..1c5c236cd6 100644 --- a/workflow/tests/base_results/results_bills.csv +++ b/workflow/tests/base_results/results_bills.csv @@ -219,6 +219,7 @@ base-hvac-boiler-coal-only.xml,1408.14,144.0,1020.47,0.0,1164.47,0.0,0.0,0.0,0.0 base-hvac-boiler-elec-only.xml,1706.03,144.0,1562.03,0.0,1706.03,0.0,0.0,0.0,0.0,0.0,0.0,0.0,0.0 base-hvac-boiler-gas-central-ac-1-speed.xml,1575.87,144.0,1170.2,0.0,1314.2,144.0,117.67,261.67,0.0,0.0,0.0,0.0,0.0 base-hvac-boiler-gas-only-non-condensing.xml,1448.78,144.0,1018.02,0.0,1162.02,144.0,142.76,286.76,0.0,0.0,0.0,0.0,0.0 +base-hvac-boiler-gas-only-outdoor-reset-control.xml,1422.95,144.0,1017.68,0.0,1161.68,144.0,117.27,261.27,0.0,0.0,0.0,0.0,0.0 base-hvac-boiler-gas-only.xml,1422.73,144.0,1017.67,0.0,1161.67,144.0,117.06,261.06,0.0,0.0,0.0,0.0,0.0 base-hvac-boiler-oil-only.xml,1572.97,144.0,1020.47,0.0,1164.47,0.0,0.0,0.0,408.5,0.0,0.0,0.0,0.0 base-hvac-boiler-propane-only.xml,1598.8,144.0,1017.02,0.0,1161.02,0.0,0.0,0.0,0.0,437.78,0.0,0.0,0.0 diff --git a/workflow/tests/base_results/results_hvac_sizing.csv b/workflow/tests/base_results/results_hvac_sizing.csv index 77a711f9f5..de38a196d3 100644 --- a/workflow/tests/base_results/results_hvac_sizing.csv +++ b/workflow/tests/base_results/results_hvac_sizing.csv @@ -219,6 +219,7 @@ base-hvac-boiler-coal-only.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446. base-hvac-boiler-elec-only.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 base-hvac-boiler-gas-central-ac-1-speed.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,17964.0,5216.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,24000.0,998.0 base-hvac-boiler-gas-only-non-condensing.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 +base-hvac-boiler-gas-only-outdoor-reset-control.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 base-hvac-boiler-gas-only.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 base-hvac-boiler-oil-only.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 base-hvac-boiler-propane-only.xml,23705.0,0.0,7508.0,0.0,575.0,6409.0,0.0,0.0,2446.0,2171.0,4597.0,12748.0,0.0,7127.0,0.0,207.0,265.0,0.0,0.0,0.0,2010.0,619.0,2520.0,0.0,0.0,0.0,0.0,36000.0,0.0,0.0,0.0,0.0 From e55dedd455304f286f5bd1482a7331870756eedc Mon Sep 17 00:00:00 2001 From: Scott Horowitz Date: Tue, 10 May 2022 17:32:38 -0600 Subject: [PATCH 6/7] Move everything over to HVACControl, where there's an existing `HotWaterResetControl` element. --- BuildResidentialHPXML/measure.rb | 28 +++--- HPXMLtoOpenStudio/measure.rb | 2 +- HPXMLtoOpenStudio/resources/hpxml.rb | 37 ++++---- HPXMLtoOpenStudio/resources/hpxml_defaults.rb | 54 ++++++----- .../hpxml_schema/HPXMLBaseElements.xsd | 5 -- .../hpxml_schematron/EPvalidator.xml | 26 +++--- .../hpxml_schematron/HPXMLvalidator.xml | 1 + HPXMLtoOpenStudio/resources/hvac.rb | 15 ++-- HPXMLtoOpenStudio/tests/test_defaults.rb | 90 ++++++++++--------- HPXMLtoOpenStudio/tests/test_hvac.rb | 15 ++-- HPXMLtoOpenStudio/tests/test_validation.rb | 8 ++ docs/source/workflow_inputs.rst | 25 +++--- tasks.rb | 10 +-- ...-boiler-gas-only-outdoor-reset-control.xml | 17 ++-- 14 files changed, 173 insertions(+), 160 deletions(-) diff --git a/BuildResidentialHPXML/measure.rb b/BuildResidentialHPXML/measure.rb index a7323e977b..522f5e24e4 100644 --- a/BuildResidentialHPXML/measure.rb +++ b/BuildResidentialHPXML/measure.rb @@ -1060,11 +1060,6 @@ def arguments(model) arg.setDescription("Whether the heating system is condensing or not. Only used for a non-electric #{HPXML::HVACTypeBoiler}.") args << arg - arg = OpenStudio::Measure::OSArgument::makeBoolArgument('heating_system_outdoor_reset_control', false) - arg.setDisplayName('Heating System: Outdoor Reset Control') - arg.setDescription("Whether the heating system has outdoor reset control. Only used for a #{HPXML::HVACTypeBoiler}.") - args << arg - arg = OpenStudio::Measure::OSArgument::makeDoubleArgument('heating_system_airflow_defect_ratio', false) arg.setDisplayName('Heating System: Airflow Defect Ratio') arg.setDescription("The airflow defect ratio, defined as (InstalledAirflow - DesignAirflow) / DesignAirflow, of the heating system per ANSI/RESNET/ACCA Standard 310. A value of zero means no airflow defect. Applies only to #{HPXML::HVACTypeFurnace}.") @@ -1371,6 +1366,15 @@ def arguments(model) arg.setDescription('Enter a date like "Jun 1 - Oct 31".') args << arg + hot_water_reset_control_choices = OpenStudio::StringVector.new + hot_water_reset_control_choices << 'none' + hot_water_reset_control_choices << HPXML::HotWaterResetControlSeasonal + + arg = OpenStudio::Measure::OSArgument::makeChoiceArgument('hvac_control_hot_water_reset_control', hot_water_reset_control_choices, false) + arg.setDisplayName('HVAC Control: Hot Water Reset Control') + arg.setDescription('Whether the boiler has seasonal hot water outdoor reset control.') + args << arg + duct_leakage_units_choices = OpenStudio::StringVector.new duct_leakage_units_choices << HPXML::UnitsCFM25 duct_leakage_units_choices << HPXML::UnitsCFM50 @@ -4378,12 +4382,6 @@ def self.set_heating_systems(hpxml, runner, args) end end - if heating_system_type == HPXML::HVACTypeBoiler - if args[:heating_system_outdoor_reset_control].is_initialized - heating_system_outdoor_reset_control = args[:heating_system_outdoor_reset_control].get - end - end - if args[:heating_system_airflow_defect_ratio].is_initialized if [HPXML::HVACTypeFurnace].include? heating_system_type airflow_defect_ratio = args[:heating_system_airflow_defect_ratio].get @@ -4410,7 +4408,6 @@ def self.set_heating_systems(hpxml, runner, args) heating_efficiency_afue: heating_efficiency_afue, heating_efficiency_percent: heating_efficiency_percent, condensing_system: heating_system_is_condensing, - boiler_reset_control: heating_system_outdoor_reset_control, airflow_defect_ratio: airflow_defect_ratio, is_shared_system: is_shared_system, number_of_units_served: number_of_units_served, @@ -4825,6 +4822,12 @@ def self.set_hvac_control(hpxml, runner, args) end + if args[:hvac_control_hot_water_reset_control].is_initialized + if args[:hvac_control_hot_water_reset_control].get != 'none' + hvac_control_hot_water_reset_control = args[:hvac_control_hot_water_reset_control].get + end + end + hpxml.hvac_controls.add(id: "HVACControl#{hpxml.hvac_controls.size + 1}", heating_setpoint_temp: heating_setpoint_temp, cooling_setpoint_temp: cooling_setpoint_temp, @@ -4832,6 +4835,7 @@ def self.set_hvac_control(hpxml, runner, args) weekend_heating_setpoints: weekend_heating_setpoints, weekday_cooling_setpoints: weekday_cooling_setpoints, weekend_cooling_setpoints: weekend_cooling_setpoints, + hot_water_reset_control: hvac_control_hot_water_reset_control, ceiling_fan_cooling_setpoint_temp_offset: ceiling_fan_cooling_setpoint_temp_offset, seasons_heating_begin_month: seasons_heating_begin_month, seasons_heating_begin_day: seasons_heating_begin_day, diff --git a/HPXMLtoOpenStudio/measure.rb b/HPXMLtoOpenStudio/measure.rb index 24d5a2d97d..90b8dacdde 100644 --- a/HPXMLtoOpenStudio/measure.rb +++ b/HPXMLtoOpenStudio/measure.rb @@ -1507,7 +1507,7 @@ def self.add_heating_system(runner, model, spaces, airloop_map) elsif [HPXML::HVACTypeBoiler].include? heating_system.heating_system_type - airloop_map[sys_id] = HVAC.apply_boiler(model, runner, heating_system, + airloop_map[sys_id] = HVAC.apply_boiler(model, runner, heating_system, @hpxml.hvac_controls[0], sequential_heat_load_fracs, living_zone) elsif [HPXML::HVACTypeElectricResistance].include? heating_system.heating_system_type diff --git a/HPXMLtoOpenStudio/resources/hpxml.rb b/HPXMLtoOpenStudio/resources/hpxml.rb index 3d1ea7441a..c5ec7ce78e 100644 --- a/HPXMLtoOpenStudio/resources/hpxml.rb +++ b/HPXMLtoOpenStudio/resources/hpxml.rb @@ -150,6 +150,8 @@ class HPXML < Object HeatPumpSizingACCA = 'ACCA' HeatPumpSizingHERS = 'HERS' HeatPumpSizingMaxLoad = 'MaxLoad' + HotWaterResetControlOther = 'other' + HotWaterResetControlSeasonal = 'seasonal' HVACCompressorTypeSingleStage = 'single stage' HVACCompressorTypeTwoStage = 'two stage' HVACCompressorTypeVariableSpeed = 'variable speed' @@ -3211,8 +3213,7 @@ class HeatingSystem < BaseElement :third_party_certification, :htg_seed_id, :is_shared_system, :number_of_units_served, :shared_loop_watts, :shared_loop_motor_efficiency, :fan_coil_watts, :fan_watts_per_cfm, :airflow_defect_ratio, :fan_watts, :heating_airflow_cfm, :location, :primary_system, - :condensing_system, :boiler_reset_control, :boiler_reset_low_oat, - :boiler_reset_high_oat, :boiler_reset_setpoint_at_low_oat, :boiler_reset_setpoint_at_high_oat] + :condensing_system] attr_accessor(*ATTRS) def distribution_system @@ -3295,11 +3296,6 @@ def to_oga(doc) heating_type_child = XMLHelper.add_element(heating_system_type_el, @heating_system_type) if @heating_system_type == HPXML::HVACTypeBoiler XMLHelper.add_element(heating_type_child, 'CondensingSystem', @condensing_system, :boolean, @condensing_system_isdefaulted) unless @condensing_system.nil? - XMLHelper.add_element(heating_type_child, 'OutdoorResetControl', @boiler_reset_control, :boolean, @boiler_reset_control_isdefaulted) unless @boiler_reset_control.nil? - XMLHelper.add_extension(heating_type_child, 'OutdoorResetLowOutdoorTemperature', @boiler_reset_low_oat, :float, @boiler_reset_low_oat_isdefaulted) unless @boiler_reset_low_oat.nil? - XMLHelper.add_extension(heating_type_child, 'OutdoorResetSetpointAtLowOutdoorTemperature', @boiler_reset_setpoint_at_low_oat, :float, @boiler_reset_setpoint_at_low_oat_isdefaulted) unless @boiler_reset_setpoint_at_low_oat.nil? - XMLHelper.add_extension(heating_type_child, 'OutdoorResetHighOutdoorTemperature', @boiler_reset_high_oat, :float, @boiler_reset_high_oat_isdefaulted) unless @boiler_reset_high_oat.nil? - XMLHelper.add_extension(heating_type_child, 'OutdoorResetSetpointAtHighOutdoorTemperature', @boiler_reset_setpoint_at_high_oat, :float, @boiler_reset_setpoint_at_high_oat_isdefaulted) unless @boiler_reset_setpoint_at_high_oat.nil? end end XMLHelper.add_element(heating_system, 'HeatingSystemFuel', @heating_system_fuel, :string) unless @heating_system_fuel.nil? @@ -3342,11 +3338,6 @@ def from_oga(heating_system) @number_of_units_served = XMLHelper.get_value(heating_system, 'NumberofUnitsServed', :integer) @heating_system_type = XMLHelper.get_child_name(heating_system, 'HeatingSystemType') @condensing_system = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/CondensingSystem', :boolean) - @boiler_reset_control = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/OutdoorResetControl', :boolean) - @boiler_reset_low_oat = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/extension/OutdoorResetLowOutdoorTemperature', :float) - @boiler_reset_setpoint_at_low_oat = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/extension/OutdoorResetSetpointAtLowOutdoorTemperature', :float) - @boiler_reset_high_oat = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/extension/OutdoorResetHighOutdoorTemperature', :float) - @boiler_reset_setpoint_at_high_oat = XMLHelper.get_value(heating_system, 'HeatingSystemType/Boiler/extension/OutdoorResetSetpointAtHighOutdoorTemperature', :float) @heating_system_fuel = XMLHelper.get_value(heating_system, 'HeatingSystemFuel', :string) @heating_capacity = XMLHelper.get_value(heating_system, 'HeatingCapacity', :float) @heating_efficiency_afue = XMLHelper.get_value(heating_system, "AnnualHeatingEfficiency[Units='#{UnitsAFUE}']/Value", :float) @@ -3858,11 +3849,13 @@ class HVACControl < BaseElement ATTRS = [:id, :control_type, :heating_setpoint_temp, :heating_setback_temp, :heating_setback_hours_per_week, :heating_setback_start_hour, :cooling_setpoint_temp, :cooling_setup_temp, :cooling_setup_hours_per_week, :cooling_setup_start_hour, - :ceiling_fan_cooling_setpoint_temp_offset, - :weekday_heating_setpoints, :weekend_heating_setpoints, - :weekday_cooling_setpoints, :weekend_cooling_setpoints, - :seasons_heating_begin_month, :seasons_heating_begin_day, :seasons_heating_end_month, :seasons_heating_end_day, - :seasons_cooling_begin_month, :seasons_cooling_begin_day, :seasons_cooling_end_month, :seasons_cooling_end_day] + :ceiling_fan_cooling_setpoint_temp_offset, :weekday_heating_setpoints, + :weekend_heating_setpoints, :weekday_cooling_setpoints, :weekend_cooling_setpoints, + :seasons_heating_begin_month, :seasons_heating_begin_day, :seasons_heating_end_month, + :seasons_heating_end_day, :seasons_cooling_begin_month, :seasons_cooling_begin_day, + :seasons_cooling_end_month, :seasons_cooling_end_day, :hot_water_reset_control, + :hot_water_reset_low_oat, :hot_water_reset_high_oat, :hot_water_reset_setpoint_at_low_oat, + :hot_water_reset_setpoint_at_high_oat] attr_accessor(*ATTRS) def delete @@ -3892,6 +3885,7 @@ def to_oga(doc) XMLHelper.add_element(hvac_control, 'SetupTempCoolingSeason', @cooling_setup_temp, :float) unless @cooling_setup_temp.nil? XMLHelper.add_element(hvac_control, 'SetpointTempCoolingSeason', @cooling_setpoint_temp, :float, @cooling_setpoint_temp_isdefaulted) unless @cooling_setpoint_temp.nil? XMLHelper.add_element(hvac_control, 'TotalSetupHoursperWeekCooling', @cooling_setup_hours_per_week, :integer) unless @cooling_setup_hours_per_week.nil? + XMLHelper.add_element(hvac_control, 'HotWaterResetControl', @hot_water_reset_control, :string) unless @hot_water_reset_control.nil? if (not @seasons_heating_begin_month.nil?) || (not @seasons_heating_begin_day.nil?) || (not @seasons_heating_end_month.nil?) || (not @seasons_heating_end_day.nil?) heating_season = XMLHelper.add_element(hvac_control, 'HeatingSeason') XMLHelper.add_element(heating_season, 'BeginMonth', @seasons_heating_begin_month, :integer, @seasons_heating_begin_month_isdefaulted) unless @seasons_heating_begin_month.nil? @@ -3913,6 +3907,10 @@ def to_oga(doc) XMLHelper.add_extension(hvac_control, 'WeekendSetpointTempsHeatingSeason', @weekend_heating_setpoints, :string) unless @weekend_heating_setpoints.nil? XMLHelper.add_extension(hvac_control, 'WeekdaySetpointTempsCoolingSeason', @weekday_cooling_setpoints, :string) unless @weekday_cooling_setpoints.nil? XMLHelper.add_extension(hvac_control, 'WeekendSetpointTempsCoolingSeason', @weekend_cooling_setpoints, :string) unless @weekend_cooling_setpoints.nil? + XMLHelper.add_extension(hvac_control, 'HotWaterResetLowOutdoorTemperature', @hot_water_reset_low_oat, :float, @hot_water_reset_low_oat_isdefaulted) unless @hot_water_reset_low_oat.nil? + XMLHelper.add_extension(hvac_control, 'HotWaterResetSetpointAtLowOutdoorTemperature', @hot_water_reset_setpoint_at_low_oat, :float, @hot_water_reset_setpoint_at_low_oat_isdefaulted) unless @hot_water_reset_setpoint_at_low_oat.nil? + XMLHelper.add_extension(hvac_control, 'HotWaterResetHighOutdoorTemperature', @hot_water_reset_high_oat, :float, @hot_water_reset_high_oat_isdefaulted) unless @hot_water_reset_high_oat.nil? + XMLHelper.add_extension(hvac_control, 'HotWaterResetSetpointAtHighOutdoorTemperature', @hot_water_reset_setpoint_at_high_oat, :float, @hot_water_reset_setpoint_at_high_oat_isdefaulted) unless @hot_water_reset_setpoint_at_high_oat.nil? end def from_oga(hvac_control) @@ -3934,6 +3932,7 @@ def from_oga(hvac_control) @seasons_cooling_begin_day = XMLHelper.get_value(hvac_control, 'CoolingSeason/BeginDayOfMonth', :integer) @seasons_cooling_end_month = XMLHelper.get_value(hvac_control, 'CoolingSeason/EndMonth', :integer) @seasons_cooling_end_day = XMLHelper.get_value(hvac_control, 'CoolingSeason/EndDayOfMonth', :integer) + @hot_water_reset_control = XMLHelper.get_value(hvac_control, 'HotWaterResetControl', :string) @heating_setback_start_hour = XMLHelper.get_value(hvac_control, 'extension/SetbackStartHourHeating', :integer) @cooling_setup_start_hour = XMLHelper.get_value(hvac_control, 'extension/SetupStartHourCooling', :integer) @ceiling_fan_cooling_setpoint_temp_offset = XMLHelper.get_value(hvac_control, 'extension/CeilingFanSetpointTempCoolingSeasonOffset', :float) @@ -3941,6 +3940,10 @@ def from_oga(hvac_control) @weekend_heating_setpoints = XMLHelper.get_value(hvac_control, 'extension/WeekendSetpointTempsHeatingSeason', :string) @weekday_cooling_setpoints = XMLHelper.get_value(hvac_control, 'extension/WeekdaySetpointTempsCoolingSeason', :string) @weekend_cooling_setpoints = XMLHelper.get_value(hvac_control, 'extension/WeekendSetpointTempsCoolingSeason', :string) + @hot_water_reset_low_oat = XMLHelper.get_value(hvac_control, 'extension/HotWaterResetLowOutdoorTemperature', :float) + @hot_water_reset_setpoint_at_low_oat = XMLHelper.get_value(hvac_control, 'extension/HotWaterResetSetpointAtLowOutdoorTemperature', :float) + @hot_water_reset_high_oat = XMLHelper.get_value(hvac_control, 'extension/HotWaterResetHighOutdoorTemperature', :float) + @hot_water_reset_setpoint_at_high_oat = XMLHelper.get_value(hvac_control, 'extension/HotWaterResetSetpointAtHighOutdoorTemperature', :float) end end diff --git a/HPXMLtoOpenStudio/resources/hpxml_defaults.rb b/HPXMLtoOpenStudio/resources/hpxml_defaults.rb index 332dc2db5b..663b452cd6 100644 --- a/HPXMLtoOpenStudio/resources/hpxml_defaults.rb +++ b/HPXMLtoOpenStudio/resources/hpxml_defaults.rb @@ -982,36 +982,14 @@ def self.apply_hvac(hpxml, weather, convert_shared_systems) heating_system.shared_loop_motor_efficiency = nil heating_system.fan_coil_watts = nil end - if heating_system.condensing_system.nil? - if heating_system.heating_efficiency_afue >= 0.883 && heating_system.heating_system_fuel != HPXML::FuelTypeElectricity - heating_system.condensing_system = true - else - heating_system.condensing_system = false - end - heating_system.condensing_system_isdefaulted = true - end - if heating_system.boiler_reset_control.nil? - heating_system.boiler_reset_control = false - heating_system.boiler_reset_control_isdefaulted = true - end - next unless heating_system.boiler_reset_control + next unless heating_system.condensing_system.nil? - if heating_system.boiler_reset_low_oat.nil? - heating_system.boiler_reset_low_oat = 0.0 - heating_system.boiler_reset_low_oat_isdefaulted = true - end - if heating_system.boiler_reset_setpoint_at_low_oat.nil? - heating_system.boiler_reset_setpoint_at_low_oat = 180.0 - heating_system.boiler_reset_setpoint_at_low_oat_isdefaulted = true - end - if heating_system.boiler_reset_high_oat.nil? - heating_system.boiler_reset_high_oat = 68.0 - heating_system.boiler_reset_high_oat_isdefaulted = true - end - if heating_system.boiler_reset_setpoint_at_high_oat.nil? - heating_system.boiler_reset_setpoint_at_high_oat = 95.0 - heating_system.boiler_reset_setpoint_at_high_oat_isdefaulted = true + if heating_system.heating_efficiency_afue >= 0.883 && heating_system.heating_system_fuel != HPXML::FuelTypeElectricity + heating_system.condensing_system = true + else + heating_system.condensing_system = false end + heating_system.condensing_system_isdefaulted = true end # Default boiler type @@ -1338,6 +1316,25 @@ def self.apply_hvac_control(hpxml, schedules_file) hvac_control.cooling_setup_start_hour_isdefaulted = true end + if hvac_control.hot_water_reset_control == HPXML::HotWaterResetControlSeasonal + if hvac_control.hot_water_reset_setpoint_at_low_oat.nil? + hvac_control.hot_water_reset_setpoint_at_low_oat = 180.0 + hvac_control.hot_water_reset_setpoint_at_low_oat_isdefaulted = true + end + if hvac_control.hot_water_reset_low_oat.nil? + hvac_control.hot_water_reset_low_oat = 0.0 + hvac_control.hot_water_reset_low_oat_isdefaulted = true + end + if hvac_control.hot_water_reset_setpoint_at_high_oat.nil? + hvac_control.hot_water_reset_setpoint_at_high_oat = 95.0 + hvac_control.hot_water_reset_setpoint_at_high_oat_isdefaulted = true + end + if hvac_control.hot_water_reset_high_oat.nil? + hvac_control.hot_water_reset_high_oat = 68.0 + hvac_control.hot_water_reset_high_oat_isdefaulted = true + end + end + if hvac_control.seasons_heating_begin_month.nil? || hvac_control.seasons_heating_begin_day.nil? || hvac_control.seasons_heating_end_month.nil? || hvac_control.seasons_heating_end_day.nil? hvac_control.seasons_heating_begin_month = 1 @@ -1365,6 +1362,7 @@ def self.apply_hvac_control(hpxml, schedules_file) end def self.apply_hvac_distribution(hpxml, ncfl, ncfl_ag) + # Air distribution defaults hpxml.hvac_distributions.each do |hvac_distribution| next unless [HPXML::HVACDistributionTypeAir].include? hvac_distribution.distribution_system_type next if hvac_distribution.ducts.empty? diff --git a/HPXMLtoOpenStudio/resources/hpxml_schema/HPXMLBaseElements.xsd b/HPXMLtoOpenStudio/resources/hpxml_schema/HPXMLBaseElements.xsd index a2b12b2d41..30b1b27cd9 100644 --- a/HPXMLtoOpenStudio/resources/hpxml_schema/HPXMLBaseElements.xsd +++ b/HPXMLtoOpenStudio/resources/hpxml_schema/HPXMLBaseElements.xsd @@ -3681,11 +3681,6 @@ - - - Outdoor Reset controls respond to changes in weather by changing the boiler water temperature circulating throughout the building, in order to save fuel. - - diff --git a/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml b/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml index 4ddd40f647..6324ad8b6d 100644 --- a/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml +++ b/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml @@ -674,7 +674,6 @@ [HeatingSystemType=Boiler] Expected 0 or 1 element(s) for xpath: HeatingSystemType/Boiler/CondensingSystem - Expected 0 or 1 element(s) for xpath: HeatingSystemType/Boiler/OutdoorResetControl Expected 0 or 1 element(s) for xpath: IsSharedSystem Expected 1 element(s) for xpath: DistributionSystem Expected 1 element(s) for xpath: HeatingSystemFuel @@ -686,18 +685,6 @@
- - [HeatingSystemType=BoilerWithOutdoorResetControl] - - Expected 0 or 1 element(s) for xpath: extension/OutdoorResetLowOutdoorTemperature - Expected 0 or 1 element(s) for xpath: extension/OutdoorResetSetpointAtLowOutdoorTemperature - Expected 0 or 1 element(s) for xpath: extension/OutdoorResetHighOutdoorTemperature - Expected extension/OutdoorResetHighOutdoorTemperature to be greater than extension/OutdoorResetLowOutdoorTemperature - Expected 0 or 1 element(s) for xpath: extension/OutdoorResetSetpointAtHighOutdoorTemperature - Expected extension/OutdoorResetSetpointAtHighOutdoorTemperature to be less than extension/OutdoorResetSetpointAtLowOutdoorTemperature - - - [HeatingSystemType=InUnitBoiler] @@ -1127,6 +1114,7 @@ Expected 1 element(s) for xpath: SetpointTempHeatingSeason | extension/WeekendSetpointTempsHeatingSeason Expected 0 or 1 element(s) for xpath: SetbackTempHeatingSeason | extension/WeekdaySetpointTempsHeatingSeason Expected 0 or 1 element(s) for xpath: SetbackTempHeatingSeason | extension/WeekendSetpointTempsHeatingSeason + Expected 0 or 1 element(s) for xpath: HotWaterResetControl[text()="seasonal"] Expected 0 or 1 element(s) for xpath: Heating Heating setpoint should typically be greater than or equal to 58 deg-F. @@ -1144,6 +1132,18 @@ + + [HVACControl=HotWaterResetControl] + + Expected 0 or 1 element(s) for xpath: extension/HotWaterResetSetpointAtLowOutdoorTemperature + Expected 0 or 1 element(s) for xpath: extension/HotWaterResetLowOutdoorTemperature + Expected 0 or 1 element(s) for xpath: extension/HotWaterResetSetpointAtHighOutdoorTemperature + Expected extension/HotWaterResetSetpointAtHighOutdoorTemperature to be less than extension/HotWaterResetSetpointAtLowOutdoorTemperature + Expected 0 or 1 element(s) for xpath: extension/HotWaterResetHighOutdoorTemperature + Expected extension/HotWaterResetHighOutdoorTemperature to be greater than extension/HotWaterResetLowOutdoorTemperature + + + [HVACControl=HeatingSeason] diff --git a/HPXMLtoOpenStudio/resources/hpxml_schematron/HPXMLvalidator.xml b/HPXMLtoOpenStudio/resources/hpxml_schematron/HPXMLvalidator.xml index a4e61cea60..040c57e22a 100644 --- a/HPXMLtoOpenStudio/resources/hpxml_schematron/HPXMLvalidator.xml +++ b/HPXMLtoOpenStudio/resources/hpxml_schematron/HPXMLvalidator.xml @@ -315,6 +315,7 @@ Expected ControlType to be 'programmable thermostat' or 'manual thermostat' or 'digital thermostat' or 'timer' or 'EMCS' or 'other' + Expected HotWaterResetControl to be 'seasonal' or 'other' Expected SystemIdentifier with id attribute diff --git a/HPXMLtoOpenStudio/resources/hvac.rb b/HPXMLtoOpenStudio/resources/hvac.rb index 008977ce0a..4bb44421e1 100644 --- a/HPXMLtoOpenStudio/resources/hvac.rb +++ b/HPXMLtoOpenStudio/resources/hvac.rb @@ -420,8 +420,7 @@ def self.apply_water_loop_to_air_heat_pump(model, runner, heat_pump, return air_loop end - def self.apply_boiler(model, runner, heating_system, - sequential_heat_load_fracs, control_zone) + def self.apply_boiler(model, runner, heating_system, hvac_control, sequential_heat_load_fracs, control_zone) obj_name = Constants.ObjectNameBoiler design_temp = 180.0 # deg-F @@ -460,7 +459,7 @@ def self.apply_boiler(model, runner, heating_system, boiler = OpenStudio::Model::BoilerHotWater.new(model) boiler.setName(obj_name) boiler.setFuelType(EPlus.fuel_type(heating_system.heating_system_fuel)) - if heating_system.condensing_system && heating_system.heating_system_fuel != HPXML::FuelTypeElectricity + if heating_system.condensing_system # Convert Rated Efficiency at 80F and 1.0PLR where the performance curves are derived from to Design condition as input boiler_rated_HWRT = UnitConversions.convert(80.0 - 32.0, 'R', 'K') boiler_design_HWRT = UnitConversions.convert(design_temp - 20.0 - 32.0, 'R', 'K') @@ -488,14 +487,14 @@ def self.apply_boiler(model, runner, heating_system, boiler.additionalProperties.setFeature('HPXML_ID', heating_system.id) # Used by reporting measure set_pump_power_ems_program(model, pump_w, pump, boiler) - if heating_system.boiler_reset_control + if hvac_control.hot_water_reset_control == HPXML::HotWaterResetControlSeasonal setpoint_manager_oar = OpenStudio::Model::SetpointManagerOutdoorAirReset.new(model) setpoint_manager_oar.setName(obj_name + ' outdoor reset') setpoint_manager_oar.setControlVariable('Temperature') - setpoint_manager_oar.setOutdoorLowTemperature(UnitConversions.convert(heating_system.boiler_reset_low_oat, 'F', 'C')) - setpoint_manager_oar.setSetpointatOutdoorLowTemperature(UnitConversions.convert(heating_system.boiler_reset_setpoint_at_low_oat, 'F', 'C')) - setpoint_manager_oar.setOutdoorHighTemperature(UnitConversions.convert(heating_system.boiler_reset_high_oat, 'F', 'C')) - setpoint_manager_oar.setSetpointatOutdoorHighTemperature(UnitConversions.convert(heating_system.boiler_reset_setpoint_at_high_oat, 'F', 'C')) + setpoint_manager_oar.setSetpointatOutdoorLowTemperature(UnitConversions.convert(hvac_control.hot_water_reset_setpoint_at_low_oat, 'F', 'C')) + setpoint_manager_oar.setOutdoorLowTemperature(UnitConversions.convert(hvac_control.hot_water_reset_low_oat, 'F', 'C')) + setpoint_manager_oar.setSetpointatOutdoorHighTemperature(UnitConversions.convert(hvac_control.hot_water_reset_setpoint_at_high_oat, 'F', 'C')) + setpoint_manager_oar.setOutdoorHighTemperature(UnitConversions.convert(hvac_control.hot_water_reset_high_oat, 'F', 'C')) setpoint_manager_oar.addToNode(plant_loop.supplyOutletNode) else hydronic_heat_supply_setpoint = OpenStudio::Model::ScheduleConstant.new(model) diff --git a/HPXMLtoOpenStudio/tests/test_defaults.rb b/HPXMLtoOpenStudio/tests/test_defaults.rb index 9286fbed07..31b213c3b8 100644 --- a/HPXMLtoOpenStudio/tests/test_defaults.rb +++ b/HPXMLtoOpenStudio/tests/test_defaults.rb @@ -1160,14 +1160,9 @@ def test_boilers hpxml.heating_systems[0].heating_efficiency_afue = 0.85 hpxml.heating_systems[0].year_installed = 2010 hpxml.heating_systems[0].condensing_system = true - hpxml.heating_systems[0].boiler_reset_control = true - hpxml.heating_systems[0].boiler_reset_low_oat = 1.0 - hpxml.heating_systems[0].boiler_reset_setpoint_at_low_oat = 199.0 - hpxml.heating_systems[0].boiler_reset_high_oat = 69.0 - hpxml.heating_systems[0].boiler_reset_setpoint_at_high_oat = 99.0 XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, 12345, 0.85, true, true, 1.0, 199.0, 69.0, 99.0) + _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, 12345, 0.85, true) # Test defaults w/ in-unit boiler hpxml.heating_systems[0].electric_auxiliary_energy = nil @@ -1175,16 +1170,9 @@ def test_boilers hpxml.heating_systems[0].heating_efficiency_afue = nil hpxml.heating_systems[0].year_installed = 2010 hpxml.heating_systems[0].condensing_system = nil - hpxml.heating_systems[0].boiler_reset_control = nil XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 170.0, nil, 0.797, false, false) - - # Test defaults w/ in-unit boiler and outdoor reset - hpxml.heating_systems[0].boiler_reset_control = true - XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) - hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 170.0, nil, 0.797, false, false, 0.0, 180.0, 68.0, 95.0) + _test_default_boiler_values(hpxml_default.heating_systems[0], 170.0, nil, 0.797, false) # Test inputs not overridden by defaults (shared boiler) hpxml = _create_hpxml('base-bldgtype-multifamily-shared-boiler-only-baseboard.xml') @@ -1193,20 +1181,18 @@ def test_boilers hpxml.heating_systems[0].heating_efficiency_afue = 0.85 hpxml.heating_systems[0].year_installed = 1980 hpxml.heating_systems[0].condensing_system = true - hpxml.heating_systems[0].boiler_reset_control = true XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, nil, 0.85, true, true) + _test_default_boiler_values(hpxml_default.heating_systems[0], 99.9, nil, 0.85, true) # Test defaults w/ shared boiler hpxml.heating_systems[0].electric_auxiliary_energy = nil hpxml.heating_systems[0].heating_efficiency_afue = nil hpxml.heating_systems[0].year_installed = 1980 hpxml.heating_systems[0].condensing_system = nil - hpxml.heating_systems[0].boiler_reset_control = nil XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() - _test_default_boiler_values(hpxml_default.heating_systems[0], 220.0, nil, 0.723, false, false) + _test_default_boiler_values(hpxml_default.heating_systems[0], 220.0, nil, 0.723, false) end def test_stoves @@ -1493,6 +1479,25 @@ def test_hvac_controls XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) hpxml_default = _test_measure() _test_default_hvac_control_values(hpxml_default.hvac_controls[0], 23, 9, 1, 1, 12, 31, 1, 1, 12, 31) + + # Test inputs not overridden by defaults (hot water reset control) + hpxml = _create_hpxml('base-hvac-boiler-gas-only-outdoor-reset-control.xml') + hpxml.hvac_controls[0].hot_water_reset_setpoint_at_low_oat = 200.0 + hpxml.hvac_controls[0].hot_water_reset_low_oat = 10.0 + hpxml.hvac_controls[0].hot_water_reset_setpoint_at_high_oat = 100.0 + hpxml.hvac_controls[0].hot_water_reset_high_oat = 70.0 + XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) + hpxml_default = _test_measure() + _test_default_hvac_control_reset_values(hpxml_default.hvac_controls[0], 200.0, 10.0, 100.0, 70.0) + + # Test defaults w/ hot water reset control + hpxml.hvac_controls[0].hot_water_reset_setpoint_at_low_oat = nil + hpxml.hvac_controls[0].hot_water_reset_low_oat = nil + hpxml.hvac_controls[0].hot_water_reset_setpoint_at_high_oat = nil + hpxml.hvac_controls[0].hot_water_reset_high_oat = nil + XMLHelper.write_file(hpxml.to_oga, @tmp_hpxml_path) + hpxml_default = _test_measure() + _test_default_hvac_control_reset_values(hpxml_default.hvac_controls[0], 180.0, 0.0, 95.0, 68.0) end def test_hvac_distribution @@ -3464,9 +3469,7 @@ def _test_default_floor_furnace_values(heating_system, fan_watts, heating_capaci end end - def _test_default_boiler_values(heating_system, eae, heating_capacity, heating_efficiency_afue, condensing_system, - reset_control, reset_low_oat = nil, reset_setpoint_at_low_oat = nil, - reset_hight_oat = nil, reset_setpoint_at_high_oat = nil) + def _test_default_boiler_values(heating_system, eae, heating_capacity, heating_efficiency_afue, condensing_system) assert_equal(eae, heating_system.electric_auxiliary_energy) if heating_capacity.nil? assert(heating_system.heating_capacity > 0) @@ -3479,27 +3482,6 @@ def _test_default_boiler_values(heating_system, eae, heating_capacity, heating_e assert_equal(heating_system.heating_efficiency_afue, heating_efficiency_afue) end assert_equal(heating_system.condensing_system, condensing_system) - assert_equal(heating_system.reset_control, reset_control) - if reset_low_oat.nil? - assert_nil(heating_system.boiler_reset_low_oat) - else - assert_equal(heating_system.boiler_reset_low_oat, reset_low_oat) - end - if reset_setpoint_at_low_oat.nil? - assert_nil(heating_system.boiler_setpoint_at_reset_low_oat) - else - assert_equal(heating_system.boiler_setpoint_at_reset_low_oat, reset_setpoint_at_low_oat) - end - if reset_high_oat.nil? - assert_nil(heating_system.boiler_reset_high_oat) - else - assert_equal(heating_system.boiler_reset_high_oat, reset_high_oat) - end - if reset_setpoint_at_high_oat.nil? - assert_nil(heating_system.boiler_reset_setpoint_at_high_oat) - else - assert_equal(heating_system.boiler_reset_setpoint_at_high_oat, reset_setpoint_at_high_oat) - end end def _test_default_stove_values(heating_system, fan_watts, heating_capacity, heating_efficiency_percent) @@ -3684,6 +3666,30 @@ def _test_default_hvac_control_values(hvac_control, htg_setback_start_hr, clg_se assert_equal(clg_season_end_day, hvac_control.seasons_cooling_end_day) end + def _test_default_hvac_control_reset_values(hvac_control, hot_water_reset_setpoint_at_low_oat, hot_water_reset_low_oat, + hot_water_reset_setpoint_at_high_oat, hot_water_reset_high_oat) + if hot_water_reset_setpoint_at_low_oat.nil? + assert_nil(hvac_control.hot_water_reset_setpoint_at_low_oat) + else + assert_equal(hvac_control.hot_water_reset_setpoint_at_low_oat, hot_water_reset_setpoint_at_low_oat) + end + if hot_water_reset_low_oat.nil? + assert_nil(hvac_control.hot_water_reset_low_oat) + else + assert_equal(hvac_control.hot_water_reset_low_oat, hot_water_reset_low_oat) + end + if hot_water_reset_setpoint_at_high_oat.nil? + assert_nil(hvac_control.hot_water_reset_setpoint_at_high_oat) + else + assert_equal(hvac_control.hot_water_reset_setpoint_at_high_oat, hot_water_reset_setpoint_at_high_oat) + end + if hot_water_reset_high_oat.nil? + assert_nil(hvac_control.hot_water_reset_high_oat) + else + assert_equal(hvac_control.hot_water_reset_high_oat, hot_water_reset_high_oat) + end + end + def _test_default_duct_values(hpxml, supply_locations, return_locations, supply_areas, return_areas, supply_fracs, return_fracs, n_return_registers) supply_duct_idx = 0 diff --git a/HPXMLtoOpenStudio/tests/test_hvac.rb b/HPXMLtoOpenStudio/tests/test_hvac.rb index 8b04d5e146..a14fca59e2 100644 --- a/HPXMLtoOpenStudio/tests/test_hvac.rb +++ b/HPXMLtoOpenStudio/tests/test_hvac.rb @@ -275,20 +275,19 @@ def test_boiler_gas_outdoor_reset_control model, hpxml = _test_measure(args_hash) # Get HPXML values - heating_system = hpxml.heating_systems[0] - reset_low_oat = heating_system.boiler_reset_low_oat - reset_setpoint_at_low_oat = heating_system.boiler_reset_setpoint_at_low_oat - reset_high_oat = heating_system.boiler_reset_high_oat - reset_setpoint_at_high_oat = heating_system.boiler_reset_setpoint_at_high_oat + hvac_control = hpxml.hvac_controls[0] + reset_setpoint_at_low_oat = hvac_control.hot_water_reset_setpoint_at_low_oat + reset_low_oat = hvac_control.hot_water_reset_low_oat + reset_setpoint_at_high_oat = hvac_control.hot_water_reset_setpoint_at_high_oat + reset_high_oat = hvac_control.hot_water_reset_high_oat # Check for outdoor air reset setpoint manager - File.write('foo.osm', model.to_s) assert_equal(1, model.getSetpointManagerOutdoorAirResets.size) setpoint_manager_oar = model.getSetpointManagerOutdoorAirResets[0] - assert_in_epsilon(setpoint_manager_oar.outdoorLowTemperature, UnitConversions.convert(reset_low_oat, 'F', 'C'), 0.001) assert_in_epsilon(setpoint_manager_oar.setpointatOutdoorLowTemperature, UnitConversions.convert(reset_setpoint_at_low_oat, 'F', 'C'), 0.001) - assert_in_epsilon(setpoint_manager_oar.outdoorHighTemperature, UnitConversions.convert(reset_high_oat, 'F', 'C'), 0.001) + assert_in_epsilon(setpoint_manager_oar.outdoorLowTemperature, UnitConversions.convert(reset_low_oat, 'F', 'C'), 0.001) assert_in_epsilon(setpoint_manager_oar.setpointatOutdoorHighTemperature, UnitConversions.convert(reset_setpoint_at_high_oat, 'F', 'C'), 0.001) + assert_in_epsilon(setpoint_manager_oar.outdoorHighTemperature, UnitConversions.convert(reset_high_oat, 'F', 'C'), 0.001) end def test_boiler_coal diff --git a/HPXMLtoOpenStudio/tests/test_validation.rb b/HPXMLtoOpenStudio/tests/test_validation.rb index e9a4b0b73e..ebd2fe0a07 100644 --- a/HPXMLtoOpenStudio/tests/test_validation.rb +++ b/HPXMLtoOpenStudio/tests/test_validation.rb @@ -150,6 +150,8 @@ def test_schematron_error_messages 'invalid-foundation-wall-properties' => ['Expected DepthBelowGrade to be less than or equal to Height [context: /HPXML/Building/BuildingDetails/Enclosure/FoundationWalls/FoundationWall, id: "FoundationWall1"]', 'Expected DistanceToBottomOfInsulation to be greater than or equal to DistanceToTopOfInsulation [context: /HPXML/Building/BuildingDetails/Enclosure/FoundationWalls/FoundationWall/Insulation/Layer[InstallationType="continuous - exterior" or InstallationType="continuous - interior"], id: "FoundationWall1Insulation"]', 'Expected DistanceToBottomOfInsulation to be less than or equal to ../../Height [context: /HPXML/Building/BuildingDetails/Enclosure/FoundationWalls/FoundationWall/Insulation/Layer[InstallationType="continuous - exterior" or InstallationType="continuous - interior"], id: "FoundationWall1Insulation"]'], + 'invalid-hot-water-reset-control-temperatures' => ['Expected extension/HotWaterResetSetpointAtHighOutdoorTemperature to be less than extension/HotWaterResetSetpointAtLowOutdoorTemperature', + 'Expected extension/HotWaterResetHighOutdoorTemperature to be greater than extension/HotWaterResetLowOutdoorTemperature'], 'invalid-hvac-installation-quality' => ['Expected extension/AirflowDefectRatio to be greater than or equal to -0.9 [context: /HPXML/Building/BuildingDetails/Systems/HVAC/HVACPlant/HeatPump[HeatPumpType="air-to-air"], id: "HeatPump1"]', 'Expected extension/ChargeDefectRatio to be greater than or equal to -0.9 [context: /HPXML/Building/BuildingDetails/Systems/HVAC/HVACPlant/HeatPump[HeatPumpType="air-to-air"], id: "HeatPump1"]'], 'invalid-hvac-installation-quality2' => ['Expected extension/AirflowDefectRatio to be less than or equal to 9 [context: /HPXML/Building/BuildingDetails/Systems/HVAC/HVACPlant/HeatPump[HeatPumpType="air-to-air"], id: "HeatPump1"]', @@ -380,6 +382,12 @@ def test_schematron_error_messages hpxml.foundation_walls[0].depth_below_grade = 9.0 hpxml.foundation_walls[0].insulation_interior_distance_to_top = 12.0 hpxml.foundation_walls[0].insulation_interior_distance_to_bottom = 10.0 + elsif ['invalid-hot-water-reset-control-temperatures'].include? error_case + hpxml = HPXML.new(hpxml_path: File.join(@sample_files_path, 'base-hvac-boiler-gas-only-outdoor-reset-control.xml')) + hpxml.hvac_controls[0].hot_water_reset_setpoint_at_low_oat = 95.0 + hpxml.hvac_controls[0].hot_water_reset_low_oat = 68.0 + hpxml.hvac_controls[0].hot_water_reset_setpoint_at_high_oat = 180.0 + hpxml.hvac_controls[0].hot_water_reset_high_oat = 0.0 elsif ['invalid-hvac-installation-quality'].include? error_case hpxml = HPXML.new(hpxml_path: File.join(@sample_files_path, 'base-hvac-air-to-air-heat-pump-1-speed.xml')) hpxml.heat_pumps[0].airflow_defect_ratio = -99 diff --git a/docs/source/workflow_inputs.rst b/docs/source/workflow_inputs.rst index 8873cc07ed..bb54fe1b4a 100644 --- a/docs/source/workflow_inputs.rst +++ b/docs/source/workflow_inputs.rst @@ -1113,7 +1113,6 @@ If a boiler is specified, additional information is entered in ``HeatingSystem`` Element Type Units Constraints Required Default Notes ==================================================================== ================= ========= =============== ======== ======== ========================================= ``HeatingSystemType/Boiler/CondensingSystem`` boolean No See [#]_ Whether it is a condensing boiler - ``HeatingSystemType/Boiler/OutdoorResetControl`` boolean No false Whether it is has outdoor reset controls ``IsSharedSystem`` boolean No false Whether it serves multiple dwelling units ``DistributionSystem`` idref See [#]_ Yes ID of attached distribution system ``AnnualHeatingEfficiency[Units="AFUE"]/Value`` or ``YearInstalled`` double or integer frac or # 0 - 1 or > 1600 Yes See [#]_ Rated efficiency or Year installed @@ -1125,17 +1124,6 @@ If a boiler is specified, additional information is entered in ``HeatingSystem`` If the shared boiler has "water loop" distribution, a :ref:`hvac_heatpump_wlhp` must also be specified. .. [#] If AnnualHeatingEfficiency[Units="AFUE"]/Value not provided, defaults to 0.98 if FuelType is "electricity", else AFUE from the lookup table that can be found at ``HPXMLtoOpenStudio/resources/data/hvac_equipment_efficiency.csv`` based on YearInstalled. -If the boiler has outdoor reset control, additional information is entered in ``HeatingSystem``. - - =================================================================================== ====== ===== ============================================== ======== ======== ========================================= - Element Type Units Constraints Required Default Notes - =================================================================================== ====== ===== ============================================== ======== ======== ========================================= - ``HeatingSystemType/Boiler/extension/OutdoorResetLowOutdoorTemperature`` double F No 0.0 Low outdoor air temperature - ``HeatingSystemType/Boiler/extension/OutdoorResetSetpointAtLowOutdoorTemperature`` double F No 180.0 Hot water setpoint at low outdoor air temperature - ``HeatingSystemType/Boiler/extension/OutdoorResetHighOutdoorTemperature`` double F > OutdoorResetLowOutdoorTemperature No 68.0 High outdoor air temperature - ``HeatingSystemType/Boiler/extension/OutdoorResetSetpointAtHighOutdoorTemperature`` double F < OutdoorResetSetpointAtHighOutdoorTemperature No 95.0 Hot water setpoint at high outdoor air temperature - =================================================================================== ====== ===== ============================================== ======== ======== ========================================= - If an in-unit boiler if specified, additional information is entered in ``HeatingSystem``. =========================== ======== ====== =========== ======== ======== ========================= @@ -1605,15 +1593,28 @@ If any HVAC systems are specified, a single thermostat is entered as a ``/HPXML/ Element Type Units Constraints Required Default Notes ======================================================= ======== ===== =========== ======== ========= ======================================== ``SystemIdentifier`` id Yes Unique identifier + ``HotWaterResetControl`` string See [#]_ No Whether there is a boiler with hot water outdoor reset control ``HeatingSeason`` element No See [#]_ Heating season ``CoolingSeason`` element No See [#]_ Cooling season ``extension/CeilingFanSetpointTempCoolingSeasonOffset`` double F >= 0 No 0 Cooling setpoint temperature offset [#]_ ======================================================= ======== ===== =========== ======== ========= ======================================== + .. [#] HotWaterResetControl choices are "seasonal" and "other"; only the "seasonal" choice will have an effect on the boiler energy use. .. [#] If HeatingSeason not provided, defaults to year-round. .. [#] If CoolingSeason not provided, defaults to year-round. .. [#] CeilingFanSetpointTempCoolingSeasonOffset should only be used if there are sufficient ceiling fans present to warrant a reduced cooling setpoint. +If boiler hot water reset control is defined, additional information is entered in ``HVACControl``. + + =========================================================== ====== ===== ============================================== ======== ======== ========================================= + Element Type Units Constraints Required Default Notes + =========================================================== ====== ===== ============================================== ======== ======== ========================================= + ``extension/HotWaterResetSetpointAtLowOutdoorTemperature`` double F No 180.0 Hot water setpoint at low outdoor air temperature + ``extension/HotWaterResetLowOutdoorTemperature`` double F No 0.0 Low outdoor air temperature + ``extension/HotWaterResetSetpointAtHighOutdoorTemperature`` double F < OutdoorResetSetpointAtHighOutdoorTemperature No 95.0 Hot water setpoint at high outdoor air temperature + ``extension/HotWaterResetHighOutdoorTemperature`` double F > OutdoorResetLowOutdoorTemperature No 68.0 High outdoor air temperature + =========================================================== ====== ===== ============================================== ======== ======== ========================================= + If a heating and/or cooling season is defined, additional information is entered in ``HVACControl/HeatingSeason`` and/or ``HVACControl/CoolingSeason``. =================== ======== ===== =========== ======== ======= =========== diff --git a/tasks.rb b/tasks.rb index c15e21e9e0..879a7f4a94 100644 --- a/tasks.rb +++ b/tasks.rb @@ -1874,7 +1874,7 @@ def set_measure_argument_values(hpxml_file, args, sch_args, orig_parent) args['heating_system_is_condensing'] = false args['heating_system_heating_efficiency'] = 0.86 elsif ['base-hvac-boiler-gas-only-outdoor-reset-control.xml'].include? hpxml_file - args['heating_system_outdoor_reset_control'] = true + args['hvac_control_hot_water_reset_control'] = HPXML::HotWaterResetControlSeasonal elsif ['base-hvac-boiler-oil-only.xml', 'base-hvac-furnace-oil-only.xml'].include? hpxml_file args['heating_system_fuel'] = HPXML::FuelTypeOil @@ -4132,10 +4132,10 @@ def apply_hpxml_modification(hpxml_file, hpxml) hpxml.hvac_distributions[0].ducts << hpxml.hvac_distributions[1].ducts[1].dup end if ['base-hvac-boiler-gas-only-outdoor-reset-control.xml'].include? hpxml_file - hpxml.heating_systems[0].boiler_reset_low_oat = 5.0 - hpxml.heating_systems[0].boiler_reset_setpoint_at_low_oat = 190.0 - hpxml.heating_systems[0].boiler_reset_high_oat = 70.0 - hpxml.heating_systems[0].boiler_reset_setpoint_at_high_oat = 100.0 + hpxml.hvac_controls[0].hot_water_reset_setpoint_at_low_oat = 190.0 + hpxml.hvac_controls[0].hot_water_reset_low_oat = 5.0 + hpxml.hvac_controls[0].hot_water_reset_setpoint_at_high_oat = 100.0 + hpxml.hvac_controls[0].hot_water_reset_high_oat = 70.0 end # ------------------ # diff --git a/workflow/sample_files/base-hvac-boiler-gas-only-outdoor-reset-control.xml b/workflow/sample_files/base-hvac-boiler-gas-only-outdoor-reset-control.xml index 0a21b2b754..c670414e9a 100644 --- a/workflow/sample_files/base-hvac-boiler-gas-only-outdoor-reset-control.xml +++ b/workflow/sample_files/base-hvac-boiler-gas-only-outdoor-reset-control.xml @@ -322,15 +322,7 @@ - - true - - 5.0 - 190.0 - 70.0 - 100.0 - - + natural gas 36000.0 @@ -345,6 +337,13 @@ 68.0 + seasonal + + 5.0 + 190.0 + 70.0 + 100.0 + From 8a53284d31c8ed7e0b720af4f8b7276d50067823 Mon Sep 17 00:00:00 2001 From: Scott Horowitz Date: Tue, 10 May 2022 17:40:09 -0600 Subject: [PATCH 7/7] Updated xmls --- BuildResidentialHPXML/measure.xml | 42 ++++++++++---------- HPXMLtoOpenStudio/measure.xml | 64 +++++++++++++++---------------- 2 files changed, 53 insertions(+), 53 deletions(-) diff --git a/BuildResidentialHPXML/measure.xml b/BuildResidentialHPXML/measure.xml index 86662c5a0b..e98e342c33 100644 --- a/BuildResidentialHPXML/measure.xml +++ b/BuildResidentialHPXML/measure.xml @@ -3,8 +3,8 @@ 3.0 build_residential_hpxml a13a8983-2b01-4930-8af2-42030b6e4233 - aff47a13-7365-4031-84dd-8341ab65b321 - 20220510T195153Z + 0c07ad74-1436-4be6-9911-09d2b867b0a5 + 20220510T233211Z 2C38F48B BuildResidentialHPXML HPXML Builder @@ -2064,24 +2064,6 @@
- - heating_system_outdoor_reset_control - Heating System: Outdoor Reset Control - Whether the heating system has outdoor reset control. Only used for a Boiler. - Boolean - false - false - - - true - true - - - false - false - - - heating_system_airflow_defect_ratio Heating System: Airflow Defect Ratio @@ -2712,6 +2694,24 @@ false false + + hvac_control_hot_water_reset_control + HVAC Control: Hot Water Reset Control + Whether the boiler has seasonal hot water outdoor reset control. + Choice + false + false + + + none + none + + + seasonal + seasonal + + + ducts_leakage_units Ducts: Leakage Units @@ -6204,7 +6204,7 @@ measure.rb rb script - 2518C3A2 + 5E619674 diff --git a/HPXMLtoOpenStudio/measure.xml b/HPXMLtoOpenStudio/measure.xml index cf640399e3..4fbe5b4d47 100644 --- a/HPXMLtoOpenStudio/measure.xml +++ b/HPXMLtoOpenStudio/measure.xml @@ -3,8 +3,8 @@ 3.0 hpxm_lto_openstudio b1543b30-9465-45ff-ba04-1d1f85e763bc - f801dbf6-226d-40c0-947c-291bb8071042 - 20220510T205809Z + 1328c2e0-a103-483a-9db7-ad0b2a999534 + 20220510T233213Z D8922A73 HPXMLtoOpenStudio HPXML to OpenStudio Translator @@ -343,17 +343,6 @@ resource 586F2FEF - - - OpenStudio - 3.3.0 - 3.3.0 - - measure.rb - rb - script - 5A10A311 - schedule_files/occupancy-smooth.csv csv @@ -432,18 +421,6 @@ resource 698F71DC - - test_validation.rb - rb - test - 7D2B7C4B - - - hpxml_schematron/HPXMLvalidator.xml - xml - resource - 8ABCD77B - test_location.rb rb @@ -522,47 +499,70 @@ test FB2576A0 + + + OpenStudio + 3.3.0 + 3.3.0 + + measure.rb + rb + script + B0B694E2 + + + test_validation.rb + rb + test + 06E5EA7F + + + hpxml_schematron/HPXMLvalidator.xml + xml + resource + 5342F520 + hpxml_schema/HPXMLBaseElements.xsd xsd resource - BEF21D0F + 0408C060 hpxml_defaults.rb rb resource - 5E59ED08 + 39064557 hpxml_schematron/EPvalidator.xml xml resource - 7FFF6E3A + 1711193A test_defaults.rb rb test - C773EC41 + 938BBB3C test_hvac.rb rb test - B93778D3 + 018C27D1 hvac.rb rb resource - 0B9F045D + 7D944725 hpxml.rb rb resource - 6B2ADB3C + 708191D5