openstudio-standards 0.8.3 → 0.8.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (87) hide show
  1. checksums.yaml +4 -4
  2. data/lib/openstudio-standards/btap/costing/README.md +502 -0
  3. data/lib/openstudio-standards/btap/costing/btap_costing.rb +473 -0
  4. data/lib/openstudio-standards/btap/costing/btap_measure_helper.rb +359 -0
  5. data/lib/openstudio-standards/btap/costing/btap_workflow.rb +117 -0
  6. data/lib/openstudio-standards/btap/costing/common_paths.rb +78 -0
  7. data/lib/openstudio-standards/btap/costing/common_resources/ConstructionProperties.csv +52 -0
  8. data/lib/openstudio-standards/btap/costing/common_resources/Constructions.csv +37 -0
  9. data/lib/openstudio-standards/btap/costing/common_resources/construction_sets.csv +1270 -0
  10. data/lib/openstudio-standards/btap/costing/common_resources/constructions_glazing.csv +61 -0
  11. data/lib/openstudio-standards/btap/costing/common_resources/constructions_opaque.csv +2256 -0
  12. data/lib/openstudio-standards/btap/costing/common_resources/costs.csv +1904 -0
  13. data/lib/openstudio-standards/btap/costing/common_resources/costs_local_factors.csv +2315 -0
  14. data/lib/openstudio-standards/btap/costing/common_resources/hvac_vent_ahu.csv +925 -0
  15. data/lib/openstudio-standards/btap/costing/common_resources/lighting.csv +364 -0
  16. data/lib/openstudio-standards/btap/costing/common_resources/lighting_sets.csv +2667 -0
  17. data/lib/openstudio-standards/btap/costing/common_resources/locations.csv +75 -0
  18. data/lib/openstudio-standards/btap/costing/common_resources/materials_glazing.csv +35 -0
  19. data/lib/openstudio-standards/btap/costing/common_resources/materials_hvac.csv +1699 -0
  20. data/lib/openstudio-standards/btap/costing/common_resources/materials_lighting.csv +267 -0
  21. data/lib/openstudio-standards/btap/costing/common_resources/materials_opaque.csv +164 -0
  22. data/lib/openstudio-standards/btap/costing/copy_test_results_files_to_expected_results.rb +11 -0
  23. data/lib/openstudio-standards/btap/costing/cost_building_from_file.rb +136 -0
  24. data/lib/openstudio-standards/btap/costing/costing_database_wrapper.rb +177 -0
  25. data/lib/openstudio-standards/btap/costing/daylighting_sensor_control_costing.rb +353 -0
  26. data/lib/openstudio-standards/btap/costing/dcv_costing.rb +314 -0
  27. data/lib/openstudio-standards/btap/costing/dummy.epw +8768 -0
  28. data/lib/openstudio-standards/btap/costing/dummy.osm +5320 -0
  29. data/lib/openstudio-standards/btap/costing/envelope_costing.rb +284 -0
  30. data/lib/openstudio-standards/btap/costing/heating_cooling_costing.rb +2584 -0
  31. data/lib/openstudio-standards/btap/costing/led_lighting_costing.rb +155 -0
  32. data/lib/openstudio-standards/btap/costing/lighting_costing.rb +209 -0
  33. data/lib/openstudio-standards/btap/costing/mech_sizing.json +502 -0
  34. data/lib/openstudio-standards/btap/costing/neb_end_use_prices.csv +42 -0
  35. data/lib/openstudio-standards/btap/costing/necb_2011_spacetype_info.csv +225 -0
  36. data/lib/openstudio-standards/btap/costing/necb_reference_runs.csv +28705 -0
  37. data/lib/openstudio-standards/btap/costing/nv_costing.rb +547 -0
  38. data/lib/openstudio-standards/btap/costing/parallel_tests.rb +92 -0
  39. data/lib/openstudio-standards/btap/costing/pv_ground_costing.rb +687 -0
  40. data/lib/openstudio-standards/btap/costing/shw_costing.rb +705 -0
  41. data/lib/openstudio-standards/btap/costing/test_list.txt +17 -0
  42. data/lib/openstudio-standards/btap/costing/test_run_all_test_locally.rb +26 -0
  43. data/lib/openstudio-standards/btap/costing/test_run_costing_tests.rb +80 -0
  44. data/lib/openstudio-standards/btap/costing/ventilation_costing.rb +2616 -0
  45. data/lib/openstudio-standards/constructions/modify.rb +2 -1
  46. data/lib/openstudio-standards/standards/Standards.Model.rb +39 -9
  47. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.Model.rb +2 -2
  48. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_csv/ashrae_90_1_prm.UserData.rb +6 -1
  49. data/lib/openstudio-standards/standards/necb/BTAPPRE1980/btap_pre1980.rb +2 -27
  50. data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_3_and_8_single_speed.rb +68 -27
  51. data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_4.rb +64 -25
  52. data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_6.rb +9 -14
  53. data/lib/openstudio-standards/standards/necb/ECMS/hvac_systems.rb +46 -20
  54. data/lib/openstudio-standards/standards/necb/NECB2011/autozone.rb +635 -248
  55. data/lib/openstudio-standards/standards/necb/NECB2011/data/constants.json +43 -7
  56. data/lib/openstudio-standards/standards/necb/NECB2011/data/fuel_type_sets.json +7 -1
  57. data/lib/openstudio-standards/standards/necb/NECB2011/data/geometry/HighriseApartmentMult.osm +14272 -0
  58. data/lib/openstudio-standards/standards/necb/NECB2011/data/necb_2015_table_c1.json +1 -1
  59. data/lib/openstudio-standards/standards/necb/NECB2011/data/space_types.json +437 -437
  60. data/lib/openstudio-standards/standards/necb/NECB2011/data/systems.json +516 -0
  61. data/lib/openstudio-standards/standards/necb/NECB2011/data/systems_including_sys5.json +588 -0
  62. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_namer.rb +489 -0
  63. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_1_single_speed.rb +16 -6
  64. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_2_and_5.rb +48 -5
  65. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_3_and_8_multi_speed.rb +2 -2
  66. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_3_and_8_single_speed.rb +35 -27
  67. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_4.rb +34 -23
  68. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_6.rb +8 -6
  69. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_systems.rb +42 -13
  70. data/lib/openstudio-standards/standards/necb/NECB2011/necb_2011.rb +214 -25
  71. data/lib/openstudio-standards/standards/necb/NECB2011/system_fuels.rb +61 -1
  72. data/lib/openstudio-standards/standards/necb/NECB2015/data/space_types.json +636 -636
  73. data/lib/openstudio-standards/standards/necb/NECB2015/data/unitary_acs.json +38 -38
  74. data/lib/openstudio-standards/standards/necb/NECB2015/hvac_systems.rb +15 -6
  75. data/lib/openstudio-standards/standards/necb/NECB2017/data/space_types.json +636 -636
  76. data/lib/openstudio-standards/standards/necb/NECB2020/data/chillers.json +71 -71
  77. data/lib/openstudio-standards/standards/necb/README.md +343 -0
  78. data/lib/openstudio-standards/standards/necb/common/btap_data.rb +190 -28
  79. data/lib/openstudio-standards/standards/necb/common/btap_datapoint.rb +14 -5
  80. data/lib/openstudio-standards/standards/necb/common/eccc_electric_grid_intensity_20250311.csv +14 -0
  81. data/lib/openstudio-standards/standards/necb/common/nir_gas_grid_intensity_20250311.csv +14 -0
  82. data/lib/openstudio-standards/standards/necb/common/system_types.yaml +0 -0
  83. data/lib/openstudio-standards/utilities/logging.rb +18 -14
  84. data/lib/openstudio-standards/version.rb +1 -1
  85. data/lib/openstudio-standards/weather/modify.rb +2 -2
  86. data/lib/openstudio-standards.rb +12 -0
  87. metadata +53 -2
@@ -0,0 +1,17 @@
1
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_Test.rb
2
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResultsVintage_Test.rb
3
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_daylighting_sensor_control_Test.rb
4
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_dcv_Test.rb
5
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_led_lighting_Test.rb
6
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_pv_ground_Test.rb
7
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_CCASHP_Baseboard_Test.rb
8
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_DX_Adv_Test.rb
9
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_nv_Test.rb
10
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_CCASHP_VRF_Test.rb
11
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_SHW_Test.rb
12
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_vsd_chiller_Test.rb
13
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_insuite_central_doas_Test.rb
14
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_shw_scaling_Test.rb
15
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_HS08_CCASHP_VRF_Test.rb
16
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_HS09_CCASHP_Baseboard_Test.rb
17
+ lib/openstudio-standards/btap/costing/btap_results/tests/BtapResults_HS14_CGSHP_FanCoils_Test.rb
@@ -0,0 +1,26 @@
1
+
2
+ require 'fileutils'
3
+ require 'parallel'
4
+ require 'open3'
5
+ require 'minitest/autorun'
6
+ require 'json'
7
+ require_relative './parallel_tests'
8
+ TestListFile = File.join(File.dirname(__FILE__), 'test_list.txt')
9
+
10
+ class RunAllTests < Minitest::Test
11
+ def test_all()
12
+ full_file_list = nil
13
+ if File.exist?(TestListFile)
14
+ puts TestListFile
15
+ # load test files from file.
16
+ full_file_list = File.readlines(TestListFile).shuffle
17
+ # Select only .rb files that exist
18
+ full_file_list.select! {|item| item.include?('rb') && File.exist?(File.absolute_path("#{item.strip}"))}
19
+ full_file_list.map! {|item| File.absolute_path("#{item.strip}")}
20
+ else
21
+ puts "Could not find list of files to test at #{TestListFile}"
22
+ return false
23
+ end
24
+ assert(ParallelTests.new.run(full_file_list), "Some tests failed please ensure all test pass and tests have been updated to reflect the changes you expect before issuing a pull request")
25
+ end
26
+ end
@@ -0,0 +1,80 @@
1
+ require 'fileutils'
2
+ require 'parallel'
3
+ require 'open3'
4
+ require 'minitest/autorun'
5
+ require 'json'
6
+ require_relative './parallel_tests'
7
+ TestListFile = File.join(File.dirname(__FILE__), 'local_tests.txt')
8
+
9
+
10
+ class RunAllCostTests < Minitest::Test
11
+ def test_costing_all()
12
+
13
+ # The OpenStudio v3.2.1 CLI has issues so running the tests by calling the methods directly
14
+ #test_cli = File.join(__dir__, "measures", "btap_results", "tests", "test_helper.rb")
15
+ test_cli = File.join(__dir__, "btap_results", "tests", "test_helper_nocli.rb")
16
+ building_types = [
17
+ #'Hospital',
18
+ #'Outpatient',
19
+ 'HighriseApartment',
20
+ 'SmallHotel',
21
+ 'LargeHotel',
22
+ 'LowriseApartment',
23
+ 'MidriseApartment',
24
+ 'SecondarySchool',
25
+ 'LargeOffice',
26
+ 'MediumOffice',
27
+ 'PrimarySchool',
28
+ 'RetailStandalone',
29
+ 'RetailStripmall',
30
+ 'SmallOffice',
31
+ 'Warehouse',
32
+ 'FullServiceRestaurant',
33
+ 'QuickServiceRestaurant',
34
+ ]
35
+
36
+ epw_files = [
37
+ #"CAN_BC_Vancouver.Intl.AP.718920_CWEC2020.epw",
38
+ #"CAN_AB_Calgary.Intl.AP.718770_CWEC2020.epw",
39
+ #"CAN_AB_Edmonton.Intl.AP.711230_CWEC2020.epw",
40
+ #"CAN_AB_Fort.Mcmurray.AP.716890_CWEC2020.epw",
41
+ #"CAN_NS_Halifax.Dockyard.713280_CWEC2020.epw",
42
+ #"CAN_QC_Montreal.Intl.AP.716270_CWEC2020.epw",
43
+ #"CAN_ON_Toronto.Intl.AP.716240_CWEC2020.epw",
44
+ "CAN_NT_Yellowknife.AP.719360_CWEC2020.epw"
45
+ ]
46
+
47
+ # NECB2015 will work after openstudio-standards/tree/nrcan_48
48
+ # has been pulled into nrcan
49
+ # NOTE: Only use one template at a time!!!!!!!!! If more than one selected the test will fail!!!!!!
50
+ templates = [
51
+ #"BTAPPRE1980",
52
+ "BTAP1980TO2010",
53
+ "NECB2011",
54
+ "NECB2015",
55
+ "NECB2017",
56
+ "NECB2020"
57
+ ]
58
+ fuels = [
59
+ 'NaturalGas',
60
+ 'Electricity',
61
+ 'NaturalGasHPGasBackup'
62
+ ]
63
+ # Test list to pass to parallel tester.
64
+ test_list = []
65
+ building_types.each do |build_type|
66
+ epw_files.each do |epw_file|
67
+ templates.each do |template|
68
+ fuels.each do |fuel|
69
+ next if ((template == 'BTAPPRE1980') || (template == 'BTAP1980TO2010')) && (fuel == 'NaturalGasHPGasBackup')
70
+ test_list << "#{test_cli} -b " + build_type + " -w " + epw_file + " -t " + template + " -f " + fuel + " -k"
71
+ end
72
+ end
73
+ end
74
+ end
75
+ puts 'testing these scenarioes'
76
+ puts test_list
77
+ puts "To change the costing tests being run please edit test_run_costing_tests.rb."
78
+ assert(ParallelTests.new.run(test_list), "Some tests failed please ensure all test pass and tests have been updated to reflect the changes you expect before issuing a pull request")
79
+ end
80
+ end