urbanopt-cli 0.6.1 → 0.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/CHANGELOG.md +34 -0
- data/CMakeLists.txt +7 -7
- data/FindOpenStudioSDK.cmake +6 -6
- data/Gemfile +11 -5
- data/example_files/Gemfile +6 -3
- data/example_files/base_workflow_res.osw +10 -0
- data/example_files/example_project_combined.json +13 -3
- data/example_files/example_project_with_PV.json +751 -0
- data/example_files/example_project_with_streets.json +826 -0
- data/example_files/mappers/Baseline.rb +52 -31
- data/example_files/mappers/CreateBar.rb +37 -0
- data/example_files/mappers/FlexibleHotWater.rb +69 -0
- data/example_files/mappers/Floorspace.rb +30 -0
- data/example_files/mappers/HighEfficiency.rb +5 -4
- data/example_files/mappers/base_workflow.osw +5 -0
- data/example_files/mappers/createbar_workflow.osw +3 -1
- data/example_files/mappers/floorspace_workflow.osw +2 -1
- data/example_files/measures/BuildResidentialModel/measure.rb +109 -76
- data/example_files/osm_building/7.osm +0 -307
- data/example_files/osm_building/8.osm +0 -419
- data/example_files/osm_building/9.osm +0 -664
- data/example_files/reopt/base_assumptions.json +3 -3
- data/example_files/reopt/multiPV_assumptions.json +2 -2
- data/example_files/residential/enclosure.tsv +102 -102
- data/example_files/resources/hpxml-measures/.github/workflows/config.yml +22 -16
- data/example_files/resources/hpxml-measures/.gitignore +3 -7
- data/example_files/resources/hpxml-measures/.rubocop.yml +67 -8
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/measure.rb +1752 -1455
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/measure.xml +3229 -5431
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/resources/geometry.rb +386 -553
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/build_residential_hpxml_test.rb +1075 -363
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/measure.rb +212 -0
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/measure.xml +898 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules.rb +109 -188
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_README.md +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_clothes_dryer_power_consumption_dist.csv → BuildResidentialScheduleFile/resources/schedules_clothes_dryer_consumption_dist.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_clothes_dryer_power_duration_dist.csv → BuildResidentialScheduleFile/resources/schedules_clothes_dryer_duration_dist.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_clothes_washer_power_consumption_dist.csv → BuildResidentialScheduleFile/resources/schedules_clothes_washer_consumption_dist.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_clothes_washer_power_duration_dist.csv → BuildResidentialScheduleFile/resources/schedules_clothes_washer_duration_dist.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_config.json +2 -2
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_config.md +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_cooking_power_consumption_dist.csv → BuildResidentialScheduleFile/resources/schedules_cooking_consumption_dist.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_cooking_power_duration_dist.csv → BuildResidentialScheduleFile/resources/schedules_cooking_duration_dist.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_dishwasher_power_consumption_dist.csv → BuildResidentialScheduleFile/resources/schedules_dishwasher_consumption_dist.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_dishwasher_power_duration_dist.csv → BuildResidentialScheduleFile/resources/schedules_dishwasher_duration_dist.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_clothes_washer_cluster_size_probability.csv → BuildResidentialScheduleFile/resources/schedules_hot_water_clothes_washer_cluster_size_probability.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_clothes_washer_event_duration_probability.csv → BuildResidentialScheduleFile/resources/schedules_hot_water_clothes_washer_event_duration_probability.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_dishwasher_cluster_size_probability.csv → BuildResidentialScheduleFile/resources/schedules_hot_water_dishwasher_cluster_size_probability.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML/resources/schedules_dishwasher_event_duration_probability.csv → BuildResidentialScheduleFile/resources/schedules_hot_water_dishwasher_event_duration_probability.csv} +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_shower_cluster_size_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_shower_event_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_cooking_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_cooking_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_cooking_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_dishwashing_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_dishwashing_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_dishwashing_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_laundry_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_laundry_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_laundry_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_shower_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_shower_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_0_shower_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_cooking_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_cooking_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_cooking_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_dishwashing_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_dishwashing_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_dishwashing_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_laundry_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_laundry_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_laundry_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_shower_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_shower_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_1_shower_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_cooking_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_cooking_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_cooking_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_dishwashing_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_dishwashing_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_dishwashing_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_laundry_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_laundry_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_laundry_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_shower_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_shower_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_2_shower_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_cooking_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_cooking_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_cooking_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_dishwashing_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_dishwashing_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_dishwashing_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_laundry_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_laundry_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_laundry_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_shower_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_shower_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_duration_probability_cluster_3_shower_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_mkv_chain_initial_prob_cluster_0.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_mkv_chain_initial_prob_cluster_1.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_mkv_chain_initial_prob_cluster_2.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_mkv_chain_initial_prob_cluster_3.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_mkv_chain_transition_prob_cluster_0.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_mkv_chain_transition_prob_cluster_1.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_mkv_chain_transition_prob_cluster_2.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_mkv_chain_transition_prob_cluster_3.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekday_state_and_monthly_schedule_shift.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_cooking_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_cooking_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_cooking_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_dishwashing_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_dishwashing_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_dishwashing_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_laundry_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_laundry_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_laundry_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_shower_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_shower_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_0_shower_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_cooking_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_cooking_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_cooking_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_dishwashing_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_dishwashing_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_dishwashing_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_laundry_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_laundry_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_laundry_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_shower_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_shower_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_1_shower_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_cooking_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_cooking_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_cooking_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_dishwashing_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_dishwashing_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_dishwashing_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_laundry_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_laundry_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_laundry_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_shower_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_shower_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_2_shower_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_cooking_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_cooking_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_cooking_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_dishwashing_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_dishwashing_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_dishwashing_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_laundry_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_laundry_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_laundry_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_shower_evening_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_shower_midday_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_duration_probability_cluster_3_shower_morning_duration_probability.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_mkv_chain_initial_prob_cluster_0.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_mkv_chain_initial_prob_cluster_1.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_mkv_chain_initial_prob_cluster_2.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_mkv_chain_initial_prob_cluster_3.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_mkv_chain_transition_prob_cluster_0.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_mkv_chain_transition_prob_cluster_1.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_mkv_chain_transition_prob_cluster_2.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_mkv_chain_transition_prob_cluster_3.csv +0 -0
- data/example_files/resources/hpxml-measures/{BuildResidentialHPXML → BuildResidentialScheduleFile}/resources/schedules_weekend_state_and_monthly_schedule_shift.csv +0 -0
- data/example_files/resources/hpxml-measures/BuildResidentialScheduleFile/tests/build_residential_schedule_file_test.rb +526 -0
- data/example_files/resources/hpxml-measures/Changelog.md +84 -8
- data/example_files/resources/hpxml-measures/Gemfile +3 -0
- data/example_files/resources/hpxml-measures/Gemfile.lock +3 -11
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/measure.rb +387 -387
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/measure.xml +167 -251
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/BaseElements.xsd +275 -59
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/EPvalidator.xml +471 -247
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/HPXML.xsd +1 -1
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/HPXMLDataTypes.xsd +171 -79
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/HPXMLvalidator.xml +155 -78
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/airflow.rb +188 -141
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/battery.rb +83 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/constants.rb +99 -11
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/constructions.rb +558 -342
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/energyplus.rb +2 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/geometry.rb +64 -72
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hotwater_appliances.rb +96 -93
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hpxml.rb +965 -350
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hpxml_defaults.rb +887 -216
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hvac.rb +664 -760
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/hvac_sizing.rb +306 -287
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/lighting.rb +20 -29
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/location.rb +0 -20
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/lu_hvac_equipment_efficiency.csv +493 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/lu_water_heater_efficiency.csv +157 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/materials.rb +156 -108
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/meta_measure.rb +41 -3
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/minitest_helper.rb +14 -2
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/misc_loads.rb +18 -18
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/pv.rb +14 -7
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/schedule_files/smooth.csv +8761 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/schedule_files/stochastic-vacancy.csv +8761 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/schedule_files/stochastic.csv +8761 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/schedules.rb +431 -428
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/validator.rb +21 -12
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/version.rb +3 -3
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/waterheater.rb +245 -234
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/weather.rb +10 -5
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/xmlhelper.rb +19 -8
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_airflow.rb +44 -23
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_battery.rb +241 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_defaults.rb +1374 -297
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_enclosure.rb +702 -55
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_generator.rb +0 -1
- 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 +238 -40
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_lighting.rb +2 -2
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_pv.rb +0 -2
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_schedules.rb +186 -0
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_validation.rb +955 -176
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/test_water_heater.rb +47 -61
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/tests/util.rb +1 -1
- data/example_files/resources/hpxml-measures/LICENSE.md +1 -1
- data/example_files/resources/hpxml-measures/README.md +12 -9
- data/example_files/resources/hpxml-measures/Rakefile +1 -1
- data/example_files/resources/hpxml-measures/ReportHPXMLOutput/measure.rb +448 -0
- data/example_files/resources/hpxml-measures/ReportHPXMLOutput/measure.xml +81 -0
- data/example_files/resources/hpxml-measures/ReportHPXMLOutput/resources/constants.rb +71 -0
- data/example_files/resources/hpxml-measures/ReportHPXMLOutput/tests/hpxml_output_report_test.rb +232 -0
- data/example_files/resources/hpxml-measures/ReportSimulationOutput/measure.rb +1977 -0
- data/example_files/resources/hpxml-measures/{SimulationOutputReport → ReportSimulationOutput}/measure.xml +682 -31
- data/example_files/resources/hpxml-measures/{SimulationOutputReport → ReportSimulationOutput}/resources/constants.rb +20 -2
- data/example_files/resources/hpxml-measures/{SimulationOutputReport → ReportSimulationOutput}/tests/output_report_test.rb +83 -218
- data/example_files/resources/hpxml-measures/docs/source/index.rst +1 -2
- data/example_files/resources/hpxml-measures/docs/source/intro.rst +6 -3
- data/example_files/resources/hpxml-measures/docs/source/usage_instructions.rst +73 -0
- data/example_files/resources/hpxml-measures/docs/source/workflow_inputs.rst +915 -494
- data/example_files/resources/hpxml-measures/docs/source/workflow_outputs.rst +263 -111
- data/example_files/resources/hpxml-measures/tasks.rb +3830 -6981
- data/example_files/resources/hpxml-measures/weather/ZAF_Cape.Town.688160_IWEC-cache.csv +35 -0
- data/example_files/resources/hpxml-measures/weather/ZAF_Cape.Town.688160_IWEC.epw +8768 -0
- data/example_files/resources/hpxml-measures/workflow/run_simulation.rb +25 -5
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-coal.xml +102 -91
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-dehumidifier-ief-portable.xml +93 -83
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-dehumidifier-ief-whole-home.xml +93 -83
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-dehumidifier-multiple.xml +93 -83
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-dehumidifier.xml +93 -83
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-gas.xml +102 -91
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-modified.xml +103 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-none.xml +96 -85
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-oil.xml +102 -91
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-propane.xml +102 -91
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-appliances-wood.xml +102 -91
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-cathedral.xml +96 -125
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-conditioned.xml +119 -104
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-flat.xml +94 -89
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-radiant-barrier.xml +93 -83
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-unvented-insulated-roof.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-atticroof-vented.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-battery-outside.xml +584 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-adjacent-to-multifamily-buffer-space.xml +99 -68
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-adjacent-to-multiple.xml +119 -79
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-adjacent-to-non-freezing-space.xml +99 -68
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-adjacent-to-other-heated-space.xml +99 -68
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-adjacent-to-other-housing-unit.xml +99 -68
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-chiller-baseboard.xml +97 -66
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-chiller-fan-coil-ducted.xml +97 -66
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-chiller-fan-coil.xml +97 -66
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-chiller-water-loop-heat-pump.xml +100 -69
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-cooling-tower-water-loop-heat-pump.xml +100 -69
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-only-baseboard.xml +94 -65
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-only-fan-coil-ducted.xml +94 -65
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-only-fan-coil-eae.xml +94 -65
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-only-fan-coil.xml +94 -65
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-boiler-only-water-loop-heat-pump.xml +97 -68
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-chiller-only-baseboard.xml +94 -65
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-chiller-only-fan-coil-ducted.xml +94 -65
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-chiller-only-fan-coil.xml +94 -65
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-chiller-only-water-loop-heat-pump.xml +97 -68
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-cooling-tower-only-water-loop-heat-pump.xml +97 -68
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-generator.xml +98 -67
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-ground-loop-ground-to-air-heat-pump.xml +96 -64
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-laundry-room.xml +105 -84
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-mechvent-multiple.xml +108 -77
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-mechvent-preconditioning.xml +100 -69
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-mechvent.xml +100 -69
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-pv.xml +98 -67
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-water-heater-recirc.xml +97 -66
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily-shared-water-heater.xml +97 -66
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-multifamily.xml +97 -66
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/invalid-facility-type-surfaces.xml → base-bldgtype-single-family-attached-2stories.xml} +152 -167
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-bldgtype-single-family-attached.xml +124 -114
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-combi-tankless-outside.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-combi-tankless.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater-2-speed.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater-gshp.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater-hpwh.xml +105 -96
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater-tankless.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater-var-speed.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-desuperheater.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-dwhr.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect-dse.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect-outside.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect-standbyloss.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect-with-solar-fraction.xml +104 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-indirect.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-jacket-electric.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-jacket-gas.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-jacket-hpwh.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-jacket-indirect.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-low-flow-fixtures.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-multiple.xml +108 -101
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-none.xml +96 -85
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-recirc-demand.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-recirc-manual.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-recirc-nocontrol.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-recirc-temperature.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-recirc-timer.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-direct-evacuated-tube.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-direct-flat-plate.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-direct-ics.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-fraction.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-indirect-flat-plate.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-solar-thermosyphon-flat-plate.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-coal.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-elec-uef.xml +105 -96
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-gas-outside.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-gas-uef-fhr.xml +574 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-gas-uef.xml +105 -96
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-gas.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump-outside.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump-uef.xml +105 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump-with-solar-fraction.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump-with-solar.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-heat-pump.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-oil.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tank-wood.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-electric-outside.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-electric-uef.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-electric.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-gas-uef.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-gas-with-solar-fraction.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-gas-with-solar.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-gas.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-dhw-tankless-propane.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-2stories-garage.xml +131 -119
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-2stories.xml +120 -99
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-beds-1.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-beds-2.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-beds-4.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-beds-5.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-garage.xml +131 -118
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-ach-house-pressure.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-cfm-house-pressure.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-cfm50.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-flue.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-infil-natural-ach.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-orientations.xml +579 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-overhangs.xml +110 -101
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-rooftypes.xml +213 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/invalid-id.xml → base-enclosure-skylights-physical-properties.xml} +123 -105
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-skylights-shading.xml +114 -105
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-skylights.xml +112 -103
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-split-level.xml +92 -82
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-split-surfaces.xml +533 -547
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-split-surfaces2.xml +545 -559
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/generator-output-greater-than-consumption.xml → base-enclosure-thermal-mass.xml} +117 -111
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-walltypes.xml +239 -109
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-windows-none.xml +88 -79
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-windows-physical-properties.xml +584 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-enclosure-windows-shading.xml +115 -106
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-ambient.xml +89 -79
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-basement-garage.xml +123 -110
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-complex.xml +119 -172
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-conditioned-basement-slab-insulation.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-conditioned-basement-wall-interior-insulation.xml +107 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-conditioned-crawlspace.xml +572 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-multiple.xml +119 -128
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-slab.xml +92 -82
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-unconditioned-basement-above-grade.xml +117 -110
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-unconditioned-basement-assembly-r.xml +106 -91
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-unconditioned-basement-wall-insulation.xml +107 -98
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-unconditioned-basement.xml +105 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-unvented-crawlspace.xml +108 -98
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-vented-crawlspace.xml +108 -98
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-foundation-walkout-basement.xml +115 -110
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-1-speed-cooling-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-1-speed-heating-only.xml +103 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-1-speed.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-2-speed.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-var-speed-backup-boiler-switchover-temperature.xml +590 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-var-speed-backup-boiler.xml +589 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-air-to-air-heat-pump-var-speed.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-1-speed-cooling-only.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-1-speed-heating-only.xml +105 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-1-speed-manual-s-oversize-allowances.xml +103 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-1-speed.xml +106 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-2-speed-manual-s-oversize-allowances.xml +103 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-2-speed.xml +106 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/hvac-invalid-distribution-system-type.xml → base-hvac-autosize-air-to-air-heat-pump-var-speed-backup-boiler.xml} +587 -570
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-var-speed-manual-s-oversize-allowances.xml +103 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-air-to-air-heat-pump-var-speed.xml +106 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-boiler-elec-only.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-boiler-gas-central-ac-1-speed.xml +103 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-boiler-gas-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-central-ac-only-1-speed.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-central-ac-only-2-speed.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-central-ac-only-var-speed.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-central-ac-plus-air-to-air-heat-pump-heating.xml +108 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-dual-fuel-air-to-air-heat-pump-1-speed.xml +106 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-dual-fuel-mini-split-heat-pump-ducted.xml +106 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-elec-resistance-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-evap-cooler-furnace-gas.xml +103 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-floor-furnace-propane-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-furnace-elec-only.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-furnace-gas-central-ac-2-speed.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-furnace-gas-central-ac-var-speed.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-furnace-gas-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-furnace-gas-room-ac.xml +103 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ground-to-air-heat-pump-cooling-only.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ground-to-air-heat-pump-heating-only.xml +105 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ground-to-air-heat-pump-manual-s-oversize-allowances.xml +103 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-ground-to-air-heat-pump.xml +106 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-air-conditioner-only-ducted.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ducted-cooling-only.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ducted-heating-only.xml +105 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ducted-manual-s-oversize-allowances.xml +103 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ducted.xml +106 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-mini-split-heat-pump-ductless-backup-stove.xml +541 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/invalid-relatedhvac-dhw-indirect.xml → base-hvac-autosize-ptac-with-heating.xml} +528 -517
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/boiler-invalid-afue.xml → base-hvac-autosize-ptac.xml} +109 -113
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-pthp.xml +531 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-room-ac-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-stove-oil-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize-wall-furnace-elec-only.xml +100 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-autosize.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-coal-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-elec-only.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-gas-central-ac-1-speed.xml +103 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-gas-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-oil-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-propane-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-boiler-wood-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-central-ac-only-1-speed.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-central-ac-only-2-speed.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-central-ac-only-var-speed.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-central-ac-plus-air-to-air-heat-pump-heating.xml +106 -96
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dse.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dual-fuel-air-to-air-heat-pump-1-speed-electric.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dual-fuel-air-to-air-heat-pump-1-speed.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dual-fuel-air-to-air-heat-pump-2-speed.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dual-fuel-air-to-air-heat-pump-var-speed.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-dual-fuel-mini-split-heat-pump-ducted.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/unattached-solar-thermal-system.xml → base-hvac-ducts-area-fractions.xml} +596 -577
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-none-furnace-gas-central-ac-1-speed.xml → base-hvac-ducts-leakage-cfm50.xml} +108 -106
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ducts-leakage-percent.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-elec-resistance-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-evap-cooler-furnace-gas.xml +103 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-evap-cooler-only-ducted.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-evap-cooler-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-fireplace-wood-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-fixed-heater-gas-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-floor-furnace-propane-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-coal-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-elec-central-ac-1-speed.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-elec-only.xml +102 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-gas-central-ac-2-speed.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-gas-central-ac-var-speed.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-gas-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-gas-room-ac.xml +103 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-oil-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-propane-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-wood-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-furnace-x3-dse.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ground-to-air-heat-pump-cooling-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ground-to-air-heat-pump-heating-only.xml +102 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-ground-to-air-heat-pump.xml +103 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-all-air-to-air-heat-pump-1-speed.xml → base-hvac-install-quality-air-to-air-heat-pump-1-speed.xml} +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-all-air-to-air-heat-pump-2-speed.xml → base-hvac-install-quality-air-to-air-heat-pump-2-speed.xml} +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-all-air-to-air-heat-pump-var-speed.xml → base-hvac-install-quality-air-to-air-heat-pump-var-speed.xml} +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-all-furnace-gas-central-ac-1-speed.xml → base-hvac-install-quality-furnace-gas-central-ac-1-speed.xml} +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-all-furnace-gas-central-ac-2-speed.xml → base-hvac-install-quality-furnace-gas-central-ac-2-speed.xml} +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-all-furnace-gas-central-ac-var-speed.xml → base-hvac-install-quality-furnace-gas-central-ac-var-speed.xml} +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-all-furnace-gas-only.xml → base-hvac-install-quality-furnace-gas-only.xml} +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-all-ground-to-air-heat-pump.xml → base-hvac-install-quality-ground-to-air-heat-pump.xml} +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-all-mini-split-air-conditioner-only-ducted.xml → base-hvac-install-quality-mini-split-air-conditioner-only-ducted.xml} +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-all-mini-split-heat-pump-ducted.xml → base-hvac-install-quality-mini-split-heat-pump-ducted.xml} +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-air-conditioner-only-ducted.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-air-conditioner-only-ductless.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ducted-cooling-only.xml +101 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ducted-heating-only.xml +103 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ducted.xml +104 -94
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ductless-backup-stove.xml +542 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-mini-split-heat-pump-ductless.xml +101 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-multiple.xml +124 -100
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-none.xml +94 -89
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-portable-heater-gas-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-programmable-thermostat-detailed.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-programmable-thermostat.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/cfis-with-hydronic-distribution.xml → base-hvac-ptac-with-heating.xml} +530 -532
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/hvac-distribution-return-duct-leakage-missing.xml → base-hvac-ptac.xml} +515 -528
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-pthp.xml +531 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-room-ac-only-33percent.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-room-ac-only-ceer.xml +516 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-room-ac-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-seasons.xml +584 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-setpoints.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-stove-oil-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-stove-wood-pellets-only.xml +99 -92
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-undersized-allow-increased-fixed-capacities.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-undersized.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-hvac-wall-furnace-elec-only.xml +100 -93
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-lighting-ceiling-fans.xml +110 -96
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-lighting-holiday.xml +586 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-lighting-none.xml +95 -86
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-AMY-2012.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-baltimore-md.xml +108 -98
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/invalid-foundation-wall-properties.xml → base-location-capetown-zaf.xml} +134 -127
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-dallas-tx.xml +92 -82
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-duluth-mn.xml +105 -98
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-helena-mt.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-honolulu-hi.xml +92 -82
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-miami-fl.xml +92 -82
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-phoenix-az.xml +92 -82
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-location-portland-or.xml +108 -98
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-balanced.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-bath-kitchen-fans.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-cfis-dse.xml +107 -98
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-cfis-evap-cooler-only-ducted.xml +104 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-cfis.xml +107 -98
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-erv-atre-asre.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-erv.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-exhaust-rated-flow-rate.xml +105 -96
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-exhaust.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-hrv-asre.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-hrv.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-multiple.xml +141 -114
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-supply.xml +106 -97
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-mechvent-whole-house-fan.xml +105 -96
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-defaults.xml +101 -101
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-generators.xml +105 -96
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-loads-large-uncommon.xml +157 -112
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-loads-large-uncommon2.xml +157 -112
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-loads-none.xml +96 -87
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-neighbor-shading.xml +108 -99
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-shielding-of-home.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-misc-usage-multiplier.xml +113 -102
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-multiple-buildings.xml +318 -291
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv-battery-ah.xml +608 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/enclosure-garage-missing-roof-ceiling.xml → base-pv-battery-garage.xml} +678 -626
- data/example_files/resources/hpxml-measures/workflow/sample_files/{invalid_files/multifamily-reference-surface.xml → base-pv-battery-outside-degrades.xml} +610 -575
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv-battery-outside.xml +608 -0
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-pv.xml +105 -96
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-airflow-defect-furnace-gas-central-ac-1-speed.xml → base-schedules-detailed-smooth.xml} +105 -101
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-charge-defect-furnace-gas-central-ac-1-speed.xml → base-schedules-detailed-stochastic-vacancy.xml} +105 -98
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-hvac-install-quality-blower-efficiency-furnace-gas-central-ac-1-speed.xml → base-schedules-detailed-stochastic.xml} +105 -101
- data/example_files/resources/hpxml-measures/workflow/sample_files/{base-lighting-detailed.xml → base-schedules-simple.xml} +625 -585
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-calendar-year-custom.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-daylight-saving-custom.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-daylight-saving-disabled.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-runperiod-1-month.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-simcontrol-timestep-10-mins.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/sample_files/base.xml +104 -95
- data/example_files/resources/hpxml-measures/workflow/template-build-hpxml-and-stocastic-schedules.osw +129 -0
- data/example_files/resources/hpxml-measures/workflow/template-stochastic-schedules.osw +53 -0
- data/example_files/resources/hpxml-measures/workflow/template.osw +7 -2
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L100AC.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L100AL.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L110AC.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L110AL.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L120AC.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L120AL.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L130AC.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L130AL.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L140AC.xml +63 -32
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L140AL.xml +63 -32
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L150AC.xml +66 -35
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L150AL.xml +66 -35
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L155AC.xml +66 -35
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L155AL.xml +66 -35
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L160AC.xml +69 -38
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L160AL.xml +69 -38
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L170AC.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L170AL.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L200AC.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L200AL.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L202AC.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L202AL.xml +75 -44
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L302XC.xml +78 -47
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L304XC.xml +78 -47
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L322XC.xml +114 -103
- data/example_files/resources/hpxml-measures/workflow/tests/ASHRAE_Standard_140/L324XC.xml +126 -103
- data/example_files/resources/hpxml-measures/workflow/tests/base_results/results.csv +321 -294
- data/example_files/resources/hpxml-measures/workflow/tests/base_results/results_ashrae_140.csv +26 -26
- data/example_files/resources/hpxml-measures/workflow/tests/base_results/results_hvac_sizing.csv +320 -293
- data/example_files/resources/hpxml-measures/workflow/tests/compare.py +351 -0
- data/example_files/resources/hpxml-measures/workflow/tests/hpxml_translator_test.rb +253 -260
- data/example_files/visualization/input_visualization_feature.html +25 -17
- data/example_files/visualization/input_visualization_scenario.html +23 -12
- data/example_files/weather/USA_NY_Buffalo-Greater.Buffalo.Intl.AP.725280_TMY3.ddy +17 -17
- data/lib/uo_cli/version.rb +1 -1
- data/lib/uo_cli.rb +146 -28
- data/uo_cli.gemspec +6 -5
- metadata +232 -637
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/resources/constants.rb +0 -59
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-appliances-coal.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-appliances-dehumidifier-ief-portable.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-appliances-dehumidifier-ief-whole-home.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-appliances-dehumidifier.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-appliances-gas.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-appliances-modified.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-appliances-none.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-appliances-oil.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-appliances-propane.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-appliances-wood.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-atticroof-flat.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-atticroof-radiant-barrier.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-atticroof-unvented-insulated-roof.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-atticroof-vented.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-bldgtype-multifamily-shared-boiler-only-baseboard.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-bldgtype-multifamily-shared-boiler-only-fan-coil.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-bldgtype-multifamily-shared-mechvent-preconditioning.osw +0 -348
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-bldgtype-multifamily-shared-mechvent.osw +0 -342
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-bldgtype-multifamily-shared-pv.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-bldgtype-multifamily-shared-water-heater.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-bldgtype-multifamily.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-bldgtype-single-family-attached.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-combi-tankless-outside.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-combi-tankless.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-dwhr.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-indirect-outside.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-indirect-standbyloss.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-indirect-with-solar-fraction.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-indirect.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-jacket-electric.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-jacket-gas.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-jacket-hpwh.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-jacket-indirect.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-low-flow-fixtures.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-none.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-recirc-demand.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-recirc-manual.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-recirc-nocontrol.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-recirc-temperature.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-recirc-timer.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-solar-direct-evacuated-tube.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-solar-direct-flat-plate.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-solar-direct-ics.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-solar-fraction.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-solar-indirect-flat-plate.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-solar-thermosyphon-flat-plate.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-coal.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-elec-uef.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-gas-outside.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-gas-uef.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-gas.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-heat-pump-outside.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-heat-pump-uef.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-heat-pump-with-solar-fraction.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-heat-pump-with-solar.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-heat-pump.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-oil.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tank-wood.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tankless-electric-outside.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tankless-electric-uef.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tankless-electric.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tankless-gas-uef.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tankless-gas-with-solar-fraction.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tankless-gas-with-solar.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tankless-gas.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-dhw-tankless-propane.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-2stories-garage.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-2stories.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-beds-1.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-beds-2.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-beds-4.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-beds-5.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-garage.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-infil-ach-house-pressure.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-infil-cfm-house-pressure.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-infil-cfm50.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-infil-flue.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-infil-natural-ach.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-overhangs.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-enclosure-windows-none.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-foundation-ambient.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-foundation-conditioned-basement-slab-insulation.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-foundation-slab.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-foundation-unconditioned-basement-assembly-r.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-foundation-unconditioned-basement-wall-insulation.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-foundation-unconditioned-basement.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-foundation-unvented-crawlspace.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-foundation-vented-crawlspace.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-air-to-air-heat-pump-1-speed-cooling-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-air-to-air-heat-pump-1-speed-heating-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-air-to-air-heat-pump-1-speed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-air-to-air-heat-pump-2-speed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-air-to-air-heat-pump-var-speed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-boiler-coal-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-boiler-elec-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-boiler-gas-central-ac-1-speed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-boiler-gas-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-boiler-oil-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-boiler-propane-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-boiler-wood-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-central-ac-only-1-speed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-central-ac-only-2-speed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-central-ac-only-var-speed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-central-ac-plus-air-to-air-heat-pump-heating.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-dual-fuel-air-to-air-heat-pump-1-speed-electric.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-dual-fuel-air-to-air-heat-pump-1-speed.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-dual-fuel-air-to-air-heat-pump-2-speed.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-dual-fuel-air-to-air-heat-pump-var-speed.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-dual-fuel-mini-split-heat-pump-ducted.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-ducts-leakage-percent.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-elec-resistance-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-evap-cooler-furnace-gas.osw +0 -335
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-evap-cooler-only-ducted.osw +0 -335
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-evap-cooler-only.osw +0 -335
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-fireplace-wood-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-fixed-heater-gas-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-floor-furnace-propane-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-furnace-coal-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-furnace-elec-central-ac-1-speed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-furnace-elec-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-furnace-gas-central-ac-2-speed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-furnace-gas-central-ac-var-speed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-furnace-gas-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-furnace-gas-room-ac.osw +0 -336
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-furnace-oil-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-furnace-propane-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-furnace-wood-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-ground-to-air-heat-pump-cooling-only.osw +0 -336
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-ground-to-air-heat-pump-heating-only.osw +0 -336
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-ground-to-air-heat-pump.osw +0 -336
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-airflow-defect-furnace-gas-central-ac-1-speed.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-all-air-to-air-heat-pump-1-speed.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-all-air-to-air-heat-pump-2-speed.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-all-air-to-air-heat-pump-var-speed.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-all-furnace-gas-central-ac-1-speed.osw +0 -340
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-all-furnace-gas-central-ac-2-speed.osw +0 -340
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-all-furnace-gas-central-ac-var-speed.osw +0 -340
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-all-furnace-gas-only.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-all-ground-to-air-heat-pump.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-all-mini-split-air-conditioner-only-ducted.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-all-mini-split-heat-pump-ducted.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-charge-defect-furnace-gas-central-ac-1-speed.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-install-quality-none-furnace-gas-central-ac-1-speed.osw +0 -340
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-mini-split-air-conditioner-only-ducted.osw +0 -336
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-mini-split-air-conditioner-only-ductless.osw +0 -336
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-mini-split-heat-pump-ducted-cooling-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-mini-split-heat-pump-ducted-heating-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-mini-split-heat-pump-ducted.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-mini-split-heat-pump-ductless.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-none.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-portable-heater-gas-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-programmable-thermostat-detailed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-room-ac-only-33percent.osw +0 -336
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-room-ac-only.osw +0 -336
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-setpoints.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-stove-oil-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-stove-wood-pellets-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-undersized.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-hvac-wall-furnace-elec-only.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-lighting-ceiling-fans.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-lighting-detailed.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-location-AMY-2012.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-location-baltimore-md.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-location-dallas-tx.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-location-duluth-mn.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-location-helena-mt.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-location-honolulu-hi.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-location-miami-fl.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-location-phoenix-az.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-location-portland-or.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-balanced.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-bath-kitchen-fans.osw +0 -345
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-cfis-evap-cooler-only-ducted.osw +0 -335
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-cfis.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-erv-atre-asre.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-erv.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-exhaust-rated-flow-rate.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-exhaust.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-hrv-asre.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-hrv.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-supply.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-mechvent-whole-house-fan.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-misc-defaults.osw +0 -324
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-misc-loads-large-uncommon.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-misc-loads-large-uncommon2.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-misc-neighbor-shading.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-misc-shielding-of-home.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-misc-usage-multiplier.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-pv.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-schedules-stochastic-vacant.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-schedules-stochastic.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-schedules-user-specified.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-simcontrol-calendar-year-custom.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-simcontrol-daylight-saving-custom.osw +0 -342
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-simcontrol-daylight-saving-disabled.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-simcontrol-runperiod-1-month.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base-simcontrol-timestep-10-mins.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/base.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-auto.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-double-exterior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-eaves.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-single-exterior-front.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-left-bottom-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-left-bottom.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-left-middle-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-left-middle.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-left-top-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-left-top.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-middle-bottom-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-middle-bottom.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-middle-middle-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-middle-middle.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-middle-top-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-middle-top.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-right-bottom-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-right-bottom.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-right-middle-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-right-middle.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-right-top-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab-right-top.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-slab.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-left-bottom-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-left-bottom.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-left-middle-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-left-middle.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-left-top-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-left-top.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-middle-bottom-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-middle-bottom.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-middle-middle-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-middle-middle.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-middle-top-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-middle-top.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-right-bottom-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-right-bottom.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-right-middle-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-right-middle.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-right-top-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace-right-top.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-unvented-crawlspace.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-left-bottom-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-left-bottom.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-left-middle-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-left-middle.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-left-top-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-left-top.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-middle-bottom-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-middle-bottom.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-middle-middle-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-middle-middle.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-middle-top-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-middle-top.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-right-bottom-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-right-bottom.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-right-middle-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-right-middle.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-right-top-double-loaded-interior.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace-right-top.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-multifamily-vented-crawlspace.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-atticroof-conditioned-eaves-gable.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-atticroof-conditioned-eaves-hip.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-atticroof-flat.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-double-exterior.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-double-loaded-interior.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-single-exterior-front.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-slab-middle.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-slab-right.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-slab.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-unconditioned-basement-middle.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-unconditioned-basement-right.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-unconditioned-basement.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-unvented-crawlspace-middle.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-unvented-crawlspace-right.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-unvented-crawlspace.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-vented-crawlspace-middle.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-vented-crawlspace-right.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-bldgtype-single-family-attached-vented-crawlspace.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-dhw-solar-latitude.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-enclosure-atticroof-conditioned-eaves-gable.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-enclosure-atticroof-conditioned-eaves-hip.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-enclosure-garage-atticroof-conditioned.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-enclosure-garage-partially-protruded.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-enclosure-windows-shading.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-gas-hot-tub-heater-with-zero-kwh.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-gas-pool-heater-with-zero-kwh.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-pv-roofpitch.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-schedules-random-seed.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-second-heating-system-boiler-to-heat-pump.osw +0 -336
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-second-heating-system-boiler-to-heating-system.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-second-heating-system-fireplace-to-heat-pump.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-second-heating-system-fireplace-to-heating-system.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-second-heating-system-portable-heater-to-heat-pump.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-second-heating-system-portable-heater-to-heating-system.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-second-refrigerator.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-zero-clothes-washer-kwh.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-zero-dishwasher-kwh.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-zero-extra-refrigerator-kwh.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-zero-freezer-kwh.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/extra-zero-refrigerator-kwh.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/conditioned-attic-with-floor-insulation.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/conditioned-attic-with-one-floor-above-grade.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/conditioned-basement-with-ceiling-insulation.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/cooling-system-and-heat-pump.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/dhw-indirect-without-boiler.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/ducts-location-and-areas-not-same-type.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/foundation-wall-insulation-greater-than-height.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/heating-system-and-heat-pump.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/multifamily-bottom-crawlspace-zero-foundation-height.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/multifamily-bottom-slab-non-zero-foundation-height.osw +0 -341
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/multifamily-no-building-orientation.osw +0 -338
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/multipliers-without-fuel-loads.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/multipliers-without-other-plug-loads.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/multipliers-without-tv-plug-loads.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/multipliers-without-vehicle-plug-loads.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/multipliers-without-well-pump-plug-loads.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/non-electric-heat-pump-water-heater.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/non-integer-ceiling-fan-quantity.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/non-integer-geometry-num-bathrooms.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/second-heating-system-but-no-primary-heating.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/second-heating-system-serves-majority-heat.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/second-heating-system-serves-total-heat-load.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/single-family-attached-ambient.osw +0 -339
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/single-family-attached-no-building-orientation.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/single-family-detached-finished-basement-zero-foundation-height.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/single-family-detached-slab-non-zero-foundation-height.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/single-family-detached-with-shared-system.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/slab-non-zero-foundation-height-above-grade.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/unconditioned-basement-with-wall-and-ceiling-insulation.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/unvented-attic-with-floor-and-roof-insulation.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/unvented-crawlspace-with-wall-and-ceiling-insulation.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/vented-attic-with-floor-and-roof-insulation.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/vented-crawlspace-with-wall-and-ceiling-insulation.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/invalid_files/zero-number-of-bedrooms.osw +0 -337
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/schedules/stochastic.csv +0 -8761
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/schedules/user-specified.csv +0 -8761
- data/example_files/resources/hpxml-measures/BuildResidentialHPXML/tests/schedules/vacant.csv +0 -8761
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_bath_schedule_1bed.csv +0 -369
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_bath_schedule_2bed.csv +0 -465
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_bath_schedule_3bed.csv +0 -611
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_bath_schedule_4bed.csv +0 -685
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_bath_schedule_5bed.csv +0 -767
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_clotheswasher_schedule_1bed.csv +0 -637
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_clotheswasher_schedule_2bed.csv +0 -744
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_clotheswasher_schedule_3bed.csv +0 -929
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_clotheswasher_schedule_4bed.csv +0 -1044
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_clotheswasher_schedule_5bed.csv +0 -1250
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_dishwasher_schedule_1bed.csv +0 -754
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_dishwasher_schedule_2bed.csv +0 -961
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_dishwasher_schedule_3bed.csv +0 -1102
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_dishwasher_schedule_4bed.csv +0 -1293
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_dishwasher_schedule_5bed.csv +0 -1508
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_fixtures_schedule_1bed.csv +0 -13097
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_fixtures_schedule_2bed.csv +0 -15977
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_fixtures_schedule_3bed.csv +0 -18624
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_fixtures_schedule_4bed.csv +0 -22075
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_fixtures_schedule_5bed.csv +0 -25005
- data/example_files/resources/hpxml-measures/HPXMLtoOpenStudio/resources/data_hot_water_max_flows.csv +0 -6
- data/example_files/resources/hpxml-measures/SimulationOutputReport/measure.rb +0 -2444
- data/example_files/resources/hpxml-measures/docs/source/build_residential_hpxml.rst +0 -110
- data/example_files/resources/hpxml-measures/docs/source/getting_started.rst +0 -57
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-stochastic-vacant.xml +0 -564
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-stochastic.xml +0 -564
- data/example_files/resources/hpxml-measures/workflow/sample_files/base-schedules-user-specified.xml +0 -564
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/clothes-dryer-location.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/clothes-washer-location.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/cooking-range-location.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/dehumidifier-fraction-served.xml +0 -535
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/dehumidifier-setpoints.xml +0 -535
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/dhw-frac-load-served.xml +0 -576
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/dhw-invalid-ef-tank.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/dhw-invalid-uef-tank-heat-pump.xml +0 -564
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/dishwasher-location.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/duct-leakage-cfm25.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/duct-leakage-percent.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/duct-location-unconditioned-space.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/duct-location.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/duplicate-id.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/enclosure-attic-missing-roof.xml +0 -547
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/enclosure-basement-missing-exterior-foundation-wall.xml +0 -544
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/enclosure-basement-missing-slab.xml +0 -547
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/enclosure-floor-area-exceeds-cfa.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/enclosure-floor-area-exceeds-cfa2.xml +0 -448
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/enclosure-garage-missing-exterior-wall.xml +0 -614
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/enclosure-garage-missing-slab.xml +0 -611
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/enclosure-living-missing-ceiling-roof.xml +0 -551
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/enclosure-living-missing-exterior-wall.xml +0 -473
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/enclosure-living-missing-floor-slab.xml +0 -489
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/frac-sensible-fuel-load.xml +0 -760
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/frac-sensible-plug-load.xml +0 -759
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/frac-total-fuel-load.xml +0 -761
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/frac-total-plug-load.xml +0 -759
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/furnace-invalid-afue.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/generator-number-of-bedrooms-served.xml +0 -460
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/heat-pump-mixed-fixed-and-autosize-capacities.xml +0 -560
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/hvac-distribution-multiple-attached-cooling.xml +0 -921
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/hvac-distribution-multiple-attached-heating.xml +0 -921
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/hvac-dse-multiple-attached-cooling.xml +0 -547
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/hvac-dse-multiple-attached-heating.xml +0 -547
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/hvac-frac-load-served.xml +0 -921
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/hvac-inconsistent-fan-powers.xml +0 -569
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/hvac-shared-negative-seer-eq.xml +0 -407
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-assembly-effective-rvalue.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-datatype-boolean.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-datatype-float.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-datatype-integer.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-daylight-saving.xml +0 -570
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-distribution-cfa-served.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-epw-filepath.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-facility-type-equipment.xml +0 -466
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-id2.xml +0 -591
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-infiltration-volume.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-input-parameters.xml +0 -565
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-neighbor-shading-azimuth.xml +0 -576
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-number-of-bedrooms-served.xml +0 -465
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-number-of-conditioned-floors.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-number-of-units-served.xml +0 -451
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-relatedhvac-desuperheater.xml +0 -551
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-runperiod.xml +0 -565
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-schema-version.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-shared-vent-in-unit-flowrate.xml +0 -473
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-timestep.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/invalid-window-height.xml +0 -583
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/lighting-fractions.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/missing-duct-location.xml +0 -917
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/missing-elements.xml +0 -561
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/multifamily-reference-appliance.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/multifamily-reference-duct.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/multifamily-reference-water-heater.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/multiple-buildings-without-building-id.xml +0 -1657
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/multiple-buildings-wrong-building-id.xml +0 -1657
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/multiple-shared-cooling-systems.xml +0 -432
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/multiple-shared-heating-systems.xml +0 -434
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/net-area-negative-roof.xml +0 -591
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/net-area-negative-wall.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/num-bedrooms-exceeds-limit.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/orphaned-hvac-distribution.xml +0 -547
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/refrigerator-location.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/refrigerators-multiple-primary.xml +0 -569
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/refrigerators-no-primary.xml +0 -569
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/repeated-relatedhvac-desuperheater.xml +0 -564
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/repeated-relatedhvac-dhw-indirect.xml +0 -527
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/solar-fraction-one.xml +0 -571
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/solar-thermal-system-with-combi-tankless.xml +0 -532
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/solar-thermal-system-with-desuperheater.xml +0 -566
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/solar-thermal-system-with-dhw-indirect.xml +0 -532
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/unattached-cfis.xml +0 -576
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/unattached-door.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/unattached-hvac-distribution.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/unattached-shared-clothes-washer-water-heater.xml +0 -466
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/unattached-shared-dishwasher-water-heater.xml +0 -466
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/unattached-skylight.xml +0 -591
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/unattached-window.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/water-heater-location-other.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/sample_files/invalid_files/water-heater-location.xml +0 -563
- data/example_files/resources/hpxml-measures/workflow/tests/compare.rb +0 -130
@@ -5,416 +5,1128 @@ require 'openstudio/ruleset/ShowRunnerOutput'
|
|
5
5
|
require 'minitest/autorun'
|
6
6
|
require_relative '../measure.rb'
|
7
7
|
require 'fileutils'
|
8
|
-
require_relative '../../HPXMLtoOpenStudio/resources/meta_measure'
|
9
|
-
require_relative '../../HPXMLtoOpenStudio/resources/hpxml'
|
10
8
|
|
11
9
|
class BuildResidentialHPXMLTest < MiniTest::Test
|
12
10
|
def test_workflows
|
13
|
-
|
11
|
+
# Extra buildings that don't correspond with sample files
|
12
|
+
hpxmls_files = {
|
13
|
+
# Base files to derive from
|
14
|
+
'base-sfd.xml' => nil,
|
15
|
+
'base-sfa.xml' => 'base-sfd.xml',
|
16
|
+
'base-mf.xml' => 'base-sfd.xml',
|
14
17
|
|
15
|
-
|
18
|
+
# Extra files to test
|
19
|
+
'extra-auto.xml' => 'base-sfd.xml',
|
20
|
+
'extra-pv-roofpitch.xml' => 'base-sfd.xml',
|
21
|
+
'extra-dhw-solar-latitude.xml' => 'base-sfd.xml',
|
22
|
+
'extra-second-refrigerator.xml' => 'base-sfd.xml',
|
23
|
+
'extra-second-heating-system-portable-heater-to-heating-system.xml' => 'base-sfd.xml',
|
24
|
+
'extra-second-heating-system-fireplace-to-heating-system.xml' => 'base-sfd.xml',
|
25
|
+
'extra-second-heating-system-boiler-to-heating-system.xml' => 'base-sfd.xml',
|
26
|
+
'extra-second-heating-system-portable-heater-to-heat-pump.xml' => 'base-sfd.xml',
|
27
|
+
'extra-second-heating-system-fireplace-to-heat-pump.xml' => 'base-sfd.xml',
|
28
|
+
'extra-second-heating-system-boiler-to-heat-pump.xml' => 'base-sfd.xml',
|
29
|
+
'extra-enclosure-windows-shading.xml' => 'base-sfd.xml',
|
30
|
+
'extra-enclosure-garage-partially-protruded.xml' => 'base-sfd.xml',
|
31
|
+
'extra-enclosure-garage-atticroof-conditioned.xml' => 'base-sfd.xml',
|
32
|
+
'extra-enclosure-atticroof-conditioned-eaves-gable.xml' => 'base-sfd.xml',
|
33
|
+
'extra-enclosure-atticroof-conditioned-eaves-hip.xml' => 'extra-enclosure-atticroof-conditioned-eaves-gable.xml',
|
34
|
+
'extra-zero-refrigerator-kwh.xml' => 'base-sfd.xml',
|
35
|
+
'extra-zero-extra-refrigerator-kwh.xml' => 'base-sfd.xml',
|
36
|
+
'extra-zero-freezer-kwh.xml' => 'base-sfd.xml',
|
37
|
+
'extra-zero-clothes-washer-kwh.xml' => 'base-sfd.xml',
|
38
|
+
'extra-zero-dishwasher-kwh.xml' => 'base-sfd.xml',
|
39
|
+
'extra-sfa-atticroof-flat.xml' => 'base-sfa.xml',
|
40
|
+
'extra-gas-pool-heater-with-zero-kwh.xml' => 'base-sfd.xml',
|
41
|
+
'extra-gas-hot-tub-heater-with-zero-kwh.xml' => 'base-sfd.xml',
|
42
|
+
'extra-no-rim-joists.xml' => 'base-sfd.xml',
|
43
|
+
'extra-iecc-zone-different-than-epw.xml' => 'base-sfd.xml',
|
44
|
+
'extra-state-code-different-than-epw.xml' => 'base-sfd.xml',
|
16
45
|
|
17
|
-
|
18
|
-
|
19
|
-
|
46
|
+
'extra-sfa-atticroof-conditioned-eaves-gable.xml' => 'extra-sfa-slab.xml',
|
47
|
+
'extra-sfa-atticroof-conditioned-eaves-hip.xml' => 'extra-sfa-atticroof-conditioned-eaves-gable.xml',
|
48
|
+
'extra-mf-eaves.xml' => 'extra-mf-slab.xml',
|
20
49
|
|
21
|
-
|
22
|
-
|
50
|
+
'extra-sfa-slab.xml' => 'base-sfa.xml',
|
51
|
+
'extra-sfa-vented-crawlspace.xml' => 'base-sfa.xml',
|
52
|
+
'extra-sfa-unvented-crawlspace.xml' => 'base-sfa.xml',
|
53
|
+
'extra-sfa-conditioned-crawlspace.xml' => 'base-sfa.xml',
|
54
|
+
'extra-sfa-unconditioned-basement.xml' => 'base-sfa.xml',
|
23
55
|
|
24
|
-
|
25
|
-
|
26
|
-
Dir["#{test_dir}/base*.osw"].sort.each do |osw|
|
27
|
-
osws << File.absolute_path(osw) if test_base
|
28
|
-
end
|
29
|
-
Dir["#{test_dir}/extra*.osw"].sort.each do |osw|
|
30
|
-
osws << File.absolute_path(osw) if test_extra
|
31
|
-
end
|
32
|
-
end
|
33
|
-
|
34
|
-
workflow_dir = File.expand_path(File.join(File.dirname(__FILE__), '../../workflow/sample_files'))
|
35
|
-
tests_dir = File.expand_path(File.join(File.dirname(__FILE__), '../../BuildResidentialHPXML/tests'))
|
36
|
-
built_dir = File.join(tests_dir, 'built_residential_hpxml')
|
37
|
-
unless Dir.exist?(built_dir)
|
38
|
-
Dir.mkdir(built_dir)
|
39
|
-
end
|
40
|
-
|
41
|
-
puts "Running #{osws.size} OSW files..."
|
42
|
-
measures = {}
|
43
|
-
fail = false
|
44
|
-
osws.each do |osw|
|
45
|
-
puts "\nTesting #{File.basename(osw)}..."
|
46
|
-
|
47
|
-
_setup(tests_dir)
|
48
|
-
osw_hash = JSON.parse(File.read(osw))
|
49
|
-
measures_dir = File.join(File.dirname(__FILE__), osw_hash['measure_paths'][0])
|
50
|
-
osw_hash['steps'].each do |step|
|
51
|
-
measures[step['measure_dir_name']] = [step['arguments']]
|
52
|
-
model = OpenStudio::Model::Model.new
|
53
|
-
runner = OpenStudio::Measure::OSRunner.new(OpenStudio::WorkflowJSON.new)
|
54
|
-
|
55
|
-
# Apply measure
|
56
|
-
success = apply_measures(measures_dir, measures, runner, model)
|
57
|
-
|
58
|
-
# Report warnings/errors
|
59
|
-
runner.result.stepWarnings.each do |s|
|
60
|
-
puts "Warning: #{s}"
|
61
|
-
end
|
62
|
-
runner.result.stepErrors.each do |s|
|
63
|
-
puts "Error: #{s}"
|
64
|
-
end
|
56
|
+
'extra-sfa-rear-units.xml' => 'base-sfa.xml',
|
57
|
+
'extra-sfa-exterior-corridor.xml' => 'base-sfa.xml',
|
65
58
|
|
66
|
-
|
59
|
+
'extra-sfa-slab-middle.xml' => 'extra-sfa-slab.xml',
|
60
|
+
'extra-sfa-slab-right.xml' => 'extra-sfa-slab.xml',
|
61
|
+
'extra-sfa-vented-crawlspace-middle.xml' => 'extra-sfa-vented-crawlspace.xml',
|
62
|
+
'extra-sfa-vented-crawlspace-right.xml' => 'extra-sfa-vented-crawlspace.xml',
|
63
|
+
'extra-sfa-unvented-crawlspace-middle.xml' => 'extra-sfa-unvented-crawlspace.xml',
|
64
|
+
'extra-sfa-unvented-crawlspace-right.xml' => 'extra-sfa-unvented-crawlspace.xml',
|
65
|
+
'extra-sfa-unconditioned-basement-middle.xml' => 'extra-sfa-unconditioned-basement.xml',
|
66
|
+
'extra-sfa-unconditioned-basement-right.xml' => 'extra-sfa-unconditioned-basement.xml',
|
67
67
|
|
68
|
-
|
69
|
-
|
70
|
-
|
68
|
+
'extra-mf-slab.xml' => 'base-mf.xml',
|
69
|
+
'extra-mf-vented-crawlspace.xml' => 'base-mf.xml',
|
70
|
+
'extra-mf-unvented-crawlspace.xml' => 'base-mf.xml',
|
71
71
|
|
72
|
-
|
73
|
-
|
74
|
-
hpxml_path = step['arguments']['hpxml_path']
|
75
|
-
begin
|
76
|
-
_check_hpxmls(workflow_dir, built_dir, test_dir, hpxml_path)
|
77
|
-
rescue Exception => e
|
78
|
-
puts "#{e}\n#{e.backtrace.join('\n')}"
|
79
|
-
fail = true
|
80
|
-
end
|
81
|
-
end
|
82
|
-
break if fail # FIXME: Temporary
|
83
|
-
end
|
72
|
+
'extra-mf-rear-units.xml' => 'base-mf.xml',
|
73
|
+
'extra-mf-exterior-corridor.xml' => 'base-mf.xml',
|
84
74
|
|
85
|
-
|
86
|
-
|
75
|
+
'extra-mf-slab-left-bottom.xml' => 'extra-mf-slab.xml',
|
76
|
+
'extra-mf-slab-left-middle.xml' => 'extra-mf-slab.xml',
|
77
|
+
'extra-mf-slab-left-top.xml' => 'extra-mf-slab.xml',
|
78
|
+
'extra-mf-slab-middle-bottom.xml' => 'extra-mf-slab.xml',
|
79
|
+
'extra-mf-slab-middle-middle.xml' => 'extra-mf-slab.xml',
|
80
|
+
'extra-mf-slab-middle-top.xml' => 'extra-mf-slab.xml',
|
81
|
+
'extra-mf-slab-right-bottom.xml' => 'extra-mf-slab.xml',
|
82
|
+
'extra-mf-slab-right-middle.xml' => 'extra-mf-slab.xml',
|
83
|
+
'extra-mf-slab-right-top.xml' => 'extra-mf-slab.xml',
|
84
|
+
'extra-mf-vented-crawlspace-left-bottom.xml' => 'extra-mf-vented-crawlspace.xml',
|
85
|
+
'extra-mf-vented-crawlspace-left-middle.xml' => 'extra-mf-vented-crawlspace.xml',
|
86
|
+
'extra-mf-vented-crawlspace-left-top.xml' => 'extra-mf-vented-crawlspace.xml',
|
87
|
+
'extra-mf-vented-crawlspace-middle-bottom.xml' => 'extra-mf-vented-crawlspace.xml',
|
88
|
+
'extra-mf-vented-crawlspace-middle-middle.xml' => 'extra-mf-vented-crawlspace.xml',
|
89
|
+
'extra-mf-vented-crawlspace-middle-top.xml' => 'extra-mf-vented-crawlspace.xml',
|
90
|
+
'extra-mf-vented-crawlspace-right-bottom.xml' => 'extra-mf-vented-crawlspace.xml',
|
91
|
+
'extra-mf-vented-crawlspace-right-middle.xml' => 'extra-mf-vented-crawlspace.xml',
|
92
|
+
'extra-mf-vented-crawlspace-right-top.xml' => 'extra-mf-vented-crawlspace.xml',
|
93
|
+
'extra-mf-unvented-crawlspace-left-bottom.xml' => 'extra-mf-unvented-crawlspace.xml',
|
94
|
+
'extra-mf-unvented-crawlspace-left-middle.xml' => 'extra-mf-unvented-crawlspace.xml',
|
95
|
+
'extra-mf-unvented-crawlspace-left-top.xml' => 'extra-mf-unvented-crawlspace.xml',
|
96
|
+
'extra-mf-unvented-crawlspace-middle-bottom.xml' => 'extra-mf-unvented-crawlspace.xml',
|
97
|
+
'extra-mf-unvented-crawlspace-middle-middle.xml' => 'extra-mf-unvented-crawlspace.xml',
|
98
|
+
'extra-mf-unvented-crawlspace-middle-top.xml' => 'extra-mf-unvented-crawlspace.xml',
|
99
|
+
'extra-mf-unvented-crawlspace-right-bottom.xml' => 'extra-mf-unvented-crawlspace.xml',
|
100
|
+
'extra-mf-unvented-crawlspace-right-middle.xml' => 'extra-mf-unvented-crawlspace.xml',
|
101
|
+
'extra-mf-unvented-crawlspace-right-top.xml' => 'extra-mf-unvented-crawlspace.xml',
|
87
102
|
|
88
|
-
|
89
|
-
|
103
|
+
'extra-mf-slab-rear-units.xml' => 'extra-mf-slab.xml',
|
104
|
+
'extra-mf-vented-crawlspace-rear-units.xml' => 'extra-mf-vented-crawlspace.xml',
|
105
|
+
'extra-mf-unvented-crawlspace-rear-units.xml' => 'extra-mf-unvented-crawlspace.xml',
|
106
|
+
'extra-mf-slab-left-bottom-rear-units.xml' => 'extra-mf-slab-left-bottom.xml',
|
107
|
+
'extra-mf-slab-left-middle-rear-units.xml' => 'extra-mf-slab-left-middle.xml',
|
108
|
+
'extra-mf-slab-left-top-rear-units.xml' => 'extra-mf-slab-left-top.xml',
|
109
|
+
'extra-mf-slab-middle-bottom-rear-units.xml' => 'extra-mf-slab-middle-bottom.xml',
|
110
|
+
'extra-mf-slab-middle-middle-rear-units.xml' => 'extra-mf-slab-middle-middle.xml',
|
111
|
+
'extra-mf-slab-middle-top-rear-units.xml' => 'extra-mf-slab-middle-top.xml',
|
112
|
+
'extra-mf-slab-right-bottom-rear-units.xml' => 'extra-mf-slab-right-bottom.xml',
|
113
|
+
'extra-mf-slab-right-middle-rear-units.xml' => 'extra-mf-slab-right-middle.xml',
|
114
|
+
'extra-mf-slab-right-top-rear-units.xml' => 'extra-mf-slab-right-top.xml',
|
115
|
+
'extra-mf-vented-crawlspace-left-bottom-rear-units.xml' => 'extra-mf-vented-crawlspace-left-bottom.xml',
|
116
|
+
'extra-mf-vented-crawlspace-left-middle-rear-units.xml' => 'extra-mf-vented-crawlspace-left-middle.xml',
|
117
|
+
'extra-mf-vented-crawlspace-left-top-rear-units.xml' => 'extra-mf-vented-crawlspace-left-top.xml',
|
118
|
+
'extra-mf-vented-crawlspace-middle-bottom-rear-units.xml' => 'extra-mf-vented-crawlspace-middle-bottom.xml',
|
119
|
+
'extra-mf-vented-crawlspace-middle-middle-rear-units.xml' => 'extra-mf-vented-crawlspace-middle-middle.xml',
|
120
|
+
'extra-mf-vented-crawlspace-middle-top-rear-units.xml' => 'extra-mf-vented-crawlspace-middle-top.xml',
|
121
|
+
'extra-mf-vented-crawlspace-right-bottom-rear-units.xml' => 'extra-mf-vented-crawlspace-right-bottom.xml',
|
122
|
+
'extra-mf-vented-crawlspace-right-middle-rear-units.xml' => 'extra-mf-vented-crawlspace-right-middle.xml',
|
123
|
+
'extra-mf-vented-crawlspace-right-top-rear-units.xml' => 'extra-mf-vented-crawlspace-right-top.xml',
|
124
|
+
'extra-mf-unvented-crawlspace-left-bottom-rear-units.xml' => 'extra-mf-unvented-crawlspace-left-bottom.xml',
|
125
|
+
'extra-mf-unvented-crawlspace-left-middle-rear-units.xml' => 'extra-mf-unvented-crawlspace-left-middle.xml',
|
126
|
+
'extra-mf-unvented-crawlspace-left-top-rear-units.xml' => 'extra-mf-unvented-crawlspace-left-top.xml',
|
127
|
+
'extra-mf-unvented-crawlspace-middle-bottom-rear-units.xml' => 'extra-mf-unvented-crawlspace-middle-bottom.xml',
|
128
|
+
'extra-mf-unvented-crawlspace-middle-middle-rear-units.xml' => 'extra-mf-unvented-crawlspace-middle-middle.xml',
|
129
|
+
'extra-mf-unvented-crawlspace-middle-top-rear-units.xml' => 'extra-mf-unvented-crawlspace-middle-top.xml',
|
130
|
+
'extra-mf-unvented-crawlspace-right-bottom-rear-units.xml' => 'extra-mf-unvented-crawlspace-right-bottom.xml',
|
131
|
+
'extra-mf-unvented-crawlspace-right-middle-rear-units.xml' => 'extra-mf-unvented-crawlspace-right-middle.xml',
|
132
|
+
'extra-mf-unvented-crawlspace-right-top-rear-units.xml' => 'extra-mf-unvented-crawlspace-right-top.xml',
|
90
133
|
|
91
|
-
|
134
|
+
'error-heating-system-and-heat-pump.xml' => 'base-sfd.xml',
|
135
|
+
'error-cooling-system-and-heat-pump.xml' => 'base-sfd.xml',
|
136
|
+
'error-non-integer-geometry-num-bathrooms.xml' => 'base-sfd.xml',
|
137
|
+
'error-non-integer-ceiling-fan-quantity.xml' => 'base-sfd.xml',
|
138
|
+
'error-sfd-conditioned-basement-zero-foundation-height.xml' => 'base-sfd.xml',
|
139
|
+
'error-sfd-adiabatic-walls.xml' => 'base-sfd.xml',
|
140
|
+
'error-sfa-ambient.xml' => 'base-sfa.xml',
|
141
|
+
'error-mf-bottom-crawlspace-zero-foundation-height.xml' => 'base-mf.xml',
|
142
|
+
'error-ducts-location-and-areas-not-same-type.xml' => 'base-sfd.xml',
|
143
|
+
'error-second-heating-system-serves-total-heat-load.xml' => 'base-sfd.xml',
|
144
|
+
'error-second-heating-system-but-no-primary-heating.xml' => 'base-sfd.xml',
|
145
|
+
'error-sfa-no-building-num-units.xml' => 'base-sfa.xml',
|
146
|
+
'error-sfa-above-apartment.xml' => 'base-sfa.xml',
|
147
|
+
'error-sfa-below-apartment.xml' => 'base-sfa.xml',
|
148
|
+
'error-sfa-all-adiabatic-walls.xml' => 'base-sfa.xml',
|
149
|
+
'error-mf-no-building-num-units.xml' => 'base-mf.xml',
|
150
|
+
'error-mf-all-adiabatic-walls.xml' => 'base-mf.xml',
|
151
|
+
'error-mf-two-stories.xml' => 'base-mf.xml',
|
152
|
+
'error-dhw-indirect-without-boiler.xml' => 'base-sfd.xml',
|
153
|
+
'error-foundation-wall-insulation-greater-than-height.xml' => 'base-sfd.xml',
|
154
|
+
'error-conditioned-attic-with-one-floor-above-grade.xml' => 'base-sfd.xml',
|
155
|
+
'error-zero-number-of-bedrooms.xml' => 'base-sfd.xml',
|
156
|
+
'error-sfd-with-shared-system.xml' => 'base-sfd.xml',
|
157
|
+
'error-rim-joist-height-but-no-assembly-r.xml' => 'base-sfd.xml',
|
158
|
+
'error-rim-joist-assembly-r-but-no-height.xml' => 'base-sfd.xml',
|
92
159
|
|
93
|
-
|
94
|
-
|
95
|
-
|
96
|
-
|
97
|
-
|
160
|
+
'warning-non-electric-heat-pump-water-heater.xml' => 'base-sfd.xml',
|
161
|
+
'warning-sfd-slab-non-zero-foundation-height.xml' => 'base-sfd.xml',
|
162
|
+
'warning-mf-bottom-slab-non-zero-foundation-height.xml' => 'base-mf.xml',
|
163
|
+
'warning-slab-non-zero-foundation-height-above-grade.xml' => 'base-sfd.xml',
|
164
|
+
'warning-second-heating-system-serves-majority-heat.xml' => 'base-sfd.xml',
|
165
|
+
'warning-vented-crawlspace-with-wall-and-ceiling-insulation.xml' => 'base-sfd.xml',
|
166
|
+
'warning-unvented-crawlspace-with-wall-and-ceiling-insulation.xml' => 'base-sfd.xml',
|
167
|
+
'warning-unconditioned-basement-with-wall-and-ceiling-insulation.xml' => 'base-sfd.xml',
|
168
|
+
'warning-vented-attic-with-floor-and-roof-insulation.xml' => 'base-sfd.xml',
|
169
|
+
'warning-unvented-attic-with-floor-and-roof-insulation.xml' => 'base-sfd.xml',
|
170
|
+
'warning-conditioned-basement-with-ceiling-insulation.xml' => 'base-sfd.xml',
|
171
|
+
'warning-conditioned-attic-with-floor-insulation.xml' => 'base-sfd.xml',
|
172
|
+
'warning-multipliers-without-tv-plug-loads.xml' => 'base-sfd.xml',
|
173
|
+
'warning-multipliers-without-other-plug-loads.xml' => 'base-sfd.xml',
|
174
|
+
'warning-multipliers-without-well-pump-plug-loads.xml' => 'base-sfd.xml',
|
175
|
+
'warning-multipliers-without-vehicle-plug-loads.xml' => 'base-sfd.xml',
|
176
|
+
'warning-multipliers-without-fuel-loads.xml' => 'base-sfd.xml',
|
177
|
+
}
|
98
178
|
|
99
|
-
|
100
|
-
'
|
101
|
-
'
|
102
|
-
'
|
103
|
-
'
|
104
|
-
'
|
105
|
-
'
|
106
|
-
'
|
107
|
-
'
|
108
|
-
'
|
109
|
-
'
|
110
|
-
'
|
111
|
-
'
|
112
|
-
'
|
113
|
-
'
|
114
|
-
'
|
115
|
-
'
|
116
|
-
'
|
179
|
+
expected_errors = {
|
180
|
+
'error-heating-system-and-heat-pump.xml' => 'heating_system_type=Furnace and heat_pump_type=air-to-air',
|
181
|
+
'error-cooling-system-and-heat-pump.xml' => 'cooling_system_type=central air conditioner and heat_pump_type=air-to-air',
|
182
|
+
'error-non-integer-geometry-num-bathrooms.xml' => 'geometry_unit_num_bathrooms=1.5',
|
183
|
+
'error-non-integer-ceiling-fan-quantity.xml' => 'ceiling_fan_quantity=0.5',
|
184
|
+
'error-sfd-conditioned-basement-zero-foundation-height.xml' => 'geometry_unit_type=single-family detached and geometry_foundation_type=ConditionedBasement and geometry_foundation_height=0.0',
|
185
|
+
'error-sfd-adiabatic-walls.xml' => 'No adiabatic surfaces can be applied to single-family detached homes',
|
186
|
+
'error-sfa-ambient.xml' => 'geometry_unit_type=single-family attached and geometry_foundation_type=Ambient',
|
187
|
+
'error-mf-conditioned-basement' => 'geometry_unit_type=apartment unit and geometry_foundation_type=ConditionedBasement',
|
188
|
+
'error-mf-conditioned-crawlspace' => 'geometry_unit_type=apartment unit and geometry_foundation_type=ConditionedCrawlspace',
|
189
|
+
'error-mf-bottom-crawlspace-zero-foundation-height.xml' => 'geometry_unit_type=apartment unit and geometry_foundation_type=UnventedCrawlspace and geometry_foundation_height=0.0',
|
190
|
+
'error-ducts-location-and-areas-not-same-type.xml' => 'ducts_supply_location=auto and ducts_supply_surface_area=150.0 and ducts_return_location=attic - unvented and ducts_return_surface_area=50.0',
|
191
|
+
'error-second-heating-system-serves-total-heat-load.xml' => 'heating_system_2_type=Fireplace and heating_system_2_fraction_heat_load_served=1.0',
|
192
|
+
'error-second-heating-system-but-no-primary-heating.xml' => 'heating_system_type=none and heat_pump_type=none and heating_system_2_type=Fireplace',
|
193
|
+
'error-sfa-no-building-num-units.xml' => 'geometry_unit_type=single-family attached and geometry_building_num_units=not provided',
|
194
|
+
'error-sfa-above-apartment.xml' => 'Single-family attached buildings cannot be above another unit',
|
195
|
+
'error-sfa-below-apartment.xml' => 'Single-family attached buildings cannot be below another unit',
|
196
|
+
'error-sfa-all-adiabatic-walls.xml' => 'At least one wall must be set to non-adiabatic',
|
197
|
+
'error-mf-no-building-num-units.xml' => 'geometry_unit_type=apartment unit and geometry_building_num_units=not provided',
|
198
|
+
'error-mf-all-adiabatic-walls.xml' => 'At least one wall must be set to non-adiabatic',
|
199
|
+
'error-mf-two-stories.xml' => 'Apartment units can only have one above grade floor',
|
200
|
+
'error-dhw-indirect-without-boiler.xml' => 'water_heater_type=space-heating boiler with storage tank and heating_system_type=Furnace',
|
201
|
+
'error-conditioned-attic-with-one-floor-above-grade.xml' => 'geometry_unit_num_floors_above_grade=1 and geometry_attic_type=ConditionedAttic',
|
202
|
+
'error-zero-number-of-bedrooms.xml' => 'geometry_unit_num_bedrooms=0',
|
203
|
+
'error-sfd-with-shared-system.xml' => 'geometry_unit_type=single-family detached and heating_system_type=Shared Boiler w/ Baseboard',
|
204
|
+
'error-rim-joist-height-but-no-assembly-r.xml' => 'geometry_rim_joist_height=9.25 and rim_joist_assembly_r=not provided',
|
205
|
+
'error-rim-joist-assembly-r-but-no-height.xml' => 'rim_joist_assembly_r=23.0 and geometry_rim_joist_height=not provided',
|
117
206
|
}
|
118
207
|
|
119
|
-
|
120
|
-
'
|
121
|
-
'
|
122
|
-
'non-
|
123
|
-
'non-
|
124
|
-
'
|
125
|
-
'
|
126
|
-
'
|
127
|
-
'
|
128
|
-
'
|
129
|
-
'
|
130
|
-
'
|
131
|
-
'
|
132
|
-
'
|
133
|
-
'
|
134
|
-
'
|
135
|
-
'
|
136
|
-
'
|
208
|
+
expected_warnings = {
|
209
|
+
'warning-non-electric-heat-pump-water-heater.xml' => 'water_heater_type=heat pump water heater and water_heater_fuel_type=natural gas',
|
210
|
+
'warning-sfd-slab-non-zero-foundation-height.xml' => 'geometry_unit_type=single-family detached and geometry_foundation_type=SlabOnGrade and geometry_foundation_height=8.0',
|
211
|
+
'warning-mf-bottom-slab-non-zero-foundation-height.xml' => 'geometry_unit_type=apartment unit and geometry_foundation_type=SlabOnGrade and geometry_foundation_height=8.0',
|
212
|
+
'warning-slab-non-zero-foundation-height-above-grade.xml' => 'geometry_foundation_type=SlabOnGrade and geometry_foundation_height_above_grade=1.0',
|
213
|
+
'warning-second-heating-system-serves-majority-heat.xml' => 'heating_system_2_type=Fireplace and heating_system_2_fraction_heat_load_served=0.6',
|
214
|
+
'warning-vented-crawlspace-with-wall-and-ceiling-insulation.xml' => 'geometry_foundation_type=VentedCrawlspace and foundation_wall_insulation_r=8.9 and foundation_wall_assembly_r=10.0 and floor_over_foundation_assembly_r=10.0',
|
215
|
+
'warning-unvented-crawlspace-with-wall-and-ceiling-insulation.xml' => 'geometry_foundation_type=UnventedCrawlspace and foundation_wall_insulation_r=8.9 and foundation_wall_assembly_r=10.0 and floor_over_foundation_assembly_r=10.0',
|
216
|
+
'warning-unconditioned-basement-with-wall-and-ceiling-insulation.xml' => 'geometry_foundation_type=UnconditionedBasement and foundation_wall_insulation_r=8.9 and foundation_wall_assembly_r=10.0 and floor_over_foundation_assembly_r=10.0',
|
217
|
+
'warning-vented-attic-with-floor-and-roof-insulation.xml' => 'geometry_attic_type=VentedAttic and ceiling_assembly_r=39.3 and roof_assembly_r=10.0',
|
218
|
+
'warning-unvented-attic-with-floor-and-roof-insulation.xml' => 'geometry_attic_type=UnventedAttic and ceiling_assembly_r=39.3 and roof_assembly_r=10.0',
|
219
|
+
'warning-conditioned-basement-with-ceiling-insulation.xml' => 'geometry_foundation_type=ConditionedBasement and floor_over_foundation_assembly_r=10.0',
|
220
|
+
'warning-conditioned-attic-with-floor-insulation.xml' => 'geometry_attic_type=ConditionedAttic and ceiling_assembly_r=39.3',
|
221
|
+
'warning-multipliers-without-tv-plug-loads.xml' => 'misc_plug_loads_television_annual_kwh=0.0 and misc_plug_loads_television_usage_multiplier=1.0',
|
222
|
+
'warning-multipliers-without-other-plug-loads.xml' => 'misc_plug_loads_other_annual_kwh=0.0 and misc_plug_loads_other_usage_multiplier=1.0',
|
223
|
+
'warning-multipliers-without-well-pump-plug-loads.xml' => 'misc_plug_loads_well_pump_annual_kwh=0.0 and misc_plug_loads_well_pump_usage_multiplier=1.0',
|
224
|
+
'warning-multipliers-without-vehicle-plug-loads.xml' => 'misc_plug_loads_vehicle_annual_kwh=0.0 and misc_plug_loads_vehicle_usage_multiplier=1.0',
|
225
|
+
'warning-multipliers-without-fuel-loads.xml' => 'misc_fuel_loads_grill_present=false and misc_fuel_loads_grill_usage_multiplier=1.0 and misc_fuel_loads_lighting_present=false and misc_fuel_loads_lighting_usage_multiplier=1.0 and misc_fuel_loads_fireplace_present=false and misc_fuel_loads_fireplace_usage_multiplier=1.0',
|
137
226
|
}
|
138
227
|
|
139
|
-
|
140
|
-
|
141
|
-
puts "\nTesting #{File.basename(osw)}..."
|
142
|
-
|
143
|
-
_setup(this_dir)
|
144
|
-
osw_hash = JSON.parse(File.read(osw))
|
145
|
-
measures_dir = File.join(File.dirname(__FILE__), osw_hash['measure_paths'][0])
|
146
|
-
osw_hash['steps'].each do |step|
|
147
|
-
measures[step['measure_dir_name']] = [step['arguments']]
|
148
|
-
model = OpenStudio::Model::Model.new
|
149
|
-
runner = OpenStudio::Measure::OSRunner.new(OpenStudio::WorkflowJSON.new)
|
150
|
-
|
151
|
-
# Apply measure
|
152
|
-
success = apply_measures(measures_dir, measures, runner, model)
|
153
|
-
|
154
|
-
# Report warnings/errors
|
155
|
-
if Gem::Specification::find_all_by_name('nokogiri').any?
|
156
|
-
assert(runner.result.stepWarnings.length > 0 || runner.result.stepErrors.length > 0)
|
157
|
-
else
|
158
|
-
assert(runner.result.stepWarnings.length > 1 || runner.result.stepErrors.length > 0)
|
159
|
-
end
|
160
|
-
runner.result.stepWarnings.each do |s|
|
161
|
-
next if s.include? 'nokogiri'
|
228
|
+
hpxmls_files.each_with_index do |(hpxml_file, parent), i|
|
229
|
+
puts "[#{i + 1}/#{hpxmls_files.size}] Testing #{hpxml_file}..."
|
162
230
|
|
163
|
-
|
164
|
-
|
231
|
+
begin
|
232
|
+
all_hpxml_files = [hpxml_file]
|
233
|
+
unless parent.nil?
|
234
|
+
all_hpxml_files.unshift(parent)
|
165
235
|
end
|
166
|
-
|
167
|
-
|
168
|
-
|
236
|
+
while not parent.nil?
|
237
|
+
next unless hpxmls_files.keys.include? parent
|
238
|
+
|
239
|
+
unless hpxmls_files[parent].nil?
|
240
|
+
all_hpxml_files.unshift(hpxmls_files[parent])
|
241
|
+
end
|
242
|
+
parent = hpxmls_files[parent]
|
169
243
|
end
|
170
244
|
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
assert(success)
|
245
|
+
args = {}
|
246
|
+
all_hpxml_files.each do |f|
|
247
|
+
_set_measure_argument_values(f, args)
|
175
248
|
end
|
249
|
+
|
250
|
+
File.delete(args['hpxml_path']) if File.exist? args['hpxml_path']
|
251
|
+
_test_measure(args, expected_errors[hpxml_file], expected_warnings[hpxml_file])
|
252
|
+
File.delete(args['hpxml_path']) if File.exist? args['hpxml_path']
|
253
|
+
rescue Exception => e
|
254
|
+
puts "\n#{e}\n#{e.backtrace.join('\n')}"
|
255
|
+
puts "\nError: Did not successfully generate #{hpxml_file}."
|
256
|
+
exit!
|
176
257
|
end
|
177
258
|
end
|
178
259
|
end
|
179
260
|
|
180
261
|
private
|
181
262
|
|
182
|
-
def
|
183
|
-
|
184
|
-
test_dir = ''
|
185
|
-
end
|
263
|
+
def _set_measure_argument_values(hpxml_file, args)
|
264
|
+
args['hpxml_path'] = File.absolute_path(File.join(File.dirname(__FILE__), hpxml_file))
|
186
265
|
|
187
|
-
|
188
|
-
|
189
|
-
'
|
190
|
-
|
266
|
+
# Base
|
267
|
+
if ['base-sfd.xml'].include? hpxml_file
|
268
|
+
args['simulation_control_timestep'] = 60
|
269
|
+
args['weather_station_epw_filepath'] = 'USA_CO_Denver.Intl.AP.725650_TMY3.epw'
|
270
|
+
args['site_type'] = HPXML::SiteTypeSuburban
|
271
|
+
args['geometry_unit_type'] = HPXML::ResidentialTypeSFD
|
272
|
+
args['geometry_unit_cfa'] = 2700.0
|
273
|
+
args['geometry_unit_num_floors_above_grade'] = 1
|
274
|
+
args['geometry_average_ceiling_height'] = 8.0
|
275
|
+
args['geometry_unit_orientation'] = 180.0
|
276
|
+
args['geometry_unit_aspect_ratio'] = 1.5
|
277
|
+
args['geometry_garage_width'] = 0.0
|
278
|
+
args['geometry_garage_depth'] = 20.0
|
279
|
+
args['geometry_garage_protrusion'] = 0.0
|
280
|
+
args['geometry_garage_position'] = 'Right'
|
281
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeBasementConditioned
|
282
|
+
args['geometry_foundation_height'] = 8.0
|
283
|
+
args['geometry_foundation_height_above_grade'] = 1.0
|
284
|
+
args['geometry_rim_joist_height'] = 9.25
|
285
|
+
args['geometry_roof_type'] = 'gable'
|
286
|
+
args['geometry_roof_pitch'] = '6:12'
|
287
|
+
args['geometry_attic_type'] = HPXML::AtticTypeUnvented
|
288
|
+
args['geometry_eaves_depth'] = 0
|
289
|
+
args['geometry_unit_num_bedrooms'] = 3
|
290
|
+
args['geometry_unit_num_bathrooms'] = 2
|
291
|
+
args['geometry_unit_num_occupants'] = 3
|
292
|
+
args['geometry_has_flue_or_chimney'] = Constants.Auto
|
293
|
+
args['floor_over_foundation_assembly_r'] = 0
|
294
|
+
args['floor_over_garage_assembly_r'] = 0
|
295
|
+
args['foundation_wall_insulation_r'] = 8.9
|
296
|
+
args['foundation_wall_insulation_distance_to_top'] = 0.0
|
297
|
+
args['foundation_wall_insulation_distance_to_bottom'] = 8.0
|
298
|
+
args['foundation_wall_thickness'] = 8.0
|
299
|
+
args['rim_joist_assembly_r'] = 23.0
|
300
|
+
args['slab_perimeter_insulation_r'] = 0
|
301
|
+
args['slab_perimeter_depth'] = 0
|
302
|
+
args['slab_under_insulation_r'] = 0
|
303
|
+
args['slab_under_width'] = 0
|
304
|
+
args['slab_thickness'] = 4.0
|
305
|
+
args['slab_carpet_fraction'] = 0.0
|
306
|
+
args['slab_carpet_r'] = 0.0
|
307
|
+
args['ceiling_assembly_r'] = 39.3
|
308
|
+
args['roof_material_type'] = HPXML::RoofTypeAsphaltShingles
|
309
|
+
args['roof_color'] = HPXML::ColorMedium
|
310
|
+
args['roof_assembly_r'] = 2.3
|
311
|
+
args['roof_radiant_barrier'] = false
|
312
|
+
args['roof_radiant_barrier_grade'] = 1
|
313
|
+
args['neighbor_front_distance'] = 0
|
314
|
+
args['neighbor_back_distance'] = 0
|
315
|
+
args['neighbor_left_distance'] = 0
|
316
|
+
args['neighbor_right_distance'] = 0
|
317
|
+
args['neighbor_front_height'] = Constants.Auto
|
318
|
+
args['neighbor_back_height'] = Constants.Auto
|
319
|
+
args['neighbor_left_height'] = Constants.Auto
|
320
|
+
args['neighbor_right_height'] = Constants.Auto
|
321
|
+
args['wall_type'] = HPXML::WallTypeWoodStud
|
322
|
+
args['wall_siding_type'] = HPXML::SidingTypeWood
|
323
|
+
args['wall_color'] = HPXML::ColorMedium
|
324
|
+
args['wall_assembly_r'] = 23
|
325
|
+
args['window_front_wwr'] = 0
|
326
|
+
args['window_back_wwr'] = 0
|
327
|
+
args['window_left_wwr'] = 0
|
328
|
+
args['window_right_wwr'] = 0
|
329
|
+
args['window_area_front'] = 108.0
|
330
|
+
args['window_area_back'] = 108.0
|
331
|
+
args['window_area_left'] = 72.0
|
332
|
+
args['window_area_right'] = 72.0
|
333
|
+
args['window_aspect_ratio'] = 1.333
|
334
|
+
args['window_fraction_operable'] = 0.67
|
335
|
+
args['window_ufactor'] = 0.33
|
336
|
+
args['window_shgc'] = 0.45
|
337
|
+
args['window_interior_shading_winter'] = 0.85
|
338
|
+
args['window_interior_shading_summer'] = 0.7
|
339
|
+
args['overhangs_front_depth'] = 0
|
340
|
+
args['overhangs_back_depth'] = 0
|
341
|
+
args['overhangs_left_depth'] = 0
|
342
|
+
args['overhangs_right_depth'] = 0
|
343
|
+
args['overhangs_front_distance_to_top_of_window'] = 0
|
344
|
+
args['overhangs_back_distance_to_top_of_window'] = 0
|
345
|
+
args['overhangs_left_distance_to_top_of_window'] = 0
|
346
|
+
args['overhangs_right_distance_to_top_of_window'] = 0
|
347
|
+
args['overhangs_front_distance_to_bottom_of_window'] = 0
|
348
|
+
args['overhangs_back_distance_to_bottom_of_window'] = 0
|
349
|
+
args['overhangs_left_distance_to_bottom_of_window'] = 0
|
350
|
+
args['overhangs_right_distance_to_bottom_of_window'] = 0
|
351
|
+
args['skylight_area_front'] = 0
|
352
|
+
args['skylight_area_back'] = 0
|
353
|
+
args['skylight_area_left'] = 0
|
354
|
+
args['skylight_area_right'] = 0
|
355
|
+
args['skylight_ufactor'] = 0.33
|
356
|
+
args['skylight_shgc'] = 0.45
|
357
|
+
args['door_area'] = 40.0
|
358
|
+
args['door_rvalue'] = 4.4
|
359
|
+
args['air_leakage_units'] = HPXML::UnitsACH
|
360
|
+
args['air_leakage_house_pressure'] = 50
|
361
|
+
args['air_leakage_value'] = 3
|
362
|
+
args['site_shielding_of_home'] = Constants.Auto
|
363
|
+
args['heating_system_type'] = HPXML::HVACTypeFurnace
|
364
|
+
args['heating_system_fuel'] = HPXML::FuelTypeNaturalGas
|
365
|
+
args['heating_system_heating_efficiency'] = 0.92
|
366
|
+
args['heating_system_heating_capacity'] = 36000.0
|
367
|
+
args['heating_system_fraction_heat_load_served'] = 1
|
368
|
+
args['cooling_system_type'] = HPXML::HVACTypeCentralAirConditioner
|
369
|
+
args['cooling_system_cooling_efficiency_type'] = HPXML::UnitsSEER
|
370
|
+
args['cooling_system_cooling_efficiency'] = 13.0
|
371
|
+
args['cooling_system_cooling_compressor_type'] = HPXML::HVACCompressorTypeSingleStage
|
372
|
+
args['cooling_system_cooling_sensible_heat_fraction'] = 0.73
|
373
|
+
args['cooling_system_cooling_capacity'] = 24000.0
|
374
|
+
args['cooling_system_fraction_cool_load_served'] = 1
|
375
|
+
args['cooling_system_is_ducted'] = false
|
376
|
+
args['heat_pump_type'] = 'none'
|
377
|
+
args['heat_pump_heating_efficiency_type'] = HPXML::UnitsHSPF
|
378
|
+
args['heat_pump_heating_efficiency'] = 7.7
|
379
|
+
args['heat_pump_cooling_efficiency_type'] = HPXML::UnitsSEER
|
380
|
+
args['heat_pump_cooling_efficiency'] = 13.0
|
381
|
+
args['heat_pump_cooling_compressor_type'] = HPXML::HVACCompressorTypeSingleStage
|
382
|
+
args['heat_pump_cooling_sensible_heat_fraction'] = 0.73
|
383
|
+
args['heat_pump_heating_capacity'] = 36000.0
|
384
|
+
args['heat_pump_heating_capacity_17_f'] = Constants.Auto
|
385
|
+
args['heat_pump_cooling_capacity'] = 36000.0
|
386
|
+
args['heat_pump_fraction_heat_load_served'] = 1
|
387
|
+
args['heat_pump_fraction_cool_load_served'] = 1
|
388
|
+
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeIntegrated
|
389
|
+
args['heat_pump_backup_fuel'] = HPXML::FuelTypeElectricity
|
390
|
+
args['heat_pump_backup_heating_efficiency'] = 1
|
391
|
+
args['heat_pump_backup_heating_capacity'] = 36000.0
|
392
|
+
args['hvac_control_type'] = HPXML::HVACControlTypeManual
|
393
|
+
args['hvac_control_heating_weekday_setpoint'] = 68
|
394
|
+
args['hvac_control_heating_weekend_setpoint'] = 68
|
395
|
+
args['hvac_control_cooling_weekday_setpoint'] = 78
|
396
|
+
args['hvac_control_cooling_weekend_setpoint'] = 78
|
397
|
+
args['ducts_leakage_units'] = HPXML::UnitsCFM25
|
398
|
+
args['ducts_supply_leakage_to_outside_value'] = 75.0
|
399
|
+
args['ducts_return_leakage_to_outside_value'] = 25.0
|
400
|
+
args['ducts_supply_insulation_r'] = 4.0
|
401
|
+
args['ducts_return_insulation_r'] = 0.0
|
402
|
+
args['ducts_supply_location'] = HPXML::LocationAtticUnvented
|
403
|
+
args['ducts_return_location'] = HPXML::LocationAtticUnvented
|
404
|
+
args['ducts_supply_surface_area'] = 150.0
|
405
|
+
args['ducts_return_surface_area'] = 50.0
|
406
|
+
args['ducts_number_of_return_registers'] = 2
|
407
|
+
args['heating_system_2_type'] = 'none'
|
408
|
+
args['heating_system_2_fuel'] = HPXML::FuelTypeElectricity
|
409
|
+
args['heating_system_2_heating_efficiency'] = 1.0
|
410
|
+
args['heating_system_2_heating_capacity'] = Constants.Auto
|
411
|
+
args['heating_system_2_fraction_heat_load_served'] = 0.25
|
412
|
+
args['mech_vent_fan_type'] = 'none'
|
413
|
+
args['mech_vent_flow_rate'] = 110
|
414
|
+
args['mech_vent_hours_in_operation'] = 24
|
415
|
+
args['mech_vent_recovery_efficiency_type'] = 'Unadjusted'
|
416
|
+
args['mech_vent_total_recovery_efficiency'] = 0.48
|
417
|
+
args['mech_vent_sensible_recovery_efficiency'] = 0.72
|
418
|
+
args['mech_vent_fan_power'] = 30
|
419
|
+
args['mech_vent_num_units_served'] = 1
|
420
|
+
args['mech_vent_2_fan_type'] = 'none'
|
421
|
+
args['mech_vent_2_flow_rate'] = 110
|
422
|
+
args['mech_vent_2_hours_in_operation'] = 24
|
423
|
+
args['mech_vent_2_recovery_efficiency_type'] = 'Unadjusted'
|
424
|
+
args['mech_vent_2_total_recovery_efficiency'] = 0.48
|
425
|
+
args['mech_vent_2_sensible_recovery_efficiency'] = 0.72
|
426
|
+
args['mech_vent_2_fan_power'] = 30
|
427
|
+
args['kitchen_fans_quantity'] = 0
|
428
|
+
args['bathroom_fans_quantity'] = 0
|
429
|
+
args['whole_house_fan_present'] = false
|
430
|
+
args['whole_house_fan_flow_rate'] = 4500
|
431
|
+
args['whole_house_fan_power'] = 300
|
432
|
+
args['water_heater_type'] = HPXML::WaterHeaterTypeStorage
|
433
|
+
args['water_heater_fuel_type'] = HPXML::FuelTypeElectricity
|
434
|
+
args['water_heater_location'] = HPXML::LocationLivingSpace
|
435
|
+
args['water_heater_tank_volume'] = 40
|
436
|
+
args['water_heater_efficiency_type'] = 'EnergyFactor'
|
437
|
+
args['water_heater_efficiency'] = 0.95
|
438
|
+
args['water_heater_recovery_efficiency'] = 0.76
|
439
|
+
args['water_heater_heating_capacity'] = 18767
|
440
|
+
args['water_heater_standby_loss'] = 0
|
441
|
+
args['water_heater_jacket_rvalue'] = 0
|
442
|
+
args['water_heater_setpoint_temperature'] = 125
|
443
|
+
args['water_heater_num_units_served'] = 1
|
444
|
+
args['hot_water_distribution_system_type'] = HPXML::DHWDistTypeStandard
|
445
|
+
args['hot_water_distribution_standard_piping_length'] = 50
|
446
|
+
args['hot_water_distribution_recirc_control_type'] = HPXML::DHWRecirControlTypeNone
|
447
|
+
args['hot_water_distribution_recirc_piping_length'] = 50
|
448
|
+
args['hot_water_distribution_recirc_branch_piping_length'] = 50
|
449
|
+
args['hot_water_distribution_recirc_pump_power'] = 50
|
450
|
+
args['hot_water_distribution_pipe_r'] = 0.0
|
451
|
+
args['dwhr_facilities_connected'] = 'none'
|
452
|
+
args['dwhr_equal_flow'] = true
|
453
|
+
args['dwhr_efficiency'] = 0.55
|
454
|
+
args['water_fixtures_shower_low_flow'] = true
|
455
|
+
args['water_fixtures_sink_low_flow'] = false
|
456
|
+
args['water_fixtures_usage_multiplier'] = 1.0
|
457
|
+
args['solar_thermal_system_type'] = 'none'
|
458
|
+
args['solar_thermal_collector_area'] = 40.0
|
459
|
+
args['solar_thermal_collector_loop_type'] = HPXML::SolarThermalLoopTypeDirect
|
460
|
+
args['solar_thermal_collector_type'] = HPXML::SolarThermalTypeEvacuatedTube
|
461
|
+
args['solar_thermal_collector_azimuth'] = 180
|
462
|
+
args['solar_thermal_collector_tilt'] = 20
|
463
|
+
args['solar_thermal_collector_rated_optical_efficiency'] = 0.5
|
464
|
+
args['solar_thermal_collector_rated_thermal_losses'] = 0.2799
|
465
|
+
args['solar_thermal_storage_volume'] = Constants.Auto
|
466
|
+
args['solar_thermal_solar_fraction'] = 0
|
467
|
+
args['pv_system_module_type'] = 'none'
|
468
|
+
args['pv_system_location'] = Constants.Auto
|
469
|
+
args['pv_system_tracking'] = Constants.Auto
|
470
|
+
args['pv_system_array_azimuth'] = 180
|
471
|
+
args['pv_system_array_tilt'] = 20
|
472
|
+
args['pv_system_max_power_output'] = 4000
|
473
|
+
args['pv_system_inverter_efficiency'] = 0.96
|
474
|
+
args['pv_system_system_losses_fraction'] = 0.14
|
475
|
+
args['pv_system_num_bedrooms_served'] = 3
|
476
|
+
args['pv_system_2_module_type'] = 'none'
|
477
|
+
args['pv_system_2_location'] = Constants.Auto
|
478
|
+
args['pv_system_2_tracking'] = Constants.Auto
|
479
|
+
args['pv_system_2_array_azimuth'] = 180
|
480
|
+
args['pv_system_2_array_tilt'] = 20
|
481
|
+
args['pv_system_2_max_power_output'] = 4000
|
482
|
+
args['lighting_interior_fraction_cfl'] = 0.4
|
483
|
+
args['lighting_interior_fraction_lfl'] = 0.1
|
484
|
+
args['lighting_interior_fraction_led'] = 0.25
|
485
|
+
args['lighting_interior_usage_multiplier'] = 1.0
|
486
|
+
args['lighting_exterior_fraction_cfl'] = 0.4
|
487
|
+
args['lighting_exterior_fraction_lfl'] = 0.1
|
488
|
+
args['lighting_exterior_fraction_led'] = 0.25
|
489
|
+
args['lighting_exterior_usage_multiplier'] = 1.0
|
490
|
+
args['lighting_garage_fraction_cfl'] = 0.4
|
491
|
+
args['lighting_garage_fraction_lfl'] = 0.1
|
492
|
+
args['lighting_garage_fraction_led'] = 0.25
|
493
|
+
args['lighting_garage_usage_multiplier'] = 1.0
|
494
|
+
args['holiday_lighting_present'] = false
|
495
|
+
args['holiday_lighting_daily_kwh'] = Constants.Auto
|
496
|
+
args['dehumidifier_type'] = 'none'
|
497
|
+
args['dehumidifier_efficiency_type'] = 'EnergyFactor'
|
498
|
+
args['dehumidifier_efficiency'] = 1.8
|
499
|
+
args['dehumidifier_capacity'] = 40
|
500
|
+
args['dehumidifier_rh_setpoint'] = 0.5
|
501
|
+
args['dehumidifier_fraction_dehumidification_load_served'] = 1
|
502
|
+
args['clothes_washer_location'] = HPXML::LocationLivingSpace
|
503
|
+
args['clothes_washer_efficiency_type'] = 'IntegratedModifiedEnergyFactor'
|
504
|
+
args['clothes_washer_efficiency'] = 1.21
|
505
|
+
args['clothes_washer_rated_annual_kwh'] = 380.0
|
506
|
+
args['clothes_washer_label_electric_rate'] = 0.12
|
507
|
+
args['clothes_washer_label_gas_rate'] = 1.09
|
508
|
+
args['clothes_washer_label_annual_gas_cost'] = 27.0
|
509
|
+
args['clothes_washer_label_usage'] = 6.0
|
510
|
+
args['clothes_washer_capacity'] = 3.2
|
511
|
+
args['clothes_washer_usage_multiplier'] = 1.0
|
512
|
+
args['clothes_dryer_location'] = HPXML::LocationLivingSpace
|
513
|
+
args['clothes_dryer_fuel_type'] = HPXML::FuelTypeElectricity
|
514
|
+
args['clothes_dryer_efficiency_type'] = 'CombinedEnergyFactor'
|
515
|
+
args['clothes_dryer_efficiency'] = 3.73
|
516
|
+
args['clothes_dryer_vented_flow_rate'] = 150.0
|
517
|
+
args['clothes_dryer_usage_multiplier'] = 1.0
|
518
|
+
args['dishwasher_location'] = HPXML::LocationLivingSpace
|
519
|
+
args['dishwasher_efficiency_type'] = 'RatedAnnualkWh'
|
520
|
+
args['dishwasher_efficiency'] = 307
|
521
|
+
args['dishwasher_label_electric_rate'] = 0.12
|
522
|
+
args['dishwasher_label_gas_rate'] = 1.09
|
523
|
+
args['dishwasher_label_annual_gas_cost'] = 22.32
|
524
|
+
args['dishwasher_label_usage'] = 4.0
|
525
|
+
args['dishwasher_place_setting_capacity'] = 12
|
526
|
+
args['dishwasher_usage_multiplier'] = 1.0
|
527
|
+
args['refrigerator_location'] = HPXML::LocationLivingSpace
|
528
|
+
args['refrigerator_rated_annual_kwh'] = 650.0
|
529
|
+
args['refrigerator_usage_multiplier'] = 1.0
|
530
|
+
args['extra_refrigerator_location'] = 'none'
|
531
|
+
args['extra_refrigerator_rated_annual_kwh'] = Constants.Auto
|
532
|
+
args['extra_refrigerator_usage_multiplier'] = 1.0
|
533
|
+
args['freezer_location'] = 'none'
|
534
|
+
args['freezer_rated_annual_kwh'] = Constants.Auto
|
535
|
+
args['freezer_usage_multiplier'] = 1.0
|
536
|
+
args['cooking_range_oven_location'] = HPXML::LocationLivingSpace
|
537
|
+
args['cooking_range_oven_fuel_type'] = HPXML::FuelTypeElectricity
|
538
|
+
args['cooking_range_oven_is_induction'] = false
|
539
|
+
args['cooking_range_oven_is_convection'] = false
|
540
|
+
args['cooking_range_oven_usage_multiplier'] = 1.0
|
541
|
+
args['ceiling_fan_present'] = false
|
542
|
+
args['ceiling_fan_efficiency'] = Constants.Auto
|
543
|
+
args['ceiling_fan_quantity'] = Constants.Auto
|
544
|
+
args['ceiling_fan_cooling_setpoint_temp_offset'] = 0
|
545
|
+
args['misc_plug_loads_television_present'] = true
|
546
|
+
args['misc_plug_loads_television_annual_kwh'] = 620.0
|
547
|
+
args['misc_plug_loads_television_usage_multiplier'] = 1.0
|
548
|
+
args['misc_plug_loads_other_annual_kwh'] = 2457.0
|
549
|
+
args['misc_plug_loads_other_frac_sensible'] = 0.855
|
550
|
+
args['misc_plug_loads_other_frac_latent'] = 0.045
|
551
|
+
args['misc_plug_loads_other_usage_multiplier'] = 1.0
|
552
|
+
args['misc_plug_loads_well_pump_present'] = false
|
553
|
+
args['misc_plug_loads_well_pump_annual_kwh'] = Constants.Auto
|
554
|
+
args['misc_plug_loads_well_pump_usage_multiplier'] = 0.0
|
555
|
+
args['misc_plug_loads_vehicle_present'] = false
|
556
|
+
args['misc_plug_loads_vehicle_annual_kwh'] = Constants.Auto
|
557
|
+
args['misc_plug_loads_vehicle_usage_multiplier'] = 0.0
|
558
|
+
args['misc_fuel_loads_grill_present'] = false
|
559
|
+
args['misc_fuel_loads_grill_fuel_type'] = HPXML::FuelTypeNaturalGas
|
560
|
+
args['misc_fuel_loads_grill_annual_therm'] = Constants.Auto
|
561
|
+
args['misc_fuel_loads_grill_usage_multiplier'] = 0.0
|
562
|
+
args['misc_fuel_loads_lighting_present'] = false
|
563
|
+
args['misc_fuel_loads_lighting_fuel_type'] = HPXML::FuelTypeNaturalGas
|
564
|
+
args['misc_fuel_loads_lighting_annual_therm'] = Constants.Auto
|
565
|
+
args['misc_fuel_loads_lighting_usage_multiplier'] = 0.0
|
566
|
+
args['misc_fuel_loads_fireplace_present'] = false
|
567
|
+
args['misc_fuel_loads_fireplace_fuel_type'] = HPXML::FuelTypeNaturalGas
|
568
|
+
args['misc_fuel_loads_fireplace_annual_therm'] = Constants.Auto
|
569
|
+
args['misc_fuel_loads_fireplace_frac_sensible'] = Constants.Auto
|
570
|
+
args['misc_fuel_loads_fireplace_frac_latent'] = Constants.Auto
|
571
|
+
args['misc_fuel_loads_fireplace_usage_multiplier'] = 0.0
|
572
|
+
args['pool_present'] = false
|
573
|
+
args['pool_pump_annual_kwh'] = Constants.Auto
|
574
|
+
args['pool_pump_usage_multiplier'] = 1.0
|
575
|
+
args['pool_heater_type'] = HPXML::HeaterTypeElectricResistance
|
576
|
+
args['pool_heater_annual_kwh'] = Constants.Auto
|
577
|
+
args['pool_heater_annual_therm'] = Constants.Auto
|
578
|
+
args['pool_heater_usage_multiplier'] = 1.0
|
579
|
+
args['hot_tub_present'] = false
|
580
|
+
args['hot_tub_pump_annual_kwh'] = Constants.Auto
|
581
|
+
args['hot_tub_pump_usage_multiplier'] = 1.0
|
582
|
+
args['hot_tub_heater_type'] = HPXML::HeaterTypeElectricResistance
|
583
|
+
args['hot_tub_heater_annual_kwh'] = Constants.Auto
|
584
|
+
args['hot_tub_heater_annual_therm'] = Constants.Auto
|
585
|
+
args['hot_tub_heater_usage_multiplier'] = 1.0
|
586
|
+
elsif ['base-sfa.xml'].include? hpxml_file
|
587
|
+
args['geometry_unit_type'] = HPXML::ResidentialTypeSFA
|
588
|
+
args['geometry_unit_cfa'] = 1800.0
|
589
|
+
args['geometry_building_num_units'] = 3
|
590
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
591
|
+
args['window_front_wwr'] = 0.18
|
592
|
+
args['window_back_wwr'] = 0.18
|
593
|
+
args['window_left_wwr'] = 0.18
|
594
|
+
args['window_right_wwr'] = 0.18
|
595
|
+
args['window_area_front'] = 0
|
596
|
+
args['window_area_back'] = 0
|
597
|
+
args['window_area_left'] = 0
|
598
|
+
args['window_area_right'] = 0
|
599
|
+
elsif ['base-mf.xml'].include? hpxml_file
|
600
|
+
args['geometry_unit_type'] = HPXML::ResidentialTypeApartment
|
601
|
+
args['geometry_unit_cfa'] = 900.0
|
602
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeBasementUnconditioned
|
603
|
+
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
604
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeAboveApartment
|
605
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
606
|
+
args['geometry_building_num_units'] = 6
|
607
|
+
args['window_front_wwr'] = 0.18
|
608
|
+
args['window_back_wwr'] = 0.18
|
609
|
+
args['window_left_wwr'] = 0.18
|
610
|
+
args['window_right_wwr'] = 0.18
|
611
|
+
args['window_area_front'] = 0
|
612
|
+
args['window_area_back'] = 0
|
613
|
+
args['window_area_left'] = 0
|
614
|
+
args['window_area_right'] = 0
|
615
|
+
args['ducts_supply_leakage_to_outside_value'] = 0.0
|
616
|
+
args['ducts_return_leakage_to_outside_value'] = 0.0
|
617
|
+
args['ducts_supply_location'] = HPXML::LocationLivingSpace
|
618
|
+
args['ducts_return_location'] = HPXML::LocationLivingSpace
|
619
|
+
args['ducts_supply_insulation_r'] = 0.0
|
620
|
+
args['ducts_return_insulation_r'] = 0.0
|
621
|
+
args['ducts_number_of_return_registers'] = 1
|
622
|
+
args['door_area'] = 20.0
|
623
|
+
end
|
191
624
|
|
192
|
-
|
193
|
-
|
194
|
-
'
|
195
|
-
|
625
|
+
# Extras
|
626
|
+
if ['extra-auto.xml'].include? hpxml_file
|
627
|
+
args['geometry_unit_num_occupants'] = Constants.Auto
|
628
|
+
args['ducts_supply_location'] = Constants.Auto
|
629
|
+
args['ducts_return_location'] = Constants.Auto
|
630
|
+
args['ducts_supply_surface_area'] = Constants.Auto
|
631
|
+
args['ducts_return_surface_area'] = Constants.Auto
|
632
|
+
args['water_heater_location'] = Constants.Auto
|
633
|
+
args['water_heater_tank_volume'] = Constants.Auto
|
634
|
+
args['hot_water_distribution_standard_piping_length'] = Constants.Auto
|
635
|
+
args['clothes_washer_location'] = Constants.Auto
|
636
|
+
args['clothes_dryer_location'] = Constants.Auto
|
637
|
+
args['refrigerator_location'] = Constants.Auto
|
638
|
+
elsif ['extra-pv-roofpitch.xml'].include? hpxml_file
|
639
|
+
args['pv_system_module_type'] = HPXML::PVModuleTypeStandard
|
640
|
+
args['pv_system_2_module_type'] = HPXML::PVModuleTypeStandard
|
641
|
+
args['pv_system_array_tilt'] = 'roofpitch'
|
642
|
+
args['pv_system_2_array_tilt'] = 'roofpitch+15'
|
643
|
+
elsif ['extra-dhw-solar-latitude.xml'].include? hpxml_file
|
644
|
+
args['solar_thermal_system_type'] = HPXML::SolarThermalSystemType
|
645
|
+
args['solar_thermal_collector_tilt'] = 'latitude-15'
|
646
|
+
elsif ['extra-second-refrigerator.xml'].include? hpxml_file
|
647
|
+
args['extra_refrigerator_location'] = HPXML::LocationLivingSpace
|
648
|
+
elsif ['extra-second-heating-system-portable-heater-to-heating-system.xml'].include? hpxml_file
|
649
|
+
args['heating_system_fuel'] = HPXML::FuelTypeElectricity
|
650
|
+
args['heating_system_heating_capacity'] = 48000.0
|
651
|
+
args['heating_system_fraction_heat_load_served'] = 0.75
|
652
|
+
args['ducts_supply_leakage_to_outside_value'] = 0.0
|
653
|
+
args['ducts_return_leakage_to_outside_value'] = 0.0
|
654
|
+
args['ducts_supply_location'] = HPXML::LocationLivingSpace
|
655
|
+
args['ducts_return_location'] = HPXML::LocationLivingSpace
|
656
|
+
args['heating_system_2_type'] = HPXML::HVACTypePortableHeater
|
657
|
+
args['heating_system_2_heating_capacity'] = 16000.0
|
658
|
+
elsif ['extra-second-heating-system-fireplace-to-heating-system.xml'].include? hpxml_file
|
659
|
+
args['heating_system_type'] = HPXML::HVACTypeElectricResistance
|
660
|
+
args['heating_system_fuel'] = HPXML::FuelTypeElectricity
|
661
|
+
args['heating_system_heating_efficiency'] = 1.0
|
662
|
+
args['heating_system_heating_capacity'] = 48000.0
|
663
|
+
args['heating_system_fraction_heat_load_served'] = 0.75
|
664
|
+
args['cooling_system_type'] = 'none'
|
665
|
+
args['heating_system_2_type'] = HPXML::HVACTypeFireplace
|
666
|
+
args['heating_system_2_heating_capacity'] = 16000.0
|
667
|
+
elsif ['extra-second-heating-system-boiler-to-heating-system.xml'].include? hpxml_file
|
668
|
+
args['heating_system_type'] = HPXML::HVACTypeBoiler
|
669
|
+
args['heating_system_fraction_heat_load_served'] = 0.75
|
670
|
+
args['heating_system_2_type'] = HPXML::HVACTypeBoiler
|
671
|
+
elsif ['extra-second-heating-system-portable-heater-to-heat-pump.xml'].include? hpxml_file
|
672
|
+
args['heating_system_type'] = 'none'
|
673
|
+
args['cooling_system_type'] = 'none'
|
674
|
+
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpAirToAir
|
675
|
+
args['heat_pump_heating_capacity_17_f'] = 22680.0
|
676
|
+
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeIntegrated
|
677
|
+
args['heat_pump_backup_fuel'] = HPXML::FuelTypeElectricity
|
678
|
+
args['heat_pump_heating_capacity'] = 48000.0
|
679
|
+
args['heat_pump_fraction_heat_load_served'] = 0.75
|
680
|
+
args['ducts_supply_leakage_to_outside_value'] = 0.0
|
681
|
+
args['ducts_return_leakage_to_outside_value'] = 0.0
|
682
|
+
args['ducts_supply_location'] = HPXML::LocationLivingSpace
|
683
|
+
args['ducts_return_location'] = HPXML::LocationLivingSpace
|
684
|
+
args['heating_system_2_type'] = HPXML::HVACTypePortableHeater
|
685
|
+
args['heating_system_2_heating_capacity'] = 16000.0
|
686
|
+
elsif ['extra-second-heating-system-fireplace-to-heat-pump.xml'].include? hpxml_file
|
687
|
+
args['heating_system_type'] = 'none'
|
688
|
+
args['cooling_system_type'] = 'none'
|
689
|
+
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpMiniSplit
|
690
|
+
args['heat_pump_heating_efficiency'] = 10.0
|
691
|
+
args['heat_pump_cooling_efficiency'] = 19.0
|
692
|
+
args['heat_pump_heating_capacity'] = 48000.0
|
693
|
+
args['heat_pump_is_ducted'] = true
|
694
|
+
args['heat_pump_fraction_heat_load_served'] = 0.75
|
695
|
+
args['heating_system_2_type'] = HPXML::HVACTypeFireplace
|
696
|
+
args['heating_system_2_heating_capacity'] = 16000.0
|
697
|
+
elsif ['extra-second-heating-system-boiler-to-heat-pump.xml'].include? hpxml_file
|
698
|
+
args['heating_system_type'] = 'none'
|
699
|
+
args['cooling_system_type'] = 'none'
|
700
|
+
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpGroundToAir
|
701
|
+
args['heat_pump_heating_efficiency_type'] = HPXML::UnitsCOP
|
702
|
+
args['heat_pump_heating_efficiency'] = 3.6
|
703
|
+
args['heat_pump_cooling_efficiency_type'] = HPXML::UnitsEER
|
704
|
+
args['heat_pump_cooling_efficiency'] = 16.6
|
705
|
+
args['heat_pump_backup_type'] = HPXML::HeatPumpBackupTypeIntegrated
|
706
|
+
args['heat_pump_backup_fuel'] = HPXML::FuelTypeElectricity
|
707
|
+
args['heat_pump_fraction_heat_load_served'] = 0.75
|
708
|
+
args['heating_system_2_type'] = HPXML::HVACTypeBoiler
|
709
|
+
elsif ['extra-enclosure-windows-shading.xml'].include? hpxml_file
|
710
|
+
args['window_interior_shading_winter'] = 0.99
|
711
|
+
args['window_interior_shading_summer'] = 0.01
|
712
|
+
args['window_exterior_shading_winter'] = 0.9
|
713
|
+
args['window_exterior_shading_summer'] = 0.1
|
714
|
+
elsif ['extra-enclosure-garage-partially-protruded.xml'].include? hpxml_file
|
715
|
+
args['geometry_garage_width'] = 12
|
716
|
+
args['geometry_garage_protrusion'] = 0.5
|
717
|
+
elsif ['extra-enclosure-garage-atticroof-conditioned.xml'].include? hpxml_file
|
718
|
+
args['geometry_garage_width'] = 30.0
|
719
|
+
args['geometry_garage_protrusion'] = 1.0
|
720
|
+
args['window_area_front'] = 12.0
|
721
|
+
args['window_aspect_ratio'] = 5.0 / 1.5
|
722
|
+
args['geometry_unit_cfa'] = 4500.0
|
723
|
+
args['geometry_unit_num_floors_above_grade'] = 2
|
724
|
+
args['geometry_attic_type'] = HPXML::AtticTypeConditioned
|
725
|
+
args['floor_over_garage_assembly_r'] = 39.3
|
726
|
+
args['ducts_supply_location'] = HPXML::LocationGarage
|
727
|
+
args['ducts_return_location'] = HPXML::LocationGarage
|
728
|
+
elsif ['extra-enclosure-atticroof-conditioned-eaves-gable.xml'].include? hpxml_file
|
729
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeSlab
|
730
|
+
args['geometry_foundation_height'] = 0.0
|
731
|
+
args['geometry_foundation_height_above_grade'] = 0.0
|
732
|
+
args['foundation_wall_insulation_distance_to_bottom'] = Constants.Auto
|
733
|
+
args['geometry_unit_cfa'] = 4500.0
|
734
|
+
args['geometry_unit_num_floors_above_grade'] = 2
|
735
|
+
args['geometry_attic_type'] = HPXML::AtticTypeConditioned
|
736
|
+
args['geometry_eaves_depth'] = 2
|
737
|
+
args['ducts_supply_location'] = HPXML::LocationUnderSlab
|
738
|
+
args['ducts_return_location'] = HPXML::LocationUnderSlab
|
739
|
+
elsif ['extra-enclosure-atticroof-conditioned-eaves-hip.xml'].include? hpxml_file
|
740
|
+
args['geometry_roof_type'] = 'hip'
|
741
|
+
elsif ['extra-zero-refrigerator-kwh.xml'].include? hpxml_file
|
742
|
+
args['refrigerator_rated_annual_kwh'] = 0
|
743
|
+
elsif ['extra-zero-extra-refrigerator-kwh.xml'].include? hpxml_file
|
744
|
+
args['extra_refrigerator_rated_annual_kwh'] = 0
|
745
|
+
elsif ['extra-zero-freezer-kwh.xml'].include? hpxml_file
|
746
|
+
args['freezer_rated_annual_kwh'] = 0
|
747
|
+
elsif ['extra-zero-clothes-washer-kwh.xml'].include? hpxml_file
|
748
|
+
args['clothes_washer_rated_annual_kwh'] = 0
|
749
|
+
args['clothes_dryer_location'] = 'none'
|
750
|
+
elsif ['extra-zero-dishwasher-kwh.xml'].include? hpxml_file
|
751
|
+
args['dishwasher_efficiency'] = 0
|
752
|
+
elsif ['extra-sfa-atticroof-flat.xml'].include? hpxml_file
|
753
|
+
args['geometry_attic_type'] = HPXML::AtticTypeFlatRoof
|
754
|
+
args['ducts_supply_leakage_to_outside_value'] = 0.0
|
755
|
+
args['ducts_return_leakage_to_outside_value'] = 0.0
|
756
|
+
args['ducts_supply_location'] = HPXML::LocationBasementConditioned
|
757
|
+
args['ducts_return_location'] = HPXML::LocationBasementConditioned
|
758
|
+
elsif ['extra-gas-pool-heater-with-zero-kwh.xml'].include? hpxml_file
|
759
|
+
args['pool_present'] = true
|
760
|
+
args['pool_heater_type'] = HPXML::HeaterTypeGas
|
761
|
+
args['pool_heater_annual_kwh'] = 0
|
762
|
+
elsif ['extra-gas-hot-tub-heater-with-zero-kwh.xml'].include? hpxml_file
|
763
|
+
args['hot_tub_present'] = true
|
764
|
+
args['hot_tub_heater_type'] = HPXML::HeaterTypeGas
|
765
|
+
args['hot_tub_heater_annual_kwh'] = 0
|
766
|
+
elsif ['extra-no-rim-joists.xml'].include? hpxml_file
|
767
|
+
args.delete('geometry_rim_joist_height')
|
768
|
+
args.delete('rim_joist_assembly_r')
|
769
|
+
elsif ['extra-iecc-zone-different-than-epw.xml'].include? hpxml_file
|
770
|
+
args['site_iecc_zone'] = '6B'
|
771
|
+
elsif ['extra-state-code-different-than-epw.xml'].include? hpxml_file
|
772
|
+
args['site_state_code'] = 'WY'
|
773
|
+
elsif ['extra-sfa-atticroof-conditioned-eaves-gable.xml'].include? hpxml_file
|
774
|
+
args['geometry_unit_num_floors_above_grade'] = 2
|
775
|
+
args['geometry_attic_type'] = HPXML::AtticTypeConditioned
|
776
|
+
args['geometry_eaves_depth'] = 2
|
777
|
+
args['ducts_supply_location'] = HPXML::LocationLivingSpace
|
778
|
+
args['ducts_return_location'] = HPXML::LocationLivingSpace
|
779
|
+
elsif ['extra-sfa-atticroof-conditioned-eaves-hip.xml'].include? hpxml_file
|
780
|
+
args['geometry_roof_type'] = 'hip'
|
781
|
+
elsif ['extra-mf-eaves.xml'].include? hpxml_file
|
782
|
+
args['geometry_eaves_depth'] = 2
|
783
|
+
elsif ['extra-sfa-slab.xml'].include? hpxml_file
|
784
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeSlab
|
785
|
+
args['geometry_foundation_height'] = 0.0
|
786
|
+
args['geometry_foundation_height_above_grade'] = 0.0
|
787
|
+
args['foundation_wall_insulation_distance_to_bottom'] = Constants.Auto
|
788
|
+
elsif ['extra-sfa-vented-crawlspace.xml'].include? hpxml_file
|
789
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceVented
|
790
|
+
args['geometry_foundation_height'] = 4.0
|
791
|
+
args['floor_over_foundation_assembly_r'] = 18.7
|
792
|
+
args['foundation_wall_insulation_distance_to_bottom'] = 4.0
|
793
|
+
elsif ['extra-sfa-unvented-crawlspace.xml'].include? hpxml_file
|
794
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceUnvented
|
795
|
+
args['geometry_foundation_height'] = 4.0
|
796
|
+
args['floor_over_foundation_assembly_r'] = 18.7
|
797
|
+
args['foundation_wall_insulation_distance_to_bottom'] = 4.0
|
798
|
+
elsif ['extra-sfa-conditioned-crawlspace.xml'].include? hpxml_file
|
799
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceConditioned
|
800
|
+
args['geometry_foundation_height'] = 4.0
|
801
|
+
args['floor_over_foundation_assembly_r'] = 2.1
|
802
|
+
args['foundation_wall_insulation_distance_to_bottom'] = 4.0
|
803
|
+
elsif ['extra-sfa-unconditioned-basement.xml'].include? hpxml_file
|
804
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeBasementUnconditioned
|
805
|
+
args['floor_over_foundation_assembly_r'] = 18.7
|
806
|
+
args['foundation_wall_insulation_r'] = 0
|
807
|
+
args['foundation_wall_insulation_distance_to_bottom'] = 0.0
|
808
|
+
elsif ['extra-sfa-rear-units.xml'].include? hpxml_file
|
809
|
+
args['geometry_building_num_units'] = 4
|
810
|
+
elsif ['extra-sfa-exterior-corridor.xml'].include? hpxml_file
|
811
|
+
args['geometry_building_num_units'] = 4
|
812
|
+
elsif ['extra-sfa-slab-middle.xml',
|
813
|
+
'extra-sfa-vented-crawlspace-middle.xml',
|
814
|
+
'extra-sfa-unvented-crawlspace-middle.xml',
|
815
|
+
'extra-sfa-unconditioned-basement-middle.xml'].include? hpxml_file
|
816
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
817
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
818
|
+
elsif ['extra-sfa-slab-right.xml',
|
819
|
+
'extra-sfa-vented-crawlspace-right.xml',
|
820
|
+
'extra-sfa-unvented-crawlspace-right.xml',
|
821
|
+
'extra-sfa-unconditioned-basement-right.xml'].include? hpxml_file
|
822
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
823
|
+
elsif ['extra-mf-slab.xml'].include? hpxml_file
|
824
|
+
args['geometry_building_num_units'] = 18
|
825
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeSlab
|
826
|
+
args['geometry_foundation_height'] = 0.0
|
827
|
+
args['geometry_foundation_height_above_grade'] = 0.0
|
828
|
+
args['foundation_wall_insulation_distance_to_bottom'] = Constants.Auto
|
829
|
+
elsif ['extra-mf-vented-crawlspace.xml'].include? hpxml_file
|
830
|
+
args['geometry_building_num_units'] = 18
|
831
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceVented
|
832
|
+
args['geometry_foundation_height'] = 4.0
|
833
|
+
args['floor_over_foundation_assembly_r'] = 18.7
|
834
|
+
args['foundation_wall_insulation_distance_to_bottom'] = 4.0
|
835
|
+
elsif ['extra-mf-unvented-crawlspace.xml'].include? hpxml_file
|
836
|
+
args['geometry_building_num_units'] = 18
|
837
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceUnvented
|
838
|
+
args['geometry_foundation_height'] = 4.0
|
839
|
+
args['floor_over_foundation_assembly_r'] = 18.7
|
840
|
+
args['foundation_wall_insulation_distance_to_bottom'] = 4.0
|
841
|
+
elsif ['extra-mf-rear-units.xml'].include? hpxml_file
|
842
|
+
args['geometry_building_num_units'] = 18
|
843
|
+
elsif ['extra-mf-exterior-corridor.xml'].include? hpxml_file
|
844
|
+
args['geometry_building_num_units'] = 18
|
845
|
+
elsif ['extra-mf-slab-left-bottom.xml',
|
846
|
+
'extra-mf-vented-crawlspace-left-bottom.xml',
|
847
|
+
'extra-mf-unvented-crawlspace-left-bottom.xml'].include? hpxml_file
|
848
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
849
|
+
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
850
|
+
elsif ['extra-mf-slab-left-middle.xml',
|
851
|
+
'extra-mf-vented-crawlspace-left-middle.xml',
|
852
|
+
'extra-mf-unvented-crawlspace-left-middle.xml'].include? hpxml_file
|
853
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
854
|
+
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
855
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeAboveApartment
|
856
|
+
elsif ['extra-mf-slab-left-top.xml',
|
857
|
+
'extra-mf-vented-crawlspace-left-top.xml',
|
858
|
+
'extra-mf-unvented-crawlspace-left-top.xml'].include? hpxml_file
|
859
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
860
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeAboveApartment
|
861
|
+
elsif ['extra-mf-slab-middle-bottom.xml',
|
862
|
+
'extra-mf-vented-crawlspace-middle-bottom.xml',
|
863
|
+
'extra-mf-unvented-crawlspace-middle-bottom.xml'].include? hpxml_file
|
864
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
865
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
866
|
+
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
867
|
+
elsif ['extra-mf-slab-middle-middle.xml',
|
868
|
+
'extra-mf-vented-crawlspace-middle-middle.xml',
|
869
|
+
'extra-mf-unvented-crawlspace-middle-middle.xml'].include? hpxml_file
|
870
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
871
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
872
|
+
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
873
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeAboveApartment
|
874
|
+
elsif ['extra-mf-slab-middle-top.xml',
|
875
|
+
'extra-mf-vented-crawlspace-middle-top.xml',
|
876
|
+
'extra-mf-unvented-crawlspace-middle-top.xml'].include? hpxml_file
|
877
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
878
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
879
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeAboveApartment
|
880
|
+
elsif ['extra-mf-slab-right-bottom.xml',
|
881
|
+
'extra-mf-vented-crawlspace-right-bottom.xml',
|
882
|
+
'extra-mf-unvented-crawlspace-right-bottom.xml'].include? hpxml_file
|
883
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
884
|
+
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
885
|
+
elsif ['extra-mf-slab-right-middle.xml',
|
886
|
+
'extra-mf-vented-crawlspace-right-middle.xml',
|
887
|
+
'extra-mf-unvented-crawlspace-right-middle.xml'].include? hpxml_file
|
888
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
889
|
+
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
890
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeAboveApartment
|
891
|
+
elsif ['extra-mf-slab-right-top.xml',
|
892
|
+
'extra-mf-vented-crawlspace-right-top.xml',
|
893
|
+
'extra-mf-unvented-crawlspace-right-top.xml'].include? hpxml_file
|
894
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
895
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeAboveApartment
|
896
|
+
elsif ['extra-mf-slab-rear-units.xml',
|
897
|
+
'extra-mf-vented-crawlspace-rear-units.xml',
|
898
|
+
'extra-mf-unvented-crawlspace-rear-units.xml',
|
899
|
+
'extra-mf-slab-left-bottom-rear-units.xml',
|
900
|
+
'extra-mf-slab-left-middle-rear-units.xml',
|
901
|
+
'extra-mf-slab-left-top-rear-units.xml',
|
902
|
+
'extra-mf-slab-middle-bottom-rear-units.xml',
|
903
|
+
'extra-mf-slab-middle-middle-rear-units.xml',
|
904
|
+
'extra-mf-slab-middle-top-rear-units.xml',
|
905
|
+
'extra-mf-slab-right-bottom-rear-units.xml',
|
906
|
+
'extra-mf-slab-right-middle-rear-units.xml',
|
907
|
+
'extra-mf-slab-right-top-rear-units.xml',
|
908
|
+
'extra-mf-vented-crawlspace-left-bottom-rear-units.xml',
|
909
|
+
'extra-mf-vented-crawlspace-left-middle-rear-units.xml',
|
910
|
+
'extra-mf-vented-crawlspace-left-top-rear-units.xml',
|
911
|
+
'extra-mf-vented-crawlspace-middle-bottom-rear-units.xml',
|
912
|
+
'extra-mf-vented-crawlspace-middle-middle-rear-units.xml',
|
913
|
+
'extra-mf-vented-crawlspace-middle-top-rear-units.xml',
|
914
|
+
'extra-mf-vented-crawlspace-right-bottom-rear-units.xml',
|
915
|
+
'extra-mf-vented-crawlspace-right-middle-rear-units.xml',
|
916
|
+
'extra-mf-vented-crawlspace-right-top-rear-units.xml',
|
917
|
+
'extra-mf-unvented-crawlspace-left-bottom-rear-units.xml',
|
918
|
+
'extra-mf-unvented-crawlspace-left-middle-rear-units.xml',
|
919
|
+
'extra-mf-unvented-crawlspace-left-top-rear-units.xml',
|
920
|
+
'extra-mf-unvented-crawlspace-middle-bottom-rear-units.xml',
|
921
|
+
'extra-mf-unvented-crawlspace-middle-middle-rear-units.xml',
|
922
|
+
'extra-mf-unvented-crawlspace-middle-top-rear-units.xml',
|
923
|
+
'extra-mf-unvented-crawlspace-right-bottom-rear-units.xml',
|
924
|
+
'extra-mf-unvented-crawlspace-right-middle-rear-units.xml',
|
925
|
+
'extra-mf-unvented-crawlspace-right-top-rear-units.xml'].include? hpxml_file
|
926
|
+
args['geometry_unit_front_wall_is_adiabatic'] = true
|
927
|
+
end
|
196
928
|
|
197
|
-
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
205
|
-
|
206
|
-
|
207
|
-
|
208
|
-
|
209
|
-
|
210
|
-
|
211
|
-
|
212
|
-
|
213
|
-
|
214
|
-
|
215
|
-
|
216
|
-
|
217
|
-
|
218
|
-
|
219
|
-
|
220
|
-
|
221
|
-
|
222
|
-
|
223
|
-
|
224
|
-
|
225
|
-
|
226
|
-
|
227
|
-
|
929
|
+
# Error
|
930
|
+
if ['error-heating-system-and-heat-pump.xml'].include? hpxml_file
|
931
|
+
args['cooling_system_type'] = 'none'
|
932
|
+
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpAirToAir
|
933
|
+
elsif ['error-cooling-system-and-heat-pump.xml'].include? hpxml_file
|
934
|
+
args['heating_system_type'] = 'none'
|
935
|
+
args['heat_pump_type'] = HPXML::HVACTypeHeatPumpAirToAir
|
936
|
+
elsif ['error-non-integer-geometry-num-bathrooms.xml'].include? hpxml_file
|
937
|
+
args['geometry_unit_num_bathrooms'] = 1.5
|
938
|
+
elsif ['error-non-integer-ceiling-fan-quantity.xml'].include? hpxml_file
|
939
|
+
args['ceiling_fan_quantity'] = 0.5
|
940
|
+
elsif ['error-sfd-conditioned-basement-zero-foundation-height.xml'].include? hpxml_file
|
941
|
+
args['geometry_foundation_height'] = 0.0
|
942
|
+
args['foundation_wall_insulation_distance_to_bottom'] = Constants.Auto
|
943
|
+
elsif ['error-sfd-adiabatic-walls.xml'].include? hpxml_file
|
944
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
945
|
+
elsif ['error-sfa-ambient.xml'].include? hpxml_file
|
946
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeAmbient
|
947
|
+
args.delete('geometry_rim_joist_height')
|
948
|
+
args.delete('rim_joist_assembly_r')
|
949
|
+
elsif ['error-mf-conditioned-basement'].include? hpxml_file
|
950
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeBasementConditioned
|
951
|
+
elsif ['error-mf-conditioned-crawlspace'].include? hpxml_file
|
952
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceConditioned
|
953
|
+
elsif ['error-mf-bottom-crawlspace-zero-foundation-height.xml'].include? hpxml_file
|
954
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceUnvented
|
955
|
+
args['geometry_foundation_height'] = 0.0
|
956
|
+
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
957
|
+
args['foundation_wall_insulation_distance_to_bottom'] = Constants.Auto
|
958
|
+
elsif ['error-ducts-location-and-areas-not-same-type.xml'].include? hpxml_file
|
959
|
+
args['ducts_supply_location'] = Constants.Auto
|
960
|
+
elsif ['error-second-heating-system-serves-total-heat-load.xml'].include? hpxml_file
|
961
|
+
args['heating_system_2_type'] = HPXML::HVACTypeFireplace
|
962
|
+
args['heating_system_2_fraction_heat_load_served'] = 1.0
|
963
|
+
elsif ['error-second-heating-system-but-no-primary-heating.xml'].include? hpxml_file
|
964
|
+
args['heating_system_type'] = 'none'
|
965
|
+
args['heating_system_2_type'] = HPXML::HVACTypeFireplace
|
966
|
+
elsif ['error-sfa-no-building-num-units.xml'].include? hpxml_file
|
967
|
+
args.delete('geometry_building_num_units')
|
968
|
+
elsif ['error-sfa-above-apartment.xml'].include? hpxml_file
|
969
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeAboveApartment
|
970
|
+
elsif ['error-sfa-below-apartment.xml'].include? hpxml_file
|
971
|
+
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
972
|
+
elsif ['error-sfa-all-adiabatic-walls.xml'].include? hpxml_file
|
973
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
974
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
975
|
+
args['geometry_unit_front_wall_is_adiabatic'] = true
|
976
|
+
args['geometry_unit_back_wall_is_adiabatic'] = true
|
977
|
+
elsif ['error-mf-no-building-num-units.xml'].include? hpxml_file
|
978
|
+
args.delete('geometry_building_num_units')
|
979
|
+
elsif ['error-mf-all-adiabatic-walls.xml'].include? hpxml_file
|
980
|
+
args['geometry_unit_left_wall_is_adiabatic'] = true
|
981
|
+
args['geometry_unit_right_wall_is_adiabatic'] = true
|
982
|
+
args['geometry_unit_front_wall_is_adiabatic'] = true
|
983
|
+
args['geometry_unit_back_wall_is_adiabatic'] = true
|
984
|
+
elsif ['error-mf-two-stories.xml'].include? hpxml_file
|
985
|
+
args['geometry_unit_num_floors_above_grade'] = 2
|
986
|
+
elsif ['error-dhw-indirect-without-boiler.xml'].include? hpxml_file
|
987
|
+
args['water_heater_type'] = HPXML::WaterHeaterTypeCombiStorage
|
988
|
+
elsif ['error-conditioned-attic-with-one-floor-above-grade.xml'].include? hpxml_file
|
989
|
+
args['geometry_attic_type'] = HPXML::AtticTypeConditioned
|
990
|
+
args['ceiling_assembly_r'] = 0.0
|
991
|
+
elsif ['error-zero-number-of-bedrooms.xml'].include? hpxml_file
|
992
|
+
args['geometry_unit_num_bedrooms'] = 0
|
993
|
+
elsif ['error-sfd-with-shared-system.xml'].include? hpxml_file
|
994
|
+
args['heating_system_type'] = "Shared #{HPXML::HVACTypeBoiler} w/ Baseboard"
|
995
|
+
elsif ['error-rim-joist-height-but-no-assembly-r.xml'].include? hpxml_file
|
996
|
+
args.delete('rim_joist_assembly_r')
|
997
|
+
elsif ['error-rim-joist-assembly-r-but-no-height.xml'].include? hpxml_file
|
998
|
+
args.delete('geometry_rim_joist_height')
|
999
|
+
end
|
228
1000
|
|
229
|
-
|
230
|
-
|
231
|
-
|
232
|
-
|
233
|
-
|
234
|
-
|
235
|
-
|
236
|
-
|
237
|
-
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
285
|
-
|
286
|
-
|
287
|
-
|
1001
|
+
# Warning
|
1002
|
+
if ['warning-non-electric-heat-pump-water-heater.xml'].include? hpxml_file
|
1003
|
+
args['water_heater_type'] = HPXML::WaterHeaterTypeHeatPump
|
1004
|
+
args['water_heater_fuel_type'] = HPXML::FuelTypeNaturalGas
|
1005
|
+
args['water_heater_efficiency'] = 2.3
|
1006
|
+
elsif ['warning-sfd-slab-non-zero-foundation-height.xml'].include? hpxml_file
|
1007
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeSlab
|
1008
|
+
args['geometry_foundation_height_above_grade'] = 0.0
|
1009
|
+
elsif ['warning-mf-bottom-slab-non-zero-foundation-height.xml'].include? hpxml_file
|
1010
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeSlab
|
1011
|
+
args['geometry_foundation_height_above_grade'] = 0.0
|
1012
|
+
args['geometry_attic_type'] = HPXML::AtticTypeBelowApartment
|
1013
|
+
elsif ['warning-slab-non-zero-foundation-height-above-grade.xml'].include? hpxml_file
|
1014
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeSlab
|
1015
|
+
args['geometry_foundation_height'] = 0.0
|
1016
|
+
args['foundation_wall_insulation_distance_to_bottom'] = Constants.Auto
|
1017
|
+
elsif ['warning-second-heating-system-serves-majority-heat.xml'].include? hpxml_file
|
1018
|
+
args['heating_system_fraction_heat_load_served'] = 0.4
|
1019
|
+
args['heating_system_2_type'] = HPXML::HVACTypeFireplace
|
1020
|
+
args['heating_system_2_fraction_heat_load_served'] = 0.6
|
1021
|
+
elsif ['warning-vented-crawlspace-with-wall-and-ceiling-insulation.xml'].include? hpxml_file
|
1022
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceVented
|
1023
|
+
args['geometry_foundation_height'] = 3.0
|
1024
|
+
args['floor_over_foundation_assembly_r'] = 10
|
1025
|
+
args['foundation_wall_insulation_distance_to_bottom'] = 0.0
|
1026
|
+
args['foundation_wall_assembly_r'] = 10
|
1027
|
+
elsif ['warning-unvented-crawlspace-with-wall-and-ceiling-insulation.xml'].include? hpxml_file
|
1028
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeCrawlspaceUnvented
|
1029
|
+
args['geometry_foundation_height'] = 3.0
|
1030
|
+
args['floor_over_foundation_assembly_r'] = 10
|
1031
|
+
args['foundation_wall_insulation_distance_to_bottom'] = 0.0
|
1032
|
+
args['foundation_wall_assembly_r'] = 10
|
1033
|
+
elsif ['warning-unconditioned-basement-with-wall-and-ceiling-insulation.xml'].include? hpxml_file
|
1034
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeBasementUnconditioned
|
1035
|
+
args['floor_over_foundation_assembly_r'] = 10
|
1036
|
+
args['foundation_wall_assembly_r'] = 10
|
1037
|
+
elsif ['warning-vented-attic-with-floor-and-roof-insulation.xml'].include? hpxml_file
|
1038
|
+
args['geometry_attic_type'] = HPXML::AtticTypeVented
|
1039
|
+
args['roof_assembly_r'] = 10
|
1040
|
+
args['ducts_supply_location'] = HPXML::LocationAtticVented
|
1041
|
+
args['ducts_return_location'] = HPXML::LocationAtticVented
|
1042
|
+
elsif ['warning-unvented-attic-with-floor-and-roof-insulation.xml'].include? hpxml_file
|
1043
|
+
args['geometry_attic_type'] = HPXML::AtticTypeUnvented
|
1044
|
+
args['roof_assembly_r'] = 10
|
1045
|
+
elsif ['warning-conditioned-basement-with-ceiling-insulation.xml'].include? hpxml_file
|
1046
|
+
args['geometry_foundation_type'] = HPXML::FoundationTypeBasementConditioned
|
1047
|
+
args['floor_over_foundation_assembly_r'] = 10
|
1048
|
+
elsif ['warning-conditioned-attic-with-floor-insulation.xml'].include? hpxml_file
|
1049
|
+
args['geometry_unit_num_floors_above_grade'] = 2
|
1050
|
+
args['geometry_attic_type'] = HPXML::AtticTypeConditioned
|
1051
|
+
args['ducts_supply_location'] = HPXML::LocationLivingSpace
|
1052
|
+
args['ducts_return_location'] = HPXML::LocationLivingSpace
|
1053
|
+
elsif ['warning-multipliers-without-tv-plug-loads.xml'].include? hpxml_file
|
1054
|
+
args['misc_plug_loads_television_annual_kwh'] = 0.0
|
1055
|
+
elsif ['warning-multipliers-without-other-plug-loads.xml'].include? hpxml_file
|
1056
|
+
args['misc_plug_loads_other_annual_kwh'] = 0.0
|
1057
|
+
elsif ['warning-multipliers-without-well-pump-plug-loads.xml'].include? hpxml_file
|
1058
|
+
args['misc_plug_loads_well_pump_annual_kwh'] = 0.0
|
1059
|
+
args['misc_plug_loads_well_pump_usage_multiplier'] = 1.0
|
1060
|
+
elsif ['warning-multipliers-without-vehicle-plug-loads.xml'].include? hpxml_file
|
1061
|
+
args['misc_plug_loads_vehicle_annual_kwh'] = 0.0
|
1062
|
+
args['misc_plug_loads_vehicle_usage_multiplier'] = 1.0
|
1063
|
+
elsif ['warning-multipliers-without-fuel-loads.xml'].include? hpxml_file
|
1064
|
+
args['misc_fuel_loads_grill_usage_multiplier'] = 1.0
|
1065
|
+
args['misc_fuel_loads_lighting_usage_multiplier'] = 1.0
|
1066
|
+
args['misc_fuel_loads_fireplace_usage_multiplier'] = 1.0
|
1067
|
+
end
|
1068
|
+
end
|
288
1069
|
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
end
|
293
|
-
hpxml.hvac_controls.each do |hvac_control|
|
294
|
-
hvac_control.control_type = nil # Not used by model
|
295
|
-
end
|
296
|
-
if hpxml.hvac_distributions.length > 0
|
297
|
-
(2..hpxml.hvac_distributions[0].ducts.length).to_a.reverse.each do |i|
|
298
|
-
hpxml.hvac_distributions[0].ducts.delete_at(i) # Only compare first two ducts
|
299
|
-
end
|
300
|
-
end
|
301
|
-
hpxml.water_heating_systems.each do |wh|
|
302
|
-
wh.performance_adjustment = nil # Detailed input not exposed
|
303
|
-
wh.heating_capacity = nil # Detailed input not exposed
|
304
|
-
end
|
305
|
-
if hpxml.refrigerators.length > 0
|
306
|
-
(2..hpxml.refrigerators.length).to_a.reverse.each do |i|
|
307
|
-
hpxml.refrigerators.delete_at(i) # Only compare first two refrigerators
|
308
|
-
end
|
309
|
-
end
|
310
|
-
hpxml.refrigerators.each do |refrigerator|
|
311
|
-
refrigerator.primary_indicator = nil
|
312
|
-
refrigerator.adjusted_annual_kwh = nil
|
313
|
-
refrigerator.weekday_fractions = nil
|
314
|
-
refrigerator.weekend_fractions = nil
|
315
|
-
refrigerator.monthly_multipliers = nil
|
316
|
-
end
|
317
|
-
if hpxml.freezers.length > 0
|
318
|
-
(1..hpxml.freezers.length).to_a.reverse.each do |i|
|
319
|
-
hpxml.freezers.delete_at(i) # Only compare first freezer
|
320
|
-
end
|
321
|
-
end
|
322
|
-
hpxml.freezers.each do |freezer|
|
323
|
-
freezer.weekday_fractions = nil
|
324
|
-
freezer.weekend_fractions = nil
|
325
|
-
freezer.monthly_multipliers = nil
|
326
|
-
end
|
327
|
-
hpxml.cooking_ranges.each do |cooking_range|
|
328
|
-
cooking_range.weekday_fractions = nil
|
329
|
-
cooking_range.weekend_fractions = nil
|
330
|
-
cooking_range.monthly_multipliers = nil
|
331
|
-
end
|
332
|
-
hpxml.pools.each do |pool|
|
333
|
-
pool.pump_weekday_fractions = nil
|
334
|
-
pool.pump_weekend_fractions = nil
|
335
|
-
pool.pump_monthly_multipliers = nil
|
336
|
-
pool.heater_weekday_fractions = nil
|
337
|
-
pool.heater_weekend_fractions = nil
|
338
|
-
pool.heater_monthly_multipliers = nil
|
339
|
-
end
|
340
|
-
hpxml.hot_tubs.each do |hot_tub|
|
341
|
-
hot_tub.pump_weekday_fractions = nil
|
342
|
-
hot_tub.pump_weekend_fractions = nil
|
343
|
-
hot_tub.pump_monthly_multipliers = nil
|
344
|
-
hot_tub.heater_weekday_fractions = nil
|
345
|
-
hot_tub.heater_weekend_fractions = nil
|
346
|
-
hot_tub.heater_monthly_multipliers = nil
|
347
|
-
end
|
348
|
-
hpxml.lighting.interior_weekday_fractions = nil
|
349
|
-
hpxml.lighting.interior_weekend_fractions = nil
|
350
|
-
hpxml.lighting.interior_monthly_multipliers = nil
|
351
|
-
hpxml.lighting.exterior_weekday_fractions = nil
|
352
|
-
hpxml.lighting.exterior_weekend_fractions = nil
|
353
|
-
hpxml.lighting.exterior_monthly_multipliers = nil
|
354
|
-
hpxml.lighting.garage_weekday_fractions = nil
|
355
|
-
hpxml.lighting.garage_weekend_fractions = nil
|
356
|
-
hpxml.lighting.garage_monthly_multipliers = nil
|
357
|
-
hpxml.lighting.holiday_weekday_fractions = nil
|
358
|
-
hpxml.lighting.holiday_weekend_fractions = nil
|
359
|
-
hpxml.plug_loads.each do |plug_load|
|
360
|
-
plug_load.weekday_fractions = nil
|
361
|
-
plug_load.weekend_fractions = nil
|
362
|
-
plug_load.monthly_multipliers = nil
|
363
|
-
end
|
364
|
-
hpxml.fuel_loads.each do |fuel_load|
|
365
|
-
fuel_load.weekday_fractions = nil
|
366
|
-
fuel_load.weekend_fractions = nil
|
367
|
-
fuel_load.monthly_multipliers = nil
|
368
|
-
end
|
369
|
-
hpxml.pv_systems.each do |pv_system|
|
370
|
-
pv_system.year_modules_manufactured = nil
|
371
|
-
end
|
372
|
-
hpxml.collapse_enclosure_surfaces()
|
1070
|
+
def _test_measure(args_hash, expected_error, expected_warning)
|
1071
|
+
# create an instance of the measure
|
1072
|
+
measure = BuildResidentialHPXML.new
|
373
1073
|
|
374
|
-
|
375
|
-
|
376
|
-
hpxml_obj = hpxml.send(attr)
|
377
|
-
next unless hpxml_obj.is_a? HPXML::BaseArrayElement
|
1074
|
+
runner = OpenStudio::Measure::OSRunner.new(OpenStudio::WorkflowJSON.new)
|
1075
|
+
model = OpenStudio::Model::Model.new
|
378
1076
|
|
379
|
-
|
380
|
-
|
381
|
-
|
1077
|
+
# get arguments
|
1078
|
+
arguments = measure.arguments(model)
|
1079
|
+
argument_map = OpenStudio::Measure.convertOSArgumentVectorToMap(arguments)
|
382
1080
|
|
383
|
-
|
384
|
-
|
1081
|
+
# populate argument with specified hash value if specified
|
1082
|
+
arguments.each do |arg|
|
1083
|
+
temp_arg_var = arg.clone
|
1084
|
+
if args_hash.has_key?(arg.name)
|
1085
|
+
retval = temp_arg_var.setValue(args_hash[arg.name])
|
1086
|
+
if not retval # Try passing as string instead
|
1087
|
+
assert(temp_arg_var.setValue(args_hash[arg.name].to_s))
|
385
1088
|
end
|
386
1089
|
end
|
1090
|
+
argument_map[arg.name] = temp_arg_var
|
387
1091
|
end
|
1092
|
+
args_hash.keys.each do |arg_name|
|
1093
|
+
next if argument_map.keys.include? arg_name
|
388
1094
|
|
389
|
-
|
390
|
-
measure_doc = hpxml_objs['BuildResidentialHPXML'].to_oga()
|
391
|
-
|
392
|
-
# Write files for inspection?
|
393
|
-
if rakefile_doc.to_xml != measure_doc.to_xml
|
394
|
-
rakefile_path = File.join(File.dirname(__FILE__), 'test_rakefile.xml')
|
395
|
-
XMLHelper.write_file(rakefile_doc, rakefile_path)
|
396
|
-
measure_path = File.join(File.dirname(__FILE__), 'test_measure.xml')
|
397
|
-
XMLHelper.write_file(measure_doc, measure_path)
|
398
|
-
flunk "ERROR: HPXML files don't match. Wrote #{rakefile_path} and #{measure_path} for inspection."
|
399
|
-
else
|
400
|
-
pass
|
1095
|
+
fail "Unexpected argument name: #{arg_name}"
|
401
1096
|
end
|
402
|
-
end
|
403
1097
|
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
Dir.mkdir(rundir)
|
408
|
-
end
|
1098
|
+
# run the measure
|
1099
|
+
measure.run(model, runner, argument_map)
|
1100
|
+
result = runner.result
|
409
1101
|
|
410
|
-
|
411
|
-
if
|
412
|
-
|
1102
|
+
# assert whether it ran correctly
|
1103
|
+
if expected_error.nil?
|
1104
|
+
# show the output
|
1105
|
+
show_output(result) unless result.value.valueName == 'Success'
|
1106
|
+
|
1107
|
+
assert_equal('Success', result.value.valueName)
|
1108
|
+
assert(File.exist?(args_hash['hpxml_path']))
|
1109
|
+
else
|
1110
|
+
assert_equal('Fail', result.value.valueName)
|
1111
|
+
assert(!File.exist?(args_hash['hpxml_path']))
|
413
1112
|
end
|
414
|
-
while true
|
415
|
-
break if not Dir.exist?(path)
|
416
1113
|
|
417
|
-
|
1114
|
+
# check warnings/errors
|
1115
|
+
if not expected_error.nil?
|
1116
|
+
if runner.result.stepErrors.select { |s| s == expected_error }.size <= 0
|
1117
|
+
runner.result.stepErrors.each do |s|
|
1118
|
+
puts "ERROR: #{s}"
|
1119
|
+
end
|
1120
|
+
end
|
1121
|
+
assert(runner.result.stepErrors.select { |s| s == expected_error }.size > 0)
|
1122
|
+
end
|
1123
|
+
if not expected_warning.nil?
|
1124
|
+
if runner.result.stepWarnings.select { |s| s == expected_warning }.size <= 0
|
1125
|
+
runner.result.stepErrors.each do |s|
|
1126
|
+
puts "WARNING: #{s}"
|
1127
|
+
end
|
1128
|
+
end
|
1129
|
+
assert(runner.result.stepWarnings.select { |s| s == expected_warning }.size > 0)
|
418
1130
|
end
|
419
1131
|
end
|
420
1132
|
end
|