urbanopt-cli 0.9.2 → 0.10.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/{nightly_build.yml → nightly_ci_build.yml} +6 -5
- data/CHANGELOG.md +16 -2
- data/CMakeLists.txt +7 -7
- data/Gemfile +8 -7
- data/LICENSE.md +18 -15
- data/README.md +2 -1
- data/Rakefile +2 -37
- data/example_files/Gemfile +10 -8
- data/example_files/mappers/Baseline.rb +170 -191
- data/example_files/mappers/ChilledWaterStorage.rb +8 -30
- data/example_files/mappers/ClassProject.rb +2 -27
- data/example_files/mappers/CreateBar.rb +2 -28
- data/example_files/mappers/EvCharging.rb +2 -27
- data/example_files/mappers/FlexibleHotWater.rb +2 -27
- data/example_files/mappers/Floorspace.rb +2 -27
- data/example_files/mappers/HighEfficiency.rb +2 -27
- data/example_files/mappers/HighEfficiencyCreateBar.rb +2 -27
- data/example_files/mappers/HighEfficiencyFloorspace.rb +2 -27
- data/example_files/mappers/PeakHoursMelsShedding.rb +4 -27
- data/example_files/mappers/PeakHoursThermostatAdjust.rb +4 -27
- data/example_files/mappers/ThermalStorage.rb +2 -28
- data/example_files/measures/BuildResidentialModel/measure.rb +30 -60
- data/example_files/measures/BuildResidentialModel/measure.xml +253 -84
- data/example_files/measures/BuildResidentialModel/resources/util.rb +45 -45
- data/example_files/python_deps/dependencies.json +3 -3
- data/example_files/resources/hpxml-measures/.github/pull_request_template.md +1 -1
- data/example_files/resources/hpxml-measures/.github/workflows/config.yml +28 -19
- data/example_files/resources/hpxml-measures/.gitignore +0 -997
- data/example_files/resources/hpxml-measures/.readthedocs.yml +9 -0
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/measure.rb +476 -230
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/measure.xml +244 -75
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/resources/geometry.rb +42 -15
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/build_residential_hpxml_test.rb +24 -9
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/measure.rb +11 -33
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/measure.xml +23 -50
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/resources/README.md +2 -2
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/resources/constants.rb +119 -0
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/resources/schedules.rb +67 -290
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/resources/schedules_config.md +6 -5
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/tests/build_residential_schedule_file_test.rb +78 -349
- data/example_files/resources/hpxml-measures/Changelog.md +80 -10
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/measure.rb +212 -144
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/measure.xml +164 -170
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/airflow.rb +238 -167
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/battery.rb +1 -1
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/constants.rb +12 -4
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/constructions.rb +36 -6
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data/unavailable_periods.csv +33 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/energyplus.rb +1 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/geometry.rb +9 -7
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hotwater_appliances.rb +79 -61
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hpxml.rb +387 -124
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hpxml_defaults.rb +427 -196
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hpxml_schema/HPXML.xsd +11515 -2
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hpxml_schema/README.md +1 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hpxml_schematron/EPvalidator.xml +224 -85
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hvac.rb +334 -319
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hvac_sizing.rb +572 -838
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/lighting.rb +162 -68
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/location.rb +4 -20
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/meta_measure.rb +12 -10
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/misc_loads.rb +34 -37
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/output.rb +8 -101
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/psychrometrics.rb +31 -40
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/pv.rb +1 -1
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/schedule_files/occupancy-non-stochastic.csv +8761 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/schedule_files/occupancy-stochastic-10-mins.csv +52561 -52561
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/schedule_files/occupancy-stochastic.csv +8761 -8761
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/schedules.rb +384 -155
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/unit_conversions.rb +1 -1
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/util.rb +2 -2
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/version.rb +2 -2
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/waterheater.rb +68 -90
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/weather.rb +34 -223
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/xmlhelper.rb +1 -1
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/xmlvalidator.rb +16 -4
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_airflow.rb +94 -40
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_defaults.rb +765 -302
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_enclosure.rb +119 -69
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_generator.rb +8 -8
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_hotwater_appliance.rb +1 -1
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_hvac.rb +51 -11
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_hvac_sizing.rb +196 -9
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_lighting.rb +36 -13
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_miscloads.rb +3 -3
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_pv.rb +2 -2
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_schedules.rb +571 -61
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_validation.rb +190 -81
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_water_heater.rb +11 -11
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_weather.rb +188 -50
- data/example_files/resources/hpxml-measures/README.md +3 -3
- data/example_files/resources/hpxml-measures/ReportSimulationOutput/measure.rb +659 -815
- data/example_files/resources/hpxml-measures/ReportSimulationOutput/measure.xml +301 -1112
- data/example_files/resources/hpxml-measures/ReportSimulationOutput/tests/output_report_test.rb +605 -350
- data/example_files/resources/hpxml-measures/ReportUtilityBills/measure.rb +18 -14
- data/example_files/resources/hpxml-measures/ReportUtilityBills/measure.xml +15 -15
- data/example_files/resources/hpxml-measures/ReportUtilityBills/tests/utility_bills_test.rb +13 -3
- data/example_files/resources/hpxml-measures/docs/source/usage_instructions.rst +3 -3
- data/example_files/resources/hpxml-measures/docs/source/workflow_inputs.rst +894 -596
- data/example_files/resources/hpxml-measures/docs/source/workflow_outputs.rst +127 -76
- data/example_files/resources/hpxml-measures/tasks.rb +185 -2802
- data/example_files/resources/hpxml-measures/workflow/hpxml_inputs.json +3401 -0
- data/example_files/resources/hpxml-measures/workflow/real_homes/house001.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house002.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house003.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house004.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house005.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house006.xml +1 -3
- data/example_files/resources/hpxml-measures/workflow/real_homes/house007.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house008.xml +1 -3
- data/example_files/resources/hpxml-measures/workflow/real_homes/house009.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house010.xml +1 -3
- data/example_files/resources/hpxml-measures/workflow/real_homes/house011.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house012.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house013.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house014.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house015.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house016.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house017.xml +17 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house018.xml +2 -3
- data/example_files/resources/hpxml-measures/workflow/real_homes/house019.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house020.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house021.xml +4 -5
- data/example_files/resources/hpxml-measures/workflow/real_homes/house022.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house023.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house024.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house025.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house026.xml +1 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house027.xml +1 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house028.xml +1 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house029.xml +1 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house030.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house031.xml +4 -5
- data/example_files/resources/hpxml-measures/workflow/real_homes/house032.xml +3 -3
- data/example_files/resources/hpxml-measures/workflow/real_homes/house033.xml +3 -3
- data/example_files/resources/hpxml-measures/workflow/real_homes/house034.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house035.xml +3 -3
- data/example_files/resources/hpxml-measures/workflow/real_homes/house036.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house037.xml +3 -3
- data/example_files/resources/hpxml-measures/workflow/real_homes/house038.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house039.xml +3 -3
- data/example_files/resources/hpxml-measures/workflow/real_homes/house040.xml +3 -4
- data/example_files/resources/hpxml-measures/workflow/real_homes/house041.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house042.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house043.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house044.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house045.xml +0 -1
- data/example_files/resources/hpxml-measures/workflow/real_homes/house046.xml +1 -0
- data/example_files/resources/hpxml-measures/workflow/real_homes/house047.xml +1 -0
- data/example_files/resources/hpxml-measures/workflow/run_simulation.rb +12 -8
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-coal.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-dehumidifier-ief-portable.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-dehumidifier-ief-whole-home.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-dehumidifier-multiple.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-dehumidifier.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-gas.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-modified.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-none.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-oil-location-miami-fl.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-oil.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-propane-location-portland-or.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-propane.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-wood.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-cathedral.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-conditioned.xml +9 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-flat.xml +9 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-radiant-barrier.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-unvented-insulated-roof.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-vented.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-battery-scheduled.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-battery.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-bldgtype-single-family-attached-2stories.xml → base-bldgtype-attached-2stories.xml} +610 -639
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-bldgtype-single-family-attached-atticroof-cathedral.xml → base-bldgtype-attached-atticroof-cathedral.xml} +558 -587
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-attached-infil-compartmentalization-test.xml +611 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-bldgtype-single-family-attached.xml → base-bldgtype-attached.xml} +610 -639
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-adjacent-to-multifamily-buffer-space.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-adjacent-to-multiple.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-adjacent-to-non-freezing-space.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-adjacent-to-other-heated-space.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-adjacent-to-other-housing-unit.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-infil-compartmentalization-test.xml +462 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-bldgtype-multifamily-calctype-operational.xml → base-bldgtype-multifamily-residents-1.xml} +453 -480
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-chiller-baseboard.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-chiller-fan-coil-ducted.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-chiller-fan-coil.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-chiller-water-loop-heat-pump.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-cooling-tower-water-loop-heat-pump.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-only-baseboard.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-only-fan-coil-ducted.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-only-fan-coil-eae.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-only-fan-coil.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-only-water-loop-heat-pump.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-chiller-only-baseboard.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-chiller-only-fan-coil-ducted.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-chiller-only-fan-coil.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-chiller-only-water-loop-heat-pump.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-cooling-tower-only-water-loop-heat-pump.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-generator.xml +11 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-ground-loop-ground-to-air-heat-pump.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-laundry-room-multiple-water-heaters.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-laundry-room.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-mechvent-multiple.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-mechvent-preconditioning.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-mechvent.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-pv.xml +15 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-water-heater-recirc.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-water-heater.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily.xml +10 -39
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-combi-tankless-outside.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-combi-tankless.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater-2-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater-gshp.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater-hpwh.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater-tankless.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater-var-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-dwhr.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect-detailed-setpoints.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect-dse.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect-outside.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect-standbyloss.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect-with-solar-fraction.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-jacket-electric.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-jacket-gas.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-jacket-hpwh.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-jacket-indirect.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-low-flow-fixtures.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-multiple.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-none.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-recirc-demand.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-recirc-manual.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-recirc-nocontrol.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-recirc-temperature.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-recirc-timer.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-direct-evacuated-tube.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-direct-flat-plate.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-direct-ics.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-fraction.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-indirect-flat-plate.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-thermosyphon-flat-plate.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-coal.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-detailed-setpoints.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-elec-uef.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-gas-outside.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-gas-uef-fhr.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-gas-uef.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-gas.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump-detailed-schedules.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump-operating-mode-heat-pump-only.xml +11 -43
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump-outside.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump-uef.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump-with-solar-fraction.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump-with-solar.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-model-type-stratified-detailed-occupancy-stochastic.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-model-type-stratified.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-oil.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-wood.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-detailed-setpoints.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-electric-outside.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-electric-uef.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-electric.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-gas-uef.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-gas-with-solar-fraction.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-gas-with-solar.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-gas.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-propane.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-2stories-garage.xml +19 -25
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-2stories.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-beds-1.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-beds-2.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-beds-4.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-beds-5.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-ceilingtypes.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-floortypes.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-garage.xml +18 -24
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-ach-house-pressure.xml +11 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-cfm-house-pressure.xml +11 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-cfm50.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-ela.xml +549 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-flue.xml +13 -43
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-natural-ach.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-natural-cfm.xml +552 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-orientations.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-overhangs.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-rooftypes.xml +17 -47
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-skylights-physical-properties.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-skylights-shading.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-skylights-storms.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-skylights.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-split-level.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-thermal-mass.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-walltypes.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-windows-natural-ventilation-availability.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-windows-none.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-windows-physical-properties.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-windows-shading-seasons.xml +559 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-windows-shading.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-windows-storms.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-ambient.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-basement-garage.xml +19 -25
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-complex.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-conditioned-basement-slab-insulation.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-conditioned-basement-wall-insulation.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-conditioned-crawlspace.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-multiple.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-slab.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-unconditioned-basement-above-grade.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-unconditioned-basement-assembly-r.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-unconditioned-basement-wall-insulation.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-unconditioned-basement.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-unvented-crawlspace.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-vented-crawlspace.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-walkout-basement.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-1-speed-autosized-backup.xml +557 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-1-speed-cooling-only.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-dual-fuel-air-to-air-heat-pump-1-speed-electric.xml → base-hvac-air-to-air-heat-pump-1-speed-heating-capacity-17f.xml} +552 -583
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-1-speed-heating-only.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-air-to-air-heat-pump-1-speed-backup-lockout-temperature.xml → base-hvac-air-to-air-heat-pump-1-speed-lockout-temperatures.xml} +562 -586
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-1-speed-seer2-hspf2.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-1-speed.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-2-speed.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-var-speed-backup-boiler-hvac-seasons.xml +587 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-var-speed-backup-boiler-switchover-temperature.xml +17 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-var-speed-backup-boiler.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-var-speed-backup-furnace.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-var-speed.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-1-speed-cooling-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-1-speed-heating-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-1-speed-sizing-methodology-acca.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-1-speed-sizing-methodology-hers.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-1-speed-sizing-methodology-maxload-miami-fl.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-1-speed-sizing-methodology-maxload.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-2-speed-sizing-methodology-acca.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-2-speed-sizing-methodology-hers.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-2-speed-sizing-methodology-maxload.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-var-speed-backup-boiler.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-var-speed-backup-furnace.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-acca.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-hers.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-maxload.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-boiler-elec-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-boiler-gas-central-ac-1-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-boiler-gas-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-central-ac-only-1-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-central-ac-only-2-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-central-ac-only-var-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-central-ac-plus-air-to-air-heat-pump-heating.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-dual-fuel-air-to-air-heat-pump-1-speed-sizing-methodology-acca.xml +11 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-dual-fuel-air-to-air-heat-pump-1-speed-sizing-methodology-hers.xml +11 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-dual-fuel-air-to-air-heat-pump-1-speed-sizing-methodology-maxload.xml +11 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-dual-fuel-mini-split-heat-pump-ducted-backup-hardsized.xml +553 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-dual-fuel-mini-split-heat-pump-ducted.xml +11 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-elec-resistance-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-evap-cooler-furnace-gas.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-floor-furnace-propane-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-furnace-elec-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-furnace-gas-central-ac-2-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-furnace-gas-central-ac-var-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-furnace-gas-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-furnace-gas-room-ac.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ground-to-air-heat-pump-cooling-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ground-to-air-heat-pump-heating-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ground-to-air-heat-pump-sizing-methodology-acca.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ground-to-air-heat-pump-sizing-methodology-hers.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ground-to-air-heat-pump-sizing-methodology-maxload.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-air-conditioner-only-ducted.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ducted-cooling-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ducted-heating-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ducted-sizing-methodology-acca.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ducted-sizing-methodology-hers.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ducted-sizing-methodology-maxload.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ductless-backup-baseboard.xml +519 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ductless-backup-stove.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ptac-with-heating.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ptac.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-pthp-sizing-methodology-acca.xml +16 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-pthp-sizing-methodology-hers.xml +16 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-pthp-sizing-methodology-maxload.xml +16 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-room-ac-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-room-ac-with-heating.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-room-ac-with-reverse-cycle-sizing-methodology-acca.xml +16 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-room-ac-with-reverse-cycle-sizing-methodology-hers.xml +16 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-room-ac-with-reverse-cycle-sizing-methodology-maxload.xml +16 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-sizing-controls.xml +566 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-stove-oil-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-wall-furnace-elec-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-coal-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-elec-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-gas-central-ac-1-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-gas-only-pilot.xml +513 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-gas-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-oil-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-propane-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-wood-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-central-ac-only-1-speed-seer2.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-central-ac-only-1-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-central-ac-only-2-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-central-ac-only-var-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-central-ac-plus-air-to-air-heat-pump-heating.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-crankcase-heater-40w.xml +556 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dse.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dual-fuel-air-to-air-heat-pump-1-speed-lockout-temperatures.xml +560 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dual-fuel-air-to-air-heat-pump-1-speed.xml +17 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dual-fuel-air-to-air-heat-pump-2-speed.xml +17 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dual-fuel-air-to-air-heat-pump-var-speed.xml +17 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dual-fuel-mini-split-heat-pump-ducted.xml +17 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ducts-area-fractions.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ducts-area-multipliers.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ducts-buried.xml +555 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ducts-effective-rvalue.xml +553 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ducts-leakage-cfm50.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ducts-leakage-percent.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-elec-resistance-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-evap-cooler-furnace-gas.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-evap-cooler-only-ducted.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-evap-cooler-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-fireplace-wood-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-fixed-heater-gas-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-floor-furnace-propane-only-pilot-light.xml +506 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-floor-furnace-propane-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-coal-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-elec-central-ac-1-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-elec-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-gas-central-ac-2-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-gas-central-ac-var-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-gas-only-detailed-setpoints.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-gas-only-pilot.xml +542 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-gas-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-gas-room-ac.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-oil-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-propane-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-wood-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-x3-dse.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ground-to-air-heat-pump-cooling-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ground-to-air-heat-pump-heating-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ground-to-air-heat-pump.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-install-quality-air-to-air-heat-pump-1-speed.xml +14 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-install-quality-air-to-air-heat-pump-2-speed.xml +14 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-install-quality-air-to-air-heat-pump-var-speed.xml +14 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-install-quality-furnace-gas-central-ac-1-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-install-quality-furnace-gas-central-ac-2-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-install-quality-furnace-gas-central-ac-var-speed.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-install-quality-furnace-gas-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-install-quality-ground-to-air-heat-pump.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-install-quality-mini-split-air-conditioner-only-ducted.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-install-quality-mini-split-heat-pump-ducted.xml +14 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-air-conditioner-only-ducted.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-air-conditioner-only-ductless.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ducted-cooling-only.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ducted-heating-only.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ducted.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ductless-backup-baseboard.xml +525 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ductless-backup-furnace.xml +564 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ductless-backup-stove.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ductless-heating-capacity-17f.xml +506 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ductless.xml +16 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-multiple.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-none.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-portable-heater-gas-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ptac-with-heating-electricity.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ptac-with-heating-natural-gas.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ptac.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-pthp-heating-capacity-17f.xml +513 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-pthp.xml +16 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-room-ac-only-33percent.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-room-ac-only-ceer.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-room-ac-only-detailed-setpoints.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-room-ac-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-room-ac-with-heating.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-room-ac-with-reverse-cycle.xml +16 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-seasons.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-setpoints-daily-schedules.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-setpoints-daily-setbacks.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-setpoints.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-stove-oil-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-stove-wood-pellets-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-undersized-allow-increased-fixed-capacities.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-undersized.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-wall-furnace-elec-only.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-lighting-ceiling-fans.xml +11 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-lighting-holiday.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-lighting-kwh-per-year.xml +529 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-lighting-mixed.xml +537 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-lighting-none-ceiling-fans.xml +516 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-lighting-none.xml +1 -7
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-AMY-2012.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-baltimore-md.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-capetown-zaf.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-dallas-tx.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-duluth-mn.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-helena-mt.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-honolulu-hi.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-miami-fl.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-phoenix-az.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-portland-or.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-balanced.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-bath-kitchen-fans.xml +12 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-cfis-airflow-fraction-zero.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-cfis-dse.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-cfis-evap-cooler-only-ducted.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-cfis-supplemental-fan-exhaust.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-cfis-supplemental-fan-supply.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-cfis.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-erv-atre-asre.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-erv.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-exhaust-rated-flow-rate.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-exhaust.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-hrv-asre.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-hrv.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-multiple.xml +14 -44
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-supply.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-whole-house-fan.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-additional-properties.xml +10 -38
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-bills-none.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-bills-pv-detailed-only.xml +16 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-bills-pv-mixed.xml +16 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-bills-pv.xml +16 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-bills.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-defaults.xml +14 -37
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-emissions.xml +16 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-generators-battery-scheduled.xml +12 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-generators-battery.xml +12 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-generators.xml +12 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-ground-conductivity.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-loads-large-uncommon.xml +10 -38
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-loads-large-uncommon2.xml +10 -38
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-loads-none.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-neighbor-shading-bldgtype-multifamily.xml +509 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-neighbor-shading.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-shielding-of-home.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-usage-multiplier.xml +10 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-multiple-buildings.xml +30 -138
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv-battery-ah.xml +16 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv-battery-garage.xml +24 -26
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv-battery-round-trip-efficiency.xml +16 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv-battery-scheduled.xml +16 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv-battery.xml +16 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv-generators-battery-scheduled.xml +18 -44
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv-generators-battery.xml +18 -44
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv-generators.xml +18 -44
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv.xml +16 -42
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-residents-0-runperiod-1-month.xml +560 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-residents-0.xml +556 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-calctype-operational-misc-loads-large-uncommon.xml → base-residents-1-misc-loads-large-uncommon.xml} +616 -644
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-calctype-operational-misc-loads-large-uncommon2.xml → base-residents-1-misc-loads-large-uncommon2.xml} +616 -644
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-calctype-operational.xml → base-residents-1.xml} +547 -575
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-calctype-operational-misc-defaults.xml → base-residents-5.xml} +515 -539
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-detailed-all-10-mins.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-detailed-occupancy-stochastic-10-mins.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-detailed-occupancy-stochastic-power-outage.xml +565 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-schedules-detailed-occupancy-smooth.xml → base-schedules-detailed-occupancy-stochastic-vacancy-year-round.xml} +563 -583
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-detailed-occupancy-stochastic-vacancy.xml +21 -41
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-detailed-occupancy-stochastic.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-detailed-setpoints-daily-schedules.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-detailed-setpoints-daily-setbacks.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-detailed-setpoints.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-simple-power-outage-natvent-available.xml +565 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-simple-power-outage-natvent-unavailable.xml +565 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-simple-power-outage.xml +620 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-simple-vacancy-year-round.xml +619 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-simple-vacancy.xml +619 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-simple.xml +10 -38
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-calendar-year-custom.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-daylight-saving-custom.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-daylight-saving-disabled.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-runperiod-1-month.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-temperature-capacitance-multiplier.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-timestep-10-mins-occupancy-stochastic-10-mins.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-timestep-10-mins-occupancy-stochastic-60-mins.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-timestep-10-mins.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-timestep-30-mins.xml +10 -40
- data/example_files/resources/hpxml-measures/workflow/sample_files/base.xml +10 -37
- data/example_files/resources/hpxml-measures/workflow/template-build-and-run-hpxml-with-stochastic-occupancy.osw +16 -4
- data/example_files/resources/hpxml-measures/workflow/template-run-hpxml-with-stochastic-occupancy-subset.osw +16 -3
- data/example_files/resources/hpxml-measures/workflow/template-run-hpxml-with-stochastic-occupancy.osw +16 -3
- data/example_files/resources/hpxml-measures/workflow/template-run-hpxml.osw +16 -2
- data/example_files/resources/hpxml-measures/workflow/tests/ACCA_Examples/Long_Residence.xml +386 -0
- data/example_files/resources/hpxml-measures/workflow/tests/ACCA_Examples/Vatilo_Residence.xml +381 -0
- data/example_files/resources/hpxml-measures/workflow/tests/ACCA_Examples/Victor_Residence.xml +370 -0
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L100AC.xml +2 -2
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L100AL.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L110AC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L110AL.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L120AC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L120AL.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L130AC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L130AL.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L140AC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L140AL.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L150AC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L150AL.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L155AC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L155AL.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L160AC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L160AL.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L170AC.xml +2 -12
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L170AL.xml +2 -12
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L200AC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L200AL.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L202AC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L202AL.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L302XC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L304XC.xml +2 -5
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L322XC.xml +6 -9
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L324XC.xml +6 -9
- data/example_files/resources/hpxml-measures/workflow/tests/base_results/results.csv +475 -444
- data/example_files/resources/hpxml-measures/workflow/tests/base_results/results_bills.csv +475 -444
- data/example_files/resources/hpxml-measures/workflow/tests/hpxml_translator_test.rb +177 -112
- data/example_files/resources/meta_measure.rb +2 -27
- data/example_files/xml_building/17/README.md +3 -3
- data/lib/uo_cli/version.rb +3 -38
- data/lib/uo_cli.rb +3 -38
- data/uo_cli.gemspec +6 -7
- metadata +70 -51
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/resources/schedules_config.json +0 -388
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hpxml_schema/HPXMLBaseElements.xsd +0 -6136
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hpxml_schema/HPXMLDataTypes.xsd +0 -4846
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/schedule_files/occupancy-smooth.csv +0 -8761
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/schedule_files/occupancy-stochastic-vacancy.csv +0 -8761
- data/example_files/resources/hpxml-measures/weather/USA_AZ_Phoenix-Sky.Harbor.Intl.AP.722780_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_CO_Colorado.Springs-Peterson.Field.724660_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_CO_Denver.Intl.AP.725650_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_DE_Wilmington-New.Castle.County.AP.724089_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_FL_Miami.Intl.AP.722020_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_HI_Honolulu.Intl.AP.911820_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_MD_Baltimore-Washington.Intl.AP.724060_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_MN_Duluth.Intl.AP.727450_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_MT_Helena.Rgnl.AP.727720_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_NC_Charlotte-Douglas.Intl.AP.723140_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_NJ_Cape.May.County.AP.745966_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_NV_Las.Vegas-McCarran.Intl.AP.723860_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_OR_Portland.Intl.AP.726980_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/USA_TX_Dallas-Fort.Worth.Intl.AP.722590_TMY3-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/US_CO_Boulder_AMY_2012-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/weather/ZAF_Cape.Town.688160_IWEC-cache.csv +0 -35
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-split-surfaces.xml +0 -2508
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-split-surfaces2.xml +0 -2508
@@ -8,544 +8,119 @@ end
|
|
8
8
|
|
9
9
|
def create_hpxmls
|
10
10
|
this_dir = File.dirname(__FILE__)
|
11
|
-
|
11
|
+
workflow_dir = File.join(this_dir, 'workflow')
|
12
|
+
hpxml_inputs_tsv_path = File.join(workflow_dir, 'hpxml_inputs.json')
|
12
13
|
|
13
|
-
|
14
|
-
|
15
|
-
|
14
|
+
require 'json'
|
15
|
+
json_inputs = JSON.parse(File.read(hpxml_inputs_tsv_path))
|
16
|
+
abs_hpxml_files = []
|
17
|
+
dirs = json_inputs.keys.map { |file_path| File.dirname(file_path) }.uniq
|
16
18
|
|
17
|
-
|
18
|
-
|
19
|
-
'ASHRAE_Standard_140/L110AC.xml' => 'ASHRAE_Standard_140/L100AC.xml',
|
20
|
-
'ASHRAE_Standard_140/L110AL.xml' => 'ASHRAE_Standard_140/L100AL.xml',
|
21
|
-
'ASHRAE_Standard_140/L120AC.xml' => 'ASHRAE_Standard_140/L100AC.xml',
|
22
|
-
'ASHRAE_Standard_140/L120AL.xml' => 'ASHRAE_Standard_140/L100AL.xml',
|
23
|
-
'ASHRAE_Standard_140/L130AC.xml' => 'ASHRAE_Standard_140/L100AC.xml',
|
24
|
-
'ASHRAE_Standard_140/L130AL.xml' => 'ASHRAE_Standard_140/L100AL.xml',
|
25
|
-
'ASHRAE_Standard_140/L140AC.xml' => 'ASHRAE_Standard_140/L100AC.xml',
|
26
|
-
'ASHRAE_Standard_140/L140AL.xml' => 'ASHRAE_Standard_140/L100AL.xml',
|
27
|
-
'ASHRAE_Standard_140/L150AC.xml' => 'ASHRAE_Standard_140/L100AC.xml',
|
28
|
-
'ASHRAE_Standard_140/L150AL.xml' => 'ASHRAE_Standard_140/L100AL.xml',
|
29
|
-
'ASHRAE_Standard_140/L160AC.xml' => 'ASHRAE_Standard_140/L100AC.xml',
|
30
|
-
'ASHRAE_Standard_140/L160AL.xml' => 'ASHRAE_Standard_140/L100AL.xml',
|
31
|
-
'ASHRAE_Standard_140/L170AC.xml' => 'ASHRAE_Standard_140/L100AC.xml',
|
32
|
-
'ASHRAE_Standard_140/L170AL.xml' => 'ASHRAE_Standard_140/L100AL.xml',
|
33
|
-
'ASHRAE_Standard_140/L200AC.xml' => 'ASHRAE_Standard_140/L100AC.xml',
|
34
|
-
'ASHRAE_Standard_140/L200AL.xml' => 'ASHRAE_Standard_140/L100AL.xml',
|
35
|
-
'ASHRAE_Standard_140/L302XC.xml' => 'ASHRAE_Standard_140/L100AC.xml',
|
36
|
-
'ASHRAE_Standard_140/L322XC.xml' => 'ASHRAE_Standard_140/L100AC.xml',
|
37
|
-
'ASHRAE_Standard_140/L155AC.xml' => 'ASHRAE_Standard_140/L150AC.xml',
|
38
|
-
'ASHRAE_Standard_140/L155AL.xml' => 'ASHRAE_Standard_140/L150AL.xml',
|
39
|
-
'ASHRAE_Standard_140/L202AC.xml' => 'ASHRAE_Standard_140/L200AC.xml',
|
40
|
-
'ASHRAE_Standard_140/L202AL.xml' => 'ASHRAE_Standard_140/L200AL.xml',
|
41
|
-
'ASHRAE_Standard_140/L304XC.xml' => 'ASHRAE_Standard_140/L302XC.xml',
|
42
|
-
'ASHRAE_Standard_140/L324XC.xml' => 'ASHRAE_Standard_140/L322XC.xml',
|
19
|
+
schema_path = File.join(File.dirname(__FILE__), 'HPXMLtoOpenStudio', 'resources', 'hpxml_schema', 'HPXML.xsd')
|
20
|
+
schema_validator = XMLValidator.get_schema_validator(schema_path)
|
43
21
|
|
44
|
-
|
45
|
-
'base-appliances-dehumidifier.xml' => 'base-location-dallas-tx.xml',
|
46
|
-
'base-appliances-dehumidifier-ief-portable.xml' => 'base-appliances-dehumidifier.xml',
|
47
|
-
'base-appliances-dehumidifier-ief-whole-home.xml' => 'base-appliances-dehumidifier-ief-portable.xml',
|
48
|
-
'base-appliances-dehumidifier-multiple.xml' => 'base-appliances-dehumidifier.xml',
|
49
|
-
'base-appliances-gas.xml' => 'base.xml',
|
50
|
-
'base-appliances-modified.xml' => 'base.xml',
|
51
|
-
'base-appliances-none.xml' => 'base.xml',
|
52
|
-
'base-appliances-oil.xml' => 'base.xml',
|
53
|
-
'base-appliances-oil-location-miami-fl.xml' => 'base-appliances-oil.xml',
|
54
|
-
'base-appliances-propane.xml' => 'base.xml',
|
55
|
-
'base-appliances-propane-location-portland-or.xml' => 'base-appliances-propane.xml',
|
56
|
-
'base-appliances-wood.xml' => 'base.xml',
|
57
|
-
'base-atticroof-cathedral.xml' => 'base.xml',
|
58
|
-
'base-atticroof-conditioned.xml' => 'base.xml',
|
59
|
-
'base-atticroof-flat.xml' => 'base.xml',
|
60
|
-
'base-atticroof-radiant-barrier.xml' => 'base-location-dallas-tx.xml',
|
61
|
-
'base-atticroof-unvented-insulated-roof.xml' => 'base.xml',
|
62
|
-
'base-atticroof-vented.xml' => 'base.xml',
|
63
|
-
'base-battery.xml' => 'base.xml',
|
64
|
-
'base-battery-scheduled.xml' => 'base-battery.xml',
|
65
|
-
'base-bldgtype-multifamily.xml' => 'base.xml',
|
66
|
-
'base-bldgtype-multifamily-adjacent-to-multifamily-buffer-space.xml' => 'base-bldgtype-multifamily.xml',
|
67
|
-
'base-bldgtype-multifamily-adjacent-to-multiple.xml' => 'base-bldgtype-multifamily.xml',
|
68
|
-
'base-bldgtype-multifamily-adjacent-to-non-freezing-space.xml' => 'base-bldgtype-multifamily.xml',
|
69
|
-
'base-bldgtype-multifamily-adjacent-to-other-heated-space.xml' => 'base-bldgtype-multifamily.xml',
|
70
|
-
'base-bldgtype-multifamily-adjacent-to-other-housing-unit.xml' => 'base-bldgtype-multifamily.xml',
|
71
|
-
'base-bldgtype-multifamily-calctype-operational.xml' => 'base-bldgtype-multifamily.xml',
|
72
|
-
'base-bldgtype-multifamily-shared-boiler-chiller-baseboard.xml' => 'base-bldgtype-multifamily.xml',
|
73
|
-
'base-bldgtype-multifamily-shared-boiler-chiller-fan-coil.xml' => 'base-bldgtype-multifamily-shared-boiler-chiller-baseboard.xml',
|
74
|
-
'base-bldgtype-multifamily-shared-boiler-chiller-fan-coil-ducted.xml' => 'base-bldgtype-multifamily-shared-boiler-chiller-fan-coil.xml',
|
75
|
-
'base-bldgtype-multifamily-shared-boiler-chiller-water-loop-heat-pump.xml' => 'base-bldgtype-multifamily-shared-boiler-chiller-baseboard.xml',
|
76
|
-
'base-bldgtype-multifamily-shared-boiler-cooling-tower-water-loop-heat-pump.xml' => 'base-bldgtype-multifamily-shared-boiler-chiller-water-loop-heat-pump.xml',
|
77
|
-
'base-bldgtype-multifamily-shared-boiler-only-baseboard.xml' => 'base-bldgtype-multifamily.xml',
|
78
|
-
'base-bldgtype-multifamily-shared-boiler-only-fan-coil.xml' => 'base-bldgtype-multifamily-shared-boiler-only-baseboard.xml',
|
79
|
-
'base-bldgtype-multifamily-shared-boiler-only-fan-coil-ducted.xml' => 'base-bldgtype-multifamily-shared-boiler-only-fan-coil.xml',
|
80
|
-
'base-bldgtype-multifamily-shared-boiler-only-fan-coil-eae.xml' => 'base-bldgtype-multifamily-shared-boiler-only-fan-coil.xml',
|
81
|
-
'base-bldgtype-multifamily-shared-boiler-only-water-loop-heat-pump.xml' => 'base-bldgtype-multifamily-shared-boiler-only-baseboard.xml',
|
82
|
-
'base-bldgtype-multifamily-shared-chiller-only-baseboard.xml' => 'base-bldgtype-multifamily.xml',
|
83
|
-
'base-bldgtype-multifamily-shared-chiller-only-fan-coil.xml' => 'base-bldgtype-multifamily-shared-chiller-only-baseboard.xml',
|
84
|
-
'base-bldgtype-multifamily-shared-chiller-only-fan-coil-ducted.xml' => 'base-bldgtype-multifamily-shared-chiller-only-fan-coil.xml',
|
85
|
-
'base-bldgtype-multifamily-shared-chiller-only-water-loop-heat-pump.xml' => 'base-bldgtype-multifamily-shared-chiller-only-baseboard.xml',
|
86
|
-
'base-bldgtype-multifamily-shared-cooling-tower-only-water-loop-heat-pump.xml' => 'base-bldgtype-multifamily-shared-chiller-only-water-loop-heat-pump.xml',
|
87
|
-
'base-bldgtype-multifamily-shared-generator.xml' => 'base-bldgtype-multifamily.xml',
|
88
|
-
'base-bldgtype-multifamily-shared-ground-loop-ground-to-air-heat-pump.xml' => 'base-bldgtype-multifamily.xml',
|
89
|
-
'base-bldgtype-multifamily-shared-laundry-room.xml' => 'base-bldgtype-multifamily.xml',
|
90
|
-
'base-bldgtype-multifamily-shared-laundry-room-multiple-water-heaters.xml' => 'base-bldgtype-multifamily-shared-laundry-room.xml',
|
91
|
-
'base-bldgtype-multifamily-shared-mechvent.xml' => 'base-bldgtype-multifamily.xml',
|
92
|
-
'base-bldgtype-multifamily-shared-mechvent-multiple.xml' => 'base-bldgtype-multifamily.xml',
|
93
|
-
'base-bldgtype-multifamily-shared-mechvent-preconditioning.xml' => 'base-bldgtype-multifamily-shared-mechvent.xml',
|
94
|
-
'base-bldgtype-multifamily-shared-pv.xml' => 'base-bldgtype-multifamily.xml',
|
95
|
-
'base-bldgtype-multifamily-shared-water-heater.xml' => 'base-bldgtype-multifamily.xml',
|
96
|
-
'base-bldgtype-multifamily-shared-water-heater-recirc.xml' => 'base-bldgtype-multifamily-shared-water-heater.xml',
|
97
|
-
'base-bldgtype-single-family-attached.xml' => 'base.xml',
|
98
|
-
'base-bldgtype-single-family-attached-2stories.xml' => 'base-bldgtype-single-family-attached.xml',
|
99
|
-
'base-bldgtype-single-family-attached-atticroof-cathedral.xml' => 'base-bldgtype-single-family-attached-2stories.xml',
|
100
|
-
'base-calctype-operational.xml' => 'base.xml',
|
101
|
-
'base-calctype-operational-misc-defaults.xml' => 'base-misc-defaults.xml',
|
102
|
-
'base-calctype-operational-misc-loads-large-uncommon.xml' => 'base-misc-loads-large-uncommon.xml',
|
103
|
-
'base-calctype-operational-misc-loads-large-uncommon2.xml' => 'base-misc-loads-large-uncommon2.xml',
|
104
|
-
'base-dhw-combi-tankless.xml' => 'base-dhw-indirect.xml',
|
105
|
-
'base-dhw-combi-tankless-outside.xml' => 'base-dhw-combi-tankless.xml',
|
106
|
-
'base-dhw-desuperheater.xml' => 'base-hvac-central-ac-only-1-speed.xml',
|
107
|
-
'base-dhw-desuperheater-2-speed.xml' => 'base-hvac-central-ac-only-2-speed.xml',
|
108
|
-
'base-dhw-desuperheater-gshp.xml' => 'base-hvac-ground-to-air-heat-pump.xml',
|
109
|
-
'base-dhw-desuperheater-hpwh.xml' => 'base-dhw-tank-heat-pump.xml',
|
110
|
-
'base-dhw-desuperheater-tankless.xml' => 'base-hvac-central-ac-only-1-speed.xml',
|
111
|
-
'base-dhw-desuperheater-var-speed.xml' => 'base-hvac-central-ac-only-var-speed.xml',
|
112
|
-
'base-dhw-dwhr.xml' => 'base.xml',
|
113
|
-
'base-dhw-indirect.xml' => 'base-hvac-boiler-gas-only.xml',
|
114
|
-
'base-dhw-indirect-detailed-setpoints.xml' => 'base-dhw-indirect.xml',
|
115
|
-
'base-dhw-indirect-dse.xml' => 'base-dhw-indirect.xml',
|
116
|
-
'base-dhw-indirect-outside.xml' => 'base-dhw-indirect.xml',
|
117
|
-
'base-dhw-indirect-standbyloss.xml' => 'base-dhw-indirect.xml',
|
118
|
-
'base-dhw-indirect-with-solar-fraction.xml' => 'base-dhw-indirect.xml',
|
119
|
-
'base-dhw-jacket-electric.xml' => 'base.xml',
|
120
|
-
'base-dhw-jacket-gas.xml' => 'base-dhw-tank-gas.xml',
|
121
|
-
'base-dhw-jacket-hpwh.xml' => 'base-dhw-tank-heat-pump.xml',
|
122
|
-
'base-dhw-jacket-indirect.xml' => 'base-dhw-indirect.xml',
|
123
|
-
'base-dhw-low-flow-fixtures.xml' => 'base.xml',
|
124
|
-
'base-dhw-multiple.xml' => 'base-hvac-boiler-gas-only.xml',
|
125
|
-
'base-dhw-none.xml' => 'base.xml',
|
126
|
-
'base-dhw-recirc-demand.xml' => 'base.xml',
|
127
|
-
'base-dhw-recirc-manual.xml' => 'base.xml',
|
128
|
-
'base-dhw-recirc-nocontrol.xml' => 'base.xml',
|
129
|
-
'base-dhw-recirc-temperature.xml' => 'base.xml',
|
130
|
-
'base-dhw-recirc-timer.xml' => 'base.xml',
|
131
|
-
'base-dhw-solar-direct-evacuated-tube.xml' => 'base.xml',
|
132
|
-
'base-dhw-solar-direct-flat-plate.xml' => 'base-dhw-solar-indirect-flat-plate.xml',
|
133
|
-
'base-dhw-solar-direct-ics.xml' => 'base-dhw-solar-indirect-flat-plate.xml',
|
134
|
-
'base-dhw-solar-fraction.xml' => 'base.xml',
|
135
|
-
'base-dhw-solar-indirect-flat-plate.xml' => 'base.xml',
|
136
|
-
'base-dhw-solar-thermosyphon-flat-plate.xml' => 'base-dhw-solar-indirect-flat-plate.xml',
|
137
|
-
'base-dhw-tank-coal.xml' => 'base-dhw-tank-gas.xml',
|
138
|
-
'base-dhw-tank-detailed-setpoints.xml' => 'base.xml',
|
139
|
-
'base-dhw-tank-elec-uef.xml' => 'base.xml',
|
140
|
-
'base-dhw-tank-gas.xml' => 'base.xml',
|
141
|
-
'base-dhw-tank-gas-uef.xml' => 'base-dhw-tank-gas.xml',
|
142
|
-
'base-dhw-tank-gas-uef-fhr.xml' => 'base-dhw-tank-gas-uef.xml',
|
143
|
-
'base-dhw-tank-gas-outside.xml' => 'base-dhw-tank-gas.xml',
|
144
|
-
'base-dhw-tank-heat-pump.xml' => 'base.xml',
|
145
|
-
'base-dhw-tank-heat-pump-outside.xml' => 'base-dhw-tank-heat-pump.xml',
|
146
|
-
'base-dhw-tank-heat-pump-uef.xml' => 'base-dhw-tank-heat-pump.xml',
|
147
|
-
'base-dhw-tank-heat-pump-with-solar.xml' => 'base-dhw-tank-heat-pump.xml',
|
148
|
-
'base-dhw-tank-heat-pump-with-solar-fraction.xml' => 'base-dhw-tank-heat-pump.xml',
|
149
|
-
'base-dhw-tank-heat-pump-operating-mode-heat-pump-only.xml' => 'base-dhw-tank-heat-pump-uef.xml',
|
150
|
-
'base-dhw-tank-heat-pump-detailed-schedules.xml' => 'base-dhw-tank-heat-pump-uef.xml',
|
151
|
-
'base-dhw-tank-model-type-stratified.xml' => 'base.xml',
|
152
|
-
'base-dhw-tank-model-type-stratified-detailed-occupancy-stochastic.xml' => 'base-dhw-tank-model-type-stratified.xml',
|
153
|
-
'base-dhw-tank-oil.xml' => 'base-dhw-tank-gas.xml',
|
154
|
-
'base-dhw-tank-wood.xml' => 'base-dhw-tank-gas.xml',
|
155
|
-
'base-dhw-tankless-electric.xml' => 'base.xml',
|
156
|
-
'base-dhw-tankless-electric-outside.xml' => 'base-dhw-tankless-electric.xml',
|
157
|
-
'base-dhw-tankless-electric-uef.xml' => 'base-dhw-tankless-electric.xml',
|
158
|
-
'base-dhw-tankless-gas.xml' => 'base.xml',
|
159
|
-
'base-dhw-tankless-gas-uef.xml' => 'base-dhw-tankless-gas.xml',
|
160
|
-
'base-dhw-tankless-gas-with-solar.xml' => 'base-dhw-tankless-gas.xml',
|
161
|
-
'base-dhw-tankless-gas-with-solar-fraction.xml' => 'base-dhw-tankless-gas.xml',
|
162
|
-
'base-dhw-tankless-propane.xml' => 'base-dhw-tankless-gas.xml',
|
163
|
-
'base-dhw-tankless-detailed-setpoints.xml' => 'base-dhw-tankless-gas.xml',
|
164
|
-
'base-enclosure-2stories.xml' => 'base.xml',
|
165
|
-
'base-enclosure-2stories-garage.xml' => 'base-enclosure-2stories.xml',
|
166
|
-
'base-enclosure-beds-1.xml' => 'base.xml',
|
167
|
-
'base-enclosure-beds-2.xml' => 'base.xml',
|
168
|
-
'base-enclosure-beds-4.xml' => 'base.xml',
|
169
|
-
'base-enclosure-beds-5.xml' => 'base.xml',
|
170
|
-
'base-enclosure-ceilingtypes.xml' => 'base.xml',
|
171
|
-
'base-enclosure-floortypes.xml' => 'base-foundation-ambient.xml',
|
172
|
-
'base-enclosure-garage.xml' => 'base.xml',
|
173
|
-
'base-enclosure-infil-ach-house-pressure.xml' => 'base.xml',
|
174
|
-
'base-enclosure-infil-cfm-house-pressure.xml' => 'base-enclosure-infil-cfm50.xml',
|
175
|
-
'base-enclosure-infil-cfm50.xml' => 'base.xml',
|
176
|
-
'base-enclosure-infil-flue.xml' => 'base.xml',
|
177
|
-
'base-enclosure-infil-natural-ach.xml' => 'base.xml',
|
178
|
-
'base-enclosure-orientations.xml' => 'base.xml',
|
179
|
-
'base-enclosure-overhangs.xml' => 'base.xml',
|
180
|
-
'base-enclosure-rooftypes.xml' => 'base.xml',
|
181
|
-
'base-enclosure-skylights.xml' => 'base.xml',
|
182
|
-
'base-enclosure-skylights-physical-properties.xml' => 'base-enclosure-skylights.xml',
|
183
|
-
'base-enclosure-skylights-shading.xml' => 'base-enclosure-skylights.xml',
|
184
|
-
'base-enclosure-skylights-storms.xml' => 'base-enclosure-skylights.xml',
|
185
|
-
'base-enclosure-split-level.xml' => 'base-foundation-slab.xml',
|
186
|
-
'base-enclosure-split-surfaces.xml' => 'base-enclosure-skylights.xml', # Surfaces should collapse via HPXML.collapse_enclosure_surfaces()
|
187
|
-
'base-enclosure-split-surfaces2.xml' => 'base-enclosure-skylights.xml', # Surfaces should NOT collapse via HPXML.collapse_enclosure_surfaces()
|
188
|
-
'base-enclosure-walltypes.xml' => 'base.xml',
|
189
|
-
'base-enclosure-windows-natural-ventilation-availability.xml' => 'base.xml',
|
190
|
-
'base-enclosure-windows-none.xml' => 'base.xml',
|
191
|
-
'base-enclosure-windows-physical-properties.xml' => 'base.xml',
|
192
|
-
'base-enclosure-windows-shading.xml' => 'base.xml',
|
193
|
-
'base-enclosure-windows-storms.xml' => 'base.xml',
|
194
|
-
'base-enclosure-thermal-mass.xml' => 'base.xml',
|
195
|
-
'base-foundation-ambient.xml' => 'base.xml',
|
196
|
-
'base-foundation-basement-garage.xml' => 'base.xml',
|
197
|
-
'base-foundation-complex.xml' => 'base.xml',
|
198
|
-
'base-foundation-conditioned-basement-slab-insulation.xml' => 'base.xml',
|
199
|
-
'base-foundation-conditioned-basement-wall-insulation.xml' => 'base.xml',
|
200
|
-
'base-foundation-conditioned-crawlspace.xml' => 'base.xml',
|
201
|
-
'base-foundation-multiple.xml' => 'base-foundation-unconditioned-basement.xml',
|
202
|
-
'base-foundation-slab.xml' => 'base.xml',
|
203
|
-
'base-foundation-unconditioned-basement.xml' => 'base.xml',
|
204
|
-
'base-foundation-unconditioned-basement-above-grade.xml' => 'base-foundation-unconditioned-basement.xml',
|
205
|
-
'base-foundation-unconditioned-basement-assembly-r.xml' => 'base-foundation-unconditioned-basement.xml',
|
206
|
-
'base-foundation-unconditioned-basement-wall-insulation.xml' => 'base-foundation-unconditioned-basement.xml',
|
207
|
-
'base-foundation-unvented-crawlspace.xml' => 'base.xml',
|
208
|
-
'base-foundation-vented-crawlspace.xml' => 'base.xml',
|
209
|
-
'base-foundation-walkout-basement.xml' => 'base.xml',
|
210
|
-
'base-hvac-air-to-air-heat-pump-1-speed.xml' => 'base.xml',
|
211
|
-
'base-hvac-air-to-air-heat-pump-1-speed-cooling-only.xml' => 'base-hvac-air-to-air-heat-pump-1-speed.xml',
|
212
|
-
'base-hvac-air-to-air-heat-pump-1-speed-heating-only.xml' => 'base-hvac-air-to-air-heat-pump-1-speed.xml',
|
213
|
-
'base-hvac-air-to-air-heat-pump-1-speed-backup-lockout-temperature.xml' => 'base-hvac-air-to-air-heat-pump-1-speed.xml',
|
214
|
-
'base-hvac-air-to-air-heat-pump-1-speed-seer2-hspf2.xml' => 'base-hvac-air-to-air-heat-pump-1-speed.xml',
|
215
|
-
'base-hvac-air-to-air-heat-pump-2-speed.xml' => 'base.xml',
|
216
|
-
'base-hvac-air-to-air-heat-pump-var-speed.xml' => 'base.xml',
|
217
|
-
'base-hvac-air-to-air-heat-pump-var-speed-backup-boiler.xml' => 'base-hvac-air-to-air-heat-pump-var-speed.xml',
|
218
|
-
'base-hvac-air-to-air-heat-pump-var-speed-backup-boiler-switchover-temperature.xml' => 'base-hvac-air-to-air-heat-pump-var-speed-backup-boiler.xml',
|
219
|
-
'base-hvac-air-to-air-heat-pump-var-speed-backup-furnace.xml' => 'base-hvac-air-to-air-heat-pump-var-speed-backup-boiler.xml',
|
220
|
-
'base-hvac-autosize.xml' => 'base.xml',
|
221
|
-
'base-hvac-autosize-air-to-air-heat-pump-1-speed-cooling-only.xml' => 'base-hvac-air-to-air-heat-pump-1-speed-cooling-only.xml',
|
222
|
-
'base-hvac-autosize-air-to-air-heat-pump-1-speed-heating-only.xml' => 'base-hvac-air-to-air-heat-pump-1-speed-heating-only.xml',
|
223
|
-
'base-hvac-autosize-air-to-air-heat-pump-1-speed-sizing-methodology-acca.xml' => 'base-hvac-air-to-air-heat-pump-1-speed.xml',
|
224
|
-
'base-hvac-autosize-air-to-air-heat-pump-1-speed-sizing-methodology-hers.xml' => 'base-hvac-air-to-air-heat-pump-1-speed.xml',
|
225
|
-
'base-hvac-autosize-air-to-air-heat-pump-1-speed-sizing-methodology-maxload.xml' => 'base-hvac-air-to-air-heat-pump-1-speed.xml',
|
226
|
-
'base-hvac-autosize-air-to-air-heat-pump-1-speed-sizing-methodology-maxload-miami-fl.xml' => 'base-hvac-autosize-air-to-air-heat-pump-1-speed-sizing-methodology-maxload.xml',
|
227
|
-
'base-hvac-autosize-air-to-air-heat-pump-2-speed-sizing-methodology-acca.xml' => 'base-hvac-air-to-air-heat-pump-2-speed.xml',
|
228
|
-
'base-hvac-autosize-air-to-air-heat-pump-2-speed-sizing-methodology-hers.xml' => 'base-hvac-air-to-air-heat-pump-2-speed.xml',
|
229
|
-
'base-hvac-autosize-air-to-air-heat-pump-2-speed-sizing-methodology-maxload.xml' => 'base-hvac-air-to-air-heat-pump-2-speed.xml',
|
230
|
-
'base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-acca.xml' => 'base-hvac-air-to-air-heat-pump-var-speed.xml',
|
231
|
-
'base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-hers.xml' => 'base-hvac-air-to-air-heat-pump-var-speed.xml',
|
232
|
-
'base-hvac-autosize-air-to-air-heat-pump-var-speed-sizing-methodology-maxload.xml' => 'base-hvac-air-to-air-heat-pump-var-speed.xml',
|
233
|
-
'base-hvac-autosize-air-to-air-heat-pump-var-speed-backup-boiler.xml' => 'base-hvac-air-to-air-heat-pump-var-speed-backup-boiler.xml',
|
234
|
-
'base-hvac-autosize-air-to-air-heat-pump-var-speed-backup-furnace.xml' => 'base-hvac-air-to-air-heat-pump-var-speed-backup-furnace.xml',
|
235
|
-
'base-hvac-autosize-boiler-elec-only.xml' => 'base-hvac-boiler-elec-only.xml',
|
236
|
-
'base-hvac-autosize-boiler-gas-central-ac-1-speed.xml' => 'base-hvac-boiler-gas-central-ac-1-speed.xml',
|
237
|
-
'base-hvac-autosize-boiler-gas-only.xml' => 'base-hvac-boiler-gas-only.xml',
|
238
|
-
'base-hvac-autosize-central-ac-only-1-speed.xml' => 'base-hvac-central-ac-only-1-speed.xml',
|
239
|
-
'base-hvac-autosize-central-ac-only-2-speed.xml' => 'base-hvac-central-ac-only-2-speed.xml',
|
240
|
-
'base-hvac-autosize-central-ac-only-var-speed.xml' => 'base-hvac-central-ac-only-var-speed.xml',
|
241
|
-
'base-hvac-autosize-central-ac-plus-air-to-air-heat-pump-heating.xml' => 'base-hvac-central-ac-plus-air-to-air-heat-pump-heating.xml',
|
242
|
-
'base-hvac-autosize-dual-fuel-air-to-air-heat-pump-1-speed-sizing-methodology-acca.xml' => 'base-hvac-dual-fuel-air-to-air-heat-pump-1-speed.xml',
|
243
|
-
'base-hvac-autosize-dual-fuel-air-to-air-heat-pump-1-speed-sizing-methodology-hers.xml' => 'base-hvac-dual-fuel-air-to-air-heat-pump-1-speed.xml',
|
244
|
-
'base-hvac-autosize-dual-fuel-air-to-air-heat-pump-1-speed-sizing-methodology-maxload.xml' => 'base-hvac-dual-fuel-air-to-air-heat-pump-1-speed.xml',
|
245
|
-
'base-hvac-autosize-dual-fuel-mini-split-heat-pump-ducted.xml' => 'base-hvac-dual-fuel-mini-split-heat-pump-ducted.xml',
|
246
|
-
'base-hvac-autosize-elec-resistance-only.xml' => 'base-hvac-elec-resistance-only.xml',
|
247
|
-
'base-hvac-autosize-evap-cooler-furnace-gas.xml' => 'base-hvac-evap-cooler-furnace-gas.xml',
|
248
|
-
'base-hvac-autosize-floor-furnace-propane-only.xml' => 'base-hvac-floor-furnace-propane-only.xml',
|
249
|
-
'base-hvac-autosize-furnace-elec-only.xml' => 'base-hvac-furnace-elec-only.xml',
|
250
|
-
'base-hvac-autosize-furnace-gas-central-ac-2-speed.xml' => 'base-hvac-furnace-gas-central-ac-2-speed.xml',
|
251
|
-
'base-hvac-autosize-furnace-gas-central-ac-var-speed.xml' => 'base-hvac-furnace-gas-central-ac-var-speed.xml',
|
252
|
-
'base-hvac-autosize-furnace-gas-only.xml' => 'base-hvac-furnace-gas-only.xml',
|
253
|
-
'base-hvac-autosize-furnace-gas-room-ac.xml' => 'base-hvac-furnace-gas-room-ac.xml',
|
254
|
-
'base-hvac-autosize-ground-to-air-heat-pump-cooling-only.xml' => 'base-hvac-ground-to-air-heat-pump-cooling-only.xml',
|
255
|
-
'base-hvac-autosize-ground-to-air-heat-pump-heating-only.xml' => 'base-hvac-ground-to-air-heat-pump-heating-only.xml',
|
256
|
-
'base-hvac-autosize-ground-to-air-heat-pump-sizing-methodology-acca.xml' => 'base-hvac-ground-to-air-heat-pump.xml',
|
257
|
-
'base-hvac-autosize-ground-to-air-heat-pump-sizing-methodology-hers.xml' => 'base-hvac-ground-to-air-heat-pump.xml',
|
258
|
-
'base-hvac-autosize-ground-to-air-heat-pump-sizing-methodology-maxload.xml' => 'base-hvac-ground-to-air-heat-pump.xml',
|
259
|
-
'base-hvac-autosize-mini-split-heat-pump-ducted-cooling-only.xml' => 'base-hvac-mini-split-heat-pump-ducted-cooling-only.xml',
|
260
|
-
'base-hvac-autosize-mini-split-heat-pump-ducted-heating-only.xml' => 'base-hvac-mini-split-heat-pump-ducted-heating-only.xml',
|
261
|
-
'base-hvac-autosize-mini-split-heat-pump-ducted-sizing-methodology-acca.xml' => 'base-hvac-mini-split-heat-pump-ducted.xml',
|
262
|
-
'base-hvac-autosize-mini-split-heat-pump-ducted-sizing-methodology-hers.xml' => 'base-hvac-mini-split-heat-pump-ducted.xml',
|
263
|
-
'base-hvac-autosize-mini-split-heat-pump-ducted-sizing-methodology-maxload.xml' => 'base-hvac-mini-split-heat-pump-ducted.xml',
|
264
|
-
'base-hvac-autosize-mini-split-heat-pump-ductless-backup-stove.xml' => 'base-hvac-mini-split-heat-pump-ductless-backup-stove.xml',
|
265
|
-
'base-hvac-autosize-mini-split-air-conditioner-only-ducted.xml' => 'base-hvac-mini-split-air-conditioner-only-ducted.xml',
|
266
|
-
'base-hvac-autosize-ptac.xml' => 'base-hvac-ptac.xml',
|
267
|
-
'base-hvac-autosize-ptac-with-heating.xml' => 'base-hvac-ptac-with-heating-electricity.xml',
|
268
|
-
'base-hvac-autosize-pthp-sizing-methodology-acca.xml' => 'base-hvac-pthp.xml',
|
269
|
-
'base-hvac-autosize-pthp-sizing-methodology-hers.xml' => 'base-hvac-pthp.xml',
|
270
|
-
'base-hvac-autosize-pthp-sizing-methodology-maxload.xml' => 'base-hvac-pthp.xml',
|
271
|
-
'base-hvac-autosize-room-ac-with-reverse-cycle-sizing-methodology-acca.xml' => 'base-hvac-room-ac-with-reverse-cycle.xml',
|
272
|
-
'base-hvac-autosize-room-ac-with-reverse-cycle-sizing-methodology-hers.xml' => 'base-hvac-room-ac-with-reverse-cycle.xml',
|
273
|
-
'base-hvac-autosize-room-ac-with-reverse-cycle-sizing-methodology-maxload.xml' => 'base-hvac-room-ac-with-reverse-cycle.xml',
|
274
|
-
'base-hvac-autosize-room-ac-with-heating.xml' => 'base-hvac-room-ac-with-heating.xml',
|
275
|
-
'base-hvac-autosize-room-ac-only.xml' => 'base-hvac-room-ac-only.xml',
|
276
|
-
'base-hvac-autosize-stove-oil-only.xml' => 'base-hvac-stove-oil-only.xml',
|
277
|
-
'base-hvac-autosize-wall-furnace-elec-only.xml' => 'base-hvac-wall-furnace-elec-only.xml',
|
278
|
-
'base-hvac-boiler-coal-only.xml' => 'base-hvac-boiler-gas-only.xml',
|
279
|
-
'base-hvac-boiler-elec-only.xml' => 'base.xml',
|
280
|
-
'base-hvac-boiler-gas-central-ac-1-speed.xml' => 'base.xml',
|
281
|
-
'base-hvac-boiler-gas-only.xml' => 'base.xml',
|
282
|
-
'base-hvac-boiler-oil-only.xml' => 'base-hvac-boiler-gas-only.xml',
|
283
|
-
'base-hvac-boiler-propane-only.xml' => 'base-hvac-boiler-gas-only.xml',
|
284
|
-
'base-hvac-boiler-wood-only.xml' => 'base-hvac-boiler-gas-only.xml',
|
285
|
-
'base-hvac-central-ac-only-1-speed.xml' => 'base.xml',
|
286
|
-
'base-hvac-central-ac-only-1-speed-seer2.xml' => 'base-hvac-central-ac-only-1-speed.xml',
|
287
|
-
'base-hvac-central-ac-only-2-speed.xml' => 'base.xml',
|
288
|
-
'base-hvac-central-ac-only-var-speed.xml' => 'base.xml',
|
289
|
-
'base-hvac-central-ac-plus-air-to-air-heat-pump-heating.xml' => 'base-hvac-central-ac-only-1-speed.xml',
|
290
|
-
'base-hvac-dse.xml' => 'base.xml',
|
291
|
-
'base-hvac-dual-fuel-air-to-air-heat-pump-1-speed.xml' => 'base-hvac-air-to-air-heat-pump-1-speed.xml',
|
292
|
-
'base-hvac-dual-fuel-air-to-air-heat-pump-1-speed-electric.xml' => 'base-hvac-dual-fuel-air-to-air-heat-pump-1-speed.xml',
|
293
|
-
'base-hvac-dual-fuel-air-to-air-heat-pump-2-speed.xml' => 'base-hvac-air-to-air-heat-pump-2-speed.xml',
|
294
|
-
'base-hvac-dual-fuel-air-to-air-heat-pump-var-speed.xml' => 'base-hvac-air-to-air-heat-pump-var-speed.xml',
|
295
|
-
'base-hvac-dual-fuel-mini-split-heat-pump-ducted.xml' => 'base-hvac-mini-split-heat-pump-ducted.xml',
|
296
|
-
'base-hvac-ducts-leakage-cfm50.xml' => 'base.xml',
|
297
|
-
'base-hvac-ducts-leakage-percent.xml' => 'base.xml',
|
298
|
-
'base-hvac-ducts-area-fractions.xml' => 'base-enclosure-2stories.xml',
|
299
|
-
'base-hvac-ducts-area-multipliers.xml' => 'base.xml',
|
300
|
-
'base-hvac-elec-resistance-only.xml' => 'base.xml',
|
301
|
-
'base-hvac-evap-cooler-furnace-gas.xml' => 'base.xml',
|
302
|
-
'base-hvac-evap-cooler-only.xml' => 'base.xml',
|
303
|
-
'base-hvac-evap-cooler-only-ducted.xml' => 'base.xml',
|
304
|
-
'base-hvac-fireplace-wood-only.xml' => 'base-hvac-stove-oil-only.xml',
|
305
|
-
'base-hvac-fixed-heater-gas-only.xml' => 'base.xml',
|
306
|
-
'base-hvac-floor-furnace-propane-only.xml' => 'base-hvac-stove-oil-only.xml',
|
307
|
-
'base-hvac-furnace-coal-only.xml' => 'base-hvac-furnace-gas-only.xml',
|
308
|
-
'base-hvac-furnace-elec-central-ac-1-speed.xml' => 'base.xml',
|
309
|
-
'base-hvac-furnace-elec-only.xml' => 'base.xml',
|
310
|
-
'base-hvac-furnace-gas-central-ac-2-speed.xml' => 'base.xml',
|
311
|
-
'base-hvac-furnace-gas-central-ac-var-speed.xml' => 'base.xml',
|
312
|
-
'base-hvac-furnace-gas-only.xml' => 'base.xml',
|
313
|
-
'base-hvac-furnace-gas-only-detailed-setpoints.xml' => 'base-hvac-furnace-gas-only.xml',
|
314
|
-
'base-hvac-furnace-gas-room-ac.xml' => 'base.xml',
|
315
|
-
'base-hvac-furnace-oil-only.xml' => 'base-hvac-furnace-gas-only.xml',
|
316
|
-
'base-hvac-furnace-propane-only.xml' => 'base-hvac-furnace-gas-only.xml',
|
317
|
-
'base-hvac-furnace-wood-only.xml' => 'base-hvac-furnace-gas-only.xml',
|
318
|
-
'base-hvac-furnace-x3-dse.xml' => 'base.xml',
|
319
|
-
'base-hvac-ground-to-air-heat-pump.xml' => 'base.xml',
|
320
|
-
'base-hvac-ground-to-air-heat-pump-cooling-only.xml' => 'base-hvac-ground-to-air-heat-pump.xml',
|
321
|
-
'base-hvac-ground-to-air-heat-pump-heating-only.xml' => 'base-hvac-ground-to-air-heat-pump.xml',
|
322
|
-
'base-hvac-install-quality-air-to-air-heat-pump-1-speed.xml' => 'base-hvac-air-to-air-heat-pump-1-speed.xml',
|
323
|
-
'base-hvac-install-quality-air-to-air-heat-pump-2-speed.xml' => 'base-hvac-air-to-air-heat-pump-2-speed.xml',
|
324
|
-
'base-hvac-install-quality-air-to-air-heat-pump-var-speed.xml' => 'base-hvac-air-to-air-heat-pump-var-speed.xml',
|
325
|
-
'base-hvac-install-quality-furnace-gas-central-ac-1-speed.xml' => 'base.xml',
|
326
|
-
'base-hvac-install-quality-furnace-gas-central-ac-2-speed.xml' => 'base-hvac-furnace-gas-central-ac-2-speed.xml',
|
327
|
-
'base-hvac-install-quality-furnace-gas-central-ac-var-speed.xml' => 'base-hvac-furnace-gas-central-ac-var-speed.xml',
|
328
|
-
'base-hvac-install-quality-furnace-gas-only.xml' => 'base-hvac-furnace-gas-only.xml',
|
329
|
-
'base-hvac-install-quality-ground-to-air-heat-pump.xml' => 'base-hvac-ground-to-air-heat-pump.xml',
|
330
|
-
'base-hvac-install-quality-mini-split-heat-pump-ducted.xml' => 'base-hvac-mini-split-heat-pump-ducted.xml',
|
331
|
-
'base-hvac-install-quality-mini-split-air-conditioner-only-ducted.xml' => 'base-hvac-mini-split-air-conditioner-only-ducted.xml',
|
332
|
-
'base-hvac-mini-split-air-conditioner-only-ducted.xml' => 'base.xml',
|
333
|
-
'base-hvac-mini-split-air-conditioner-only-ductless.xml' => 'base-hvac-mini-split-air-conditioner-only-ducted.xml',
|
334
|
-
'base-hvac-mini-split-heat-pump-ducted.xml' => 'base.xml',
|
335
|
-
'base-hvac-mini-split-heat-pump-ducted-cooling-only.xml' => 'base-hvac-mini-split-heat-pump-ducted.xml',
|
336
|
-
'base-hvac-mini-split-heat-pump-ducted-heating-only.xml' => 'base-hvac-mini-split-heat-pump-ducted.xml',
|
337
|
-
'base-hvac-mini-split-heat-pump-ductless.xml' => 'base-hvac-mini-split-heat-pump-ducted.xml',
|
338
|
-
'base-hvac-mini-split-heat-pump-ductless-backup-stove.xml' => 'base-hvac-mini-split-heat-pump-ductless.xml',
|
339
|
-
'base-hvac-multiple.xml' => 'base.xml',
|
340
|
-
'base-hvac-none.xml' => 'base-location-honolulu-hi.xml',
|
341
|
-
'base-hvac-portable-heater-gas-only.xml' => 'base.xml',
|
342
|
-
'base-hvac-ptac.xml' => 'base.xml',
|
343
|
-
'base-hvac-ptac-with-heating-electricity.xml' => 'base-hvac-ptac.xml',
|
344
|
-
'base-hvac-ptac-with-heating-natural-gas.xml' => 'base-hvac-ptac.xml',
|
345
|
-
'base-hvac-pthp.xml' => 'base-hvac-ground-to-air-heat-pump.xml',
|
346
|
-
'base-hvac-room-ac-only.xml' => 'base.xml',
|
347
|
-
'base-hvac-room-ac-only-33percent.xml' => 'base-hvac-room-ac-only.xml',
|
348
|
-
'base-hvac-room-ac-only-ceer.xml' => 'base-hvac-room-ac-only.xml',
|
349
|
-
'base-hvac-room-ac-with-heating.xml' => 'base-hvac-room-ac-only.xml',
|
350
|
-
'base-hvac-room-ac-with-reverse-cycle.xml' => 'base-hvac-pthp.xml',
|
351
|
-
'base-hvac-room-ac-only-detailed-setpoints.xml' => 'base-hvac-room-ac-only.xml',
|
352
|
-
'base-hvac-seasons.xml' => 'base.xml',
|
353
|
-
'base-hvac-setpoints.xml' => 'base.xml',
|
354
|
-
'base-hvac-setpoints-daily-schedules.xml' => 'base-hvac-setpoints-daily-setbacks.xml',
|
355
|
-
'base-hvac-setpoints-daily-setbacks.xml' => 'base.xml',
|
356
|
-
'base-hvac-stove-oil-only.xml' => 'base.xml',
|
357
|
-
'base-hvac-stove-wood-pellets-only.xml' => 'base-hvac-stove-oil-only.xml',
|
358
|
-
'base-hvac-undersized.xml' => 'base.xml',
|
359
|
-
'base-hvac-undersized-allow-increased-fixed-capacities.xml' => 'base-hvac-undersized.xml',
|
360
|
-
'base-hvac-wall-furnace-elec-only.xml' => 'base.xml',
|
361
|
-
'base-lighting-ceiling-fans.xml' => 'base.xml',
|
362
|
-
'base-lighting-holiday.xml' => 'base.xml',
|
363
|
-
'base-lighting-none.xml' => 'base.xml',
|
364
|
-
'base-location-AMY-2012.xml' => 'base.xml',
|
365
|
-
'base-location-baltimore-md.xml' => 'base-foundation-unvented-crawlspace.xml',
|
366
|
-
'base-location-capetown-zaf.xml' => 'base-foundation-vented-crawlspace.xml',
|
367
|
-
'base-location-dallas-tx.xml' => 'base-foundation-slab.xml',
|
368
|
-
'base-location-duluth-mn.xml' => 'base-foundation-unconditioned-basement.xml',
|
369
|
-
'base-location-helena-mt.xml' => 'base.xml',
|
370
|
-
'base-location-honolulu-hi.xml' => 'base-foundation-slab.xml',
|
371
|
-
'base-location-miami-fl.xml' => 'base-foundation-slab.xml',
|
372
|
-
'base-location-phoenix-az.xml' => 'base-foundation-slab.xml',
|
373
|
-
'base-location-portland-or.xml' => 'base-foundation-vented-crawlspace.xml',
|
374
|
-
'base-mechvent-balanced.xml' => 'base.xml',
|
375
|
-
'base-mechvent-bath-kitchen-fans.xml' => 'base.xml',
|
376
|
-
'base-mechvent-cfis.xml' => 'base.xml',
|
377
|
-
'base-mechvent-cfis-airflow-fraction-zero.xml' => 'base-mechvent-cfis.xml',
|
378
|
-
'base-mechvent-cfis-dse.xml' => 'base-hvac-dse.xml',
|
379
|
-
'base-mechvent-cfis-evap-cooler-only-ducted.xml' => 'base-hvac-evap-cooler-only-ducted.xml',
|
380
|
-
'base-mechvent-cfis-supplemental-fan-exhaust.xml' => 'base-mechvent-cfis.xml',
|
381
|
-
'base-mechvent-cfis-supplemental-fan-supply.xml' => 'base-mechvent-cfis.xml',
|
382
|
-
'base-mechvent-erv.xml' => 'base.xml',
|
383
|
-
'base-mechvent-erv-atre-asre.xml' => 'base.xml',
|
384
|
-
'base-mechvent-exhaust.xml' => 'base.xml',
|
385
|
-
'base-mechvent-exhaust-rated-flow-rate.xml' => 'base.xml',
|
386
|
-
'base-mechvent-hrv.xml' => 'base.xml',
|
387
|
-
'base-mechvent-hrv-asre.xml' => 'base.xml',
|
388
|
-
'base-mechvent-multiple.xml' => 'base-mechvent-bath-kitchen-fans.xml',
|
389
|
-
'base-mechvent-supply.xml' => 'base.xml',
|
390
|
-
'base-mechvent-whole-house-fan.xml' => 'base.xml',
|
391
|
-
'base-misc-additional-properties.xml' => 'base.xml',
|
392
|
-
'base-misc-bills.xml' => 'base.xml',
|
393
|
-
'base-misc-bills-none.xml' => 'base.xml',
|
394
|
-
'base-misc-bills-pv.xml' => 'base-pv.xml',
|
395
|
-
'base-misc-bills-pv-detailed-only.xml' => 'base-pv.xml',
|
396
|
-
'base-misc-bills-pv-mixed.xml' => 'base-pv.xml',
|
397
|
-
'base-misc-defaults.xml' => 'base.xml',
|
398
|
-
'base-misc-emissions.xml' => 'base-pv-battery.xml',
|
399
|
-
'base-misc-generators.xml' => 'base.xml',
|
400
|
-
'base-misc-generators-battery.xml' => 'base-misc-generators.xml',
|
401
|
-
'base-misc-generators-battery-scheduled.xml' => 'base-misc-generators-battery.xml',
|
402
|
-
'base-misc-ground-conductivity.xml' => 'base.xml',
|
403
|
-
'base-misc-loads-large-uncommon.xml' => 'base-schedules-simple.xml',
|
404
|
-
'base-misc-loads-large-uncommon2.xml' => 'base-misc-loads-large-uncommon.xml',
|
405
|
-
'base-misc-loads-none.xml' => 'base.xml',
|
406
|
-
'base-misc-neighbor-shading.xml' => 'base.xml',
|
407
|
-
'base-misc-shielding-of-home.xml' => 'base.xml',
|
408
|
-
'base-misc-usage-multiplier.xml' => 'base.xml',
|
409
|
-
'base-multiple-buildings.xml' => 'base.xml',
|
410
|
-
'base-pv.xml' => 'base.xml',
|
411
|
-
'base-pv-battery.xml' => 'base-battery.xml',
|
412
|
-
'base-pv-battery-ah.xml' => 'base-pv-battery.xml',
|
413
|
-
'base-pv-battery-garage.xml' => 'base-enclosure-garage.xml',
|
414
|
-
# 'base-pv-battery-lifetime-model.xml' => 'base-pv-battery.xml',
|
415
|
-
'base-pv-battery-round-trip-efficiency.xml' => 'base-pv-battery.xml',
|
416
|
-
'base-pv-battery-scheduled.xml' => 'base-pv-battery.xml',
|
417
|
-
'base-pv-generators.xml' => 'base-pv.xml',
|
418
|
-
'base-pv-generators-battery.xml' => 'base-pv-generators.xml',
|
419
|
-
'base-pv-generators-battery-scheduled.xml' => 'base-pv-generators-battery.xml',
|
420
|
-
'base-schedules-simple.xml' => 'base.xml',
|
421
|
-
'base-schedules-detailed-all-10-mins.xml' => 'base-simcontrol-timestep-10-mins.xml',
|
422
|
-
'base-schedules-detailed-occupancy-smooth.xml' => 'base.xml',
|
423
|
-
'base-schedules-detailed-occupancy-stochastic.xml' => 'base.xml',
|
424
|
-
'base-schedules-detailed-occupancy-stochastic-vacancy.xml' => 'base.xml',
|
425
|
-
'base-schedules-detailed-occupancy-stochastic-10-mins.xml' => 'base.xml',
|
426
|
-
'base-schedules-detailed-setpoints.xml' => 'base.xml',
|
427
|
-
'base-schedules-detailed-setpoints-daily-schedules.xml' => 'base.xml',
|
428
|
-
'base-schedules-detailed-setpoints-daily-setbacks.xml' => 'base.xml',
|
429
|
-
'base-simcontrol-calendar-year-custom.xml' => 'base.xml',
|
430
|
-
'base-simcontrol-daylight-saving-custom.xml' => 'base.xml',
|
431
|
-
'base-simcontrol-daylight-saving-disabled.xml' => 'base.xml',
|
432
|
-
'base-simcontrol-runperiod-1-month.xml' => 'base.xml',
|
433
|
-
'base-simcontrol-temperature-capacitance-multiplier.xml' => 'base.xml',
|
434
|
-
'base-simcontrol-timestep-10-mins.xml' => 'base.xml',
|
435
|
-
'base-simcontrol-timestep-10-mins-occupancy-stochastic-10-mins.xml' => 'base-simcontrol-timestep-10-mins.xml',
|
436
|
-
'base-simcontrol-timestep-10-mins-occupancy-stochastic-60-mins.xml' => 'base-simcontrol-timestep-10-mins.xml',
|
437
|
-
'base-simcontrol-timestep-30-mins.xml' => 'base.xml',
|
438
|
-
}
|
22
|
+
schedules_regenerated = []
|
439
23
|
|
440
|
-
puts "Generating #{
|
24
|
+
puts "Generating #{json_inputs.size} HPXML files..."
|
441
25
|
|
442
|
-
|
443
|
-
puts "[#{i + 1}/#{
|
26
|
+
json_inputs.keys.each_with_index do |hpxml_filename, i|
|
27
|
+
puts "[#{i + 1}/#{json_inputs.size}] Generating #{hpxml_filename}..."
|
28
|
+
hpxml_path = File.join(workflow_dir, hpxml_filename)
|
29
|
+
abs_hpxml_files << File.absolute_path(hpxml_path)
|
444
30
|
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
31
|
+
# Build up json_input from parent_hpxml(s)
|
32
|
+
parent_hpxml_filenames = []
|
33
|
+
parent_hpxml_filename = json_inputs[hpxml_filename]['parent_hpxml']
|
34
|
+
while not parent_hpxml_filename.nil?
|
35
|
+
if not json_inputs.keys.include? parent_hpxml_filename
|
36
|
+
fail "Could not find parent_hpxml: #{parent_hpxml_filename}."
|
450
37
|
end
|
451
|
-
while not parent.nil?
|
452
|
-
next unless hpxmls_files.keys.include? parent
|
453
38
|
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
set_measure_argument_values(f, args, sch_args, orig_parent)
|
464
|
-
end
|
39
|
+
parent_hpxml_filenames << parent_hpxml_filename
|
40
|
+
parent_hpxml_filename = json_inputs[parent_hpxml_filename]['parent_hpxml']
|
41
|
+
end
|
42
|
+
json_input = { 'hpxml_path' => hpxml_path }
|
43
|
+
for parent_hpxml_filename in parent_hpxml_filenames.reverse
|
44
|
+
json_input.merge!(json_inputs[parent_hpxml_filename])
|
45
|
+
end
|
46
|
+
json_input.merge!(json_inputs[hpxml_filename])
|
47
|
+
json_input.delete('parent_hpxml')
|
465
48
|
|
466
|
-
|
467
|
-
|
468
|
-
measures['BuildResidentialScheduleFile'] = [sch_args] if !sch_args.empty?
|
49
|
+
measures = {}
|
50
|
+
measures['BuildResidentialHPXML'] = [json_input]
|
469
51
|
|
470
|
-
|
471
|
-
|
472
|
-
|
52
|
+
# Re-generate stochastic schedule CSV?
|
53
|
+
csv_path = json_input['schedules_filepaths'].to_s.split(',').map(&:strip).find { |fp| fp.include? 'occupancy-stochastic' }
|
54
|
+
if (not csv_path.nil?) && (not schedules_regenerated.include? csv_path)
|
55
|
+
sch_args = { 'hpxml_path' => hpxml_path,
|
56
|
+
'output_csv_path' => csv_path,
|
57
|
+
'hpxml_output_path' => hpxml_path }
|
58
|
+
measures['BuildResidentialScheduleFile'] = [sch_args]
|
59
|
+
schedules_regenerated << csv_path
|
60
|
+
end
|
473
61
|
|
474
|
-
|
475
|
-
|
62
|
+
measures_dir = File.dirname(__FILE__)
|
63
|
+
model = OpenStudio::Model::Model.new
|
64
|
+
runner = OpenStudio::Measure::OSRunner.new(OpenStudio::WorkflowJSON.new)
|
476
65
|
|
477
|
-
|
478
|
-
|
479
|
-
puts "Error: #{s}"
|
480
|
-
end
|
66
|
+
# Apply measure
|
67
|
+
success = apply_measures(measures_dir, measures, runner, model)
|
481
68
|
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
69
|
+
# Report errors
|
70
|
+
runner.result.stepErrors.each do |s|
|
71
|
+
puts "Error: #{s}"
|
72
|
+
end
|
486
73
|
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
else
|
492
|
-
hpxml_path = File.absolute_path(File.join(tests_dir, hpxml_file))
|
493
|
-
hpxml = HPXML.new(hpxml_path: hpxml_path, collapse_enclosure: false)
|
494
|
-
apply_hpxml_modification(hpxml_file, hpxml)
|
495
|
-
end
|
74
|
+
if not success
|
75
|
+
puts "\nError: Did not successfully generate #{hpxml_file}."
|
76
|
+
exit!
|
77
|
+
end
|
496
78
|
|
497
|
-
|
79
|
+
hpxml = HPXML.new(hpxml_path: hpxml_path)
|
80
|
+
if hpxml_path.include? 'ASHRAE_Standard_140'
|
81
|
+
apply_hpxml_modification_ashrae_140(hpxml)
|
82
|
+
else
|
83
|
+
apply_hpxml_modification(File.basename(hpxml_path), hpxml)
|
84
|
+
end
|
85
|
+
hpxml_doc = hpxml.to_oga()
|
498
86
|
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
|
87
|
+
if hpxml_path.include? 'base-multiple-buildings.xml'
|
88
|
+
# HPXML class doesn't support multiple buildings, so we'll stitch together manually.
|
89
|
+
hpxml_element = XMLHelper.get_element(hpxml_doc, '/HPXML')
|
90
|
+
building_element = XMLHelper.get_element(hpxml_element, 'Building')
|
91
|
+
for i in 2..3
|
92
|
+
new_building_element = Marshal.load(Marshal.dump(building_element)) # Deep copy
|
505
93
|
|
506
|
-
|
507
|
-
|
508
|
-
|
94
|
+
# Make all IDs unique so the HPXML is valid
|
95
|
+
new_building_element.each_node do |node|
|
96
|
+
next unless node.is_a?(Oga::XML::Element)
|
509
97
|
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
end
|
98
|
+
if not XMLHelper.get_attribute_value(node, 'id').nil?
|
99
|
+
XMLHelper.add_attribute(node, 'id', "#{XMLHelper.get_attribute_value(node, 'id')}_#{i}")
|
100
|
+
elsif not XMLHelper.get_attribute_value(node, 'idref').nil?
|
101
|
+
XMLHelper.add_attribute(node, 'idref', "#{XMLHelper.get_attribute_value(node, 'idref')}_#{i}")
|
515
102
|
end
|
516
|
-
|
517
|
-
hpxml_element.children << new_building_element
|
518
103
|
end
|
519
|
-
end
|
520
|
-
|
521
|
-
XMLHelper.write_file(hpxml_doc, hpxml_path)
|
522
104
|
|
523
|
-
|
524
|
-
errors, _ = XMLValidator.validate_against_schema(hpxml_path, schema_path)
|
525
|
-
if errors.size > 0
|
526
|
-
puts "\nError: Did not successfully validate #{hpxml_file}."
|
527
|
-
exit!
|
105
|
+
hpxml_element.children << new_building_element
|
528
106
|
end
|
529
|
-
rescue Exception => e
|
530
|
-
puts "\n#{e}\n#{e.backtrace.join('\n')}"
|
531
|
-
puts "\nError: Did not successfully generate #{hpxml_file}."
|
532
|
-
exit!
|
533
107
|
end
|
108
|
+
|
109
|
+
XMLHelper.write_file(hpxml_doc, hpxml_path)
|
110
|
+
|
111
|
+
errors, _warnings = XMLValidator.validate_against_schema(hpxml_path, schema_validator)
|
112
|
+
next unless errors.size > 0
|
113
|
+
|
114
|
+
puts errors.to_s
|
115
|
+
puts "\nError: Did not successfully validate #{hpxml_filename}."
|
116
|
+
exit!
|
534
117
|
end
|
535
118
|
|
536
119
|
puts "\n"
|
537
120
|
|
538
121
|
# Print warnings about extra files
|
539
|
-
|
540
|
-
|
541
|
-
hpxmls_files.keys.each do |hpxml_file|
|
542
|
-
abs_hpxml_files << File.absolute_path(File.join(tests_dir, hpxml_file))
|
543
|
-
next unless hpxml_file.include? '/'
|
544
|
-
|
545
|
-
dirs << hpxml_file.split('/')[0] + '/'
|
546
|
-
end
|
547
|
-
dirs.uniq.each do |dir|
|
548
|
-
Dir["#{tests_dir}/#{dir}*.xml"].each do |hpxml|
|
122
|
+
dirs.each do |dir|
|
123
|
+
Dir["#{workflow_dir}/#{dir}/*.xml"].each do |hpxml|
|
549
124
|
next if abs_hpxml_files.include? File.absolute_path(hpxml)
|
550
125
|
|
551
126
|
puts "Warning: Extra HPXML file found at #{File.absolute_path(hpxml)}"
|
@@ -553,2003 +128,9 @@ def create_hpxmls
|
|
553
128
|
end
|
554
129
|
end
|
555
130
|
|
556
|
-
def set_measure_argument_values(hpxml_file, args, sch_args, orig_parent)
|
557
|
-
if hpxml_file.include? 'ASHRAE_Standard_140'
|
558
|
-
args['hpxml_path'] = "workflow/tests/#{hpxml_file}"
|
559
|
-
else
|
560
|
-
args['hpxml_path'] = "workflow/sample_files/#{hpxml_file}"
|
561
|
-
end
|
562
|
-
args['apply_validation'] = false
|
563
|
-
|
564
|
-
if ['base.xml'].include? hpxml_file
|
565
|
-
args['simulation_control_timestep'] = 60
|
566
|
-
args['site_iecc_zone'] = '5B'
|
567
|
-
args['site_state_code'] = 'CO'
|
568
|
-
args['weather_station_epw_filepath'] = 'USA_CO_Denver.Intl.AP.725650_TMY3.epw'
|
569
|
-
args['site_type'] = HPXML::SiteTypeSuburban
|
570
|
-
args['geometry_unit_type'] = HPXML::ResidentialTypeSFD
|
571
|
-
args['geometry_unit_cfa'] = 2700.0
|
572
|
-
args['geometry_unit_left_wall_is_adiabatic'] = false
|
573
|
-
args['geometry_unit_right_wall_is_adiabatic'] = false
|
574
|
-
args['geometry_unit_front_wall_is_adiabatic'] = false
|
575
|
-
args['geometry_unit_back_wall_is_adiabatic'] = false
|
576
|
-
args['geometry_unit_num_floors_above_grade'] = 1
|
577
|
-
args['geometry_average_ceiling_height'] = 8.0
|
578
|
-
args['geometry_unit_orientation'] = 180.0
|
579
|
-
args['geometry_unit_aspect_ratio'] = 1.5
|
580
|
-
args['geometry_garage_width'] = 0.0
|
581
|
-
args['geometry_garage_depth'] = 20.0
|
582
|
-
args['geometry_garage_protrusion'] = 0.0
|
583
|
-
args['geometry_garage_position'] = 'Right'
|
584
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeBasementConditioned
|
585
|
-
args['geometry_foundation_height'] = 8.0
|
586
|
-
args['geometry_foundation_height_above_grade'] = 1.0
|
587
|
-
args['geometry_rim_joist_height'] = 9.25
|
588
|
-
args['geometry_roof_type'] = 'gable'
|
589
|
-
args['geometry_roof_pitch'] = '6:12'
|
590
|
-
args['geometry_attic_type'] = HPXML::AtticTypeUnvented
|
591
|
-
args['geometry_eaves_depth'] = 0
|
592
|
-
args['geometry_unit_num_bedrooms'] = 3
|
593
|
-
args['geometry_unit_num_bathrooms'] = 2
|
594
|
-
args['geometry_unit_num_occupants'] = 3
|
595
|
-
args['floor_over_foundation_assembly_r'] = 0
|
596
|
-
args['floor_over_garage_assembly_r'] = 0
|
597
|
-
args['floor_type'] = HPXML::FloorTypeWoodFrame
|
598
|
-
args['foundation_wall_thickness'] = 8.0
|
599
|
-
args['foundation_wall_insulation_r'] = 8.9
|
600
|
-
args['foundation_wall_insulation_distance_to_top'] = 0.0
|
601
|
-
args['foundation_wall_insulation_distance_to_bottom'] = 8.0
|
602
|
-
args['rim_joist_assembly_r'] = 23.0
|
603
|
-
args['slab_perimeter_insulation_r'] = 0
|
604
|
-
args['slab_perimeter_depth'] = 0
|
605
|
-
args['slab_under_insulation_r'] = 0
|
606
|
-
args['slab_under_width'] = 0
|
607
|
-
args['slab_thickness'] = 4.0
|
608
|
-
args['slab_carpet_fraction'] = 0.0
|
609
|
-
args['slab_carpet_r'] = 0.0
|
610
|
-
args['ceiling_assembly_r'] = 39.3
|
611
|
-
args['roof_material_type'] = HPXML::RoofTypeAsphaltShingles
|
612
|
-
args['roof_color'] = HPXML::ColorMedium
|
613
|
-
args['roof_assembly_r'] = 2.3
|
614
|
-
args['roof_radiant_barrier'] = false
|
615
|
-
args['roof_radiant_barrier_grade'] = 1
|
616
|
-
args['neighbor_front_distance'] = 0
|
617
|
-
args['neighbor_back_distance'] = 0
|
618
|
-
args['neighbor_left_distance'] = 0
|
619
|
-
args['neighbor_right_distance'] = 0
|
620
|
-
args['wall_type'] = HPXML::WallTypeWoodStud
|
621
|
-
args['wall_siding_type'] = HPXML::SidingTypeWood
|
622
|
-
args['wall_color'] = HPXML::ColorMedium
|
623
|
-
args['wall_assembly_r'] = 23
|
624
|
-
args['window_front_wwr'] = 0
|
625
|
-
args['window_back_wwr'] = 0
|
626
|
-
args['window_left_wwr'] = 0
|
627
|
-
args['window_right_wwr'] = 0
|
628
|
-
args['window_area_front'] = 108.0
|
629
|
-
args['window_area_back'] = 108.0
|
630
|
-
args['window_area_left'] = 72.0
|
631
|
-
args['window_area_right'] = 72.0
|
632
|
-
args['window_aspect_ratio'] = 1.333
|
633
|
-
args['window_fraction_operable'] = 0.67
|
634
|
-
args['window_ufactor'] = 0.33
|
635
|
-
args['window_shgc'] = 0.45
|
636
|
-
args['window_interior_shading_winter'] = 0.85
|
637
|
-
args['window_interior_shading_summer'] = 0.7
|
638
|
-
args['overhangs_front_depth'] = 0
|
639
|
-
args['overhangs_back_depth'] = 0
|
640
|
-
args['overhangs_left_depth'] = 0
|
641
|
-
args['overhangs_right_depth'] = 0
|
642
|
-
args['overhangs_front_distance_to_top_of_window'] = 0
|
643
|
-
args['overhangs_back_distance_to_top_of_window'] = 0
|
644
|
-
args['overhangs_left_distance_to_top_of_window'] = 0
|
645
|
-
args['overhangs_right_distance_to_top_of_window'] = 0
|
646
|
-
args['overhangs_front_distance_to_bottom_of_window'] = 0
|
647
|
-
args['overhangs_back_distance_to_bottom_of_window'] = 0
|
648
|
-
args['overhangs_left_distance_to_bottom_of_window'] = 0
|
649
|
-
args['overhangs_right_distance_to_bottom_of_window'] = 0
|
650
|
-
args['skylight_area_front'] = 0
|
651
|
-
args['skylight_area_back'] = 0
|
652
|
-
args['skylight_area_left'] = 0
|
653
|
-
args['skylight_area_right'] = 0
|
654
|
-
args['skylight_ufactor'] = 0.33
|
655
|
-
args['skylight_shgc'] = 0.45
|
656
|
-
args['door_area'] = 40.0
|
657
|
-
args['door_rvalue'] = 4.4
|
658
|
-
args['air_leakage_units'] = HPXML::UnitsACH
|
659
|
-
args['air_leakage_house_pressure'] = 50
|
660
|
-
args['air_leakage_value'] = 3
|
661
|
-
args['heating_system_type'] = HPXML::HVACTypeFurnace
|
662
|
-
args['heating_system_fuel'] = HPXML::FuelTypeNaturalGas
|
663
|
-
args['heating_system_heating_efficiency'] = 0.92
|
664
|
-
args['heating_system_heating_capacity'] = 36000.0
|
665
|
-
args['heating_system_fraction_heat_load_served'] = 1
|
666
|
-
args['cooling_system_type'] = HPXML::HVACTypeCentralAirConditioner
|
667
|
-
args['cooling_system_cooling_efficiency_type'] = HPXML::UnitsSEER
|
668
|
-
args['cooling_system_cooling_efficiency'] = 13.0
|
669
|
-
args['cooling_system_cooling_compressor_type'] = HPXML::HVACCompressorTypeSingleStage
|
670
|
-
args['cooling_system_cooling_sensible_heat_fraction'] = 0.73
|
671
|
-
args['cooling_system_cooling_capacity'] = 24000.0
|
672
|
-
args['cooling_system_fraction_cool_load_served'] = 1
|
673
|
-
args['cooling_system_is_ducted'] = false
|
674
|
-
args['heat_pump_type'] = 'none'
|
675
|
-
args['heat_pump_heating_efficiency_type'] = HPXML::UnitsHSPF
|
676
|
-
args['heat_pump_heating_efficiency'] = 7.7
|
677
|
-
args['heat_pump_cooling_efficiency_type'] = HPXML::UnitsSEER
|
678
|
-
args['heat_pump_cooling_efficiency'] = 13.0
|
679
|
-
args['heat_pump_cooling_compressor_type'] = HPXML::HVACCompressorTypeSingleStage
|
680
|
-
args['heat_pump_cooling_sensible_heat_fraction'] = 0.73
|
681
|
-
args['heat_pump_heating_capacity'] = 36000.0
|
682
|
-
args['heat_pump_cooling_capacity'] = 36000.0
|
683
|
-
args['heat_pump_fraction_heat_load_served'] = 1
|
684
|
-
args['heat_pump_fraction_cool_load_served'] = 1
|
685
|
-
args['heat_pump_backup_type'] = 'none'
|
686
|
-
args['heat_pump_backup_fuel'] = HPXML::FuelTypeElectricity
|
687
|
-
args['heat_pump_backup_heating_efficiency'] = 1
|
688
|
-
args['heat_pump_backup_heating_capacity'] = 36000.0
|
689
|
-
args['hvac_control_heating_weekday_setpoint'] = 68
|
690
|
-
args['hvac_control_heating_weekend_setpoint'] = 68
|
691
|
-
args['hvac_control_cooling_weekday_setpoint'] = 78
|
692
|
-
args['hvac_control_cooling_weekend_setpoint'] = 78
|
693
|
-
args['ducts_leakage_units'] = HPXML::UnitsCFM25
|
694
|
-
args['ducts_supply_leakage_to_outside_value'] = 75.0
|
695
|
-
args['ducts_return_leakage_to_outside_value'] = 25.0
|
696
|
-
args['ducts_supply_insulation_r'] = 4.0
|
697
|
-
args['ducts_return_insulation_r'] = 0.0
|
698
|
-
args['ducts_supply_location'] = HPXML::LocationAtticUnvented
|
699
|
-
args['ducts_return_location'] = HPXML::LocationAtticUnvented
|
700
|
-
args['ducts_supply_surface_area'] = 150.0
|
701
|
-
args['ducts_return_surface_area'] = 50.0
|
702
|
-
args['heating_system_2_type'] = 'none'
|
703
|
-
args['heating_system_2_fuel'] = HPXML::FuelTypeElectricity
|
704
|
-
args['heating_system_2_heating_efficiency'] = 1.0
|
705
|
-
args['heating_system_2_fraction_heat_load_served'] = 0.25
|
706
|
-
args['mech_vent_fan_type'] = 'none'
|
707
|
-
args['mech_vent_flow_rate'] = 110
|
708
|
-
args['mech_vent_hours_in_operation'] = 24
|
709
|
-
args['mech_vent_recovery_efficiency_type'] = 'Unadjusted'
|
710
|
-
args['mech_vent_total_recovery_efficiency'] = 0.48
|
711
|
-
args['mech_vent_sensible_recovery_efficiency'] = 0.72
|
712
|
-
args['mech_vent_fan_power'] = 30
|
713
|
-
args['mech_vent_num_units_served'] = 1
|
714
|
-
args['mech_vent_2_fan_type'] = 'none'
|
715
|
-
args['mech_vent_2_flow_rate'] = 110
|
716
|
-
args['mech_vent_2_hours_in_operation'] = 24
|
717
|
-
args['mech_vent_2_recovery_efficiency_type'] = 'Unadjusted'
|
718
|
-
args['mech_vent_2_total_recovery_efficiency'] = 0.48
|
719
|
-
args['mech_vent_2_sensible_recovery_efficiency'] = 0.72
|
720
|
-
args['mech_vent_2_fan_power'] = 30
|
721
|
-
args['kitchen_fans_quantity'] = 0
|
722
|
-
args['bathroom_fans_quantity'] = 0
|
723
|
-
args['whole_house_fan_present'] = false
|
724
|
-
args['water_heater_type'] = HPXML::WaterHeaterTypeStorage
|
725
|
-
args['water_heater_fuel_type'] = HPXML::FuelTypeElectricity
|
726
|
-
args['water_heater_location'] = HPXML::LocationLivingSpace
|
727
|
-
args['water_heater_tank_volume'] = 40
|
728
|
-
args['water_heater_efficiency_type'] = 'EnergyFactor'
|
729
|
-
args['water_heater_efficiency'] = 0.95
|
730
|
-
args['water_heater_recovery_efficiency'] = 0.76
|
731
|
-
args['water_heater_heating_capacity'] = 18767
|
732
|
-
args['water_heater_jacket_rvalue'] = 0
|
733
|
-
args['water_heater_setpoint_temperature'] = 125
|
734
|
-
args['water_heater_num_units_served'] = 1
|
735
|
-
args['hot_water_distribution_system_type'] = HPXML::DHWDistTypeStandard
|
736
|
-
args['hot_water_distribution_standard_piping_length'] = 50
|
737
|
-
args['hot_water_distribution_recirc_control_type'] = HPXML::DHWRecirControlTypeNone
|
738
|
-
args['hot_water_distribution_recirc_piping_length'] = 50
|
739
|
-
args['hot_water_distribution_recirc_branch_piping_length'] = 50
|
740
|
-
args['hot_water_distribution_recirc_pump_power'] = 50
|
741
|
-
args['hot_water_distribution_pipe_r'] = 0.0
|
742
|
-
args['dwhr_facilities_connected'] = 'none'
|
743
|
-
args['dwhr_equal_flow'] = true
|
744
|
-
args['dwhr_efficiency'] = 0.55
|
745
|
-
args['water_fixtures_shower_low_flow'] = true
|
746
|
-
args['water_fixtures_sink_low_flow'] = false
|
747
|
-
args['solar_thermal_system_type'] = 'none'
|
748
|
-
args['solar_thermal_collector_area'] = 40.0
|
749
|
-
args['solar_thermal_collector_loop_type'] = HPXML::SolarThermalLoopTypeDirect
|
750
|
-
args['solar_thermal_collector_type'] = HPXML::SolarThermalTypeEvacuatedTube
|
751
|
-
args['solar_thermal_collector_azimuth'] = 180
|
752
|
-
args['solar_thermal_collector_tilt'] = 20
|
753
|
-
args['solar_thermal_collector_rated_optical_efficiency'] = 0.5
|
754
|
-
args['solar_thermal_collector_rated_thermal_losses'] = 0.2799
|
755
|
-
args['solar_thermal_solar_fraction'] = 0
|
756
|
-
args['pv_system_present'] = false
|
757
|
-
args['pv_system_array_azimuth'] = 180
|
758
|
-
args['pv_system_array_tilt'] = 20
|
759
|
-
args['pv_system_max_power_output'] = 4000
|
760
|
-
args['pv_system_2_present'] = false
|
761
|
-
args['pv_system_2_array_azimuth'] = 180
|
762
|
-
args['pv_system_2_array_tilt'] = 20
|
763
|
-
args['pv_system_2_max_power_output'] = 4000
|
764
|
-
args['battery_present'] = false
|
765
|
-
args['lighting_present'] = true
|
766
|
-
args['lighting_interior_fraction_cfl'] = 0.4
|
767
|
-
args['lighting_interior_fraction_lfl'] = 0.1
|
768
|
-
args['lighting_interior_fraction_led'] = 0.25
|
769
|
-
args['lighting_exterior_fraction_cfl'] = 0.4
|
770
|
-
args['lighting_exterior_fraction_lfl'] = 0.1
|
771
|
-
args['lighting_exterior_fraction_led'] = 0.25
|
772
|
-
args['lighting_garage_fraction_cfl'] = 0.4
|
773
|
-
args['lighting_garage_fraction_lfl'] = 0.1
|
774
|
-
args['lighting_garage_fraction_led'] = 0.25
|
775
|
-
args['holiday_lighting_present'] = false
|
776
|
-
args['dehumidifier_type'] = 'none'
|
777
|
-
args['dehumidifier_efficiency_type'] = 'EnergyFactor'
|
778
|
-
args['dehumidifier_efficiency'] = 1.8
|
779
|
-
args['dehumidifier_capacity'] = 40
|
780
|
-
args['dehumidifier_rh_setpoint'] = 0.5
|
781
|
-
args['dehumidifier_fraction_dehumidification_load_served'] = 1
|
782
|
-
args['clothes_washer_present'] = true
|
783
|
-
args['clothes_washer_location'] = HPXML::LocationLivingSpace
|
784
|
-
args['clothes_washer_efficiency_type'] = 'IntegratedModifiedEnergyFactor'
|
785
|
-
args['clothes_washer_efficiency'] = 1.21
|
786
|
-
args['clothes_washer_rated_annual_kwh'] = 380.0
|
787
|
-
args['clothes_washer_label_electric_rate'] = 0.12
|
788
|
-
args['clothes_washer_label_gas_rate'] = 1.09
|
789
|
-
args['clothes_washer_label_annual_gas_cost'] = 27.0
|
790
|
-
args['clothes_washer_label_usage'] = 6.0
|
791
|
-
args['clothes_washer_capacity'] = 3.2
|
792
|
-
args['clothes_dryer_present'] = true
|
793
|
-
args['clothes_dryer_location'] = HPXML::LocationLivingSpace
|
794
|
-
args['clothes_dryer_fuel_type'] = HPXML::FuelTypeElectricity
|
795
|
-
args['clothes_dryer_efficiency_type'] = 'CombinedEnergyFactor'
|
796
|
-
args['clothes_dryer_efficiency'] = 3.73
|
797
|
-
args['clothes_dryer_vented_flow_rate'] = 150.0
|
798
|
-
args['dishwasher_present'] = true
|
799
|
-
args['dishwasher_location'] = HPXML::LocationLivingSpace
|
800
|
-
args['dishwasher_efficiency_type'] = 'RatedAnnualkWh'
|
801
|
-
args['dishwasher_efficiency'] = 307
|
802
|
-
args['dishwasher_label_electric_rate'] = 0.12
|
803
|
-
args['dishwasher_label_gas_rate'] = 1.09
|
804
|
-
args['dishwasher_label_annual_gas_cost'] = 22.32
|
805
|
-
args['dishwasher_label_usage'] = 4.0
|
806
|
-
args['dishwasher_place_setting_capacity'] = 12
|
807
|
-
args['refrigerator_present'] = true
|
808
|
-
args['refrigerator_location'] = HPXML::LocationLivingSpace
|
809
|
-
args['refrigerator_rated_annual_kwh'] = 650.0
|
810
|
-
args['extra_refrigerator_present'] = false
|
811
|
-
args['freezer_present'] = false
|
812
|
-
args['cooking_range_oven_present'] = true
|
813
|
-
args['cooking_range_oven_location'] = HPXML::LocationLivingSpace
|
814
|
-
args['cooking_range_oven_fuel_type'] = HPXML::FuelTypeElectricity
|
815
|
-
args['cooking_range_oven_is_induction'] = false
|
816
|
-
args['cooking_range_oven_is_convection'] = false
|
817
|
-
args['ceiling_fan_present'] = false
|
818
|
-
args['misc_plug_loads_television_present'] = true
|
819
|
-
args['misc_plug_loads_television_annual_kwh'] = 620.0
|
820
|
-
args['misc_plug_loads_other_annual_kwh'] = 2457.0
|
821
|
-
args['misc_plug_loads_other_frac_sensible'] = 0.855
|
822
|
-
args['misc_plug_loads_other_frac_latent'] = 0.045
|
823
|
-
args['misc_plug_loads_well_pump_present'] = false
|
824
|
-
args['misc_plug_loads_vehicle_present'] = false
|
825
|
-
args['misc_fuel_loads_grill_present'] = false
|
826
|
-
args['misc_fuel_loads_grill_fuel_type'] = HPXML::FuelTypeNaturalGas
|
827
|
-
args['misc_fuel_loads_lighting_present'] = false
|
828
|
-
args['misc_fuel_loads_lighting_fuel_type'] = HPXML::FuelTypeNaturalGas
|
829
|
-
args['misc_fuel_loads_fireplace_present'] = false
|
830
|
-
args['misc_fuel_loads_fireplace_fuel_type'] = HPXML::FuelTypeNaturalGas
|
831
|
-
args['pool_present'] = false
|
832
|
-
args['pool_heater_type'] = HPXML::HeaterTypeElectricResistance
|
833
|
-
args['hot_tub_present'] = false
|
834
|
-
args['hot_tub_heater_type'] = HPXML::HeaterTypeElectricResistance
|
835
|
-
args['utility_bill_scenario_names'] = 'Bills'
|
836
|
-
elsif ['ASHRAE_Standard_140/L100AC.xml'].include? hpxml_file
|
837
|
-
args['weather_station_epw_filepath'] = 'USA_CO_Colorado.Springs-Peterson.Field.724660_TMY3.epw'
|
838
|
-
args['geometry_unit_type'] = HPXML::ResidentialTypeSFD
|
839
|
-
args['geometry_unit_cfa'] = 1539.0
|
840
|
-
args['geometry_unit_left_wall_is_adiabatic'] = false
|
841
|
-
args['geometry_unit_right_wall_is_adiabatic'] = false
|
842
|
-
args['geometry_unit_front_wall_is_adiabatic'] = false
|
843
|
-
args['geometry_unit_back_wall_is_adiabatic'] = false
|
844
|
-
args['geometry_unit_num_floors_above_grade'] = 1
|
845
|
-
args['geometry_average_ceiling_height'] = 8.0
|
846
|
-
args['geometry_unit_orientation'] = 180.0
|
847
|
-
args['geometry_unit_aspect_ratio'] = 57.0 / 27.0
|
848
|
-
args['geometry_garage_width'] = 0
|
849
|
-
args['geometry_garage_depth'] = 0
|
850
|
-
args['geometry_garage_protrusion'] = 0
|
851
|
-
args['geometry_garage_position'] = 'Right'
|
852
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeAmbient
|
853
|
-
args['geometry_foundation_height'] = 7.25
|
854
|
-
args['geometry_foundation_height_above_grade'] = 0.667
|
855
|
-
args['geometry_rim_joist_height'] = 9.0
|
856
|
-
args['geometry_roof_type'] = 'gable'
|
857
|
-
args['geometry_roof_pitch'] = '4:12'
|
858
|
-
args['geometry_attic_type'] = HPXML::AtticTypeVented
|
859
|
-
args['geometry_eaves_depth'] = 0
|
860
|
-
args['geometry_unit_num_bedrooms'] = 3
|
861
|
-
args['geometry_unit_num_occupants'] = 0
|
862
|
-
args['floor_over_foundation_assembly_r'] = 14.15
|
863
|
-
args['floor_over_garage_assembly_r'] = 0
|
864
|
-
args['floor_type'] = HPXML::FloorTypeWoodFrame
|
865
|
-
args['foundation_wall_thickness'] = 6.0
|
866
|
-
args['foundation_wall_insulation_r'] = 0
|
867
|
-
args['foundation_wall_insulation_distance_to_top'] = 0
|
868
|
-
args['foundation_wall_insulation_distance_to_bottom'] = 0
|
869
|
-
args['rim_joist_assembly_r'] = 5.01
|
870
|
-
args['slab_perimeter_insulation_r'] = 0
|
871
|
-
args['slab_perimeter_depth'] = 0
|
872
|
-
args['slab_under_insulation_r'] = 0
|
873
|
-
args['slab_under_width'] = 0
|
874
|
-
args['slab_thickness'] = 4.0
|
875
|
-
args['slab_carpet_fraction'] = 0
|
876
|
-
args['slab_carpet_r'] = 0
|
877
|
-
args['ceiling_assembly_r'] = 18.45
|
878
|
-
args['roof_material_type'] = HPXML::RoofTypeAsphaltShingles
|
879
|
-
args['roof_color'] = HPXML::ColorMedium
|
880
|
-
args['roof_assembly_r'] = 1.99
|
881
|
-
args['roof_radiant_barrier'] = false
|
882
|
-
args['roof_radiant_barrier_grade'] = 1
|
883
|
-
args['neighbor_front_distance'] = 0
|
884
|
-
args['neighbor_back_distance'] = 0
|
885
|
-
args['neighbor_left_distance'] = 0
|
886
|
-
args['neighbor_right_distance'] = 0
|
887
|
-
args['wall_type'] = HPXML::WallTypeWoodStud
|
888
|
-
args['wall_siding_type'] = HPXML::SidingTypeWood
|
889
|
-
args['wall_color'] = HPXML::ColorMedium
|
890
|
-
args['wall_assembly_r'] = 11.76
|
891
|
-
args['window_front_wwr'] = 0
|
892
|
-
args['window_back_wwr'] = 0
|
893
|
-
args['window_left_wwr'] = 0
|
894
|
-
args['window_right_wwr'] = 0
|
895
|
-
args['window_area_front'] = 90
|
896
|
-
args['window_area_back'] = 90
|
897
|
-
args['window_area_left'] = 45
|
898
|
-
args['window_area_right'] = 45
|
899
|
-
args['window_aspect_ratio'] = 5.0 / 3.0
|
900
|
-
args['window_fraction_operable'] = 0
|
901
|
-
args['window_ufactor'] = 1.039
|
902
|
-
args['window_shgc'] = 0.67
|
903
|
-
args['window_interior_shading_winter'] = 1
|
904
|
-
args['window_interior_shading_summer'] = 1
|
905
|
-
args['overhangs_front_depth'] = 0
|
906
|
-
args['overhangs_back_depth'] = 0
|
907
|
-
args['overhangs_left_depth'] = 0
|
908
|
-
args['overhangs_right_depth'] = 0
|
909
|
-
args['overhangs_front_distance_to_top_of_window'] = 0
|
910
|
-
args['overhangs_back_distance_to_top_of_window'] = 0
|
911
|
-
args['overhangs_left_distance_to_top_of_window'] = 0
|
912
|
-
args['overhangs_right_distance_to_top_of_window'] = 0
|
913
|
-
args['overhangs_front_distance_to_bottom_of_window'] = 0
|
914
|
-
args['overhangs_back_distance_to_bottom_of_window'] = 0
|
915
|
-
args['overhangs_left_distance_to_bottom_of_window'] = 0
|
916
|
-
args['overhangs_right_distance_to_bottom_of_window'] = 0
|
917
|
-
args['skylight_area_front'] = 0
|
918
|
-
args['skylight_area_back'] = 0
|
919
|
-
args['skylight_area_left'] = 0
|
920
|
-
args['skylight_area_right'] = 0
|
921
|
-
args['skylight_ufactor'] = 0
|
922
|
-
args['skylight_shgc'] = 0
|
923
|
-
args['door_area'] = 40.0
|
924
|
-
args['door_rvalue'] = 3.04
|
925
|
-
args['air_leakage_units'] = HPXML::UnitsACHNatural
|
926
|
-
args['air_leakage_house_pressure'] = 50
|
927
|
-
args['air_leakage_value'] = 0.67
|
928
|
-
args['heating_system_type'] = 'none'
|
929
|
-
args['heating_system_fuel'] = HPXML::FuelTypeNaturalGas
|
930
|
-
args['heating_system_heating_efficiency'] = 0
|
931
|
-
args['heating_system_fraction_heat_load_served'] = 0
|
932
|
-
args['cooling_system_type'] = 'none'
|
933
|
-
args['cooling_system_cooling_efficiency_type'] = HPXML::UnitsSEER
|
934
|
-
args['cooling_system_cooling_efficiency'] = 0
|
935
|
-
args['cooling_system_cooling_compressor_type'] = HPXML::HVACCompressorTypeSingleStage
|
936
|
-
args['cooling_system_cooling_sensible_heat_fraction'] = 0
|
937
|
-
args['cooling_system_fraction_cool_load_served'] = 0
|
938
|
-
args['cooling_system_is_ducted'] = false
|
939
|
-
args['heat_pump_type'] = 'none'
|
940
|
-
args['heat_pump_heating_efficiency_type'] = HPXML::UnitsHSPF
|
941
|
-
args['heat_pump_heating_efficiency'] = 0
|
942
|
-
args['heat_pump_cooling_efficiency_type'] = HPXML::UnitsSEER
|
943
|
-
args['heat_pump_cooling_efficiency'] = 0
|
944
|
-
args['heat_pump_cooling_compressor_type'] = HPXML::HVACCompressorTypeSingleStage
|
945
|
-
args['heat_pump_cooling_sensible_heat_fraction'] = 0
|
946
|
-
args['heat_pump_fraction_heat_load_served'] = 0
|
947
|
-
args['heat_pump_fraction_cool_load_served'] = 0
|
948
|
-
args['heat_pump_backup_type'] = 'none'
|
949
|
-
args['heat_pump_backup_fuel'] = HPXML::FuelTypeElectricity
|
950
|
-
args['heat_pump_backup_heating_efficiency'] = 0
|
951
|
-
args['hvac_control_heating_weekday_setpoint'] = 68
|
952
|
-
args['hvac_control_heating_weekend_setpoint'] = 68
|
953
|
-
args['hvac_control_cooling_weekday_setpoint'] = 78
|
954
|
-
args['hvac_control_cooling_weekend_setpoint'] = 78
|
955
|
-
args['ducts_leakage_units'] = HPXML::UnitsCFM25
|
956
|
-
args['ducts_supply_leakage_to_outside_value'] = 0
|
957
|
-
args['ducts_return_leakage_to_outside_value'] = 0
|
958
|
-
args['ducts_supply_insulation_r'] = 0
|
959
|
-
args['ducts_return_insulation_r'] = 0
|
960
|
-
args['ducts_supply_location'] = HPXML::LocationLivingSpace
|
961
|
-
args['ducts_return_location'] = HPXML::LocationLivingSpace
|
962
|
-
args['ducts_supply_surface_area'] = 0
|
963
|
-
args['ducts_return_surface_area'] = 0
|
964
|
-
args['heating_system_2_type'] = 'none'
|
965
|
-
args['heating_system_2_fuel'] = HPXML::FuelTypeElectricity
|
966
|
-
args['heating_system_2_heating_efficiency'] = 0
|
967
|
-
args['heating_system_2_fraction_heat_load_served'] = 0
|
968
|
-
args['mech_vent_fan_type'] = 'none'
|
969
|
-
args['mech_vent_flow_rate'] = 0
|
970
|
-
args['mech_vent_hours_in_operation'] = 0
|
971
|
-
args['mech_vent_recovery_efficiency_type'] = 'Unadjusted'
|
972
|
-
args['mech_vent_total_recovery_efficiency'] = 0
|
973
|
-
args['mech_vent_sensible_recovery_efficiency'] = 0
|
974
|
-
args['mech_vent_fan_power'] = 0
|
975
|
-
args['mech_vent_num_units_served'] = 0
|
976
|
-
args['mech_vent_2_fan_type'] = 'none'
|
977
|
-
args['mech_vent_2_flow_rate'] = 0
|
978
|
-
args['mech_vent_2_hours_in_operation'] = 0
|
979
|
-
args['mech_vent_2_recovery_efficiency_type'] = 'Unadjusted'
|
980
|
-
args['mech_vent_2_total_recovery_efficiency'] = 0
|
981
|
-
args['mech_vent_2_sensible_recovery_efficiency'] = 0
|
982
|
-
args['mech_vent_2_fan_power'] = 0
|
983
|
-
args['kitchen_fans_quantity'] = 0
|
984
|
-
args['bathroom_fans_quantity'] = 0
|
985
|
-
args['whole_house_fan_present'] = false
|
986
|
-
args['water_heater_type'] = 'none'
|
987
|
-
args['water_heater_fuel_type'] = HPXML::FuelTypeElectricity
|
988
|
-
args['water_heater_location'] = HPXML::LocationLivingSpace
|
989
|
-
args['water_heater_tank_volume'] = 0
|
990
|
-
args['water_heater_efficiency_type'] = 'EnergyFactor'
|
991
|
-
args['water_heater_efficiency'] = 0
|
992
|
-
args['water_heater_recovery_efficiency'] = 0
|
993
|
-
args['water_heater_jacket_rvalue'] = 0
|
994
|
-
args['water_heater_setpoint_temperature'] = 0
|
995
|
-
args['water_heater_num_units_served'] = 0
|
996
|
-
args['hot_water_distribution_system_type'] = HPXML::DHWDistTypeStandard
|
997
|
-
args['hot_water_distribution_standard_piping_length'] = 0
|
998
|
-
args['hot_water_distribution_recirc_control_type'] = HPXML::DHWRecirControlTypeNone
|
999
|
-
args['hot_water_distribution_recirc_piping_length'] = 0
|
1000
|
-
args['hot_water_distribution_recirc_branch_piping_length'] = 0
|
1001
|
-
args['hot_water_distribution_recirc_pump_power'] = 0
|
1002
|
-
args['hot_water_distribution_pipe_r'] = 0
|
1003
|
-
args['dwhr_facilities_connected'] = 'none'
|
1004
|
-
args['dwhr_equal_flow'] = true
|
1005
|
-
args['dwhr_efficiency'] = 0
|
1006
|
-
args['water_fixtures_shower_low_flow'] = false
|
1007
|
-
args['water_fixtures_sink_low_flow'] = false
|
1008
|
-
args['water_fixtures_usage_multiplier'] = 0
|
1009
|
-
args['solar_thermal_system_type'] = 'none'
|
1010
|
-
args['solar_thermal_collector_area'] = 0
|
1011
|
-
args['solar_thermal_collector_loop_type'] = HPXML::SolarThermalLoopTypeDirect
|
1012
|
-
args['solar_thermal_collector_type'] = HPXML::SolarThermalTypeEvacuatedTube
|
1013
|
-
args['solar_thermal_collector_azimuth'] = 0
|
1014
|
-
args['solar_thermal_collector_tilt'] = 0
|
1015
|
-
args['solar_thermal_collector_rated_optical_efficiency'] = 0
|
1016
|
-
args['solar_thermal_collector_rated_thermal_losses'] = 0
|
1017
|
-
args['solar_thermal_solar_fraction'] = 0
|
1018
|
-
args['pv_system_present'] = false
|
1019
|
-
args['pv_system_array_azimuth'] = 0
|
1020
|
-
args['pv_system_array_tilt'] = 0
|
1021
|
-
args['pv_system_max_power_output'] = 0
|
1022
|
-
args['pv_system_2_present'] = false
|
1023
|
-
args['pv_system_2_array_azimuth'] = 0
|
1024
|
-
args['pv_system_2_array_tilt'] = 0
|
1025
|
-
args['pv_system_2_max_power_output'] = 0
|
1026
|
-
args['battery_present'] = false
|
1027
|
-
args['lighting_present'] = false
|
1028
|
-
args['lighting_interior_fraction_cfl'] = 0
|
1029
|
-
args['lighting_interior_fraction_lfl'] = 0
|
1030
|
-
args['lighting_interior_fraction_led'] = 0
|
1031
|
-
args['lighting_interior_usage_multiplier'] = 0
|
1032
|
-
args['lighting_exterior_fraction_cfl'] = 0
|
1033
|
-
args['lighting_exterior_fraction_lfl'] = 0
|
1034
|
-
args['lighting_exterior_fraction_led'] = 0
|
1035
|
-
args['lighting_exterior_usage_multiplier'] = 0
|
1036
|
-
args['lighting_garage_fraction_cfl'] = 0
|
1037
|
-
args['lighting_garage_fraction_lfl'] = 0
|
1038
|
-
args['lighting_garage_fraction_led'] = 0
|
1039
|
-
args['lighting_garage_usage_multiplier'] = 0
|
1040
|
-
args['holiday_lighting_present'] = false
|
1041
|
-
args['dehumidifier_type'] = 'none'
|
1042
|
-
args['dehumidifier_efficiency_type'] = 'EnergyFactor'
|
1043
|
-
args['dehumidifier_efficiency'] = 0
|
1044
|
-
args['dehumidifier_capacity'] = 0
|
1045
|
-
args['dehumidifier_rh_setpoint'] = 0
|
1046
|
-
args['dehumidifier_fraction_dehumidification_load_served'] = 0
|
1047
|
-
args['clothes_washer_present'] = false
|
1048
|
-
args['clothes_washer_efficiency_type'] = 'IntegratedModifiedEnergyFactor'
|
1049
|
-
args['clothes_dryer_present'] = false
|
1050
|
-
args['clothes_dryer_fuel_type'] = HPXML::FuelTypeElectricity
|
1051
|
-
args['clothes_dryer_efficiency_type'] = 'CombinedEnergyFactor'
|
1052
|
-
args['dishwasher_present'] = false
|
1053
|
-
args['dishwasher_efficiency_type'] = 'RatedAnnualkWh'
|
1054
|
-
args['refrigerator_present'] = false
|
1055
|
-
args['extra_refrigerator_present'] = false
|
1056
|
-
args['freezer_present'] = false
|
1057
|
-
args['cooking_range_oven_present'] = false
|
1058
|
-
args['cooking_range_oven_fuel_type'] = HPXML::FuelTypeElectricity
|
1059
|
-
args['ceiling_fan_present'] = false
|
1060
|
-
args['misc_plug_loads_television_present'] = false
|
1061
|
-
args['misc_plug_loads_other_annual_kwh'] = 7302.0
|
1062
|
-
args['misc_plug_loads_other_frac_sensible'] = 0.822
|
1063
|
-
args['misc_plug_loads_other_frac_latent'] = 0.178
|
1064
|
-
args['misc_plug_loads_well_pump_present'] = false
|
1065
|
-
args['misc_plug_loads_vehicle_present'] = false
|
1066
|
-
args['misc_fuel_loads_grill_present'] = false
|
1067
|
-
args['misc_fuel_loads_grill_fuel_type'] = HPXML::FuelTypeNaturalGas
|
1068
|
-
args['misc_fuel_loads_lighting_present'] = false
|
1069
|
-
args['misc_fuel_loads_lighting_fuel_type'] = HPXML::FuelTypeNaturalGas
|
1070
|
-
args['misc_fuel_loads_fireplace_present'] = false
|
1071
|
-
args['misc_fuel_loads_fireplace_fuel_type'] = HPXML::FuelTypeNaturalGas
|
1072
|
-
args['pool_present'] = false
|
1073
|
-
args['pool_heater_type'] = HPXML::HeaterTypeElectricResistance
|
1074
|
-
args['hot_tub_present'] = false
|
1075
|
-
args['hot_tub_heater_type'] = HPXML::HeaterTypeElectricResistance
|
1076
|
-
end
|
1077
|
-
|
1078
|
-
# ASHRAE 140
|
1079
|
-
if ['ASHRAE_Standard_140/L100AL.xml'].include? hpxml_file
|
1080
|
-
args['weather_station_epw_filepath'] = 'USA_NV_Las.Vegas-McCarran.Intl.AP.723860_TMY3.epw'
|
1081
|
-
elsif ['ASHRAE_Standard_140/L110AC.xml',
|
1082
|
-
'ASHRAE_Standard_140/L110AL.xml'].include? hpxml_file
|
1083
|
-
args['air_leakage_value'] = 1.5
|
1084
|
-
elsif ['ASHRAE_Standard_140/L120AC.xml',
|
1085
|
-
'ASHRAE_Standard_140/L120AL.xml'].include? hpxml_file
|
1086
|
-
args['wall_assembly_r'] = 23.58
|
1087
|
-
args['ceiling_assembly_r'] = 57.49
|
1088
|
-
elsif ['ASHRAE_Standard_140/L130AC.xml',
|
1089
|
-
'ASHRAE_Standard_140/L130AL.xml'].include? hpxml_file
|
1090
|
-
args['window_ufactor'] = 0.3
|
1091
|
-
args['window_shgc'] = 0.335
|
1092
|
-
elsif ['ASHRAE_Standard_140/L140AC.xml',
|
1093
|
-
'ASHRAE_Standard_140/L140AL.xml'].include? hpxml_file
|
1094
|
-
args['window_area_front'] = 0.0
|
1095
|
-
args['window_area_back'] = 0.0
|
1096
|
-
args['window_area_left'] = 0.0
|
1097
|
-
args['window_area_right'] = 0.0
|
1098
|
-
elsif ['ASHRAE_Standard_140/L150AC.xml',
|
1099
|
-
'ASHRAE_Standard_140/L150AL.xml'].include? hpxml_file
|
1100
|
-
args['window_area_front'] = 270.0
|
1101
|
-
args['window_area_back'] = 0.0
|
1102
|
-
args['window_area_left'] = 0.0
|
1103
|
-
args['window_area_right'] = 0.0
|
1104
|
-
args['window_aspect_ratio'] = 5.0 / 1.5
|
1105
|
-
elsif ['ASHRAE_Standard_140/L155AC.xml',
|
1106
|
-
'ASHRAE_Standard_140/L155AL.xml'].include? hpxml_file
|
1107
|
-
args['overhangs_front_depth'] = 2.5
|
1108
|
-
args['overhangs_front_distance_to_top_of_window'] = 1.0
|
1109
|
-
args['overhangs_front_distance_to_bottom_of_window'] = 6.0
|
1110
|
-
elsif ['ASHRAE_Standard_140/L160AC.xml',
|
1111
|
-
'ASHRAE_Standard_140/L160AL.xml'].include? hpxml_file
|
1112
|
-
args['window_area_front'] = 0.0
|
1113
|
-
args['window_area_back'] = 0.0
|
1114
|
-
args['window_area_left'] = 135.0
|
1115
|
-
args['window_area_right'] = 135.0
|
1116
|
-
args['window_aspect_ratio'] = 5.0 / 1.5
|
1117
|
-
elsif ['ASHRAE_Standard_140/L170AC.xml',
|
1118
|
-
'ASHRAE_Standard_140/L170AL.xml'].include? hpxml_file
|
1119
|
-
args['misc_plug_loads_other_annual_kwh'] = 0.0
|
1120
|
-
elsif ['ASHRAE_Standard_140/L200AC.xml',
|
1121
|
-
'ASHRAE_Standard_140/L200AL.xml'].include? hpxml_file
|
1122
|
-
args['air_leakage_value'] = 1.5
|
1123
|
-
args['wall_assembly_r'] = 4.84
|
1124
|
-
args['ceiling_assembly_r'] = 11.75
|
1125
|
-
args['floor_over_foundation_assembly_r'] = 4.24
|
1126
|
-
elsif ['ASHRAE_Standard_140/L202AC.xml',
|
1127
|
-
'ASHRAE_Standard_140/L202AL.xml'].include? hpxml_file
|
1128
|
-
args['wall_color'] = HPXML::ColorReflective
|
1129
|
-
args['roof_color'] = HPXML::ColorReflective
|
1130
|
-
elsif ['ASHRAE_Standard_140/L302XC.xml'].include? hpxml_file
|
1131
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeSlab
|
1132
|
-
args['slab_carpet_fraction'] = 1.0
|
1133
|
-
args['slab_carpet_r'] = 2.08
|
1134
|
-
elsif ['ASHRAE_Standard_140/L304XC.xml'].include? hpxml_file
|
1135
|
-
args['slab_perimeter_insulation_r'] = 5.4
|
1136
|
-
args['slab_perimeter_depth'] = 2.5
|
1137
|
-
elsif ['ASHRAE_Standard_140/L322XC.xml'].include? hpxml_file
|
1138
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeBasementConditioned
|
1139
|
-
args['geometry_unit_cfa'] = 3078
|
1140
|
-
args['air_leakage_value'] = 0.335
|
1141
|
-
elsif ['ASHRAE_Standard_140/L324XC.xml'].include? hpxml_file
|
1142
|
-
args['rim_joist_assembly_r'] = 13.14
|
1143
|
-
args['foundation_wall_insulation_r'] = 10.2
|
1144
|
-
args['foundation_wall_insulation_distance_to_bottom'] = 7.25
|
1145
|
-
args['foundation_wall_insulation_location'] = 'interior'
|
1146
|
-
end
|
1147
|
-
|
1148
|
-
# Appliances
|
1149
|
-
if ['base-appliances-coal.xml'].include? hpxml_file
|
1150
|
-
args['clothes_dryer_fuel_type'] = HPXML::FuelTypeCoal
|
1151
|
-
args['clothes_dryer_efficiency'] = 3.3
|
1152
|
-
args.delete('clothes_dryer_vented_flow_rate')
|
1153
|
-
args['cooking_range_oven_fuel_type'] = HPXML::FuelTypeCoal
|
1154
|
-
elsif ['base-appliances-dehumidifier.xml'].include? hpxml_file
|
1155
|
-
args['dehumidifier_type'] = HPXML::DehumidifierTypePortable
|
1156
|
-
elsif ['base-appliances-dehumidifier-ief-portable.xml'].include? hpxml_file
|
1157
|
-
args['dehumidifier_efficiency_type'] = 'IntegratedEnergyFactor'
|
1158
|
-
args['dehumidifier_efficiency'] = 1.5
|
1159
|
-
elsif ['base-appliances-dehumidifier-ief-whole-home.xml'].include? hpxml_file
|
1160
|
-
args['dehumidifier_type'] = HPXML::DehumidifierTypeWholeHome
|
1161
|
-
elsif ['base-appliances-gas.xml'].include? hpxml_file
|
1162
|
-
args['clothes_dryer_fuel_type'] = HPXML::FuelTypeNaturalGas
|
1163
|
-
args['clothes_dryer_efficiency'] = 3.3
|
1164
|
-
args.delete('clothes_dryer_vented_flow_rate')
|
1165
|
-
args['cooking_range_oven_fuel_type'] = HPXML::FuelTypeNaturalGas
|
1166
|
-
elsif ['base-appliances-modified.xml'].include? hpxml_file
|
1167
|
-
args['clothes_washer_efficiency_type'] = 'ModifiedEnergyFactor'
|
1168
|
-
args['clothes_washer_efficiency'] = 1.65
|
1169
|
-
args['clothes_dryer_efficiency_type'] = 'EnergyFactor'
|
1170
|
-
args['clothes_dryer_efficiency'] = 4.29
|
1171
|
-
args['clothes_dryer_vented_flow_rate'] = 0.0
|
1172
|
-
args['dishwasher_efficiency_type'] = 'EnergyFactor'
|
1173
|
-
args['dishwasher_efficiency'] = 0.7
|
1174
|
-
args['dishwasher_place_setting_capacity'] = 6
|
1175
|
-
elsif ['base-appliances-none.xml'].include? hpxml_file
|
1176
|
-
args['clothes_washer_present'] = false
|
1177
|
-
args['clothes_dryer_present'] = false
|
1178
|
-
args['dishwasher_present'] = false
|
1179
|
-
args['refrigerator_present'] = false
|
1180
|
-
args['cooking_range_oven_present'] = false
|
1181
|
-
elsif ['base-appliances-oil.xml',
|
1182
|
-
'base-appliances-oil-location-miami-fl.xml'].include? hpxml_file
|
1183
|
-
args['clothes_dryer_fuel_type'] = HPXML::FuelTypeOil
|
1184
|
-
args['clothes_dryer_efficiency'] = 3.3
|
1185
|
-
args.delete('clothes_dryer_vented_flow_rate')
|
1186
|
-
args['cooking_range_oven_fuel_type'] = HPXML::FuelTypeOil
|
1187
|
-
elsif ['base-appliances-propane.xml',
|
1188
|
-
'base-appliances-propane-location-portland-or.xml'].include? hpxml_file
|
1189
|
-
args['clothes_dryer_fuel_type'] = HPXML::FuelTypePropane
|
1190
|
-
args['clothes_dryer_efficiency'] = 3.3
|
1191
|
-
args.delete('clothes_dryer_vented_flow_rate')
|
1192
|
-
args['cooking_range_oven_fuel_type'] = HPXML::FuelTypePropane
|
1193
|
-
elsif ['base-appliances-wood.xml'].include? hpxml_file
|
1194
|
-
args['clothes_dryer_fuel_type'] = HPXML::FuelTypeWoodCord
|
1195
|
-
args['clothes_dryer_efficiency'] = 3.3
|
1196
|
-
args.delete('clothes_dryer_vented_flow_rate')
|
1197
|
-
args['cooking_range_oven_fuel_type'] = HPXML::FuelTypeWoodCord
|
1198
|
-
end
|
1199
|
-
|
1200
|
-
# Attic/roof
|
1201
|
-
if ['base-atticroof-flat.xml'].include? hpxml_file
|
1202
|
-
args['geometry_attic_type'] = HPXML::AtticTypeFlatRoof
|
1203
|
-
args['roof_assembly_r'] = 25.8
|
1204
|
-
args['ducts_supply_leakage_to_outside_value'] = 0.0
|
1205
|
-
args['ducts_return_leakage_to_outside_value'] = 0.0
|
1206
|
-
args['ducts_supply_location'] = HPXML::LocationBasementConditioned
|
1207
|
-
args['ducts_return_location'] = HPXML::LocationBasementConditioned
|
1208
|
-
elsif ['base-atticroof-radiant-barrier.xml'].include? hpxml_file
|
1209
|
-
args['roof_radiant_barrier'] = true
|
1210
|
-
args['roof_radiant_barrier_grade'] = 2
|
1211
|
-
args['ceiling_assembly_r'] = 8.7
|
1212
|
-
elsif ['base-atticroof-unvented-insulated-roof.xml'].include? hpxml_file
|
1213
|
-
args['ceiling_assembly_r'] = 2.1
|
1214
|
-
args['roof_assembly_r'] = 25.8
|
1215
|
-
elsif ['base-atticroof-vented.xml'].include? hpxml_file
|
1216
|
-
args['geometry_attic_type'] = HPXML::AtticTypeVented
|
1217
|
-
args['water_heater_location'] = HPXML::LocationAtticVented
|
1218
|
-
args['ducts_supply_location'] = HPXML::LocationAtticVented
|
1219
|
-
args['ducts_return_location'] = HPXML::LocationAtticVented
|
1220
|
-
elsif ['base-atticroof-conditioned.xml'].include? hpxml_file
|
1221
|
-
args['geometry_attic_type'] = HPXML::AtticTypeConditioned
|
1222
|
-
args['geometry_unit_num_floors_above_grade'] = 2
|
1223
|
-
args['geometry_unit_cfa'] = 3600
|
1224
|
-
args['ducts_supply_location'] = HPXML::LocationLivingSpace
|
1225
|
-
args['ducts_return_location'] = HPXML::LocationLivingSpace
|
1226
|
-
args['ducts_supply_leakage_to_outside_value'] = 50
|
1227
|
-
args['ducts_return_leakage_to_outside_value'] = 100
|
1228
|
-
args['water_heater_location'] = HPXML::LocationBasementConditioned
|
1229
|
-
args['clothes_washer_location'] = HPXML::LocationBasementConditioned
|
1230
|
-
args['clothes_dryer_location'] = HPXML::LocationBasementConditioned
|
1231
|
-
args['dishwasher_location'] = HPXML::LocationBasementConditioned
|
1232
|
-
args['refrigerator_location'] = HPXML::LocationBasementConditioned
|
1233
|
-
args['cooking_range_oven_location'] = HPXML::LocationBasementConditioned
|
1234
|
-
args['misc_plug_loads_other_annual_kwh'] = 3276
|
1235
|
-
elsif ['base-atticroof-cathedral.xml'].include? hpxml_file
|
1236
|
-
# BuildResHPXML measure doesn't support cathedral ceiling; model as
|
1237
|
-
# conditioned attic and then update the resulting HPXML later.
|
1238
|
-
args['geometry_attic_type'] = HPXML::AtticTypeConditioned
|
1239
|
-
args['geometry_unit_num_floors_above_grade'] = 2
|
1240
|
-
args['geometry_unit_cfa'] = 4050
|
1241
|
-
args['window_area_left'] = 120.0
|
1242
|
-
args['window_area_right'] = 120.0
|
1243
|
-
args['window_aspect_ratio'] = 5.0 / 2.5
|
1244
|
-
args['roof_assembly_r'] = 25.8
|
1245
|
-
args['ducts_supply_location'] = HPXML::LocationLivingSpace
|
1246
|
-
args['ducts_return_location'] = HPXML::LocationLivingSpace
|
1247
|
-
args['ducts_supply_leakage_to_outside_value'] = 0
|
1248
|
-
args['ducts_return_leakage_to_outside_value'] = 0
|
1249
|
-
end
|
1250
|
-
|
1251
|
-
# Single-Family Attached
|
1252
|
-
if ['base-bldgtype-single-family-attached.xml'].include? hpxml_file
|
1253
|
-
args['geometry_unit_type'] = HPXML::ResidentialTypeSFA
|
1254
|
-
args['geometry_unit_cfa'] = 1800.0
|
1255
|
-
args['geometry_unit_aspect_ratio'] = 0.6667
|
1256
|
-
args['geometry_building_num_units'] = 3
|
1257
|
-
args['geometry_unit_right_wall_is_adiabatic'] = true
|
1258
|
-
args['window_front_wwr'] = 0.18
|
1259
|
-
args['window_back_wwr'] = 0.18
|
1260
|
-
args['window_left_wwr'] = 0.18
|
1261
|
-
args['window_right_wwr'] = 0.18
|
1262
|
-
args['window_area_front'] = 0
|
1263
|
-
args['window_area_back'] = 0
|
1264
|
-
args['window_area_left'] = 0
|
1265
|
-
args['window_area_right'] = 0
|
1266
|
-
args['heating_system_heating_capacity'] = 24000.0
|
1267
|
-
args['misc_plug_loads_other_annual_kwh'] = 1638.0
|
1268
|
-
elsif ['base-bldgtype-single-family-attached-2stories.xml'].include? hpxml_file
|
1269
|
-
args['geometry_unit_num_floors_above_grade'] = 2
|
1270
|
-
args['geometry_unit_cfa'] = 2700.0
|
1271
|
-
args['heating_system_heating_capacity'] = 48000.0
|
1272
|
-
args['cooling_system_cooling_capacity'] = 36000.0
|
1273
|
-
args['ducts_supply_surface_area'] = 112.5
|
1274
|
-
args['ducts_return_surface_area'] = 37.5
|
1275
|
-
args['misc_plug_loads_other_annual_kwh'] = 2457.0
|
1276
|
-
elsif ['base-bldgtype-single-family-attached-atticroof-cathedral.xml'].include? hpxml_file
|
1277
|
-
args['geometry_attic_type'] = HPXML::AtticTypeConditioned
|
1278
|
-
args['ducts_supply_location'] = HPXML::LocationLivingSpace
|
1279
|
-
args['ducts_return_location'] = HPXML::LocationLivingSpace
|
1280
|
-
args['ducts_supply_leakage_to_outside_value'] = 0
|
1281
|
-
args['ducts_return_leakage_to_outside_value'] = 0
|
1282
|
-
end
|
1283
|
-
|
1284
|
-
# Multifamily
|
1285
|
-
if ['base-bldgtype-multifamily.xml'].include? hpxml_file
|
1286
|
-
args['geometry_unit_type'] = HPXML::ResidentialTypeApartment
|
1287
|
-
args['geometry_unit_cfa'] = 900.0
|
1288
|
-
args['geometry_unit_aspect_ratio'] = 0.6667
|
1289
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeAboveApartment
|
1290
|
-
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
1291
|
-
args['geometry_unit_right_wall_is_adiabatic'] = true
|
1292
|
-
args['geometry_building_num_units'] = 6
|
1293
|
-
args['window_front_wwr'] = 0.18
|
1294
|
-
args['window_back_wwr'] = 0.18
|
1295
|
-
args['window_left_wwr'] = 0.18
|
1296
|
-
args['window_right_wwr'] = 0.18
|
1297
|
-
args['window_area_front'] = 0
|
1298
|
-
args['window_area_back'] = 0
|
1299
|
-
args['window_area_left'] = 0
|
1300
|
-
args['window_area_right'] = 0
|
1301
|
-
args['heating_system_heating_capacity'] = 12000.0
|
1302
|
-
args['cooling_system_cooling_capacity'] = 12000.0
|
1303
|
-
args['ducts_supply_leakage_to_outside_value'] = 0.0
|
1304
|
-
args['ducts_return_leakage_to_outside_value'] = 0.0
|
1305
|
-
args['ducts_supply_location'] = HPXML::LocationLivingSpace
|
1306
|
-
args['ducts_return_location'] = HPXML::LocationLivingSpace
|
1307
|
-
args['ducts_supply_insulation_r'] = 0.0
|
1308
|
-
args['door_area'] = 20.0
|
1309
|
-
args['misc_plug_loads_other_annual_kwh'] = 819.0
|
1310
|
-
elsif ['base-bldgtype-multifamily-shared-boiler-only-baseboard.xml',
|
1311
|
-
'base-bldgtype-multifamily-shared-boiler-chiller-baseboard.xml'].include? hpxml_file
|
1312
|
-
args['heating_system_type'] = "Shared #{HPXML::HVACTypeBoiler} w/ Baseboard"
|
1313
|
-
args['cooling_system_type'] = 'none'
|
1314
|
-
elsif ['base-bldgtype-multifamily-shared-boiler-only-fan-coil.xml',
|
1315
|
-
'base-bldgtype-multifamily-shared-boiler-chiller-fan-coil.xml'].include? hpxml_file
|
1316
|
-
args['heating_system_type'] = "Shared #{HPXML::HVACTypeBoiler} w/ Ductless Fan Coil"
|
1317
|
-
elsif ['base-bldgtype-multifamily-shared-chiller-only-baseboard.xml'].include? hpxml_file
|
1318
|
-
args['heating_system_type'] = 'none'
|
1319
|
-
args['cooling_system_type'] = 'none'
|
1320
|
-
elsif ['base-bldgtype-multifamily-shared-mechvent.xml'].include? hpxml_file
|
1321
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeSupply
|
1322
|
-
args['mech_vent_flow_rate'] = 800
|
1323
|
-
args['mech_vent_fan_power'] = 240
|
1324
|
-
args['mech_vent_num_units_served'] = 10
|
1325
|
-
args['mech_vent_shared_frac_recirculation'] = 0.5
|
1326
|
-
args['mech_vent_2_fan_type'] = HPXML::MechVentTypeExhaust
|
1327
|
-
args['mech_vent_2_flow_rate'] = 72
|
1328
|
-
args['mech_vent_2_fan_power'] = 26
|
1329
|
-
elsif ['base-bldgtype-multifamily-shared-mechvent-preconditioning.xml'].include? hpxml_file
|
1330
|
-
args['mech_vent_shared_preheating_fuel'] = HPXML::FuelTypeNaturalGas
|
1331
|
-
args['mech_vent_shared_preheating_efficiency'] = 0.92
|
1332
|
-
args['mech_vent_shared_preheating_fraction_heat_load_served'] = 0.7
|
1333
|
-
args['mech_vent_shared_precooling_fuel'] = HPXML::FuelTypeElectricity
|
1334
|
-
args['mech_vent_shared_precooling_efficiency'] = 4.0
|
1335
|
-
args['mech_vent_shared_precooling_fraction_cool_load_served'] = 0.8
|
1336
|
-
elsif ['base-bldgtype-multifamily-shared-pv.xml'].include? hpxml_file
|
1337
|
-
args['pv_system_present'] = true
|
1338
|
-
args['pv_system_num_bedrooms_served'] = 6 * 3
|
1339
|
-
args['pv_system_location'] = HPXML::LocationGround
|
1340
|
-
args['pv_system_module_type'] = HPXML::PVModuleTypeStandard
|
1341
|
-
args['pv_system_tracking'] = HPXML::PVTrackingTypeFixed
|
1342
|
-
args['pv_system_array_azimuth'] = 225
|
1343
|
-
args['pv_system_array_tilt'] = 30
|
1344
|
-
args['pv_system_max_power_output'] = 30000
|
1345
|
-
args['pv_system_inverter_efficiency'] = 0.96
|
1346
|
-
args['pv_system_system_losses_fraction'] = 0.14
|
1347
|
-
elsif ['base-bldgtype-multifamily-shared-water-heater.xml'].include? hpxml_file
|
1348
|
-
args['water_heater_fuel_type'] = HPXML::FuelTypeNaturalGas
|
1349
|
-
args['water_heater_num_units_served'] = 6
|
1350
|
-
args['water_heater_tank_volume'] = 120
|
1351
|
-
args['water_heater_efficiency'] = 0.59
|
1352
|
-
args['water_heater_recovery_efficiency'] = 0.76
|
1353
|
-
args['water_heater_heating_capacity'] = 40000
|
1354
|
-
end
|
1355
|
-
|
1356
|
-
# Occ Calc Type
|
1357
|
-
if ['base-calctype-operational.xml',
|
1358
|
-
'base-calctype-operational-misc-loads-large-uncommon.xml',
|
1359
|
-
'base-calctype-operational-misc-loads-large-uncommon2.xml',
|
1360
|
-
'base-bldgtype-multifamily-calctype-operational.xml'].include? hpxml_file
|
1361
|
-
args['occupancy_calculation_type'] = HPXML::OccupancyCalculationTypeOperational
|
1362
|
-
args['geometry_unit_num_occupants'] = 1
|
1363
|
-
args.delete('misc_plug_loads_television_annual_kwh')
|
1364
|
-
args.delete('misc_plug_loads_other_annual_kwh')
|
1365
|
-
args.delete('pool_pump_annual_kwh')
|
1366
|
-
args.delete('pool_heater_annual_therm')
|
1367
|
-
args.delete('pool_heater_annual_kwh')
|
1368
|
-
args.delete('hot_tub_pump_annual_kwh')
|
1369
|
-
args.delete('hot_tub_heater_annual_therm')
|
1370
|
-
args.delete('hot_tub_heater_annual_kwh')
|
1371
|
-
args.delete('misc_plug_loads_well_pump_annual_kwh')
|
1372
|
-
args.delete('misc_plug_loads_vehicle_annual_kwh')
|
1373
|
-
args.delete('misc_fuel_loads_grill_annual_therm')
|
1374
|
-
args.delete('misc_fuel_loads_lighting_annual_therm')
|
1375
|
-
args.delete('misc_fuel_loads_fireplace_annual_therm')
|
1376
|
-
elsif ['base-calctype-operational-misc-defaults.xml'].include? hpxml_file
|
1377
|
-
args['occupancy_calculation_type'] = HPXML::OccupancyCalculationTypeOperational
|
1378
|
-
args['geometry_unit_num_occupants'] = 5
|
1379
|
-
end
|
1380
|
-
|
1381
|
-
# DHW
|
1382
|
-
if ['base-dhw-combi-tankless.xml'].include? hpxml_file
|
1383
|
-
args['water_heater_type'] = HPXML::WaterHeaterTypeCombiTankless
|
1384
|
-
args.delete('water_heater_tank_volume')
|
1385
|
-
elsif ['base-dhw-combi-tankless-outside.xml',
|
1386
|
-
'base-dhw-indirect-outside.xml',
|
1387
|
-
'base-dhw-tank-gas-outside.xml',
|
1388
|
-
'base-dhw-tank-heat-pump-outside.xml',
|
1389
|
-
'base-dhw-tankless-electric-outside.xml'].include? hpxml_file
|
1390
|
-
args['water_heater_location'] = HPXML::LocationOtherExterior
|
1391
|
-
elsif ['base-dhw-dwhr.xml'].include? hpxml_file
|
1392
|
-
args['dwhr_facilities_connected'] = HPXML::DWHRFacilitiesConnectedAll
|
1393
|
-
elsif ['base-dhw-indirect.xml'].include? hpxml_file
|
1394
|
-
args['water_heater_type'] = HPXML::WaterHeaterTypeCombiStorage
|
1395
|
-
args['water_heater_tank_volume'] = 50
|
1396
|
-
elsif ['base-dhw-indirect-standbyloss.xml'].include? hpxml_file
|
1397
|
-
args['water_heater_standby_loss'] = 1.0
|
1398
|
-
elsif ['base-dhw-indirect-with-solar-fraction.xml',
|
1399
|
-
'base-dhw-solar-fraction.xml',
|
1400
|
-
'base-dhw-tank-heat-pump-with-solar-fraction.xml',
|
1401
|
-
'base-dhw-tankless-gas-with-solar-fraction.xml'].include? hpxml_file
|
1402
|
-
args['solar_thermal_system_type'] = HPXML::SolarThermalSystemType
|
1403
|
-
args['solar_thermal_solar_fraction'] = 0.65
|
1404
|
-
elsif ['base-dhw-jacket-electric.xml',
|
1405
|
-
'base-dhw-jacket-gas.xml',
|
1406
|
-
'base-dhw-jacket-hpwh.xml',
|
1407
|
-
'base-dhw-jacket-indirect.xml'].include? hpxml_file
|
1408
|
-
args['water_heater_jacket_rvalue'] = 10.0
|
1409
|
-
elsif ['base-dhw-low-flow-fixtures.xml'].include? hpxml_file
|
1410
|
-
args['water_fixtures_sink_low_flow'] = true
|
1411
|
-
elsif ['base-dhw-none.xml'].include? hpxml_file
|
1412
|
-
args['water_heater_type'] = 'none'
|
1413
|
-
elsif ['base-dhw-recirc-demand.xml'].include? hpxml_file
|
1414
|
-
args['hot_water_distribution_system_type'] = HPXML::DHWDistTypeRecirc
|
1415
|
-
args['hot_water_distribution_recirc_control_type'] = HPXML::DHWRecirControlTypeSensor
|
1416
|
-
args['hot_water_distribution_pipe_r'] = 3.0
|
1417
|
-
elsif ['base-dhw-recirc-manual.xml'].include? hpxml_file
|
1418
|
-
args['hot_water_distribution_system_type'] = HPXML::DHWDistTypeRecirc
|
1419
|
-
args['hot_water_distribution_recirc_control_type'] = HPXML::DHWRecirControlTypeManual
|
1420
|
-
args['hot_water_distribution_pipe_r'] = 3.0
|
1421
|
-
elsif ['base-dhw-recirc-nocontrol.xml'].include? hpxml_file
|
1422
|
-
args['hot_water_distribution_system_type'] = HPXML::DHWDistTypeRecirc
|
1423
|
-
elsif ['base-dhw-recirc-temperature.xml'].include? hpxml_file
|
1424
|
-
args['hot_water_distribution_system_type'] = HPXML::DHWDistTypeRecirc
|
1425
|
-
args['hot_water_distribution_recirc_control_type'] = HPXML::DHWRecirControlTypeTemperature
|
1426
|
-
elsif ['base-dhw-recirc-timer.xml'].include? hpxml_file
|
1427
|
-
args['hot_water_distribution_system_type'] = HPXML::DHWDistTypeRecirc
|
1428
|
-
args['hot_water_distribution_recirc_control_type'] = HPXML::DHWRecirControlTypeTimer
|
1429
|
-
elsif ['base-dhw-solar-direct-evacuated-tube.xml'].include? hpxml_file
|
1430
|
-
args['solar_thermal_system_type'] = HPXML::SolarThermalSystemType
|
1431
|
-
args['solar_thermal_storage_volume'] = 60
|
1432
|
-
elsif ['base-dhw-solar-indirect-flat-plate.xml'].include? hpxml_file
|
1433
|
-
args['solar_thermal_system_type'] = HPXML::SolarThermalSystemType
|
1434
|
-
args['solar_thermal_collector_type'] = HPXML::SolarThermalTypeSingleGlazing
|
1435
|
-
args['solar_thermal_collector_rated_optical_efficiency'] = 0.77
|
1436
|
-
args['solar_thermal_collector_rated_thermal_losses'] = 0.793
|
1437
|
-
args['solar_thermal_storage_volume'] = 60
|
1438
|
-
args['solar_thermal_collector_loop_type'] = HPXML::SolarThermalLoopTypeIndirect
|
1439
|
-
elsif ['base-dhw-solar-direct-flat-plate.xml'].include? hpxml_file
|
1440
|
-
args['solar_thermal_collector_loop_type'] = HPXML::SolarThermalLoopTypeDirect
|
1441
|
-
elsif ['base-dhw-solar-direct-ics.xml'].include? hpxml_file
|
1442
|
-
args['solar_thermal_collector_type'] = HPXML::SolarThermalTypeICS
|
1443
|
-
args['solar_thermal_collector_loop_type'] = HPXML::SolarThermalLoopTypeDirect
|
1444
|
-
elsif ['base-dhw-solar-thermosyphon-flat-plate.xml'].include? hpxml_file
|
1445
|
-
args['solar_thermal_collector_loop_type'] = HPXML::SolarThermalLoopTypeThermosyphon
|
1446
|
-
elsif ['base-dhw-tank-coal.xml'].include? hpxml_file
|
1447
|
-
args['water_heater_fuel_type'] = HPXML::FuelTypeCoal
|
1448
|
-
elsif ['base-dhw-tank-elec-uef.xml'].include? hpxml_file
|
1449
|
-
args['water_heater_tank_volume'] = 30
|
1450
|
-
args['water_heater_efficiency_type'] = 'UniformEnergyFactor'
|
1451
|
-
args['water_heater_efficiency'] = 0.93
|
1452
|
-
args['water_heater_usage_bin'] = HPXML::WaterHeaterUsageBinLow
|
1453
|
-
args['water_heater_recovery_efficiency'] = 0.98
|
1454
|
-
args['water_heater_heating_capacity'] = 15354
|
1455
|
-
elsif ['base-dhw-tank-gas.xml'].include? hpxml_file
|
1456
|
-
args['water_heater_fuel_type'] = HPXML::FuelTypeNaturalGas
|
1457
|
-
args['water_heater_tank_volume'] = 50
|
1458
|
-
args['water_heater_efficiency'] = 0.59
|
1459
|
-
args['water_heater_heating_capacity'] = 40000
|
1460
|
-
elsif ['base-dhw-tank-gas-uef.xml'].include? hpxml_file
|
1461
|
-
args['water_heater_tank_volume'] = 30
|
1462
|
-
args['water_heater_efficiency_type'] = 'UniformEnergyFactor'
|
1463
|
-
args['water_heater_usage_bin'] = HPXML::WaterHeaterUsageBinMedium
|
1464
|
-
args['water_heater_recovery_efficiency'] = 0.75
|
1465
|
-
args['water_heater_heating_capacity'] = 30000
|
1466
|
-
elsif ['base-dhw-tank-heat-pump.xml'].include? hpxml_file
|
1467
|
-
args['water_heater_type'] = HPXML::WaterHeaterTypeHeatPump
|
1468
|
-
args['water_heater_tank_volume'] = 80
|
1469
|
-
args['water_heater_efficiency'] = 2.3
|
1470
|
-
elsif ['base-dhw-tank-heat-pump-uef.xml'].include? hpxml_file
|
1471
|
-
args['water_heater_tank_volume'] = 50
|
1472
|
-
args['water_heater_efficiency_type'] = 'UniformEnergyFactor'
|
1473
|
-
args['water_heater_efficiency'] = 3.75
|
1474
|
-
args['water_heater_usage_bin'] = HPXML::WaterHeaterUsageBinMedium
|
1475
|
-
args['water_heater_heating_capacity'] = 18767
|
1476
|
-
elsif ['base-dhw-tank-heat-pump-with-solar.xml',
|
1477
|
-
'base-dhw-tankless-gas-with-solar.xml'].include? hpxml_file
|
1478
|
-
args['solar_thermal_system_type'] = HPXML::SolarThermalSystemType
|
1479
|
-
args['solar_thermal_collector_loop_type'] = HPXML::SolarThermalLoopTypeIndirect
|
1480
|
-
args['solar_thermal_collector_type'] = HPXML::SolarThermalTypeSingleGlazing
|
1481
|
-
args['solar_thermal_collector_rated_optical_efficiency'] = 0.77
|
1482
|
-
args['solar_thermal_collector_rated_thermal_losses'] = 0.793
|
1483
|
-
args['solar_thermal_storage_volume'] = 60
|
1484
|
-
elsif ['base-dhw-tankless-electric.xml'].include? hpxml_file
|
1485
|
-
args['water_heater_type'] = HPXML::WaterHeaterTypeTankless
|
1486
|
-
args.delete('water_heater_tank_volume')
|
1487
|
-
args['water_heater_efficiency'] = 0.99
|
1488
|
-
elsif ['base-dhw-tankless-electric-uef.xml'].include? hpxml_file
|
1489
|
-
args['water_heater_efficiency_type'] = 'UniformEnergyFactor'
|
1490
|
-
args['water_heater_efficiency'] = 0.98
|
1491
|
-
elsif ['base-dhw-tankless-gas.xml'].include? hpxml_file
|
1492
|
-
args['water_heater_type'] = HPXML::WaterHeaterTypeTankless
|
1493
|
-
args['water_heater_fuel_type'] = HPXML::FuelTypeNaturalGas
|
1494
|
-
args.delete('water_heater_tank_volume')
|
1495
|
-
args['water_heater_efficiency'] = 0.82
|
1496
|
-
elsif ['base-dhw-tankless-gas-uef.xml'].include? hpxml_file
|
1497
|
-
args['water_heater_efficiency_type'] = 'UniformEnergyFactor'
|
1498
|
-
args['water_heater_efficiency'] = 0.93
|
1499
|
-
elsif ['base-dhw-tankless-propane.xml'].include? hpxml_file
|
1500
|
-
args['water_heater_fuel_type'] = HPXML::FuelTypePropane
|
1501
|
-
elsif ['base-dhw-tank-oil.xml'].include? hpxml_file
|
1502
|
-
args['water_heater_fuel_type'] = HPXML::FuelTypeOil
|
1503
|
-
elsif ['base-dhw-tank-wood.xml'].include? hpxml_file
|
1504
|
-
args['water_heater_fuel_type'] = HPXML::FuelTypeWoodCord
|
1505
|
-
elsif ['base-dhw-desuperheater.xml',
|
1506
|
-
'base-dhw-desuperheater-2-speed.xml',
|
1507
|
-
'base-dhw-desuperheater-var-speed.xml',
|
1508
|
-
'base-dhw-desuperheater-hpwh.xml',
|
1509
|
-
'base-dhw-desuperheater-gshp.xml'].include? hpxml_file
|
1510
|
-
args['water_heater_uses_desuperheater'] = true
|
1511
|
-
elsif ['base-dhw-desuperheater-tankless.xml'].include? hpxml_file
|
1512
|
-
args['water_heater_uses_desuperheater'] = true
|
1513
|
-
args['water_heater_type'] = HPXML::WaterHeaterTypeTankless
|
1514
|
-
args.delete('water_heater_tank_volume')
|
1515
|
-
args['water_heater_efficiency'] = 0.99
|
1516
|
-
elsif ['base-dhw-tank-heat-pump-operating-mode-heat-pump-only.xml'].include? hpxml_file
|
1517
|
-
args['water_heater_operating_mode'] = HPXML::WaterHeaterOperatingModeHeatPumpOnly
|
1518
|
-
elsif ['base-dhw-tank-model-type-stratified.xml'].include? hpxml_file
|
1519
|
-
args['water_heater_tank_model_type'] = HPXML::WaterHeaterTankModelTypeStratified
|
1520
|
-
end
|
1521
|
-
|
1522
|
-
# Enclosure
|
1523
|
-
if ['base-enclosure-2stories.xml'].include? hpxml_file
|
1524
|
-
args['geometry_unit_cfa'] = 4050.0
|
1525
|
-
args['geometry_unit_num_floors_above_grade'] = 2
|
1526
|
-
args['window_area_front'] = 216.0
|
1527
|
-
args['window_area_back'] = 216.0
|
1528
|
-
args['window_area_left'] = 144.0
|
1529
|
-
args['window_area_right'] = 144.0
|
1530
|
-
args['heating_system_heating_capacity'] = 48000.0
|
1531
|
-
args['cooling_system_cooling_capacity'] = 36000.0
|
1532
|
-
args['ducts_supply_surface_area'] = 112.5
|
1533
|
-
args['ducts_return_surface_area'] = 37.5
|
1534
|
-
args['misc_plug_loads_other_annual_kwh'] = 3685.5
|
1535
|
-
elsif ['base-enclosure-2stories-garage.xml'].include? hpxml_file
|
1536
|
-
args['geometry_unit_cfa'] = 3250.0
|
1537
|
-
args['geometry_garage_width'] = 20.0
|
1538
|
-
args['misc_plug_loads_other_annual_kwh'] = 2957.5
|
1539
|
-
args['floor_over_garage_assembly_r'] = 39.3
|
1540
|
-
elsif ['base-enclosure-beds-1.xml'].include? hpxml_file
|
1541
|
-
args['geometry_unit_num_bedrooms'] = 1
|
1542
|
-
args['geometry_unit_num_bathrooms'] = 1
|
1543
|
-
args['geometry_unit_num_occupants'] = 1
|
1544
|
-
args['misc_plug_loads_television_annual_kwh'] = 482.0
|
1545
|
-
elsif ['base-enclosure-beds-2.xml'].include? hpxml_file
|
1546
|
-
args['geometry_unit_num_bedrooms'] = 2
|
1547
|
-
args['geometry_unit_num_bathrooms'] = 1
|
1548
|
-
args['geometry_unit_num_occupants'] = 2
|
1549
|
-
args['misc_plug_loads_television_annual_kwh'] = 551.0
|
1550
|
-
elsif ['base-enclosure-beds-4.xml'].include? hpxml_file
|
1551
|
-
args['geometry_unit_num_bedrooms'] = 4
|
1552
|
-
args['geometry_unit_num_occupants'] = 4
|
1553
|
-
args['misc_plug_loads_television_annual_kwh'] = 689.0
|
1554
|
-
elsif ['base-enclosure-beds-5.xml'].include? hpxml_file
|
1555
|
-
args['geometry_unit_num_bedrooms'] = 5
|
1556
|
-
args['geometry_unit_num_bathrooms'] = 3
|
1557
|
-
args['geometry_unit_num_occupants'] = 5
|
1558
|
-
args['misc_plug_loads_television_annual_kwh'] = 758.0
|
1559
|
-
elsif ['base-enclosure-garage.xml'].include? hpxml_file
|
1560
|
-
args['geometry_garage_width'] = 30.0
|
1561
|
-
args['geometry_garage_protrusion'] = 1.0
|
1562
|
-
args['window_area_front'] = 12.0
|
1563
|
-
args['window_aspect_ratio'] = 5.0 / 1.5
|
1564
|
-
args['ducts_supply_location'] = HPXML::LocationGarage
|
1565
|
-
args['ducts_return_location'] = HPXML::LocationGarage
|
1566
|
-
args['water_heater_location'] = HPXML::LocationGarage
|
1567
|
-
args['clothes_washer_location'] = HPXML::LocationGarage
|
1568
|
-
args['clothes_dryer_location'] = HPXML::LocationGarage
|
1569
|
-
args['dishwasher_location'] = HPXML::LocationGarage
|
1570
|
-
args['refrigerator_location'] = HPXML::LocationGarage
|
1571
|
-
args['cooking_range_oven_location'] = HPXML::LocationGarage
|
1572
|
-
elsif ['base-enclosure-infil-ach-house-pressure.xml',
|
1573
|
-
'base-enclosure-infil-cfm-house-pressure.xml'].include? hpxml_file
|
1574
|
-
args['air_leakage_house_pressure'] = 45
|
1575
|
-
args['air_leakage_value'] *= 0.9338
|
1576
|
-
elsif ['base-enclosure-infil-cfm50.xml'].include? hpxml_file
|
1577
|
-
args['air_leakage_units'] = HPXML::UnitsCFM
|
1578
|
-
args['air_leakage_value'] = 1080
|
1579
|
-
elsif ['base-enclosure-infil-flue.xml'].include? hpxml_file
|
1580
|
-
args['geometry_has_flue_or_chimney'] = 'true'
|
1581
|
-
elsif ['base-enclosure-infil-natural-ach.xml'].include? hpxml_file
|
1582
|
-
args['air_leakage_units'] = HPXML::UnitsACHNatural
|
1583
|
-
args['air_leakage_value'] = 0.2
|
1584
|
-
elsif ['base-enclosure-overhangs.xml'].include? hpxml_file
|
1585
|
-
args['overhangs_back_depth'] = 2.5
|
1586
|
-
args['overhangs_back_distance_to_bottom_of_window'] = 4.0
|
1587
|
-
args['overhangs_left_depth'] = 1.5
|
1588
|
-
args['overhangs_left_distance_to_top_of_window'] = 2.0
|
1589
|
-
args['overhangs_left_distance_to_bottom_of_window'] = 7.0
|
1590
|
-
args['overhangs_right_depth'] = 1.5
|
1591
|
-
args['overhangs_right_distance_to_top_of_window'] = 2.0
|
1592
|
-
args['overhangs_right_distance_to_bottom_of_window'] = 6.0
|
1593
|
-
elsif ['base-enclosure-windows-natural-ventilation-availability.xml'].include? hpxml_file
|
1594
|
-
args['window_natvent_availability'] = 7
|
1595
|
-
elsif ['base-enclosure-windows-none.xml'].include? hpxml_file
|
1596
|
-
args['window_area_front'] = 0
|
1597
|
-
args['window_area_back'] = 0
|
1598
|
-
args['window_area_left'] = 0
|
1599
|
-
args['window_area_right'] = 0
|
1600
|
-
elsif ['base-enclosure-windows-storms.xml'].include? hpxml_file
|
1601
|
-
args['window_ufactor'] = 0.6
|
1602
|
-
args['window_storm_type'] = HPXML::WindowGlassTypeLowE
|
1603
|
-
elsif ['base-enclosure-skylights.xml'].include? hpxml_file
|
1604
|
-
args['skylight_area_front'] = 15
|
1605
|
-
args['skylight_area_back'] = 15
|
1606
|
-
elsif ['base-enclosure-skylights-storms.xml'].include? hpxml_file
|
1607
|
-
args['skylight_ufactor'] = 0.6
|
1608
|
-
args['skylight_storm_type'] = HPXML::WindowGlassTypeClear
|
1609
|
-
end
|
1610
|
-
|
1611
|
-
# Foundation
|
1612
|
-
if ['base-foundation-ambient.xml'].include? hpxml_file
|
1613
|
-
args['geometry_unit_cfa'] = 1350.0
|
1614
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeAmbient
|
1615
|
-
args.delete('geometry_rim_joist_height')
|
1616
|
-
args['floor_over_foundation_assembly_r'] = 18.7
|
1617
|
-
args.delete('rim_joist_assembly_r')
|
1618
|
-
args['misc_plug_loads_other_annual_kwh'] = 1228.5
|
1619
|
-
elsif ['base-foundation-conditioned-basement-slab-insulation.xml'].include? hpxml_file
|
1620
|
-
args['slab_under_insulation_r'] = 10
|
1621
|
-
args['slab_under_width'] = 4
|
1622
|
-
elsif ['base-foundation-conditioned-basement-wall-insulation.xml'].include? hpxml_file
|
1623
|
-
args['foundation_wall_type'] = HPXML::FoundationWallTypeConcreteBlockFoamCore
|
1624
|
-
args['foundation_wall_insulation_r'] = 18.9
|
1625
|
-
args['foundation_wall_insulation_distance_to_top'] = 1.0
|
1626
|
-
elsif ['base-foundation-slab.xml'].include? hpxml_file
|
1627
|
-
args['geometry_unit_cfa'] = 1350.0
|
1628
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeSlab
|
1629
|
-
args['geometry_foundation_height'] = 0.0
|
1630
|
-
args['geometry_foundation_height_above_grade'] = 0.0
|
1631
|
-
args.delete('foundation_wall_insulation_distance_to_bottom')
|
1632
|
-
args['slab_under_insulation_r'] = 5
|
1633
|
-
args['slab_under_width'] = 999
|
1634
|
-
args['slab_carpet_fraction'] = 1.0
|
1635
|
-
args['slab_carpet_r'] = 2.5
|
1636
|
-
args['ducts_supply_location'] = HPXML::LocationUnderSlab
|
1637
|
-
args['ducts_return_location'] = HPXML::LocationUnderSlab
|
1638
|
-
args['misc_plug_loads_other_annual_kwh'] = 1228.5
|
1639
|
-
elsif ['base-foundation-unconditioned-basement.xml'].include? hpxml_file
|
1640
|
-
args['geometry_unit_cfa'] = 1350.0
|
1641
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeBasementUnconditioned
|
1642
|
-
args['floor_over_foundation_assembly_r'] = 18.7
|
1643
|
-
args['foundation_wall_insulation_r'] = 0
|
1644
|
-
args['foundation_wall_insulation_distance_to_bottom'] = 0.0
|
1645
|
-
args['rim_joist_assembly_r'] = 4.0
|
1646
|
-
args['ducts_supply_location'] = HPXML::LocationBasementUnconditioned
|
1647
|
-
args['ducts_return_location'] = HPXML::LocationBasementUnconditioned
|
1648
|
-
args['water_heater_location'] = HPXML::LocationBasementUnconditioned
|
1649
|
-
args['clothes_washer_location'] = HPXML::LocationBasementUnconditioned
|
1650
|
-
args['clothes_dryer_location'] = HPXML::LocationBasementUnconditioned
|
1651
|
-
args['dishwasher_location'] = HPXML::LocationBasementUnconditioned
|
1652
|
-
args['refrigerator_location'] = HPXML::LocationBasementUnconditioned
|
1653
|
-
args['cooking_range_oven_location'] = HPXML::LocationBasementUnconditioned
|
1654
|
-
args['misc_plug_loads_other_annual_kwh'] = 1228.5
|
1655
|
-
elsif ['base-foundation-basement-garage.xml'].include? hpxml_file
|
1656
|
-
args['misc_plug_loads_other_annual_kwh'] = 1729
|
1657
|
-
elsif ['base-foundation-unconditioned-basement-above-grade.xml'].include? hpxml_file
|
1658
|
-
args['geometry_foundation_height_above_grade'] = 4.0
|
1659
|
-
elsif ['base-foundation-unconditioned-basement-assembly-r.xml'].include? hpxml_file
|
1660
|
-
args['foundation_wall_assembly_r'] = 10.69
|
1661
|
-
elsif ['base-foundation-unconditioned-basement-wall-insulation.xml'].include? hpxml_file
|
1662
|
-
args['floor_over_foundation_assembly_r'] = 2.1
|
1663
|
-
args['foundation_wall_insulation_r'] = 8.9
|
1664
|
-
args['foundation_wall_insulation_distance_to_bottom'] = 4.0
|
1665
|
-
args['rim_joist_assembly_r'] = 23.0
|
1666
|
-
elsif ['base-foundation-unvented-crawlspace.xml'].include? hpxml_file
|
1667
|
-
args['geometry_unit_cfa'] = 1350.0
|
1668
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceUnvented
|
1669
|
-
args['geometry_foundation_height'] = 4.0
|
1670
|
-
args['slab_thickness'] = 0.0
|
1671
|
-
args['floor_over_foundation_assembly_r'] = 18.7
|
1672
|
-
args['foundation_wall_insulation_distance_to_bottom'] = 4.0
|
1673
|
-
args['ducts_supply_location'] = HPXML::LocationCrawlspaceUnvented
|
1674
|
-
args['ducts_return_location'] = HPXML::LocationCrawlspaceUnvented
|
1675
|
-
args['water_heater_location'] = HPXML::LocationCrawlspaceUnvented
|
1676
|
-
args['misc_plug_loads_other_annual_kwh'] = 1228.5
|
1677
|
-
elsif ['base-foundation-vented-crawlspace.xml'].include? hpxml_file
|
1678
|
-
args['geometry_unit_cfa'] = 1350.0
|
1679
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceVented
|
1680
|
-
args['geometry_foundation_height'] = 4.0
|
1681
|
-
args['slab_thickness'] = 0.0
|
1682
|
-
args['floor_over_foundation_assembly_r'] = 18.7
|
1683
|
-
args['foundation_wall_insulation_distance_to_bottom'] = 4.0
|
1684
|
-
args['ducts_supply_location'] = HPXML::LocationCrawlspaceVented
|
1685
|
-
args['ducts_return_location'] = HPXML::LocationCrawlspaceVented
|
1686
|
-
args['water_heater_location'] = HPXML::LocationCrawlspaceVented
|
1687
|
-
args['misc_plug_loads_other_annual_kwh'] = 1228.5
|
1688
|
-
elsif ['base-foundation-conditioned-crawlspace.xml'].include? hpxml_file
|
1689
|
-
args['geometry_unit_cfa'] = 1350.0
|
1690
|
-
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceConditioned
|
1691
|
-
args['geometry_foundation_height'] = 4.0
|
1692
|
-
args['floor_over_foundation_assembly_r'] = 18.7
|
1693
|
-
args['foundation_wall_insulation_distance_to_bottom'] = 4.0
|
1694
|
-
args['ducts_supply_location'] = HPXML::LocationCrawlspaceConditioned
|
1695
|
-
args['ducts_return_location'] = HPXML::LocationCrawlspaceConditioned
|
1696
|
-
args['ducts_supply_leakage_to_outside_value'] = 0.0
|
1697
|
-
args['ducts_return_leakage_to_outside_value'] = 0.0
|
1698
|
-
args['water_heater_location'] = HPXML::LocationCrawlspaceConditioned
|
1699
|
-
args['misc_plug_loads_other_annual_kwh'] = 1228.5
|
1700
|
-
elsif ['base-foundation-walkout-basement.xml'].include? hpxml_file
|
1701
|
-
args['geometry_foundation_height_above_grade'] = 5.0
|
1702
|
-
args['foundation_wall_insulation_distance_to_bottom'] = 4.0
|
1703
|
-
end
|
1704
|
-
|
1705
|
-
# HVAC
|
1706
|
-
if ['base-hvac-air-to-air-heat-pump-1-speed.xml'].include? hpxml_file
|
1707
|
-
args['heating_system_type'] = 'none'
|
1708
|
-
args['cooling_system_type'] = 'none'
|
1709
|
-
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpAirToAir
|
1710
|
-
args['heat_pump_heating_capacity_17_f'] = args['heat_pump_heating_capacity'] * 0.6
|
1711
|
-
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeIntegrated
|
1712
|
-
elsif ['base-hvac-air-to-air-heat-pump-1-speed-seer2-hspf2.xml'].include? hpxml_file
|
1713
|
-
args['heat_pump_cooling_efficiency_type'] = HPXML::UnitsSEER2
|
1714
|
-
args['heat_pump_cooling_efficiency'] = (args['heat_pump_cooling_efficiency'] * 0.95).round(1)
|
1715
|
-
args['heat_pump_heating_efficiency_type'] = HPXML::UnitsHSPF2
|
1716
|
-
args['heat_pump_heating_efficiency'] = (args['heat_pump_heating_efficiency'] * 0.85).round(1)
|
1717
|
-
elsif ['base-hvac-air-to-air-heat-pump-1-speed-cooling-only.xml'].include? hpxml_file
|
1718
|
-
args['heat_pump_heating_capacity'] = 0.0
|
1719
|
-
args['heat_pump_heating_capacity_17_f'] = 0.0
|
1720
|
-
args['heat_pump_fraction_heat_load_served'] = 0
|
1721
|
-
args['heat_pump_backup_type'] = 'none'
|
1722
|
-
elsif ['base-hvac-air-to-air-heat-pump-1-speed-heating-only.xml'].include? hpxml_file
|
1723
|
-
args['heat_pump_cooling_capacity'] = 0.0
|
1724
|
-
args['heat_pump_fraction_cool_load_served'] = 0
|
1725
|
-
elsif ['base-hvac-air-to-air-heat-pump-1-speed-backup-lockout-temperature.xml'].include? hpxml_file
|
1726
|
-
args['hvac_control_heating_weekday_setpoint'] = '64, 64, 64, 64, 64, 64, 64, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 64, 64'
|
1727
|
-
args['hvac_control_heating_weekend_setpoint'] = '64, 64, 64, 64, 64, 64, 64, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 64, 64'
|
1728
|
-
args['heat_pump_backup_heating_lockout_temp'] = 35.0
|
1729
|
-
elsif ['base-hvac-air-to-air-heat-pump-2-speed.xml'].include? hpxml_file
|
1730
|
-
args['heating_system_type'] = 'none'
|
1731
|
-
args['cooling_system_type'] = 'none'
|
1732
|
-
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpAirToAir
|
1733
|
-
args['heat_pump_heating_efficiency'] = 9.3
|
1734
|
-
args['heat_pump_cooling_compressor_type'] = HPXML::HVACCompressorTypeTwoStage
|
1735
|
-
args['heat_pump_heating_capacity_17_f'] = args['heat_pump_heating_capacity'] * 0.6
|
1736
|
-
args['heat_pump_cooling_efficiency'] = 18.0
|
1737
|
-
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeIntegrated
|
1738
|
-
elsif ['base-hvac-air-to-air-heat-pump-var-speed.xml'].include? hpxml_file
|
1739
|
-
args['heating_system_type'] = 'none'
|
1740
|
-
args['cooling_system_type'] = 'none'
|
1741
|
-
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpAirToAir
|
1742
|
-
args['heat_pump_heating_efficiency'] = 10.0
|
1743
|
-
args['heat_pump_cooling_compressor_type'] = HPXML::HVACCompressorTypeVariableSpeed
|
1744
|
-
args['heat_pump_cooling_sensible_heat_fraction'] = 0.78
|
1745
|
-
args['heat_pump_heating_capacity_17_f'] = args['heat_pump_heating_capacity'] * 0.6
|
1746
|
-
args['heat_pump_cooling_efficiency'] = 22.0
|
1747
|
-
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeIntegrated
|
1748
|
-
elsif ['base-hvac-air-to-air-heat-pump-var-speed-backup-boiler.xml'].include? hpxml_file
|
1749
|
-
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeSeparate
|
1750
|
-
args['heat_pump_heating_capacity'] = 18000.0
|
1751
|
-
args['heat_pump_cooling_capacity'] = 18000.0
|
1752
|
-
args['heat_pump_heating_capacity_17_f'] = args['heat_pump_heating_capacity'] * 0.6
|
1753
|
-
args['heating_system_2_type'] = HPXML::HVACTypeBoiler
|
1754
|
-
args['heating_system_2_fuel'] = HPXML::FuelTypeNaturalGas
|
1755
|
-
args['heating_system_2_heating_efficiency'] = 0.8
|
1756
|
-
args['heating_system_2_heating_capacity'] = 60000.0
|
1757
|
-
elsif ['base-hvac-air-to-air-heat-pump-var-speed-backup-boiler-switchover-temperature.xml'].include? hpxml_file
|
1758
|
-
args['heat_pump_backup_heating_switchover_temp'] = 25
|
1759
|
-
elsif hpxml_file.include? 'autosize'
|
1760
|
-
args.delete('heating_system_heating_capacity')
|
1761
|
-
args.delete('heating_system_2_heating_capacity')
|
1762
|
-
args.delete('cooling_system_cooling_capacity')
|
1763
|
-
args.delete('heat_pump_heating_capacity')
|
1764
|
-
args.delete('cooling_system_integrated_heating_system_capacity')
|
1765
|
-
if hpxml_file.include? 'sizing-methodology-hers'
|
1766
|
-
args['heat_pump_sizing_methodology'] = HPXML::HeatPumpSizingHERS
|
1767
|
-
elsif hpxml_file.include? 'sizing-methodology-maxload'
|
1768
|
-
args['heat_pump_sizing_methodology'] = HPXML::HeatPumpSizingMaxLoad
|
1769
|
-
elsif hpxml_file.include? 'sizing-methodology-acca'
|
1770
|
-
args['heat_pump_sizing_methodology'] = HPXML::HeatPumpSizingACCA
|
1771
|
-
else
|
1772
|
-
args['heat_pump_sizing_methodology'] = HPXML::HeatPumpSizingHERS
|
1773
|
-
end
|
1774
|
-
args.delete('heat_pump_heating_capacity_17_f')
|
1775
|
-
args.delete('heat_pump_backup_heating_capacity')
|
1776
|
-
args.delete('heat_pump_cooling_capacity')
|
1777
|
-
elsif ['base-hvac-boiler-coal-only.xml',
|
1778
|
-
'base-hvac-furnace-coal-only.xml'].include? hpxml_file
|
1779
|
-
args['heating_system_fuel'] = HPXML::FuelTypeCoal
|
1780
|
-
elsif ['base-hvac-boiler-elec-only.xml'].include? hpxml_file
|
1781
|
-
args['heating_system_type'] = HPXML::HVACTypeBoiler
|
1782
|
-
args['heating_system_fuel'] = HPXML::FuelTypeElectricity
|
1783
|
-
args['heating_system_heating_efficiency'] = 0.98
|
1784
|
-
args['cooling_system_type'] = 'none'
|
1785
|
-
elsif ['base-hvac-boiler-gas-central-ac-1-speed.xml'].include? hpxml_file
|
1786
|
-
args['heating_system_type'] = HPXML::HVACTypeBoiler
|
1787
|
-
elsif ['base-hvac-boiler-gas-only.xml'].include? hpxml_file
|
1788
|
-
args['heating_system_type'] = HPXML::HVACTypeBoiler
|
1789
|
-
args['cooling_system_type'] = 'none'
|
1790
|
-
elsif ['base-hvac-boiler-oil-only.xml',
|
1791
|
-
'base-hvac-furnace-oil-only.xml'].include? hpxml_file
|
1792
|
-
args['heating_system_fuel'] = HPXML::FuelTypeOil
|
1793
|
-
elsif ['base-hvac-boiler-propane-only.xml',
|
1794
|
-
'base-hvac-furnace-propane-only.xml'].include? hpxml_file
|
1795
|
-
args['heating_system_fuel'] = HPXML::FuelTypePropane
|
1796
|
-
elsif ['base-hvac-boiler-wood-only.xml',
|
1797
|
-
'base-hvac-furnace-wood-only.xml'].include? hpxml_file
|
1798
|
-
args['heating_system_fuel'] = HPXML::FuelTypeWoodCord
|
1799
|
-
elsif ['base-hvac-central-ac-only-1-speed.xml'].include? hpxml_file
|
1800
|
-
args['heating_system_type'] = 'none'
|
1801
|
-
elsif ['base-hvac-central-ac-only-1-speed-seer2.xml'].include? hpxml_file
|
1802
|
-
args['cooling_system_cooling_efficiency_type'] = HPXML::UnitsSEER2
|
1803
|
-
args['cooling_system_cooling_efficiency'] = (args['cooling_system_cooling_efficiency'] * 0.95).round(1)
|
1804
|
-
elsif ['base-hvac-central-ac-only-2-speed.xml'].include? hpxml_file
|
1805
|
-
args['heating_system_type'] = 'none'
|
1806
|
-
args['cooling_system_cooling_efficiency'] = 18.0
|
1807
|
-
args['cooling_system_cooling_compressor_type'] = HPXML::HVACCompressorTypeTwoStage
|
1808
|
-
elsif ['base-hvac-central-ac-only-var-speed.xml'].include? hpxml_file
|
1809
|
-
args['heating_system_type'] = 'none'
|
1810
|
-
args['cooling_system_cooling_efficiency'] = 24.0
|
1811
|
-
args['cooling_system_cooling_compressor_type'] = HPXML::HVACCompressorTypeVariableSpeed
|
1812
|
-
args['cooling_system_cooling_sensible_heat_fraction'] = 0.78
|
1813
|
-
elsif ['base-hvac-central-ac-plus-air-to-air-heat-pump-heating.xml'].include? hpxml_file
|
1814
|
-
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpAirToAir
|
1815
|
-
args['heat_pump_heating_efficiency'] = 7.7
|
1816
|
-
args['heat_pump_heating_capacity_17_f'] = args['heat_pump_heating_capacity'] * 0.6
|
1817
|
-
args['heat_pump_fraction_cool_load_served'] = 0
|
1818
|
-
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeIntegrated
|
1819
|
-
args['heat_pump_backup_fuel'] = HPXML::FuelTypeElectricity
|
1820
|
-
elsif ['base-hvac-dual-fuel-air-to-air-heat-pump-1-speed.xml'].include? hpxml_file
|
1821
|
-
args['heat_pump_heating_efficiency'] = 7.7
|
1822
|
-
args['heat_pump_backup_fuel'] = HPXML::FuelTypeNaturalGas
|
1823
|
-
args['heat_pump_backup_heating_efficiency'] = 0.95
|
1824
|
-
args['heat_pump_backup_heating_switchover_temp'] = 25
|
1825
|
-
elsif ['base-hvac-dual-fuel-air-to-air-heat-pump-1-speed-electric.xml'].include? hpxml_file
|
1826
|
-
args['heat_pump_backup_fuel'] = HPXML::FuelTypeElectricity
|
1827
|
-
args['heat_pump_backup_heating_efficiency'] = 1.0
|
1828
|
-
elsif ['base-hvac-dual-fuel-air-to-air-heat-pump-2-speed.xml',
|
1829
|
-
'base-hvac-dual-fuel-air-to-air-heat-pump-var-speed.xml'].include? hpxml_file
|
1830
|
-
args['heat_pump_backup_fuel'] = HPXML::FuelTypeNaturalGas
|
1831
|
-
args['heat_pump_backup_heating_efficiency'] = 0.95
|
1832
|
-
args['heat_pump_backup_heating_switchover_temp'] = 25
|
1833
|
-
elsif ['base-hvac-dual-fuel-mini-split-heat-pump-ducted.xml'].include? hpxml_file
|
1834
|
-
args['heat_pump_heating_capacity'] = 36000.0
|
1835
|
-
args['heat_pump_backup_fuel'] = HPXML::FuelTypeNaturalGas
|
1836
|
-
args['heat_pump_backup_heating_efficiency'] = 0.95
|
1837
|
-
args['heat_pump_backup_heating_switchover_temp'] = 25
|
1838
|
-
elsif ['base-hvac-ducts-leakage-cfm50.xml'].include? hpxml_file
|
1839
|
-
args['ducts_leakage_units'] = HPXML::UnitsCFM50
|
1840
|
-
args['ducts_supply_leakage_to_outside_value'] = 100
|
1841
|
-
args['ducts_return_leakage_to_outside_value'] = 125
|
1842
|
-
elsif ['base-hvac-ducts-leakage-percent.xml'].include? hpxml_file
|
1843
|
-
args['ducts_leakage_units'] = HPXML::UnitsPercent
|
1844
|
-
args['ducts_supply_leakage_to_outside_value'] = 0.1
|
1845
|
-
args['ducts_return_leakage_to_outside_value'] = 0.05
|
1846
|
-
elsif ['base-hvac-elec-resistance-only.xml'].include? hpxml_file
|
1847
|
-
args['heating_system_type'] = HPXML::HVACTypeElectricResistance
|
1848
|
-
args['heating_system_fuel'] = HPXML::FuelTypeElectricity
|
1849
|
-
args['heating_system_heating_efficiency'] = 1.0
|
1850
|
-
args['cooling_system_type'] = 'none'
|
1851
|
-
elsif ['base-hvac-evap-cooler-furnace-gas.xml'].include? hpxml_file
|
1852
|
-
args['cooling_system_type'] = HPXML::HVACTypeEvaporativeCooler
|
1853
|
-
args.delete('cooling_system_cooling_compressor_type')
|
1854
|
-
args.delete('cooling_system_cooling_sensible_heat_fraction')
|
1855
|
-
elsif ['base-hvac-evap-cooler-only.xml'].include? hpxml_file
|
1856
|
-
args['heating_system_type'] = 'none'
|
1857
|
-
args['cooling_system_type'] = HPXML::HVACTypeEvaporativeCooler
|
1858
|
-
args.delete('cooling_system_cooling_compressor_type')
|
1859
|
-
args.delete('cooling_system_cooling_sensible_heat_fraction')
|
1860
|
-
elsif ['base-hvac-evap-cooler-only-ducted.xml'].include? hpxml_file
|
1861
|
-
args['heating_system_type'] = 'none'
|
1862
|
-
args['cooling_system_type'] = HPXML::HVACTypeEvaporativeCooler
|
1863
|
-
args.delete('cooling_system_cooling_compressor_type')
|
1864
|
-
args.delete('cooling_system_cooling_sensible_heat_fraction')
|
1865
|
-
args['cooling_system_is_ducted'] = true
|
1866
|
-
args['ducts_return_leakage_to_outside_value'] = 0.0
|
1867
|
-
elsif ['base-hvac-fireplace-wood-only.xml'].include? hpxml_file
|
1868
|
-
args['heating_system_type'] = HPXML::HVACTypeFireplace
|
1869
|
-
args['heating_system_fuel'] = HPXML::FuelTypeWoodCord
|
1870
|
-
elsif ['base-hvac-fixed-heater-gas-only.xml'].include? hpxml_file
|
1871
|
-
args['heating_system_type'] = HPXML::HVACTypeFixedHeater
|
1872
|
-
args['heating_system_heating_efficiency'] = 1.0
|
1873
|
-
args['cooling_system_type'] = 'none'
|
1874
|
-
elsif ['base-hvac-floor-furnace-propane-only.xml'].include? hpxml_file
|
1875
|
-
args['heating_system_type'] = HPXML::HVACTypeFloorFurnace
|
1876
|
-
args['heating_system_fuel'] = HPXML::FuelTypePropane
|
1877
|
-
elsif ['base-hvac-furnace-elec-central-ac-1-speed.xml'].include? hpxml_file
|
1878
|
-
args['heating_system_fuel'] = HPXML::FuelTypeElectricity
|
1879
|
-
args['heating_system_heating_efficiency'] = 1.0
|
1880
|
-
elsif ['base-hvac-furnace-elec-only.xml'].include? hpxml_file
|
1881
|
-
args['heating_system_fuel'] = HPXML::FuelTypeElectricity
|
1882
|
-
args['heating_system_heating_efficiency'] = 0.98
|
1883
|
-
args['cooling_system_type'] = 'none'
|
1884
|
-
elsif ['base-hvac-furnace-gas-central-ac-2-speed.xml'].include? hpxml_file
|
1885
|
-
args['cooling_system_cooling_efficiency'] = 18.0
|
1886
|
-
args['cooling_system_cooling_compressor_type'] = HPXML::HVACCompressorTypeTwoStage
|
1887
|
-
elsif ['base-hvac-furnace-gas-central-ac-var-speed.xml'].include? hpxml_file
|
1888
|
-
args['cooling_system_cooling_efficiency'] = 24.0
|
1889
|
-
args['cooling_system_cooling_compressor_type'] = HPXML::HVACCompressorTypeVariableSpeed
|
1890
|
-
args['cooling_system_cooling_sensible_heat_fraction'] = 0.78
|
1891
|
-
elsif ['base-hvac-furnace-gas-only.xml'].include? hpxml_file
|
1892
|
-
args['cooling_system_type'] = 'none'
|
1893
|
-
elsif ['base-hvac-furnace-gas-room-ac.xml'].include? hpxml_file
|
1894
|
-
args['cooling_system_type'] = HPXML::HVACTypeRoomAirConditioner
|
1895
|
-
args['cooling_system_cooling_efficiency_type'] = HPXML::UnitsEER
|
1896
|
-
args['cooling_system_cooling_efficiency'] = 8.5
|
1897
|
-
args.delete('cooling_system_cooling_compressor_type')
|
1898
|
-
args['cooling_system_cooling_sensible_heat_fraction'] = 0.65
|
1899
|
-
elsif ['base-hvac-mini-split-air-conditioner-only-ducted.xml'].include? hpxml_file
|
1900
|
-
args['heating_system_type'] = 'none'
|
1901
|
-
args['cooling_system_type'] = HPXML::HVACTypeMiniSplitAirConditioner
|
1902
|
-
args['cooling_system_cooling_efficiency'] = 19.0
|
1903
|
-
args.delete('cooling_system_cooling_compressor_type')
|
1904
|
-
args['cooling_system_is_ducted'] = true
|
1905
|
-
args['ducts_supply_leakage_to_outside_value'] = 15.0
|
1906
|
-
args['ducts_return_leakage_to_outside_value'] = 5.0
|
1907
|
-
args['ducts_supply_insulation_r'] = 0.0
|
1908
|
-
args['ducts_supply_surface_area'] = 30.0
|
1909
|
-
args['ducts_return_surface_area'] = 10.0
|
1910
|
-
elsif ['base-hvac-mini-split-air-conditioner-only-ductless.xml'].include? hpxml_file
|
1911
|
-
args['cooling_system_is_ducted'] = false
|
1912
|
-
elsif ['base-hvac-ground-to-air-heat-pump.xml'].include? hpxml_file
|
1913
|
-
args['heating_system_type'] = 'none'
|
1914
|
-
args['cooling_system_type'] = 'none'
|
1915
|
-
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpGroundToAir
|
1916
|
-
args['heat_pump_heating_efficiency_type'] = HPXML::UnitsCOP
|
1917
|
-
args['heat_pump_heating_efficiency'] = 3.6
|
1918
|
-
args['heat_pump_cooling_efficiency_type'] = HPXML::UnitsEER
|
1919
|
-
args['heat_pump_cooling_efficiency'] = 16.6
|
1920
|
-
args.delete('heat_pump_cooling_compressor_type')
|
1921
|
-
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeIntegrated
|
1922
|
-
elsif ['base-hvac-ground-to-air-heat-pump-cooling-only.xml'].include? hpxml_file
|
1923
|
-
args['heat_pump_heating_capacity'] = 0.0
|
1924
|
-
args['heat_pump_fraction_heat_load_served'] = 0
|
1925
|
-
args['heat_pump_backup_type'] = 'none'
|
1926
|
-
elsif ['base-hvac-ground-to-air-heat-pump-heating-only.xml'].include? hpxml_file
|
1927
|
-
args['heat_pump_cooling_capacity'] = 0.0
|
1928
|
-
args['heat_pump_fraction_cool_load_served'] = 0
|
1929
|
-
elsif ['base-hvac-seasons.xml'].include? hpxml_file
|
1930
|
-
args['hvac_control_heating_season_period'] = 'Nov 1 - May 1'
|
1931
|
-
args['hvac_control_cooling_season_period'] = 'Jun 1 - Oct 1'
|
1932
|
-
elsif ['base-hvac-install-quality-air-to-air-heat-pump-1-speed.xml',
|
1933
|
-
'base-hvac-install-quality-air-to-air-heat-pump-2-speed.xml',
|
1934
|
-
'base-hvac-install-quality-air-to-air-heat-pump-var-speed.xml',
|
1935
|
-
'base-hvac-install-quality-ground-to-air-heat-pump.xml',
|
1936
|
-
'base-hvac-install-quality-mini-split-heat-pump-ducted.xml'].include? hpxml_file
|
1937
|
-
args['heat_pump_airflow_defect_ratio'] = -0.25
|
1938
|
-
args['heat_pump_charge_defect_ratio'] = -0.25
|
1939
|
-
elsif ['base-hvac-install-quality-furnace-gas-central-ac-1-speed.xml',
|
1940
|
-
'base-hvac-install-quality-furnace-gas-central-ac-2-speed.xml',
|
1941
|
-
'base-hvac-install-quality-furnace-gas-central-ac-var-speed.xml'].include? hpxml_file
|
1942
|
-
args['heating_system_airflow_defect_ratio'] = -0.25
|
1943
|
-
args['cooling_system_airflow_defect_ratio'] = -0.25
|
1944
|
-
args['cooling_system_charge_defect_ratio'] = -0.25
|
1945
|
-
elsif ['base-hvac-install-quality-furnace-gas-only.xml'].include? hpxml_file
|
1946
|
-
args['heating_system_airflow_defect_ratio'] = -0.25
|
1947
|
-
elsif ['base-hvac-install-quality-mini-split-air-conditioner-only-ducted.xml'].include? hpxml_file
|
1948
|
-
args['cooling_system_airflow_defect_ratio'] = -0.25
|
1949
|
-
args['cooling_system_charge_defect_ratio'] = -0.25
|
1950
|
-
elsif ['base-hvac-mini-split-heat-pump-ducted.xml'].include? hpxml_file
|
1951
|
-
args['heating_system_type'] = 'none'
|
1952
|
-
args['cooling_system_type'] = 'none'
|
1953
|
-
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpMiniSplit
|
1954
|
-
args['heat_pump_heating_capacity_17_f'] = args['heat_pump_heating_capacity'] * 0.6
|
1955
|
-
args['heat_pump_heating_efficiency'] = 10.0
|
1956
|
-
args['heat_pump_cooling_efficiency'] = 19.0
|
1957
|
-
args.delete('heat_pump_cooling_compressor_type')
|
1958
|
-
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeIntegrated
|
1959
|
-
args['heat_pump_is_ducted'] = true
|
1960
|
-
args['ducts_supply_leakage_to_outside_value'] = 15.0
|
1961
|
-
args['ducts_return_leakage_to_outside_value'] = 5.0
|
1962
|
-
args['ducts_supply_insulation_r'] = 0.0
|
1963
|
-
args['ducts_supply_surface_area'] = 30.0
|
1964
|
-
args['ducts_return_surface_area'] = 10.0
|
1965
|
-
elsif ['base-hvac-mini-split-heat-pump-ducted-cooling-only.xml'].include? hpxml_file
|
1966
|
-
args['heat_pump_heating_capacity'] = 0
|
1967
|
-
args['heat_pump_heating_capacity_17_f'] = 0
|
1968
|
-
args['heat_pump_fraction_heat_load_served'] = 0
|
1969
|
-
args['heat_pump_backup_type'] = 'none'
|
1970
|
-
elsif ['base-hvac-mini-split-heat-pump-ducted-heating-only.xml'].include? hpxml_file
|
1971
|
-
args['heat_pump_cooling_capacity'] = 0
|
1972
|
-
args['heat_pump_fraction_cool_load_served'] = 0
|
1973
|
-
args['heat_pump_backup_fuel'] = HPXML::FuelTypeElectricity
|
1974
|
-
elsif ['base-hvac-mini-split-heat-pump-ductless.xml'].include? hpxml_file
|
1975
|
-
args['heat_pump_backup_type'] = 'none'
|
1976
|
-
args['heat_pump_is_ducted'] = false
|
1977
|
-
elsif ['base-hvac-mini-split-heat-pump-ductless-backup-stove.xml'].include? hpxml_file
|
1978
|
-
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeSeparate
|
1979
|
-
args['heat_pump_heating_capacity'] = 18000.0
|
1980
|
-
args['heat_pump_cooling_capacity'] = 18000.0
|
1981
|
-
args['heat_pump_heating_capacity_17_f'] = args['heat_pump_heating_capacity'] * 0.6
|
1982
|
-
args['heating_system_2_type'] = HPXML::HVACTypeStove
|
1983
|
-
args['heating_system_2_fuel'] = HPXML::FuelTypeOil
|
1984
|
-
args['heating_system_2_heating_efficiency'] = 0.6
|
1985
|
-
args['heating_system_2_heating_capacity'] = 60000.0
|
1986
|
-
elsif ['base-hvac-none.xml'].include? hpxml_file
|
1987
|
-
args['heating_system_type'] = 'none'
|
1988
|
-
args['cooling_system_type'] = 'none'
|
1989
|
-
elsif ['base-hvac-portable-heater-gas-only.xml'].include? hpxml_file
|
1990
|
-
args['heating_system_type'] = HPXML::HVACTypePortableHeater
|
1991
|
-
args['heating_system_heating_efficiency'] = 1.0
|
1992
|
-
args['cooling_system_type'] = 'none'
|
1993
|
-
elsif ['base-hvac-setpoints-daily-schedules.xml'].include? hpxml_file
|
1994
|
-
args['hvac_control_heating_weekday_setpoint'] = '64, 64, 64, 64, 64, 64, 64, 70, 70, 66, 66, 66, 66, 66, 66, 66, 66, 68, 68, 68, 68, 68, 64, 64'
|
1995
|
-
args['hvac_control_heating_weekend_setpoint'] = '68, 68, 68, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70, 70'
|
1996
|
-
args['hvac_control_cooling_weekday_setpoint'] = '80, 80, 80, 80, 80, 80, 80, 75, 75, 80, 80, 80, 80, 80, 80, 80, 80, 78, 78, 78, 78, 78, 80, 80'
|
1997
|
-
args['hvac_control_cooling_weekend_setpoint'] = '78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78, 78'
|
1998
|
-
elsif ['base-hvac-room-ac-only.xml'].include? hpxml_file
|
1999
|
-
args['heating_system_type'] = 'none'
|
2000
|
-
args['cooling_system_type'] = HPXML::HVACTypeRoomAirConditioner
|
2001
|
-
args['cooling_system_cooling_efficiency_type'] = HPXML::UnitsEER
|
2002
|
-
args['cooling_system_cooling_efficiency'] = 8.5
|
2003
|
-
args.delete('cooling_system_cooling_compressor_type')
|
2004
|
-
args['cooling_system_cooling_sensible_heat_fraction'] = 0.65
|
2005
|
-
elsif ['base-hvac-room-ac-only-ceer.xml'].include? hpxml_file
|
2006
|
-
args['cooling_system_cooling_efficiency_type'] = HPXML::UnitsCEER
|
2007
|
-
args['cooling_system_cooling_efficiency'] = 8.4
|
2008
|
-
elsif ['base-hvac-room-ac-only-33percent.xml'].include? hpxml_file
|
2009
|
-
args['cooling_system_fraction_cool_load_served'] = 0.33
|
2010
|
-
args['cooling_system_cooling_capacity'] = 8000.0
|
2011
|
-
elsif ['base-hvac-room-ac-with-heating.xml',
|
2012
|
-
'base-hvac-ptac-with-heating-electricity.xml',
|
2013
|
-
'base-hvac-ptac-with-heating-natural-gas.xml'].include? hpxml_file
|
2014
|
-
args['cooling_system_integrated_heating_system_capacity'] = 36000.0
|
2015
|
-
args['cooling_system_integrated_heating_system_fraction_heat_load_served'] = 1.0
|
2016
|
-
if ['base-hvac-ptac-with-heating-natural-gas.xml'].include? hpxml_file
|
2017
|
-
args['cooling_system_integrated_heating_system_fuel'] = HPXML::FuelTypeNaturalGas
|
2018
|
-
args['cooling_system_integrated_heating_system_efficiency_percent'] = 0.8
|
2019
|
-
else
|
2020
|
-
args['cooling_system_integrated_heating_system_fuel'] = HPXML::FuelTypeElectricity
|
2021
|
-
args['cooling_system_integrated_heating_system_efficiency_percent'] = 1.0
|
2022
|
-
end
|
2023
|
-
elsif ['base-hvac-setpoints.xml'].include? hpxml_file
|
2024
|
-
args['hvac_control_heating_weekday_setpoint'] = 60
|
2025
|
-
args['hvac_control_heating_weekend_setpoint'] = 60
|
2026
|
-
args['hvac_control_cooling_weekday_setpoint'] = 80
|
2027
|
-
args['hvac_control_cooling_weekend_setpoint'] = 80
|
2028
|
-
elsif ['base-hvac-stove-oil-only.xml'].include? hpxml_file
|
2029
|
-
args['heating_system_type'] = HPXML::HVACTypeStove
|
2030
|
-
args['heating_system_fuel'] = HPXML::FuelTypeOil
|
2031
|
-
args['heating_system_heating_efficiency'] = 0.8
|
2032
|
-
args['cooling_system_type'] = 'none'
|
2033
|
-
elsif ['base-hvac-stove-wood-pellets-only.xml'].include? hpxml_file
|
2034
|
-
args['heating_system_fuel'] = HPXML::FuelTypeWoodPellets
|
2035
|
-
elsif ['base-hvac-undersized.xml'].include? hpxml_file
|
2036
|
-
args['heating_system_heating_capacity'] = 3600.0
|
2037
|
-
args['cooling_system_cooling_capacity'] = 2400.0
|
2038
|
-
args['ducts_supply_leakage_to_outside_value'] = 7.5
|
2039
|
-
args['ducts_return_leakage_to_outside_value'] = 2.5
|
2040
|
-
elsif ['base-hvac-wall-furnace-elec-only.xml'].include? hpxml_file
|
2041
|
-
args['heating_system_type'] = HPXML::HVACTypeWallFurnace
|
2042
|
-
args['heating_system_fuel'] = HPXML::FuelTypeElectricity
|
2043
|
-
args['heating_system_heating_efficiency'] = 0.98
|
2044
|
-
args['cooling_system_type'] = 'none'
|
2045
|
-
elsif ['base-hvac-pthp.xml'].include? hpxml_file
|
2046
|
-
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpPTHP
|
2047
|
-
args['heat_pump_cooling_efficiency'] = 11.4
|
2048
|
-
args['heat_pump_cooling_sensible_heat_fraction'] = 0.65
|
2049
|
-
elsif ['base-hvac-room-ac-with-reverse-cycle.xml'].include? hpxml_file
|
2050
|
-
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpRoom
|
2051
|
-
elsif ['base-hvac-ptac.xml'].include? hpxml_file
|
2052
|
-
args['heating_system_type'] = 'none'
|
2053
|
-
args['cooling_system_type'] = HPXML::HVACTypePTAC
|
2054
|
-
args['cooling_system_cooling_efficiency_type'] = HPXML::UnitsEER
|
2055
|
-
args['cooling_system_cooling_efficiency'] = 10.7
|
2056
|
-
args['cooling_system_cooling_sensible_heat_fraction'] = 0.65
|
2057
|
-
end
|
2058
|
-
|
2059
|
-
# Lighting
|
2060
|
-
if ['base-lighting-none.xml'].include? hpxml_file
|
2061
|
-
args['lighting_present'] = false
|
2062
|
-
elsif ['base-lighting-ceiling-fans.xml'].include? hpxml_file
|
2063
|
-
args['ceiling_fan_present'] = true
|
2064
|
-
args['ceiling_fan_efficiency'] = 100.0
|
2065
|
-
args['ceiling_fan_quantity'] = 4
|
2066
|
-
args['ceiling_fan_cooling_setpoint_temp_offset'] = 0.5
|
2067
|
-
elsif ['base-lighting-holiday.xml'].include? hpxml_file
|
2068
|
-
args['holiday_lighting_present'] = true
|
2069
|
-
args['holiday_lighting_daily_kwh'] = 1.1
|
2070
|
-
args['holiday_lighting_period'] = 'Nov 24 - Jan 6'
|
2071
|
-
end
|
2072
|
-
|
2073
|
-
# Location
|
2074
|
-
if ['base-location-AMY-2012.xml'].include? hpxml_file
|
2075
|
-
args['weather_station_epw_filepath'] = 'US_CO_Boulder_AMY_2012.epw'
|
2076
|
-
elsif ['base-location-baltimore-md.xml'].include? hpxml_file
|
2077
|
-
args['site_iecc_zone'] = '4A'
|
2078
|
-
args['site_state_code'] = 'MD'
|
2079
|
-
args['weather_station_epw_filepath'] = 'USA_MD_Baltimore-Washington.Intl.AP.724060_TMY3.epw'
|
2080
|
-
args['heating_system_heating_capacity'] = 24000.0
|
2081
|
-
elsif ['base-location-dallas-tx.xml'].include? hpxml_file
|
2082
|
-
args['site_iecc_zone'] = '3A'
|
2083
|
-
args['site_state_code'] = 'TX'
|
2084
|
-
args['weather_station_epw_filepath'] = 'USA_TX_Dallas-Fort.Worth.Intl.AP.722590_TMY3.epw'
|
2085
|
-
args['heating_system_heating_capacity'] = 24000.0
|
2086
|
-
elsif ['base-location-duluth-mn.xml'].include? hpxml_file
|
2087
|
-
args['site_iecc_zone'] = '7'
|
2088
|
-
args['site_state_code'] = 'MN'
|
2089
|
-
args['weather_station_epw_filepath'] = 'USA_MN_Duluth.Intl.AP.727450_TMY3.epw'
|
2090
|
-
elsif ['base-location-helena-mt.xml'].include? hpxml_file
|
2091
|
-
args['site_iecc_zone'] = '6B'
|
2092
|
-
args['site_state_code'] = 'MT'
|
2093
|
-
args['weather_station_epw_filepath'] = 'USA_MT_Helena.Rgnl.AP.727720_TMY3.epw'
|
2094
|
-
args['heating_system_heating_capacity'] = 48000.0
|
2095
|
-
elsif ['base-location-honolulu-hi.xml'].include? hpxml_file
|
2096
|
-
args['site_iecc_zone'] = '1A'
|
2097
|
-
args['site_state_code'] = 'HI'
|
2098
|
-
args['weather_station_epw_filepath'] = 'USA_HI_Honolulu.Intl.AP.911820_TMY3.epw'
|
2099
|
-
args['heating_system_heating_capacity'] = 12000.0
|
2100
|
-
elsif ['base-location-miami-fl.xml',
|
2101
|
-
'base-appliances-oil-location-miami-fl.xml'].include? hpxml_file
|
2102
|
-
args['site_iecc_zone'] = '1A'
|
2103
|
-
args['site_state_code'] = 'FL'
|
2104
|
-
args['weather_station_epw_filepath'] = 'USA_FL_Miami.Intl.AP.722020_TMY3.epw'
|
2105
|
-
args['heating_system_heating_capacity'] = 12000.0
|
2106
|
-
elsif ['base-hvac-autosize-air-to-air-heat-pump-1-speed-sizing-methodology-maxload-miami-fl.xml'].include? hpxml_file
|
2107
|
-
args['site_iecc_zone'] = '1A'
|
2108
|
-
args['site_state_code'] = 'FL'
|
2109
|
-
args['weather_station_epw_filepath'] = 'USA_FL_Miami.Intl.AP.722020_TMY3.epw'
|
2110
|
-
elsif ['base-location-phoenix-az.xml'].include? hpxml_file
|
2111
|
-
args['site_iecc_zone'] = '2B'
|
2112
|
-
args['site_state_code'] = 'AZ'
|
2113
|
-
args['weather_station_epw_filepath'] = 'USA_AZ_Phoenix-Sky.Harbor.Intl.AP.722780_TMY3.epw'
|
2114
|
-
args['heating_system_heating_capacity'] = 24000.0
|
2115
|
-
elsif ['base-location-portland-or.xml',
|
2116
|
-
'base-appliances-propane-location-portland-or.xml'].include? hpxml_file
|
2117
|
-
args['site_iecc_zone'] = '4C'
|
2118
|
-
args['site_state_code'] = 'OR'
|
2119
|
-
args['weather_station_epw_filepath'] = 'USA_OR_Portland.Intl.AP.726980_TMY3.epw'
|
2120
|
-
args['heating_system_heating_capacity'] = 24000.0
|
2121
|
-
elsif ['base-location-capetown-zaf.xml'].include? hpxml_file
|
2122
|
-
args.delete('site_iecc_zone')
|
2123
|
-
args.delete('site_state_code')
|
2124
|
-
args['weather_station_epw_filepath'] = 'ZAF_Cape.Town.688160_IWEC.epw'
|
2125
|
-
args['heating_system_heating_capacity'] = 24000.0
|
2126
|
-
elsif ['base-misc-defaults.xml'].include? hpxml_file
|
2127
|
-
args.delete('site_iecc_zone')
|
2128
|
-
args.delete('site_state_code')
|
2129
|
-
elsif ['base-misc-ground-conductivity.xml'].include? hpxml_file
|
2130
|
-
args['site_ground_conductivity'] = 0.8
|
2131
|
-
end
|
2132
|
-
|
2133
|
-
# Mechanical Ventilation
|
2134
|
-
if ['base-mechvent-balanced.xml'].include? hpxml_file
|
2135
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeBalanced
|
2136
|
-
args['mech_vent_fan_power'] = 60
|
2137
|
-
elsif ['base-mechvent-bath-kitchen-fans.xml'].include? hpxml_file
|
2138
|
-
args['kitchen_fans_quantity'] = 1
|
2139
|
-
args['kitchen_fans_flow_rate'] = 100.0
|
2140
|
-
args['kitchen_fans_hours_in_operation'] = 1.5
|
2141
|
-
args['kitchen_fans_power'] = 30.0
|
2142
|
-
args['kitchen_fans_start_hour'] = 18
|
2143
|
-
args['bathroom_fans_quantity'] = 2
|
2144
|
-
args['bathroom_fans_flow_rate'] = 50.0
|
2145
|
-
args['bathroom_fans_hours_in_operation'] = 1.5
|
2146
|
-
args['bathroom_fans_power'] = 15.0
|
2147
|
-
args['bathroom_fans_start_hour'] = 7
|
2148
|
-
elsif ['base-mechvent-cfis.xml',
|
2149
|
-
'base-mechvent-cfis-dse.xml'].include? hpxml_file
|
2150
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeCFIS
|
2151
|
-
args['mech_vent_flow_rate'] = 330
|
2152
|
-
args['mech_vent_hours_in_operation'] = 8
|
2153
|
-
args['mech_vent_fan_power'] = 300
|
2154
|
-
elsif ['base-mechvent-cfis-evap-cooler-only-ducted.xml'].include? hpxml_file
|
2155
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeCFIS
|
2156
|
-
args['mech_vent_flow_rate'] = 330
|
2157
|
-
args['mech_vent_hours_in_operation'] = 8
|
2158
|
-
args['mech_vent_fan_power'] = 300
|
2159
|
-
elsif ['base-mechvent-erv.xml'].include? hpxml_file
|
2160
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeERV
|
2161
|
-
args['mech_vent_fan_power'] = 60
|
2162
|
-
elsif ['base-mechvent-erv-atre-asre.xml'].include? hpxml_file
|
2163
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeERV
|
2164
|
-
args['mech_vent_recovery_efficiency_type'] = 'Adjusted'
|
2165
|
-
args['mech_vent_total_recovery_efficiency'] = 0.526
|
2166
|
-
args['mech_vent_sensible_recovery_efficiency'] = 0.79
|
2167
|
-
args['mech_vent_fan_power'] = 60
|
2168
|
-
elsif ['base-mechvent-exhaust.xml'].include? hpxml_file
|
2169
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeExhaust
|
2170
|
-
elsif ['base-mechvent-exhaust-rated-flow-rate.xml'].include? hpxml_file
|
2171
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeExhaust
|
2172
|
-
elsif ['base-mechvent-hrv.xml'].include? hpxml_file
|
2173
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeHRV
|
2174
|
-
args['mech_vent_fan_power'] = 60
|
2175
|
-
elsif ['base-mechvent-hrv-asre.xml'].include? hpxml_file
|
2176
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeHRV
|
2177
|
-
args['mech_vent_recovery_efficiency_type'] = 'Adjusted'
|
2178
|
-
args['mech_vent_sensible_recovery_efficiency'] = 0.79
|
2179
|
-
args['mech_vent_fan_power'] = 60
|
2180
|
-
elsif ['base-mechvent-supply.xml'].include? hpxml_file
|
2181
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeSupply
|
2182
|
-
elsif ['base-mechvent-whole-house-fan.xml'].include? hpxml_file
|
2183
|
-
args['whole_house_fan_present'] = true
|
2184
|
-
args['whole_house_fan_flow_rate'] = 4500.0
|
2185
|
-
args['whole_house_fan_power'] = 300.0
|
2186
|
-
end
|
2187
|
-
|
2188
|
-
# Misc
|
2189
|
-
if not orig_parent.nil?
|
2190
|
-
args['additional_properties'] = "ParentHPXMLFile=#{File.basename(orig_parent)}"
|
2191
|
-
end
|
2192
|
-
if ['base-misc-additional-properties.xml'].include? hpxml_file
|
2193
|
-
args['additional_properties'] += '|LowIncome=false|Remodeled|Description=2-story home in Denver|comma=,|special=<|special2=>|special3=/|special4=\\'
|
2194
|
-
elsif ['base-misc-bills.xml'].include? hpxml_file
|
2195
|
-
args['utility_bill_scenario_names'] = 'Bills'
|
2196
|
-
args['utility_bill_electricity_fixed_charges'] = '12'
|
2197
|
-
args['utility_bill_electricity_marginal_rates'] = '0.12'
|
2198
|
-
args['utility_bill_natural_gas_fixed_charges'] = '12'
|
2199
|
-
args['utility_bill_natural_gas_marginal_rates'] = '1.10'
|
2200
|
-
elsif ['base-misc-bills-none.xml'].include? hpxml_file
|
2201
|
-
args.delete('utility_bill_scenario_names')
|
2202
|
-
elsif ['base-misc-bills-pv.xml'].include? hpxml_file
|
2203
|
-
args['pv_system_max_power_output'] = 10000 # Ensure there is excess annual PV production
|
2204
|
-
args['utility_bill_scenario_names'] = 'Net Metering w/ Wholesale Excess Rate, Net Metering w/ Retail Excess Rate, Feed-In Tariff'
|
2205
|
-
args['utility_bill_electricity_fixed_charges'] = '10, 10, 10'
|
2206
|
-
args['utility_bill_electricity_marginal_rates'] = '0.12, 0.12, 0.12'
|
2207
|
-
args['utility_bill_natural_gas_fixed_charges'] = '11, 11, 11'
|
2208
|
-
args['utility_bill_natural_gas_marginal_rates'] = '1.10, 1.10, 1.10'
|
2209
|
-
args['utility_bill_pv_compensation_types'] = "#{HPXML::PVCompensationTypeNetMetering}, #{HPXML::PVCompensationTypeNetMetering}, #{HPXML::PVCompensationTypeFeedInTariff}"
|
2210
|
-
args['utility_bill_pv_net_metering_annual_excess_sellback_rate_types'] = "#{HPXML::PVAnnualExcessSellbackRateTypeUserSpecified}, #{HPXML::PVAnnualExcessSellbackRateTypeRetailElectricityCost}, NA"
|
2211
|
-
args['utility_bill_pv_net_metering_annual_excess_sellback_rates'] = '0.035, NA, NA'
|
2212
|
-
args['utility_bill_pv_feed_in_tariff_rates'] = 'NA, NA, 0.13'
|
2213
|
-
args['utility_bill_pv_monthly_grid_connection_fee_units'] = "#{HPXML::UnitsDollarsPerkW}, #{HPXML::UnitsDollarsPerkW}, #{HPXML::UnitsDollars}"
|
2214
|
-
args['utility_bill_pv_monthly_grid_connection_fees'] = '2.5, 2.5, 7.5'
|
2215
|
-
elsif ['base-misc-bills-pv-detailed-only.xml'].include? hpxml_file
|
2216
|
-
args['utility_bill_scenario_names'] = 'Tiered, TOU, Tiered and TOU, Real-Time Pricing'
|
2217
|
-
args['utility_bill_electricity_filepaths'] = '../../ReportUtilityBills/resources/detailed_rates/Sample Tiered Rate.json, ../../ReportUtilityBills/resources/detailed_rates/Sample Time-of-Use Rate.json, ../../ReportUtilityBills/resources/detailed_rates/Sample Tiered Time-of-Use Rate.json, ../../ReportUtilityBills/resources/detailed_rates/Sample Real-Time Pricing Rate.json'
|
2218
|
-
elsif ['base-misc-bills-pv-mixed.xml'].include? hpxml_file
|
2219
|
-
args['utility_bill_scenario_names'] = 'Simple, Detailed'
|
2220
|
-
args['utility_bill_electricity_filepaths'] = 'NA, ../../ReportUtilityBills/resources/detailed_rates/Sample Tiered Rate.json'
|
2221
|
-
elsif ['base-misc-defaults.xml'].include? hpxml_file
|
2222
|
-
args.delete('simulation_control_timestep')
|
2223
|
-
args.delete('site_type')
|
2224
|
-
args.delete('geometry_unit_num_bathrooms')
|
2225
|
-
args.delete('geometry_unit_num_occupants')
|
2226
|
-
args.delete('foundation_wall_insulation_distance_to_top')
|
2227
|
-
args.delete('foundation_wall_insulation_distance_to_bottom')
|
2228
|
-
args.delete('foundation_wall_thickness')
|
2229
|
-
args.delete('slab_thickness')
|
2230
|
-
args.delete('slab_carpet_fraction')
|
2231
|
-
args.delete('roof_material_type')
|
2232
|
-
args['roof_color'] = HPXML::ColorLight
|
2233
|
-
args.delete('roof_material_type')
|
2234
|
-
args.delete('wall_siding_type')
|
2235
|
-
args.delete('window_fraction_operable')
|
2236
|
-
args.delete('window_interior_shading_winter')
|
2237
|
-
args.delete('window_interior_shading_summer')
|
2238
|
-
args.delete('cooling_system_cooling_compressor_type')
|
2239
|
-
args.delete('cooling_system_cooling_sensible_heat_fraction')
|
2240
|
-
args['mech_vent_fan_type'] = HPXML::MechVentTypeExhaust
|
2241
|
-
args.delete('mech_vent_hours_in_operation')
|
2242
|
-
args.delete('mech_vent_fan_power')
|
2243
|
-
args.delete('ducts_supply_location')
|
2244
|
-
args.delete('ducts_return_location')
|
2245
|
-
args.delete('ducts_supply_surface_area')
|
2246
|
-
args.delete('ducts_return_surface_area')
|
2247
|
-
args['ducts_number_of_return_registers'] = 2
|
2248
|
-
args.delete('kitchen_fans_quantity')
|
2249
|
-
args.delete('bathroom_fans_quantity')
|
2250
|
-
args.delete('water_heater_location')
|
2251
|
-
args.delete('water_heater_tank_volume')
|
2252
|
-
args.delete('water_heater_setpoint_temperature')
|
2253
|
-
args.delete('hot_water_distribution_standard_piping_length')
|
2254
|
-
args.delete('hot_water_distribution_pipe_r')
|
2255
|
-
args['solar_thermal_system_type'] = HPXML::SolarThermalSystemType
|
2256
|
-
args['solar_thermal_collector_type'] = HPXML::SolarThermalTypeSingleGlazing
|
2257
|
-
args['solar_thermal_collector_rated_optical_efficiency'] = 0.77
|
2258
|
-
args['solar_thermal_collector_rated_thermal_losses'] = 0.793
|
2259
|
-
args['pv_system_present'] = true
|
2260
|
-
args.delete('pv_system_module_type')
|
2261
|
-
args.delete('pv_system_inverter_efficiency')
|
2262
|
-
args.delete('pv_system_system_losses_fraction')
|
2263
|
-
args['battery_present'] = true
|
2264
|
-
args.delete('battery_location')
|
2265
|
-
args.delete('clothes_washer_location')
|
2266
|
-
args.delete('clothes_washer_efficiency')
|
2267
|
-
args.delete('clothes_washer_rated_annual_kwh')
|
2268
|
-
args.delete('clothes_washer_label_electric_rate')
|
2269
|
-
args.delete('clothes_washer_label_gas_rate')
|
2270
|
-
args.delete('clothes_washer_label_annual_gas_cost')
|
2271
|
-
args.delete('clothes_washer_label_usage')
|
2272
|
-
args.delete('clothes_washer_capacity')
|
2273
|
-
args.delete('clothes_dryer_location')
|
2274
|
-
args.delete('clothes_dryer_efficiency')
|
2275
|
-
args.delete('clothes_dryer_vented_flow_rate')
|
2276
|
-
args.delete('dishwasher_location')
|
2277
|
-
args.delete('dishwasher_efficiency')
|
2278
|
-
args.delete('dishwasher_label_electric_rate')
|
2279
|
-
args.delete('dishwasher_label_gas_rate')
|
2280
|
-
args.delete('dishwasher_label_annual_gas_cost')
|
2281
|
-
args.delete('dishwasher_label_usage')
|
2282
|
-
args.delete('dishwasher_place_setting_capacity')
|
2283
|
-
args.delete('refrigerator_location')
|
2284
|
-
args.delete('refrigerator_rated_annual_kwh')
|
2285
|
-
args.delete('cooking_range_oven_location')
|
2286
|
-
args.delete('cooking_range_oven_is_induction')
|
2287
|
-
args.delete('cooking_range_oven_is_convection')
|
2288
|
-
args['ceiling_fan_present'] = true
|
2289
|
-
args.delete('misc_plug_loads_television_annual_kwh')
|
2290
|
-
args.delete('misc_plug_loads_other_annual_kwh')
|
2291
|
-
args.delete('misc_plug_loads_other_frac_sensible')
|
2292
|
-
args.delete('misc_plug_loads_other_frac_latent')
|
2293
|
-
args.delete('mech_vent_flow_rate')
|
2294
|
-
args.delete('kitchen_fans_flow_rate')
|
2295
|
-
args.delete('bathroom_fans_flow_rate')
|
2296
|
-
args['whole_house_fan_present'] = true
|
2297
|
-
args.delete('whole_house_fan_flow_rate')
|
2298
|
-
args.delete('whole_house_fan_power')
|
2299
|
-
args.delete('hvac_control_heating_weekday_setpoint')
|
2300
|
-
args.delete('hvac_control_heating_weekend_setpoint')
|
2301
|
-
args.delete('hvac_control_cooling_weekday_setpoint')
|
2302
|
-
args.delete('hvac_control_cooling_weekend_setpoint')
|
2303
|
-
elsif ['base-misc-emissions.xml'].include? hpxml_file
|
2304
|
-
args['emissions_scenario_names'] = 'Cambium Hourly MidCase LRMER RMPA, Cambium Hourly LowRECosts LRMER RMPA, Cambium Annual MidCase AER National, eGRID RMPA, eGRID RMPA'
|
2305
|
-
args['emissions_types'] = 'CO2e, CO2e, CO2e, SO2, NOx'
|
2306
|
-
args['emissions_electricity_units'] = 'kg/MWh, kg/MWh, kg/MWh, lb/MWh, lb/MWh'
|
2307
|
-
args['emissions_electricity_values_or_filepaths'] = '../../HPXMLtoOpenStudio/resources/data/cambium/LRMER_MidCase.csv, ../../HPXMLtoOpenStudio/resources/data/cambium/LRMER_LowRECosts.csv, 392.6, 0.384, 0.67'
|
2308
|
-
args['emissions_electricity_number_of_header_rows'] = '1, 1, , , '
|
2309
|
-
args['emissions_electricity_column_numbers'] = '17, 17, , , '
|
2310
|
-
elsif ['base-misc-loads-large-uncommon.xml'].include? hpxml_file
|
2311
|
-
args.delete('extra_refrigerator_location')
|
2312
|
-
args['extra_refrigerator_present'] = true
|
2313
|
-
args['extra_refrigerator_rated_annual_kwh'] = 700.0
|
2314
|
-
args['freezer_present'] = true
|
2315
|
-
args['freezer_location'] = HPXML::LocationLivingSpace
|
2316
|
-
args['freezer_rated_annual_kwh'] = 300.0
|
2317
|
-
args['misc_plug_loads_well_pump_present'] = true
|
2318
|
-
args['misc_plug_loads_well_pump_annual_kwh'] = 475.0
|
2319
|
-
args['misc_plug_loads_vehicle_present'] = true
|
2320
|
-
args['misc_plug_loads_vehicle_annual_kwh'] = 1500.0
|
2321
|
-
args['misc_fuel_loads_grill_present'] = true
|
2322
|
-
args['misc_fuel_loads_grill_fuel_type'] = HPXML::FuelTypePropane
|
2323
|
-
args['misc_fuel_loads_grill_annual_therm'] = 25.0
|
2324
|
-
args['misc_fuel_loads_lighting_present'] = true
|
2325
|
-
args['misc_fuel_loads_lighting_annual_therm'] = 28.0
|
2326
|
-
args['misc_fuel_loads_fireplace_present'] = true
|
2327
|
-
args['misc_fuel_loads_fireplace_fuel_type'] = HPXML::FuelTypeWoodCord
|
2328
|
-
args['misc_fuel_loads_fireplace_annual_therm'] = 55.0
|
2329
|
-
args['misc_fuel_loads_fireplace_frac_sensible'] = 0.5
|
2330
|
-
args['misc_fuel_loads_fireplace_frac_latent'] = 0.1
|
2331
|
-
args['pool_present'] = true
|
2332
|
-
args['pool_heater_type'] = HPXML::HeaterTypeGas
|
2333
|
-
args['pool_pump_annual_kwh'] = 2700.0
|
2334
|
-
args['pool_heater_annual_therm'] = 500.0
|
2335
|
-
args['hot_tub_present'] = true
|
2336
|
-
args['hot_tub_pump_annual_kwh'] = 1000.0
|
2337
|
-
args['hot_tub_heater_annual_kwh'] = 1300.0
|
2338
|
-
elsif ['base-misc-loads-large-uncommon2.xml'].include? hpxml_file
|
2339
|
-
args['pool_heater_type'] = HPXML::TypeNone
|
2340
|
-
args['hot_tub_heater_type'] = HPXML::HeaterTypeHeatPump
|
2341
|
-
args['hot_tub_heater_annual_kwh'] = 260.0
|
2342
|
-
args['misc_fuel_loads_grill_fuel_type'] = HPXML::FuelTypeOil
|
2343
|
-
args['misc_fuel_loads_fireplace_fuel_type'] = HPXML::FuelTypeWoodPellets
|
2344
|
-
elsif ['base-misc-neighbor-shading.xml'].include? hpxml_file
|
2345
|
-
args['neighbor_back_distance'] = 10
|
2346
|
-
args['neighbor_front_distance'] = 15
|
2347
|
-
args['neighbor_front_height'] = 12
|
2348
|
-
elsif ['base-misc-shielding-of-home.xml'].include? hpxml_file
|
2349
|
-
args['site_shielding_of_home'] = HPXML::ShieldingWellShielded
|
2350
|
-
elsif ['base-misc-usage-multiplier.xml'].include? hpxml_file
|
2351
|
-
args['water_fixtures_usage_multiplier'] = 0.9
|
2352
|
-
args['lighting_interior_usage_multiplier'] = 0.9
|
2353
|
-
args['lighting_exterior_usage_multiplier'] = 0.9
|
2354
|
-
args['lighting_garage_usage_multiplier'] = 0.9
|
2355
|
-
args['clothes_washer_usage_multiplier'] = 0.9
|
2356
|
-
args['clothes_dryer_usage_multiplier'] = 0.9
|
2357
|
-
args['dishwasher_usage_multiplier'] = 0.9
|
2358
|
-
args['refrigerator_usage_multiplier'] = 0.9
|
2359
|
-
args['freezer_present'] = true
|
2360
|
-
args['freezer_location'] = HPXML::LocationLivingSpace
|
2361
|
-
args['freezer_rated_annual_kwh'] = 300.0
|
2362
|
-
args['freezer_usage_multiplier'] = 0.9
|
2363
|
-
args['cooking_range_oven_usage_multiplier'] = 0.9
|
2364
|
-
args['misc_plug_loads_television_usage_multiplier'] = 0.9
|
2365
|
-
args['misc_plug_loads_other_usage_multiplier'] = 0.9
|
2366
|
-
args['pool_present'] = true
|
2367
|
-
args['pool_pump_annual_kwh'] = 2700.0
|
2368
|
-
args['pool_pump_usage_multiplier'] = 0.9
|
2369
|
-
args['pool_heater_type'] = HPXML::HeaterTypeGas
|
2370
|
-
args['pool_heater_annual_therm'] = 500.0
|
2371
|
-
args['pool_heater_usage_multiplier'] = 0.9
|
2372
|
-
args['hot_tub_present'] = true
|
2373
|
-
args['hot_tub_pump_annual_kwh'] = 1000.0
|
2374
|
-
args['hot_tub_pump_usage_multiplier'] = 0.9
|
2375
|
-
args['hot_tub_heater_annual_kwh'] = 1300.0
|
2376
|
-
args['hot_tub_heater_usage_multiplier'] = 0.9
|
2377
|
-
args['misc_fuel_loads_grill_present'] = true
|
2378
|
-
args['misc_fuel_loads_grill_fuel_type'] = HPXML::FuelTypePropane
|
2379
|
-
args['misc_fuel_loads_grill_annual_therm'] = 25.0
|
2380
|
-
args['misc_fuel_loads_grill_usage_multiplier'] = 0.9
|
2381
|
-
args['misc_fuel_loads_lighting_present'] = true
|
2382
|
-
args['misc_fuel_loads_lighting_annual_therm'] = 28.0
|
2383
|
-
args['misc_fuel_loads_lighting_usage_multiplier'] = 0.9
|
2384
|
-
args['misc_fuel_loads_fireplace_present'] = true
|
2385
|
-
args['misc_fuel_loads_fireplace_fuel_type'] = HPXML::FuelTypeWoodCord
|
2386
|
-
args['misc_fuel_loads_fireplace_annual_therm'] = 55.0
|
2387
|
-
args['misc_fuel_loads_fireplace_frac_sensible'] = 0.5
|
2388
|
-
args['misc_fuel_loads_fireplace_frac_latent'] = 0.1
|
2389
|
-
args['misc_fuel_loads_fireplace_usage_multiplier'] = 0.9
|
2390
|
-
elsif ['base-misc-loads-none.xml'].include? hpxml_file
|
2391
|
-
args['misc_plug_loads_television_present'] = false
|
2392
|
-
args['misc_plug_loads_other_annual_kwh'] = 0.0
|
2393
|
-
args.delete('misc_plug_loads_other_frac_sensible')
|
2394
|
-
args.delete('misc_plug_loads_other_frac_latent')
|
2395
|
-
end
|
2396
|
-
|
2397
|
-
# PV
|
2398
|
-
if ['base-pv.xml',
|
2399
|
-
'base-pv-battery.xml',
|
2400
|
-
'base-pv-battery-garage.xml'].include? hpxml_file
|
2401
|
-
args['pv_system_present'] = true
|
2402
|
-
args['pv_system_module_type'] = HPXML::PVModuleTypeStandard
|
2403
|
-
args['pv_system_location'] = HPXML::LocationRoof
|
2404
|
-
args['pv_system_tracking'] = HPXML::PVTrackingTypeFixed
|
2405
|
-
args['pv_system_inverter_efficiency'] = 0.96
|
2406
|
-
args['pv_system_system_losses_fraction'] = 0.14
|
2407
|
-
args['pv_system_2_present'] = true
|
2408
|
-
args['pv_system_2_module_type'] = HPXML::PVModuleTypePremium
|
2409
|
-
args['pv_system_2_location'] = HPXML::LocationRoof
|
2410
|
-
args['pv_system_2_tracking'] = HPXML::PVTrackingTypeFixed
|
2411
|
-
args['pv_system_2_array_azimuth'] = 90
|
2412
|
-
args['pv_system_2_max_power_output'] = 1500
|
2413
|
-
end
|
2414
|
-
|
2415
|
-
# Battery
|
2416
|
-
if ['base-battery.xml',
|
2417
|
-
'base-misc-generators-battery.xml',
|
2418
|
-
'base-pv-battery-garage.xml',
|
2419
|
-
'base-pv-generators-battery.xml'].include? hpxml_file
|
2420
|
-
args['battery_present'] = true
|
2421
|
-
if hpxml_file == 'base-pv-battery-garage.xml'
|
2422
|
-
args['battery_location'] = HPXML::LocationGarage
|
2423
|
-
else
|
2424
|
-
args['battery_location'] = HPXML::LocationOutside
|
2425
|
-
end
|
2426
|
-
args['battery_power'] = 6000
|
2427
|
-
args['battery_capacity'] = 20
|
2428
|
-
args['battery_usable_capacity'] = 18
|
2429
|
-
elsif ['base-pv-battery-round-trip-efficiency.xml'].include? hpxml_file
|
2430
|
-
args['battery_round_trip_efficiency'] = 0.8
|
2431
|
-
end
|
2432
|
-
|
2433
|
-
# Simulation Control
|
2434
|
-
if ['base-simcontrol-calendar-year-custom.xml'].include? hpxml_file
|
2435
|
-
args['simulation_control_run_period_calendar_year'] = 2010
|
2436
|
-
elsif ['base-simcontrol-daylight-saving-custom.xml'].include? hpxml_file
|
2437
|
-
args['simulation_control_daylight_saving_enabled'] = true
|
2438
|
-
args['simulation_control_daylight_saving_period'] = 'Mar 10 - Nov 6'
|
2439
|
-
elsif ['base-simcontrol-daylight-saving-disabled.xml'].include? hpxml_file
|
2440
|
-
args['simulation_control_daylight_saving_enabled'] = false
|
2441
|
-
elsif ['base-simcontrol-runperiod-1-month.xml'].include? hpxml_file
|
2442
|
-
args['simulation_control_run_period'] = 'Feb 1 - Feb 28'
|
2443
|
-
elsif ['base-simcontrol-temperature-capacitance-multiplier.xml'].include? hpxml_file
|
2444
|
-
args['simulation_control_temperature_capacitance_multiplier'] = 7.0
|
2445
|
-
elsif ['base-simcontrol-timestep-10-mins.xml'].include? hpxml_file
|
2446
|
-
args['simulation_control_timestep'] = 10
|
2447
|
-
elsif ['base-simcontrol-timestep-10-mins-occupancy-stochastic-10-mins.xml'].include? hpxml_file
|
2448
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/occupancy-stochastic-10-mins.csv'
|
2449
|
-
elsif ['base-simcontrol-timestep-10-mins-occupancy-stochastic-60-mins.xml'].include? hpxml_file
|
2450
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/occupancy-stochastic.csv'
|
2451
|
-
elsif ['base-simcontrol-timestep-30-mins.xml'].include? hpxml_file
|
2452
|
-
args['simulation_control_timestep'] = 30
|
2453
|
-
end
|
2454
|
-
|
2455
|
-
# Occupancy Schedules
|
2456
|
-
if ['base-schedules-detailed-occupancy-smooth.xml'].include? hpxml_file
|
2457
|
-
sch_args['hpxml_path'] = args['hpxml_path']
|
2458
|
-
sch_args['schedules_type'] = 'smooth'
|
2459
|
-
sch_args['output_csv_path'] = '../../HPXMLtoOpenStudio/resources/schedule_files/occupancy-smooth.csv'
|
2460
|
-
sch_args['hpxml_output_path'] = sch_args['hpxml_path']
|
2461
|
-
elsif ['base-schedules-detailed-occupancy-stochastic.xml'].include? hpxml_file
|
2462
|
-
sch_args['hpxml_path'] = args['hpxml_path']
|
2463
|
-
sch_args['schedules_type'] = 'stochastic'
|
2464
|
-
sch_args['output_csv_path'] = '../../HPXMLtoOpenStudio/resources/schedule_files/occupancy-stochastic.csv'
|
2465
|
-
sch_args['hpxml_output_path'] = sch_args['hpxml_path']
|
2466
|
-
elsif ['base-schedules-detailed-occupancy-stochastic-vacancy.xml'].include? hpxml_file
|
2467
|
-
sch_args['hpxml_path'] = args['hpxml_path']
|
2468
|
-
sch_args['schedules_type'] = 'stochastic'
|
2469
|
-
sch_args['schedules_vacancy_period'] = 'Dec 1 - Jan 31'
|
2470
|
-
sch_args['output_csv_path'] = '../../HPXMLtoOpenStudio/resources/schedule_files/occupancy-stochastic-vacancy.csv'
|
2471
|
-
sch_args['hpxml_output_path'] = sch_args['hpxml_path']
|
2472
|
-
elsif ['base-schedules-detailed-occupancy-stochastic-10-mins.xml'].include? hpxml_file
|
2473
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/occupancy-stochastic-10-mins.csv'
|
2474
|
-
elsif ['base-schedules-detailed-all-10-mins.xml'].include? hpxml_file
|
2475
|
-
sch_args['hpxml_path'] = args['hpxml_path']
|
2476
|
-
sch_args['schedules_type'] = 'stochastic'
|
2477
|
-
sch_args['output_csv_path'] = '../../HPXMLtoOpenStudio/resources/schedule_files/occupancy-stochastic-10-mins.csv'
|
2478
|
-
sch_args['hpxml_output_path'] = sch_args['hpxml_path']
|
2479
|
-
end
|
2480
|
-
|
2481
|
-
# Setpoint Schedules
|
2482
|
-
if ['base-schedules-detailed-setpoints.xml'].include? hpxml_file
|
2483
|
-
args.delete('hvac_control_heating_weekday_setpoint')
|
2484
|
-
args.delete('hvac_control_heating_weekend_setpoint')
|
2485
|
-
args.delete('hvac_control_cooling_weekday_setpoint')
|
2486
|
-
args.delete('hvac_control_cooling_weekend_setpoint')
|
2487
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/setpoints.csv'
|
2488
|
-
elsif ['base-schedules-detailed-setpoints-daily-schedules.xml'].include? hpxml_file
|
2489
|
-
args.delete('hvac_control_heating_weekday_setpoint')
|
2490
|
-
args.delete('hvac_control_heating_weekend_setpoint')
|
2491
|
-
args.delete('hvac_control_cooling_weekday_setpoint')
|
2492
|
-
args.delete('hvac_control_cooling_weekend_setpoint')
|
2493
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/setpoints-daily-schedules.csv'
|
2494
|
-
elsif ['base-schedules-detailed-setpoints-daily-setbacks.xml'].include? hpxml_file
|
2495
|
-
args.delete('hvac_control_heating_weekday_setpoint')
|
2496
|
-
args.delete('hvac_control_heating_weekend_setpoint')
|
2497
|
-
args.delete('hvac_control_cooling_weekday_setpoint')
|
2498
|
-
args.delete('hvac_control_cooling_weekend_setpoint')
|
2499
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/setpoints-daily-setbacks.csv'
|
2500
|
-
elsif ['base-schedules-detailed-all-10-mins.xml'].include? hpxml_file
|
2501
|
-
args.delete('hvac_control_heating_weekday_setpoint')
|
2502
|
-
args.delete('hvac_control_heating_weekend_setpoint')
|
2503
|
-
args.delete('hvac_control_cooling_weekday_setpoint')
|
2504
|
-
args.delete('hvac_control_cooling_weekend_setpoint')
|
2505
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/setpoints-10-mins.csv'
|
2506
|
-
elsif ['base-hvac-furnace-gas-only-detailed-setpoints.xml'].include? hpxml_file
|
2507
|
-
args.delete('hvac_control_heating_weekday_setpoint')
|
2508
|
-
args.delete('hvac_control_heating_weekend_setpoint')
|
2509
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/setpoints-heating-only.csv'
|
2510
|
-
elsif ['base-hvac-room-ac-only-detailed-setpoints.xml'].include? hpxml_file
|
2511
|
-
args.delete('hvac_control_cooling_weekday_setpoint')
|
2512
|
-
args.delete('hvac_control_cooling_weekend_setpoint')
|
2513
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/setpoints-cooling-only.csv'
|
2514
|
-
end
|
2515
|
-
|
2516
|
-
# Water Heater Schedules
|
2517
|
-
if ['base-dhw-tank-heat-pump-detailed-setpoints.xml',
|
2518
|
-
'base-dhw-indirect-detailed-setpoints.xml',
|
2519
|
-
'base-dhw-tank-detailed-setpoints.xml',
|
2520
|
-
'base-dhw-tankless-detailed-setpoints.xml'].include? hpxml_file
|
2521
|
-
args.delete('water_heater_setpoint_temperature')
|
2522
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/water-heater-setpoints.csv'
|
2523
|
-
elsif ['base-dhw-tank-heat-pump-detailed-operating-modes.xml'].include? hpxml_file
|
2524
|
-
args.delete('water_heater_setpoint_temperature')
|
2525
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/water-heater-operating-modes.csv'
|
2526
|
-
elsif ['base-dhw-tank-heat-pump-detailed-schedules.xml'].include? hpxml_file
|
2527
|
-
args.delete('water_heater_setpoint_temperature')
|
2528
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/water-heater-setpoints.csv, ../../HPXMLtoOpenStudio/resources/schedule_files/water-heater-operating-modes.csv'
|
2529
|
-
elsif ['base-dhw-tank-model-type-stratified-detailed-occupancy-stochastic.xml'].include? hpxml_file
|
2530
|
-
sch_args['hpxml_path'] = args['hpxml_path']
|
2531
|
-
sch_args['schedules_type'] = 'stochastic'
|
2532
|
-
sch_args['output_csv_path'] = '../../HPXMLtoOpenStudio/resources/schedule_files/occupancy-stochastic.csv'
|
2533
|
-
sch_args['hpxml_output_path'] = sch_args['hpxml_path']
|
2534
|
-
elsif ['base-schedules-detailed-all-10-mins.xml'].include? hpxml_file
|
2535
|
-
args.delete('water_heater_setpoint_temperature')
|
2536
|
-
args['schedules_filepaths'] += ', ../../HPXMLtoOpenStudio/resources/schedule_files/water-heater-setpoints-10-mins.csv'
|
2537
|
-
end
|
2538
|
-
|
2539
|
-
# Battery Schedules
|
2540
|
-
if ['base-battery-scheduled.xml',
|
2541
|
-
'base-misc-generators-battery-scheduled.xml',
|
2542
|
-
'base-pv-battery-scheduled.xml',
|
2543
|
-
'base-pv-generators-battery-scheduled.xml'].include? hpxml_file
|
2544
|
-
args['schedules_filepaths'] = '../../HPXMLtoOpenStudio/resources/schedule_files/battery.csv'
|
2545
|
-
end
|
2546
|
-
end
|
2547
|
-
|
2548
131
|
def apply_hpxml_modification_ashrae_140(hpxml)
|
2549
132
|
# Set detailed HPXML values for ASHRAE 140 test files
|
2550
133
|
|
2551
|
-
renumber_hpxml_ids(hpxml)
|
2552
|
-
|
2553
134
|
# ------------ #
|
2554
135
|
# HPXML Header #
|
2555
136
|
# ------------ #
|
@@ -2617,6 +198,7 @@ def apply_hpxml_modification_ashrae_140(hpxml)
|
|
2617
198
|
hpxml.doors[0].area /= 2.0
|
2618
199
|
hpxml.doors << hpxml.doors[0].dup
|
2619
200
|
hpxml.doors[1].azimuth = 0
|
201
|
+
hpxml.doors[1].id = 'Door2'
|
2620
202
|
end
|
2621
203
|
hpxml.windows.each do |window|
|
2622
204
|
next if window.overhangs_depth.nil?
|
@@ -2636,28 +218,16 @@ def apply_hpxml_modification_ashrae_140(hpxml)
|
|
2636
218
|
# HPXML MiscLoads #
|
2637
219
|
# --------------- #
|
2638
220
|
|
2639
|
-
hpxml.plug_loads[0].
|
2640
|
-
|
2641
|
-
|
2642
|
-
|
2643
|
-
|
2644
|
-
# FINAL #
|
2645
|
-
# ----- #
|
2646
|
-
|
2647
|
-
renumber_hpxml_ids(hpxml)
|
221
|
+
if hpxml.plug_loads[0].kwh_per_year > 0
|
222
|
+
hpxml.plug_loads[0].weekday_fractions = '0.0203, 0.0203, 0.0203, 0.0203, 0.0203, 0.0339, 0.0426, 0.0852, 0.0497, 0.0304, 0.0304, 0.0406, 0.0304, 0.0254, 0.0264, 0.0264, 0.0386, 0.0416, 0.0447, 0.0700, 0.0700, 0.0731, 0.0731, 0.0660'
|
223
|
+
hpxml.plug_loads[0].weekend_fractions = '0.0203, 0.0203, 0.0203, 0.0203, 0.0203, 0.0339, 0.0426, 0.0852, 0.0497, 0.0304, 0.0304, 0.0406, 0.0304, 0.0254, 0.0264, 0.0264, 0.0386, 0.0416, 0.0447, 0.0700, 0.0700, 0.0731, 0.0731, 0.0660'
|
224
|
+
hpxml.plug_loads[0].monthly_multipliers = '1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0'
|
225
|
+
end
|
2648
226
|
end
|
2649
227
|
|
2650
228
|
def apply_hpxml_modification(hpxml_file, hpxml)
|
2651
229
|
# Set detailed HPXML values for sample files
|
2652
230
|
|
2653
|
-
if hpxml_file.include? 'split-surfaces'
|
2654
|
-
(hpxml.roofs + hpxml.rim_joists + hpxml.walls + hpxml.foundation_walls).each do |surface|
|
2655
|
-
surface.azimuth = nil
|
2656
|
-
end
|
2657
|
-
hpxml.collapse_enclosure_surfaces()
|
2658
|
-
end
|
2659
|
-
renumber_hpxml_ids(hpxml)
|
2660
|
-
|
2661
231
|
# ------------ #
|
2662
232
|
# HPXML Header #
|
2663
233
|
# ------------ #
|
@@ -2684,6 +254,9 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
2684
254
|
|
2685
255
|
# Logic that can only be applied based on the file name
|
2686
256
|
if ['base-schedules-simple.xml',
|
257
|
+
'base-schedules-simple-vacancy.xml',
|
258
|
+
'base-schedules-simple-vacancy-year-round.xml',
|
259
|
+
'base-schedules-simple-power-outage.xml',
|
2687
260
|
'base-misc-loads-large-uncommon.xml',
|
2688
261
|
'base-misc-loads-large-uncommon2.xml'].include? hpxml_file
|
2689
262
|
hpxml.building_occupancy.weekday_fractions = '0.061, 0.061, 0.061, 0.061, 0.061, 0.061, 0.061, 0.053, 0.025, 0.015, 0.015, 0.015, 0.015, 0.015, 0.015, 0.015, 0.018, 0.033, 0.054, 0.054, 0.054, 0.061, 0.061, 0.061'
|
@@ -2710,6 +283,8 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
2710
283
|
hpxml.building_construction.conditioned_floor_area -= 400 * 2
|
2711
284
|
hpxml.building_construction.conditioned_building_volume -= 400 * 2 * 8
|
2712
285
|
hpxml.air_infiltration_measurements[0].infiltration_volume = hpxml.building_construction.conditioned_building_volume
|
286
|
+
elsif ['base-bldgtype-multifamily-infil-compartmentalization-test.xml'].include? hpxml_file
|
287
|
+
hpxml.air_infiltration_measurements[0].a_ext = 0.2
|
2713
288
|
end
|
2714
289
|
|
2715
290
|
# --------------- #
|
@@ -2784,7 +359,7 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
2784
359
|
wall = hpxml.walls.select { |w|
|
2785
360
|
w.interior_adjacent_to == HPXML::LocationLivingSpace &&
|
2786
361
|
w.exterior_adjacent_to == HPXML::LocationOtherHousingUnit
|
2787
|
-
}
|
362
|
+
}[0]
|
2788
363
|
wall.exterior_adjacent_to = adjacent_to
|
2789
364
|
hpxml.floors[0].exterior_adjacent_to = adjacent_to
|
2790
365
|
hpxml.floors[1].exterior_adjacent_to = adjacent_to
|
@@ -2794,7 +369,7 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
2794
369
|
hpxml.floors[1].insulation_assembly_r_value = 18.7
|
2795
370
|
end
|
2796
371
|
hpxml.windows.each do |window|
|
2797
|
-
window.area
|
372
|
+
window.area = (window.area * 0.35).round(1)
|
2798
373
|
end
|
2799
374
|
hpxml.doors.add(id: "Door#{hpxml.doors.size + 1}",
|
2800
375
|
wall_idref: wall.id,
|
@@ -2813,11 +388,8 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
2813
388
|
wall = hpxml.walls.select { |w|
|
2814
389
|
w.interior_adjacent_to == HPXML::LocationLivingSpace &&
|
2815
390
|
w.exterior_adjacent_to == HPXML::LocationOtherHousingUnit
|
2816
|
-
}
|
391
|
+
}[0]
|
2817
392
|
wall.delete
|
2818
|
-
hpxml.walls.select.with_index { |w, i| w.id = "Wall#{i + 1}" }
|
2819
|
-
hpxml.windows.select { |w| w.wall_idref = hpxml.walls[-1].id }
|
2820
|
-
hpxml.doors.select { |d| d.wall_idref = hpxml.walls[-1].id }
|
2821
393
|
hpxml.walls.add(id: "Wall#{hpxml.walls.size + 1}",
|
2822
394
|
exterior_adjacent_to: HPXML::LocationOtherHeatedSpace,
|
2823
395
|
interior_adjacent_to: HPXML::LocationLivingSpace,
|
@@ -2855,6 +427,8 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
2855
427
|
interior_finish_type: HPXML::InteriorFinishGypsumBoard,
|
2856
428
|
insulation_assembly_r_value: 4.0)
|
2857
429
|
hpxml.floors[0].delete
|
430
|
+
hpxml.floors[0].id = 'Floor1'
|
431
|
+
hpxml.floors[0].insulation_id = 'Floor1Insulation'
|
2858
432
|
hpxml.floors.add(id: "Floor#{hpxml.floors.size + 1}",
|
2859
433
|
exterior_adjacent_to: HPXML::LocationOtherNonFreezingSpace,
|
2860
434
|
interior_adjacent_to: HPXML::LocationLivingSpace,
|
@@ -2879,7 +453,7 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
2879
453
|
wall = hpxml.walls.select { |w|
|
2880
454
|
w.interior_adjacent_to == HPXML::LocationLivingSpace &&
|
2881
455
|
w.exterior_adjacent_to == HPXML::LocationOtherMultifamilyBufferSpace
|
2882
|
-
}
|
456
|
+
}[0]
|
2883
457
|
hpxml.windows.add(id: "Window#{hpxml.windows.size + 1}",
|
2884
458
|
area: 50,
|
2885
459
|
azimuth: 270,
|
@@ -2890,7 +464,7 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
2890
464
|
wall = hpxml.walls.select { |w|
|
2891
465
|
w.interior_adjacent_to == HPXML::LocationLivingSpace &&
|
2892
466
|
w.exterior_adjacent_to == HPXML::LocationOtherHeatedSpace
|
2893
|
-
}
|
467
|
+
}[0]
|
2894
468
|
hpxml.doors.add(id: "Door#{hpxml.doors.size + 1}",
|
2895
469
|
wall_idref: wall.id,
|
2896
470
|
area: 20,
|
@@ -2899,7 +473,7 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
2899
473
|
wall = hpxml.walls.select { |w|
|
2900
474
|
w.interior_adjacent_to == HPXML::LocationLivingSpace &&
|
2901
475
|
w.exterior_adjacent_to == HPXML::LocationOtherHousingUnit
|
2902
|
-
}
|
476
|
+
}[0]
|
2903
477
|
hpxml.doors.add(id: "Door#{hpxml.doors.size + 1}",
|
2904
478
|
wall_idref: wall.id,
|
2905
479
|
area: 20,
|
@@ -3124,6 +698,7 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
3124
698
|
'base-hvac-ducts-area-fractions.xml'].include? hpxml_file
|
3125
699
|
hpxml.rim_joists << hpxml.rim_joists[-1].dup
|
3126
700
|
hpxml.rim_joists[-1].id = "RimJoist#{hpxml.rim_joists.size}"
|
701
|
+
hpxml.rim_joists[-1].insulation_id = "RimJoist#{hpxml.rim_joists.size}Insulation"
|
3127
702
|
hpxml.rim_joists[-1].interior_adjacent_to = HPXML::LocationLivingSpace
|
3128
703
|
hpxml.rim_joists[-1].area = 116
|
3129
704
|
elsif ['base-foundation-conditioned-basement-wall-insulation.xml'].include? hpxml_file
|
@@ -3285,19 +860,7 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
3285
860
|
exterior_adjacent_to: HPXML::LocationGround,
|
3286
861
|
interior_adjacent_to: HPXML::LocationBasementConditioned,
|
3287
862
|
height: 4,
|
3288
|
-
area:
|
3289
|
-
thickness: 8,
|
3290
|
-
depth_below_grade: 3,
|
3291
|
-
interior_finish_type: HPXML::InteriorFinishGypsumBoard,
|
3292
|
-
insulation_interior_r_value: 0,
|
3293
|
-
insulation_exterior_distance_to_top: 0,
|
3294
|
-
insulation_exterior_distance_to_bottom: 4,
|
3295
|
-
insulation_exterior_r_value: 8.9)
|
3296
|
-
hpxml.foundation_walls.add(id: "FoundationWall#{hpxml.foundation_walls.size + 1}",
|
3297
|
-
exterior_adjacent_to: HPXML::LocationGround,
|
3298
|
-
interior_adjacent_to: HPXML::LocationBasementConditioned,
|
3299
|
-
height: 4,
|
3300
|
-
area: 80,
|
863
|
+
area: 200,
|
3301
864
|
thickness: 8,
|
3302
865
|
depth_below_grade: 3,
|
3303
866
|
interior_finish_type: HPXML::InteriorFinishGypsumBoard,
|
@@ -3324,20 +887,9 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
3324
887
|
carpet_r_value: 0)
|
3325
888
|
hpxml.slabs.add(id: "Slab#{hpxml.slabs.size + 1}",
|
3326
889
|
interior_adjacent_to: HPXML::LocationBasementConditioned,
|
3327
|
-
area:
|
3328
|
-
thickness: 4,
|
3329
|
-
exposed_perimeter: 45,
|
3330
|
-
perimeter_insulation_depth: 1,
|
3331
|
-
under_slab_insulation_width: 0,
|
3332
|
-
perimeter_insulation_r_value: 5,
|
3333
|
-
under_slab_insulation_r_value: 0,
|
3334
|
-
carpet_fraction: 0,
|
3335
|
-
carpet_r_value: 0)
|
3336
|
-
hpxml.slabs.add(id: "Slab#{hpxml.slabs.size + 1}",
|
3337
|
-
interior_adjacent_to: HPXML::LocationBasementConditioned,
|
3338
|
-
area: 270,
|
890
|
+
area: 675,
|
3339
891
|
thickness: 4,
|
3340
|
-
exposed_perimeter:
|
892
|
+
exposed_perimeter: 75,
|
3341
893
|
perimeter_insulation_depth: 1,
|
3342
894
|
under_slab_insulation_width: 0,
|
3343
895
|
perimeter_insulation_r_value: 5,
|
@@ -3438,6 +990,7 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
3438
990
|
end
|
3439
991
|
hpxml.floors << ceiling
|
3440
992
|
hpxml.floors[-1].id = "Floor#{hpxml.floors.size}"
|
993
|
+
hpxml.floors[-1].insulation_id = "Floor#{hpxml.floors.size}Insulation"
|
3441
994
|
elsif ['base-enclosure-walltypes.xml'].include? hpxml_file
|
3442
995
|
hpxml.rim_joists.reverse_each do |rim_joist|
|
3443
996
|
rim_joist.delete
|
@@ -3510,6 +1063,7 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
3510
1063
|
gable_walls.each do |gable_wall|
|
3511
1064
|
hpxml.walls << gable_wall
|
3512
1065
|
hpxml.walls[-1].id = "Wall#{hpxml.walls.size}"
|
1066
|
+
hpxml.walls[-1].insulation_id = "Wall#{hpxml.walls.size}Insulation"
|
3513
1067
|
hpxml.attics[0].attached_to_wall_idrefs << hpxml.walls[-1].id
|
3514
1068
|
end
|
3515
1069
|
hpxml.windows.reverse_each do |window|
|
@@ -3585,138 +1139,6 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
3585
1139
|
insulation_assembly_r_value: roof_type[0] == HPXML::RoofTypeEPS ? 7.0 : 2.3)
|
3586
1140
|
hpxml.attics[0].attached_to_roof_idrefs << hpxml.roofs[-1].id
|
3587
1141
|
end
|
3588
|
-
elsif ['base-enclosure-split-surfaces.xml',
|
3589
|
-
'base-enclosure-split-surfaces2.xml'].include? hpxml_file
|
3590
|
-
for n in 1..hpxml.roofs.size
|
3591
|
-
hpxml.roofs[n - 1].area /= 9.0
|
3592
|
-
for i in 2..9
|
3593
|
-
hpxml.roofs << hpxml.roofs[n - 1].dup
|
3594
|
-
hpxml.roofs[-1].id += "_#{i}"
|
3595
|
-
if hpxml_file == 'base-enclosure-split-surfaces2.xml'
|
3596
|
-
hpxml.roofs[-1].insulation_assembly_r_value += 0.01 * i
|
3597
|
-
end
|
3598
|
-
end
|
3599
|
-
end
|
3600
|
-
hpxml.roofs << hpxml.roofs[-1].dup
|
3601
|
-
hpxml.roofs[-1].id += '_tiny'
|
3602
|
-
hpxml.roofs[-1].area = 0.05
|
3603
|
-
for n in 1..hpxml.rim_joists.size
|
3604
|
-
hpxml.rim_joists[n - 1].area /= 9.0
|
3605
|
-
for i in 2..9
|
3606
|
-
hpxml.rim_joists << hpxml.rim_joists[n - 1].dup
|
3607
|
-
hpxml.rim_joists[-1].id += "_#{i}"
|
3608
|
-
if hpxml_file == 'base-enclosure-split-surfaces2.xml'
|
3609
|
-
hpxml.rim_joists[-1].insulation_assembly_r_value += 0.01 * i
|
3610
|
-
end
|
3611
|
-
end
|
3612
|
-
end
|
3613
|
-
hpxml.rim_joists << hpxml.rim_joists[-1].dup
|
3614
|
-
hpxml.rim_joists[-1].id += '_tiny'
|
3615
|
-
hpxml.rim_joists[-1].area = 0.05
|
3616
|
-
for n in 1..hpxml.walls.size
|
3617
|
-
hpxml.walls[n - 1].area /= 9.0
|
3618
|
-
for i in 2..9
|
3619
|
-
hpxml.walls << hpxml.walls[n - 1].dup
|
3620
|
-
hpxml.walls[-1].id += "_#{i}"
|
3621
|
-
if hpxml_file == 'base-enclosure-split-surfaces2.xml'
|
3622
|
-
hpxml.walls[-1].insulation_assembly_r_value += 0.01 * i
|
3623
|
-
end
|
3624
|
-
end
|
3625
|
-
end
|
3626
|
-
hpxml.walls << hpxml.walls[-1].dup
|
3627
|
-
hpxml.walls[-1].id += '_tiny'
|
3628
|
-
hpxml.walls[-1].area = 0.05
|
3629
|
-
for n in 1..hpxml.foundation_walls.size
|
3630
|
-
hpxml.foundation_walls[n - 1].area /= 9.0
|
3631
|
-
for i in 2..9
|
3632
|
-
hpxml.foundation_walls << hpxml.foundation_walls[n - 1].dup
|
3633
|
-
hpxml.foundation_walls[-1].id += "_#{i}"
|
3634
|
-
if hpxml_file == 'base-enclosure-split-surfaces2.xml'
|
3635
|
-
hpxml.foundation_walls[-1].insulation_exterior_r_value += 0.01 * i
|
3636
|
-
end
|
3637
|
-
end
|
3638
|
-
end
|
3639
|
-
hpxml.foundation_walls << hpxml.foundation_walls[-1].dup
|
3640
|
-
hpxml.foundation_walls[-1].id += '_tiny'
|
3641
|
-
hpxml.foundation_walls[-1].area = 0.05
|
3642
|
-
for n in 1..hpxml.floors.size
|
3643
|
-
hpxml.floors[n - 1].area /= 9.0
|
3644
|
-
for i in 2..9
|
3645
|
-
hpxml.floors << hpxml.floors[n - 1].dup
|
3646
|
-
hpxml.floors[-1].id += "_#{i}"
|
3647
|
-
if hpxml_file == 'base-enclosure-split-surfaces2.xml'
|
3648
|
-
hpxml.floors[-1].insulation_assembly_r_value += 0.01 * i
|
3649
|
-
end
|
3650
|
-
end
|
3651
|
-
end
|
3652
|
-
hpxml.floors << hpxml.floors[-1].dup
|
3653
|
-
hpxml.floors[-1].id += '_tiny'
|
3654
|
-
hpxml.floors[-1].area = 0.05
|
3655
|
-
for n in 1..hpxml.slabs.size
|
3656
|
-
hpxml.slabs[n - 1].area /= 9.0
|
3657
|
-
hpxml.slabs[n - 1].exposed_perimeter /= 9.0
|
3658
|
-
for i in 2..9
|
3659
|
-
hpxml.slabs << hpxml.slabs[n - 1].dup
|
3660
|
-
hpxml.slabs[-1].id += "_#{i}"
|
3661
|
-
if hpxml_file == 'base-enclosure-split-surfaces2.xml'
|
3662
|
-
hpxml.slabs[-1].perimeter_insulation_depth += 0.01 * i
|
3663
|
-
hpxml.slabs[-1].perimeter_insulation_r_value += 0.01 * i
|
3664
|
-
end
|
3665
|
-
end
|
3666
|
-
end
|
3667
|
-
hpxml.slabs << hpxml.slabs[-1].dup
|
3668
|
-
hpxml.slabs[-1].id += '_tiny'
|
3669
|
-
hpxml.slabs[-1].area = 0.05
|
3670
|
-
for n in 1..hpxml.windows.size
|
3671
|
-
hpxml.windows[n - 1].area /= 9.0
|
3672
|
-
hpxml.windows[n - 1].fraction_operable = 0.0
|
3673
|
-
for i in 2..9
|
3674
|
-
hpxml.windows << hpxml.windows[n - 1].dup
|
3675
|
-
hpxml.windows[-1].id += "_#{i}"
|
3676
|
-
hpxml.windows[-1].wall_idref += "_#{i}"
|
3677
|
-
if i >= 4
|
3678
|
-
hpxml.windows[-1].fraction_operable = 1.0
|
3679
|
-
end
|
3680
|
-
next unless hpxml_file == 'base-enclosure-split-surfaces2.xml'
|
3681
|
-
|
3682
|
-
hpxml.windows[-1].ufactor += 0.01 * i
|
3683
|
-
hpxml.windows[-1].interior_shading_factor_summer -= 0.02 * i
|
3684
|
-
hpxml.windows[-1].interior_shading_factor_winter -= 0.01 * i
|
3685
|
-
end
|
3686
|
-
end
|
3687
|
-
hpxml.windows << hpxml.windows[-1].dup
|
3688
|
-
hpxml.windows[-1].id += '_tiny'
|
3689
|
-
hpxml.windows[-1].area = 0.05
|
3690
|
-
for n in 1..hpxml.skylights.size
|
3691
|
-
hpxml.skylights[n - 1].area /= 9.0
|
3692
|
-
for i in 2..9
|
3693
|
-
hpxml.skylights << hpxml.skylights[n - 1].dup
|
3694
|
-
hpxml.skylights[-1].id += "_#{i}"
|
3695
|
-
hpxml.skylights[-1].roof_idref += "_#{i}"
|
3696
|
-
next unless hpxml_file == 'base-enclosure-split-surfaces2.xml'
|
3697
|
-
|
3698
|
-
hpxml.skylights[-1].ufactor += 0.01 * i
|
3699
|
-
hpxml.skylights[-1].interior_shading_factor_summer -= 0.02 * i
|
3700
|
-
hpxml.skylights[-1].interior_shading_factor_winter -= 0.01 * i
|
3701
|
-
end
|
3702
|
-
end
|
3703
|
-
hpxml.skylights << hpxml.skylights[-1].dup
|
3704
|
-
hpxml.skylights[-1].id += '_tiny'
|
3705
|
-
hpxml.skylights[-1].area = 0.05
|
3706
|
-
for n in 1..hpxml.doors.size
|
3707
|
-
hpxml.doors[n - 1].area /= 9.0
|
3708
|
-
for i in 2..9
|
3709
|
-
hpxml.doors << hpxml.doors[n - 1].dup
|
3710
|
-
hpxml.doors[-1].id += "_#{i}"
|
3711
|
-
hpxml.doors[-1].wall_idref += "_#{i}"
|
3712
|
-
if hpxml_file == 'base-enclosure-split-surfaces2.xml'
|
3713
|
-
hpxml.doors[-1].r_value += 0.01 * i
|
3714
|
-
end
|
3715
|
-
end
|
3716
|
-
end
|
3717
|
-
hpxml.doors << hpxml.doors[-1].dup
|
3718
|
-
hpxml.doors[-1].id += '_tiny'
|
3719
|
-
hpxml.doors[-1].area = 0.05
|
3720
1142
|
elsif ['base-enclosure-overhangs.xml'].include? hpxml_file
|
3721
1143
|
# Test relaxed overhangs validation; https://github.com/NREL/OpenStudio-HPXML/issues/866
|
3722
1144
|
hpxml.windows.each do |window|
|
@@ -3732,13 +1154,17 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
3732
1154
|
grg_wall = hpxml.walls.select { |w|
|
3733
1155
|
w.interior_adjacent_to == HPXML::LocationGarage &&
|
3734
1156
|
w.exterior_adjacent_to == HPXML::LocationOutside
|
3735
|
-
}
|
1157
|
+
}[0]
|
3736
1158
|
hpxml.doors.add(id: "Door#{hpxml.doors.size + 1}",
|
3737
1159
|
wall_idref: grg_wall.id,
|
3738
1160
|
area: 70,
|
3739
1161
|
azimuth: 180,
|
3740
1162
|
r_value: 4.4)
|
3741
1163
|
end
|
1164
|
+
if ['base-misc-neighbor-shading-bldgtype-multifamily.xml'].include? hpxml_file
|
1165
|
+
wall = hpxml.walls.select { |w| w.azimuth == hpxml.neighbor_buildings[0].azimuth }[0]
|
1166
|
+
wall.exterior_adjacent_to = HPXML::LocationOtherHeatedSpace
|
1167
|
+
end
|
3742
1168
|
|
3743
1169
|
# ---------- #
|
3744
1170
|
# HPXML HVAC #
|
@@ -3956,9 +1382,6 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
3956
1382
|
hpxml.heating_systems[i].fraction_heat_load_served = 0.35
|
3957
1383
|
end
|
3958
1384
|
end
|
3959
|
-
elsif ['base-hvac-dual-fuel-air-to-air-heat-pump-1-speed-electric.xml'].include? hpxml_file
|
3960
|
-
hpxml.heat_pumps[0].backup_heating_efficiency_afue = hpxml.heat_pumps[0].backup_heating_efficiency_percent
|
3961
|
-
hpxml.heat_pumps[0].backup_heating_efficiency_percent = nil
|
3962
1385
|
elsif ['base-enclosure-2stories.xml',
|
3963
1386
|
'base-enclosure-2stories-garage.xml',
|
3964
1387
|
'base-hvac-ducts-area-fractions.xml'].include? hpxml_file
|
@@ -3982,6 +1405,11 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
3982
1405
|
hpxml.hvac_distributions[0].conditioned_floor_area_served = 4050.0
|
3983
1406
|
hpxml.hvac_distributions[0].number_of_return_registers = 3
|
3984
1407
|
end
|
1408
|
+
elsif ['base-hvac-ducts-effective-rvalue.xml'].include? hpxml_file
|
1409
|
+
hpxml.hvac_distributions[0].ducts[0].duct_insulation_r_value = nil
|
1410
|
+
hpxml.hvac_distributions[0].ducts[1].duct_insulation_r_value = nil
|
1411
|
+
hpxml.hvac_distributions[0].ducts[0].duct_effective_r_value = 4.5
|
1412
|
+
hpxml.hvac_distributions[0].ducts[1].duct_effective_r_value = 1.7
|
3985
1413
|
elsif ['base-hvac-multiple.xml'].include? hpxml_file
|
3986
1414
|
hpxml.hvac_distributions.reverse_each do |hvac_distribution|
|
3987
1415
|
hvac_distribution.delete
|
@@ -4234,6 +1662,21 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
4234
1662
|
hpxml.hvac_distributions[0].ducts[0].duct_surface_area_multiplier = 0.5
|
4235
1663
|
hpxml.hvac_distributions[0].ducts[1].duct_surface_area_multiplier = 1.5
|
4236
1664
|
end
|
1665
|
+
if ['base-hvac-autosize-sizing-controls.xml'].include? hpxml_file
|
1666
|
+
hpxml.header.manualj_heating_design_temp = 0
|
1667
|
+
hpxml.header.manualj_cooling_design_temp = 100
|
1668
|
+
hpxml.header.manualj_heating_setpoint = 60
|
1669
|
+
hpxml.header.manualj_cooling_setpoint = 80
|
1670
|
+
hpxml.header.manualj_humidity_setpoint = 0.55
|
1671
|
+
hpxml.header.manualj_internal_loads_sensible = 4000
|
1672
|
+
hpxml.header.manualj_internal_loads_latent = 200
|
1673
|
+
hpxml.header.manualj_num_occupants = 5
|
1674
|
+
end
|
1675
|
+
if hpxml_file.include? 'heating-capacity-17f'
|
1676
|
+
hpxml.heat_pumps[0].heating_capacity_17F = hpxml.heat_pumps[0].heating_capacity * hpxml.heat_pumps[0].heating_capacity_retention_fraction
|
1677
|
+
hpxml.heat_pumps[0].heating_capacity_retention_fraction = nil
|
1678
|
+
hpxml.heat_pumps[0].heating_capacity_retention_temp = nil
|
1679
|
+
end
|
4237
1680
|
|
4238
1681
|
# ------------------ #
|
4239
1682
|
# HPXML WaterHeating #
|
@@ -4241,6 +1684,9 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
4241
1684
|
|
4242
1685
|
# Logic that can only be applied based on the file name
|
4243
1686
|
if ['base-schedules-simple.xml',
|
1687
|
+
'base-schedules-simple-vacancy.xml',
|
1688
|
+
'base-schedules-simple-vacancy-year-round.xml',
|
1689
|
+
'base-schedules-simple-power-outage.xml',
|
4244
1690
|
'base-misc-loads-large-uncommon.xml',
|
4245
1691
|
'base-misc-loads-large-uncommon2.xml'].include? hpxml_file
|
4246
1692
|
hpxml.water_heating.water_fixtures_weekday_fractions = '0.012, 0.006, 0.004, 0.005, 0.010, 0.034, 0.078, 0.087, 0.080, 0.067, 0.056, 0.047, 0.040, 0.035, 0.033, 0.031, 0.039, 0.051, 0.060, 0.060, 0.055, 0.048, 0.038, 0.026'
|
@@ -4480,7 +1926,7 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
4480
1926
|
fan_power: 37.5,
|
4481
1927
|
used_for_whole_building_ventilation: true,
|
4482
1928
|
cfis_addtl_runtime_operating_mode: HPXML::CFISModeSupplementalFan,
|
4483
|
-
cfis_supplemental_fan_idref: hpxml.ventilation_fans.
|
1929
|
+
cfis_supplemental_fan_idref: hpxml.ventilation_fans.find { |f| f.fan_type == HPXML::MechVentTypeExhaust }.id,
|
4484
1930
|
distribution_system_idref: 'HVACDistribution2')
|
4485
1931
|
# Test ventilation system w/ zero airflow and hours
|
4486
1932
|
hpxml.ventilation_fans.add(id: "VentilationFan#{hpxml.ventilation_fans.size + 1}",
|
@@ -4530,17 +1976,17 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
4530
1976
|
hpxml.generators.add(id: "Generator#{hpxml.generators.size + 1}",
|
4531
1977
|
fuel_type: HPXML::FuelTypeNaturalGas,
|
4532
1978
|
annual_consumption_kbtu: 8500,
|
4533
|
-
annual_output_kwh:
|
1979
|
+
annual_output_kwh: 1200)
|
4534
1980
|
hpxml.generators.add(id: "Generator#{hpxml.generators.size + 1}",
|
4535
1981
|
fuel_type: HPXML::FuelTypeOil,
|
4536
1982
|
annual_consumption_kbtu: 8500,
|
4537
|
-
annual_output_kwh:
|
1983
|
+
annual_output_kwh: 1200)
|
4538
1984
|
elsif ['base-bldgtype-multifamily-shared-generator.xml'].include? hpxml_file
|
4539
1985
|
hpxml.generators.add(id: "Generator#{hpxml.generators.size + 1}",
|
4540
1986
|
is_shared_system: true,
|
4541
1987
|
fuel_type: HPXML::FuelTypePropane,
|
4542
1988
|
annual_consumption_kbtu: 85000,
|
4543
|
-
annual_output_kwh:
|
1989
|
+
annual_output_kwh: 12000,
|
4544
1990
|
number_of_bedrooms_served: 18)
|
4545
1991
|
end
|
4546
1992
|
|
@@ -4565,6 +2011,9 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
4565
2011
|
|
4566
2012
|
# Logic that can only be applied based on the file name
|
4567
2013
|
if ['base-schedules-simple.xml',
|
2014
|
+
'base-schedules-simple-vacancy.xml',
|
2015
|
+
'base-schedules-simple-vacancy-year-round.xml',
|
2016
|
+
'base-schedules-simple-power-outage.xml',
|
4568
2017
|
'base-misc-loads-large-uncommon.xml',
|
4569
2018
|
'base-misc-loads-large-uncommon2.xml'].include? hpxml_file
|
4570
2019
|
hpxml.clothes_washers[0].weekday_fractions = '0.009, 0.007, 0.004, 0.004, 0.007, 0.011, 0.022, 0.049, 0.073, 0.086, 0.084, 0.075, 0.067, 0.060, 0.049, 0.052, 0.050, 0.049, 0.049, 0.049, 0.049, 0.047, 0.032, 0.017'
|
@@ -4649,6 +2098,9 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
4649
2098
|
hpxml.lighting.holiday_weekday_fractions = '0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.008, 0.098, 0.168, 0.194, 0.284, 0.192, 0.037, 0.019'
|
4650
2099
|
hpxml.lighting.holiday_weekend_fractions = '0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.008, 0.098, 0.168, 0.194, 0.284, 0.192, 0.037, 0.019'
|
4651
2100
|
elsif ['base-schedules-simple.xml',
|
2101
|
+
'base-schedules-simple-vacancy.xml',
|
2102
|
+
'base-schedules-simple-vacancy-year-round.xml',
|
2103
|
+
'base-schedules-simple-power-outage.xml',
|
4652
2104
|
'base-misc-loads-large-uncommon.xml',
|
4653
2105
|
'base-misc-loads-large-uncommon2.xml'].include? hpxml_file
|
4654
2106
|
hpxml.lighting.interior_weekday_fractions = '0.124, 0.074, 0.050, 0.050, 0.053, 0.140, 0.330, 0.420, 0.430, 0.424, 0.411, 0.394, 0.382, 0.378, 0.378, 0.379, 0.386, 0.412, 0.484, 0.619, 0.783, 0.880, 0.597, 0.249'
|
@@ -4660,6 +2112,35 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
4660
2112
|
hpxml.lighting.garage_weekday_fractions = '0.046, 0.046, 0.046, 0.046, 0.046, 0.037, 0.035, 0.034, 0.033, 0.028, 0.022, 0.015, 0.012, 0.011, 0.011, 0.012, 0.019, 0.037, 0.049, 0.065, 0.091, 0.105, 0.091, 0.063'
|
4661
2113
|
hpxml.lighting.garage_weekend_fractions = '0.046, 0.046, 0.045, 0.045, 0.046, 0.045, 0.044, 0.041, 0.036, 0.03, 0.024, 0.016, 0.012, 0.011, 0.011, 0.012, 0.019, 0.038, 0.048, 0.06, 0.083, 0.098, 0.085, 0.059'
|
4662
2114
|
hpxml.lighting.garage_monthly_multipliers = '1.248, 1.257, 0.993, 0.989, 0.993, 0.827, 0.821, 0.821, 0.827, 0.99, 0.987, 1.248'
|
2115
|
+
elsif ['base-lighting-kwh-per-year.xml'].include? hpxml_file
|
2116
|
+
ltg_kwhs_per_year = { HPXML::LocationInterior => 1500,
|
2117
|
+
HPXML::LocationExterior => 150,
|
2118
|
+
HPXML::LocationGarage => 0 }
|
2119
|
+
hpxml.lighting_groups.clear
|
2120
|
+
ltg_kwhs_per_year.each do |location, kwh_per_year|
|
2121
|
+
hpxml.lighting_groups.add(id: "LightingGroup#{hpxml.lighting_groups.size + 1}",
|
2122
|
+
location: location,
|
2123
|
+
kwh_per_year: kwh_per_year)
|
2124
|
+
end
|
2125
|
+
elsif ['base-lighting-mixed.xml'].include? hpxml_file
|
2126
|
+
hpxml.lighting_groups.reverse_each do |lg|
|
2127
|
+
next unless lg.location == HPXML::LocationExterior
|
2128
|
+
|
2129
|
+
lg.delete
|
2130
|
+
end
|
2131
|
+
hpxml.lighting_groups.each_with_index do |lg, i|
|
2132
|
+
lg.id = "LightingGroup#{i + 1}"
|
2133
|
+
end
|
2134
|
+
hpxml.lighting_groups.add(id: "LightingGroup#{hpxml.lighting_groups.size + 1}",
|
2135
|
+
location: HPXML::LocationExterior,
|
2136
|
+
kwh_per_year: 150)
|
2137
|
+
elsif ['base-foundation-basement-garage.xml'].include? hpxml_file
|
2138
|
+
int_lighting_groups = hpxml.lighting_groups.select { |lg| lg.location == HPXML::LocationInterior }
|
2139
|
+
int_lighting_groups.each do |lg|
|
2140
|
+
hpxml.lighting_groups << lg.dup
|
2141
|
+
hpxml.lighting_groups[-1].location = HPXML::LocationGarage
|
2142
|
+
hpxml.lighting_groups[-1].id = "LightingGroup#{hpxml.lighting_groups.size}"
|
2143
|
+
end
|
4663
2144
|
end
|
4664
2145
|
|
4665
2146
|
# --------------- #
|
@@ -4668,6 +2149,9 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
4668
2149
|
|
4669
2150
|
# Logic that can only be applied based on the file name
|
4670
2151
|
if ['base-schedules-simple.xml',
|
2152
|
+
'base-schedules-simple-vacancy.xml',
|
2153
|
+
'base-schedules-simple-vacancy-year-round.xml',
|
2154
|
+
'base-schedules-simple-power-outage.xml',
|
4671
2155
|
'base-misc-loads-large-uncommon.xml',
|
4672
2156
|
'base-misc-loads-large-uncommon2.xml'].include? hpxml_file
|
4673
2157
|
hpxml.plug_loads[0].weekday_fractions = '0.045, 0.019, 0.01, 0.001, 0.001, 0.001, 0.005, 0.009, 0.018, 0.026, 0.032, 0.038, 0.04, 0.041, 0.043, 0.045, 0.05, 0.055, 0.07, 0.085, 0.097, 0.108, 0.089, 0.07'
|
@@ -4698,91 +2182,6 @@ def apply_hpxml_modification(hpxml_file, hpxml)
|
|
4698
2182
|
hpxml.fuel_loads[2].weekend_fractions = '0.044, 0.023, 0.019, 0.015, 0.016, 0.018, 0.026, 0.033, 0.033, 0.032, 0.033, 0.033, 0.032, 0.032, 0.032, 0.033, 0.045, 0.057, 0.066, 0.076, 0.081, 0.086, 0.075, 0.065'
|
4699
2183
|
hpxml.fuel_loads[2].monthly_multipliers = '1.154, 1.161, 1.013, 1.010, 1.013, 0.888, 0.883, 0.883, 0.888, 0.978, 0.974, 1.154'
|
4700
2184
|
end
|
4701
|
-
|
4702
|
-
# ----- #
|
4703
|
-
# FINAL #
|
4704
|
-
# ----- #
|
4705
|
-
|
4706
|
-
# Collapse some surfaces whose azimuth is a minor effect to simplify HPXMLs.
|
4707
|
-
if not hpxml_file.include? 'split-surfaces'
|
4708
|
-
(hpxml.roofs + hpxml.rim_joists + hpxml.walls + hpxml.foundation_walls).each do |surface|
|
4709
|
-
surface.azimuth = nil
|
4710
|
-
end
|
4711
|
-
hpxml.collapse_enclosure_surfaces()
|
4712
|
-
end
|
4713
|
-
|
4714
|
-
# After surfaces are collapsed, round all areas
|
4715
|
-
(hpxml.roofs +
|
4716
|
-
hpxml.rim_joists +
|
4717
|
-
hpxml.walls +
|
4718
|
-
hpxml.foundation_walls +
|
4719
|
-
hpxml.floors +
|
4720
|
-
hpxml.slabs +
|
4721
|
-
hpxml.windows +
|
4722
|
-
hpxml.skylights +
|
4723
|
-
hpxml.doors).each do |s|
|
4724
|
-
next if s.area.nil?
|
4725
|
-
|
4726
|
-
s.area = s.area.round(1)
|
4727
|
-
end
|
4728
|
-
|
4729
|
-
renumber_hpxml_ids(hpxml)
|
4730
|
-
end
|
4731
|
-
|
4732
|
-
def renumber_hpxml_ids(hpxml)
|
4733
|
-
# Renumber surfaces
|
4734
|
-
{ hpxml.walls => 'Wall',
|
4735
|
-
hpxml.foundation_walls => 'FoundationWall',
|
4736
|
-
hpxml.rim_joists => 'RimJoist',
|
4737
|
-
hpxml.floors => 'Floor',
|
4738
|
-
hpxml.roofs => 'Roof',
|
4739
|
-
hpxml.slabs => 'Slab',
|
4740
|
-
hpxml.windows => 'Window',
|
4741
|
-
hpxml.doors => 'Door',
|
4742
|
-
hpxml.skylights => 'Skylight' }.each do |surfs, surf_name|
|
4743
|
-
surfs.each_with_index do |surf, i|
|
4744
|
-
(hpxml.attics + hpxml.foundations).each do |attic_or_fnd|
|
4745
|
-
if attic_or_fnd.respond_to?(:attached_to_roof_idrefs) && !attic_or_fnd.attached_to_roof_idrefs.nil? && !attic_or_fnd.attached_to_roof_idrefs.delete(surf.id).nil?
|
4746
|
-
attic_or_fnd.attached_to_roof_idrefs << "#{surf_name}#{i + 1}"
|
4747
|
-
end
|
4748
|
-
if attic_or_fnd.respond_to?(:attached_to_wall_idrefs) && !attic_or_fnd.attached_to_wall_idrefs.nil? && !attic_or_fnd.attached_to_wall_idrefs.delete(surf.id).nil?
|
4749
|
-
attic_or_fnd.attached_to_wall_idrefs << "#{surf_name}#{i + 1}"
|
4750
|
-
end
|
4751
|
-
if attic_or_fnd.respond_to?(:attached_to_rim_joist_idrefs) && !attic_or_fnd.attached_to_rim_joist_idrefs.nil? && !attic_or_fnd.attached_to_rim_joist_idrefs.delete(surf.id).nil?
|
4752
|
-
attic_or_fnd.attached_to_rim_joist_idrefs << "#{surf_name}#{i + 1}"
|
4753
|
-
end
|
4754
|
-
if attic_or_fnd.respond_to?(:attached_to_floor_idrefs) && !attic_or_fnd.attached_to_floor_idrefs.nil? && !attic_or_fnd.attached_to_floor_idrefs.delete(surf.id).nil?
|
4755
|
-
attic_or_fnd.attached_to_floor_idrefs << "#{surf_name}#{i + 1}"
|
4756
|
-
end
|
4757
|
-
if attic_or_fnd.respond_to?(:attached_to_slab_idrefs) && !attic_or_fnd.attached_to_slab_idrefs.nil? && !attic_or_fnd.attached_to_slab_idrefs.delete(surf.id).nil?
|
4758
|
-
attic_or_fnd.attached_to_slab_idrefs << "#{surf_name}#{i + 1}"
|
4759
|
-
end
|
4760
|
-
if attic_or_fnd.respond_to?(:attached_to_foundation_wall_idrefs) && !attic_or_fnd.attached_to_foundation_wall_idrefs.nil? && !attic_or_fnd.attached_to_foundation_wall_idrefs.delete(surf.id).nil?
|
4761
|
-
attic_or_fnd.attached_to_foundation_wall_idrefs << "#{surf_name}#{i + 1}"
|
4762
|
-
end
|
4763
|
-
end
|
4764
|
-
(hpxml.windows + hpxml.doors).each do |subsurf|
|
4765
|
-
if subsurf.respond_to?(:wall_idref) && (subsurf.wall_idref == surf.id)
|
4766
|
-
subsurf.wall_idref = "#{surf_name}#{i + 1}"
|
4767
|
-
end
|
4768
|
-
end
|
4769
|
-
hpxml.skylights.each do |subsurf|
|
4770
|
-
if subsurf.respond_to?(:roof_idref) && (subsurf.roof_idref == surf.id)
|
4771
|
-
subsurf.roof_idref = "#{surf_name}#{i + 1}"
|
4772
|
-
end
|
4773
|
-
end
|
4774
|
-
surf.id = "#{surf_name}#{i + 1}"
|
4775
|
-
if surf.respond_to? :insulation_id
|
4776
|
-
surf.insulation_id = "#{surf_name}#{i + 1}Insulation"
|
4777
|
-
end
|
4778
|
-
if surf.respond_to? :perimeter_insulation_id
|
4779
|
-
surf.perimeter_insulation_id = "#{surf_name}#{i + 1}PerimeterInsulation"
|
4780
|
-
end
|
4781
|
-
if surf.respond_to? :under_slab_insulation_id
|
4782
|
-
surf.under_slab_insulation_id = "#{surf_name}#{i + 1}UnderSlabInsulation"
|
4783
|
-
end
|
4784
|
-
end
|
4785
|
-
end
|
4786
2185
|
end
|
4787
2186
|
|
4788
2187
|
def download_utility_rates
|
@@ -4815,7 +2214,7 @@ def download_utility_rates
|
|
4815
2214
|
exit!
|
4816
2215
|
end
|
4817
2216
|
|
4818
|
-
command_list = [:update_measures, :update_hpxmls, :
|
2217
|
+
command_list = [:update_measures, :update_hpxmls, :create_release_zips, :download_utility_rates]
|
4819
2218
|
|
4820
2219
|
def display_usage(command_list)
|
4821
2220
|
puts "Usage: openstudio #{File.basename(__FILE__)} [COMMAND]\nCommands:\n " + command_list.join("\n ")
|
@@ -4865,7 +2264,7 @@ if ARGV[0].to_sym == :update_measures
|
|
4865
2264
|
'Style/SelfAssignment',
|
4866
2265
|
'Style/StringLiterals',
|
4867
2266
|
'Style/StringLiteralsInInterpolation']
|
4868
|
-
commands = ["\"require 'rubocop/rake_task'\"",
|
2267
|
+
commands = ["\"require 'rubocop/rake_task' \"",
|
4869
2268
|
"\"RuboCop::RakeTask.new(:rubocop) do |t| t.options = ['--auto-correct', '--format', 'simple', '--only', '#{cops.join(',')}'] end\"",
|
4870
2269
|
'"Rake.application[:rubocop].invoke"']
|
4871
2270
|
command = "#{OpenStudio.getOpenStudioCLI} -e #{commands.join(' -e ')}"
|
@@ -4926,26 +2325,10 @@ if ARGV[0].to_sym == :update_hpxmls
|
|
4926
2325
|
ENV['HOMEDRIVE'] = 'C:\\' if !ENV['HOMEDRIVE'].nil? && ENV['HOMEDRIVE'].start_with?('U:')
|
4927
2326
|
|
4928
2327
|
# Create sample/test HPXMLs
|
4929
|
-
create_hpxmls()
|
4930
|
-
end
|
4931
|
-
|
4932
|
-
if ARGV[0].to_sym == :cache_weather
|
4933
2328
|
OpenStudio::Logger.instance.standardOutLogger.setLogLevel(OpenStudio::Fatal)
|
4934
|
-
|
4935
|
-
|
4936
|
-
|
4937
|
-
Dir['weather/*.epw'].each do |epw|
|
4938
|
-
next if File.exist? epw.gsub('.epw', '.cache')
|
4939
|
-
|
4940
|
-
puts "Processing #{epw}..."
|
4941
|
-
model = OpenStudio::Model::Model.new
|
4942
|
-
epw_file = OpenStudio::EpwFile.new(epw)
|
4943
|
-
OpenStudio::Model::WeatherFile.setWeatherFile(model, epw_file).get
|
4944
|
-
weather = WeatherProcess.new(model, runner)
|
4945
|
-
File.open(epw.gsub('.epw', '-cache.csv'), 'wb') do |file|
|
4946
|
-
weather.dump_to_csv(file)
|
4947
|
-
end
|
4948
|
-
end
|
2329
|
+
t = Time.now
|
2330
|
+
create_hpxmls()
|
2331
|
+
puts "Completed in #{(Time.now - t).round(1)}s"
|
4949
2332
|
end
|
4950
2333
|
|
4951
2334
|
if ARGV[0].to_sym == :download_utility_rates
|