openstudio-standards 0.2.12 → 0.2.13.rc3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (492) hide show
  1. checksums.yaml +4 -4
  2. data/data/geometry/ASHRAE90120162019HighriseApartment.json +1042 -0
  3. data/data/geometry/ASHRAE90120162019Hospital.json +199 -0
  4. data/data/geometry/ASHRAE90120162019LargeHotel.json +73 -0
  5. data/data/geometry/ASHRAE90120162019LargeOffice.json +109 -0
  6. data/data/geometry/ASHRAE90120162019SecondarySchool.json +205 -0
  7. data/data/geometry/ASHRAECourthouse.json +112 -0
  8. data/data/geometry/ASHRAECourthouse.osm +26470 -0
  9. data/data/geometry/ASHRAELargeHotel.osm +11 -1
  10. data/data/geometry/ASHRAELargeOffice.json +4 -0
  11. data/data/standards/OpenStudio_Standards-ashrae_90_1(space_types).xlsx +0 -0
  12. data/data/standards/OpenStudio_Standards-ashrae_90_1-ALL-comstock(space_types).xlsx +0 -0
  13. data/data/standards/OpenStudio_Standards-ashrae_90_1.xlsx +0 -0
  14. data/data/standards/exclude_list.csv +19 -0
  15. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.boilers.json +49 -0
  16. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.chillers.json +293 -0
  17. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.construction_properties.json +25426 -0
  18. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.construction_sets.json +1600 -0
  19. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.economizers.json +564 -0
  20. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.elevators.json +349 -0
  21. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.ext_ltg.json +164 -0
  22. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.ground_temperatures.json +10663 -0
  23. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.heat_pumps.json +508 -0
  24. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.heat_pumps_heating.json +156 -0
  25. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.heat_rejection.json +44 -0
  26. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.motors.json +184 -0
  27. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.prototype_inputs.json +3094 -0
  28. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.ref_cases.json +829 -0
  29. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.ref_lnup.json +562 -0
  30. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_compressors.json +52 -0
  31. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_condenser.json +220 -0
  32. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_system.json +156 -0
  33. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_walkins.json +1316 -0
  34. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.spc_typ.json +21446 -0
  35. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.unitary_acs.json +554 -0
  36. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.water_heaters.json +68 -0
  37. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.water_source_heat_pumps.json +28 -0
  38. data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.water_source_heat_pumps_heating.json +12 -0
  39. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.boilers.json +49 -0
  40. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.chillers.json +293 -0
  41. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.construction_properties.json +12487 -0
  42. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.construction_sets.json +1600 -0
  43. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.economizers.json +564 -0
  44. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.elevators.json +349 -0
  45. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.ext_ltg.json +164 -0
  46. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.ground_temperatures.json +10663 -0
  47. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.heat_pumps.json +466 -0
  48. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.heat_pumps_heating.json +137 -0
  49. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.heat_rejection.json +44 -0
  50. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.motors.json +184 -0
  51. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.prototype_inputs.json +3094 -0
  52. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.ref_cases.json +829 -0
  53. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.ref_lnup.json +562 -0
  54. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_compressors.json +52 -0
  55. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_condenser.json +220 -0
  56. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_system.json +156 -0
  57. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_walkins.json +1316 -0
  58. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.spc_typ.json +21380 -0
  59. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.unitary_acs.json +554 -0
  60. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.water_heaters.json +68 -0
  61. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.water_source_heat_pumps.json +28 -0
  62. data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.water_source_heat_pumps_heating.json +12 -0
  63. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.boilers.json +49 -0
  64. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.chillers.json +395 -0
  65. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.construction_properties.json +12487 -0
  66. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.construction_sets.json +1600 -0
  67. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.economizers.json +592 -0
  68. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.elevators.json +349 -0
  69. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.energy_recovery.json +550 -0
  70. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.ext_ltg.json +164 -0
  71. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.ground_temperatures.json +10663 -0
  72. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.heat_pumps.json +466 -0
  73. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.heat_pumps_heating.json +137 -0
  74. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.heat_rejection.json +44 -0
  75. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.motors.json +238 -0
  76. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.prototype_inputs.json +3094 -0
  77. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.ref_cases.json +829 -0
  78. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.ref_lnup.json +562 -0
  79. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_compressors.json +52 -0
  80. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_condenser.json +220 -0
  81. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_system.json +156 -0
  82. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_walkins.json +1316 -0
  83. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.spc_typ.json +21548 -0
  84. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.unitary_acs.json +554 -0
  85. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.water_heaters.json +68 -0
  86. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.water_source_heat_pumps.json +28 -0
  87. data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.water_source_heat_pumps_heating.json +12 -0
  88. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.boilers.json +64 -0
  89. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.chillers.json +871 -0
  90. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.construction_properties.json +12487 -0
  91. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.construction_sets.json +1600 -0
  92. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.economizers.json +592 -0
  93. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.elevators.json +349 -0
  94. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.energy_recovery.json +1096 -0
  95. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.ext_ltg.json +164 -0
  96. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.ground_temperatures.json +10663 -0
  97. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.heat_pumps.json +886 -0
  98. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.heat_pumps_heating.json +194 -0
  99. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.heat_rejection.json +44 -0
  100. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.motors.json +247 -0
  101. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.prototype_inputs.json +3094 -0
  102. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.ref_cases.json +829 -0
  103. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.ref_lnup.json +562 -0
  104. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_compressors.json +52 -0
  105. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_condenser.json +220 -0
  106. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_system.json +156 -0
  107. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_walkins.json +1316 -0
  108. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.spc_typ.json +22079 -0
  109. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.unitary_acs.json +994 -0
  110. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.water_heaters.json +68 -0
  111. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.water_source_heat_pumps.json +28 -0
  112. data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.water_source_heat_pumps_heating.json +12 -0
  113. data/data/standards/manage_OpenStudio_Standards.rb +87 -37
  114. data/data/standards/metadata_units_OpenStudio_Standards-ashrae_90_1-ALL-comstockspace_types.csv +236 -0
  115. data/data/standards/metadata_units_OpenStudio_Standards-ashrae_90_1.csv +622 -0
  116. data/data/standards/metadata_units_OpenStudio_Standards-ashrae_90_1space_types.csv +191 -0
  117. data/data/standards/openstudio_standards_duplicates_log.csv +16 -25
  118. data/data/standards/test_performance_expected_dd_results.csv +1934 -1134
  119. data/lib/openstudio-standards.rb +68 -17
  120. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2004/ashrae_90_1_2004.PumpVariableSpeed.rb +28 -0
  121. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.FanVariableVolume.rb +0 -1
  122. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.PumpVariableSpeed.rb +28 -0
  123. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.Model.rb +53 -2
  124. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.PumpVariableSpeed.rb +29 -0
  125. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.Model.rb +157 -2
  126. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.PumpVariableSpeed.rb +29 -0
  127. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.AirTerminalSingleDuctVAVReheat.rb +24 -0
  128. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.FanConstantVolume.rb +32 -0
  129. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.FanOnOff.rb +33 -0
  130. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.FanVariableVolume.rb +32 -0
  131. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.Model.elevators.rb +25 -0
  132. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.Model.rb +366 -0
  133. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.PumpVariableSpeed.rb +144 -0
  134. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.hvac_systems.rb +11 -0
  135. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.AirTerminalSingleDuctVAVReheat.rb +24 -0
  136. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.FanConstantVolume.rb +32 -0
  137. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.FanOnOff.rb +33 -0
  138. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.FanVariableVolume.rb +32 -0
  139. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Model.elevators.rb +25 -0
  140. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Model.rb +367 -0
  141. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.PumpVariableSpeed.rb +144 -0
  142. data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.hvac_systems.rb +11 -0
  143. data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.AirTerminalSingleDuctVAVReheat.rb +0 -1
  144. data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.AirTerminalSingleDuctVAVReheat.rb +0 -1
  145. data/lib/openstudio-standards/prototypes/ashrae_90_1/nrel_nze_ready_2017/nrel_zne_ready_2017.HeatExchangerAirToAirSensibleAndLatent.rb +1 -1
  146. data/lib/openstudio-standards/prototypes/ashrae_90_1/nrel_nze_ready_2017/nrel_zne_ready_2017.Model.rb +1 -1
  147. data/lib/openstudio-standards/prototypes/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.HeatExchangerAirToAirSensibleAndLatent.rb +1 -1
  148. data/lib/openstudio-standards/prototypes/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.Model.rb +1 -1
  149. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.College.rb +3 -3
  150. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Courthouse.rb +74 -0
  151. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.FullServiceRestaurant.rb +46 -30
  152. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.HighRiseApartment.rb +15 -7
  153. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Hospital.rb +26 -15
  154. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Laboratory.rb +8 -11
  155. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeDataCenterHighITE.rb +54 -60
  156. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeDataCenterLowITE.rb +56 -60
  157. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeHotel.rb +38 -12
  158. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeOffice.rb +218 -134
  159. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeOfficeDetailed.rb +6 -2
  160. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.MediumOffice.rb +222 -133
  161. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.MediumOfficeDetailed.rb +60 -62
  162. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.MidriseApartment.rb +25 -15
  163. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Outpatient.rb +34 -22
  164. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.PrimarySchool.rb +31 -7
  165. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.QuickServiceRestaurant.rb +43 -28
  166. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.RetailStandalone.rb +48 -38
  167. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.RetailStripmall.rb +9 -5
  168. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SecondarySchool.rb +567 -344
  169. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SmallDataCenterHighITE.rb +13 -19
  170. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SmallDataCenterLowITE.rb +13 -17
  171. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SmallHotel.rb +9 -5
  172. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SmallOffice.rb +79 -51
  173. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SmallOfficeDetailed.rb +60 -60
  174. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SuperMarket.rb +2 -4
  175. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SuperTallBuilding.rb +133 -120
  176. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.TallBuilding.rb +124 -112
  177. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Warehouse.rb +138 -66
  178. data/lib/openstudio-standards/prototypes/common/do_not_edit_metaclasses.rb +7275 -199
  179. data/lib/openstudio-standards/prototypes/common/objects/Prototype.AirConditionerVariableRefrigerantFlow.rb +35 -35
  180. data/lib/openstudio-standards/prototypes/common/objects/Prototype.BoilerHotWater.rb +2 -2
  181. data/lib/openstudio-standards/prototypes/common/objects/Prototype.CentralAirSourceHeatPump.rb +2 -2
  182. data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilCoolingDXSingleSpeed.rb +3 -3
  183. data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilCoolingDXTwoSpeed.rb +1 -1
  184. data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilCoolingWater.rb +2 -2
  185. data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilCoolingWaterToAirHeatPumpEquationFit.rb +2 -2
  186. data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilHeatingDXSingleSpeed.rb +1 -1
  187. data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilHeatingElectric.rb +2 -2
  188. data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilHeatingWater.rb +2 -2
  189. data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilHeatingWaterToAirHeatPumpEquationFit.rb +2 -2
  190. data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoolingTower.rb +1 -1
  191. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Fan.rb +4 -3
  192. data/lib/openstudio-standards/prototypes/common/objects/Prototype.FanConstantVolume.rb +7 -8
  193. data/lib/openstudio-standards/prototypes/common/objects/Prototype.FanOnOff.rb +7 -8
  194. data/lib/openstudio-standards/prototypes/common/objects/Prototype.FanVariableVolume.rb +13 -14
  195. data/lib/openstudio-standards/prototypes/common/objects/Prototype.FanZoneExhaust.rb +7 -5
  196. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.elevators.rb +2 -0
  197. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.exterior_lights.rb +0 -1
  198. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.hvac.rb +25 -14
  199. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.rb +474 -89
  200. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.swh.rb +35 -33
  201. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Pump.rb +3 -0
  202. data/lib/openstudio-standards/prototypes/common/objects/Prototype.PumpVariableSpeed.rb +72 -0
  203. data/lib/openstudio-standards/prototypes/common/objects/Prototype.ServiceWaterHeating.rb +120 -120
  204. data/lib/openstudio-standards/prototypes/common/objects/Prototype.hvac_systems.rb +103 -125
  205. data/lib/openstudio-standards/prototypes/common/objects/Prototype.radiant_system_controls.rb +9 -3
  206. data/lib/openstudio-standards/prototypes/common/objects/Prototype.refrigeration.rb +11 -5
  207. data/lib/openstudio-standards/prototypes/common/objects/Prototype.utilities.rb +26 -14
  208. data/lib/openstudio-standards/prototypes/common/prototype_metaprogramming.rb +270 -247
  209. data/lib/openstudio-standards/prototypes/deer/deer.Model.rb +1 -1
  210. data/lib/openstudio-standards/refs/references.rb +5 -2
  211. data/lib/openstudio-standards/standards/Standards.AirLoopHVAC.rb +41 -28
  212. data/lib/openstudio-standards/standards/Standards.AirTerminalSingleDuctVAVReheat.rb +0 -1
  213. data/lib/openstudio-standards/standards/Standards.BoilerHotWater.rb +0 -1
  214. data/lib/openstudio-standards/standards/Standards.BuildingStory.rb +1 -0
  215. data/lib/openstudio-standards/standards/Standards.ChillerElectricEIR.rb +2 -4
  216. data/lib/openstudio-standards/standards/Standards.CoilCoolingDXMultiSpeed.rb +8 -10
  217. data/lib/openstudio-standards/standards/Standards.CoilCoolingDXSingleSpeed.rb +4 -5
  218. data/lib/openstudio-standards/standards/Standards.CoilCoolingDXTwoSpeed.rb +0 -1
  219. data/lib/openstudio-standards/standards/Standards.CoilCoolingWaterToAirHeatPumpEquationFit.rb +1 -1
  220. data/lib/openstudio-standards/standards/Standards.CoilDX.rb +12 -9
  221. data/lib/openstudio-standards/standards/Standards.CoilHeatingDXMultiSpeed.rb +2 -1
  222. data/lib/openstudio-standards/standards/Standards.CoilHeatingDXSingleSpeed.rb +3 -1
  223. data/lib/openstudio-standards/standards/Standards.CoilHeatingGas.rb +0 -3
  224. data/lib/openstudio-standards/standards/Standards.CoilHeatingGasMultiStage.rb +4 -7
  225. data/lib/openstudio-standards/standards/Standards.CoilHeatingWaterToAirHeatPumpEquationFit.rb +1 -3
  226. data/lib/openstudio-standards/standards/Standards.Construction.rb +124 -118
  227. data/lib/openstudio-standards/standards/Standards.CoolingTower.rb +0 -1
  228. data/lib/openstudio-standards/standards/Standards.CoolingTowerSingleSpeed.rb +0 -1
  229. data/lib/openstudio-standards/standards/Standards.CoolingTowerTwoSpeed.rb +0 -1
  230. data/lib/openstudio-standards/standards/Standards.CoolingTowerVariableSpeed.rb +0 -1
  231. data/lib/openstudio-standards/standards/Standards.Fan.rb +0 -1
  232. data/lib/openstudio-standards/standards/Standards.FanConstantVolume.rb +0 -1
  233. data/lib/openstudio-standards/standards/Standards.FanOnOff.rb +0 -1
  234. data/lib/openstudio-standards/standards/Standards.FanVariableVolume.rb +2 -4
  235. data/lib/openstudio-standards/standards/Standards.FanZoneExhaust.rb +0 -1
  236. data/lib/openstudio-standards/standards/Standards.FluidCooler.rb +10 -3
  237. data/lib/openstudio-standards/standards/Standards.HeaderedPumpsConstantSpeed.rb +0 -1
  238. data/lib/openstudio-standards/standards/Standards.HeaderedPumpsVariableSpeed.rb +0 -1
  239. data/lib/openstudio-standards/standards/Standards.Model.rb +282 -253
  240. data/lib/openstudio-standards/standards/Standards.PlanarSurface.rb +2 -0
  241. data/lib/openstudio-standards/standards/Standards.PlantLoop.rb +11 -9
  242. data/lib/openstudio-standards/standards/Standards.Pump.rb +0 -1
  243. data/lib/openstudio-standards/standards/Standards.PumpConstantSpeed.rb +0 -1
  244. data/lib/openstudio-standards/standards/Standards.PumpVariableSpeed.rb +0 -1
  245. data/lib/openstudio-standards/standards/Standards.ScheduleCompact.rb +0 -1
  246. data/lib/openstudio-standards/standards/Standards.ScheduleConstant.rb +0 -1
  247. data/lib/openstudio-standards/standards/Standards.ScheduleRuleset.rb +103 -121
  248. data/lib/openstudio-standards/standards/Standards.Space.rb +42 -35
  249. data/lib/openstudio-standards/standards/Standards.SpaceType.rb +9 -17
  250. data/lib/openstudio-standards/standards/Standards.SubSurface.rb +25 -27
  251. data/lib/openstudio-standards/standards/Standards.Surface.rb +97 -52
  252. data/lib/openstudio-standards/standards/Standards.ThermalZone.rb +39 -21
  253. data/lib/openstudio-standards/standards/Standards.WaterHeaterMixed.rb +6 -7
  254. data/lib/openstudio-standards/standards/Standards.ZoneHVACComponent.rb +15 -10
  255. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1.Standards.FanVariableVolume.rb +0 -1
  256. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/ashrae_90_1_2004.AirLoopHVAC.rb +10 -2
  257. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/ashrae_90_1_2004.Model.rb +2 -2
  258. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/comstock_ashrae_90_1_2004/data/ashrae_90_1.schedules.json +63 -99
  259. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/comstock_ashrae_90_1_2004/data/comstock_ashrae_90_1_2004.ext_ltg.json +7 -7
  260. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.construction_properties.json +2420 -0
  261. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.economizers.json +32 -0
  262. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.heat_rejection.json +9 -0
  263. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.prototype_inputs.json +68 -38
  264. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.spc_typ.json +105 -40
  265. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.AirLoopHVAC.rb +5 -1
  266. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/comstock_ashrae_90_1_2007/data/ashrae_90_1.schedules.json +63 -99
  267. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/comstock_ashrae_90_1_2007/data/comstock_ashrae_90_1_2007.ext_ltg.json +7 -7
  268. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.construction_properties.json +1460 -0
  269. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.economizers.json +32 -0
  270. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.heat_rejection.json +9 -0
  271. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.prototype_inputs.json +68 -38
  272. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.spc_typ.json +104 -17
  273. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.AirLoopHVAC.rb +25 -13
  274. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.Space.rb +1 -1
  275. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/comstock_ashrae_90_1_2010/data/ashrae_90_1.schedules.json +63 -99
  276. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/comstock_ashrae_90_1_2010/data/comstock_ashrae_90_1_2010.ext_ltg.json +7 -7
  277. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.construction_properties.json +1460 -0
  278. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.economizers.json +64 -0
  279. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.energy_recovery.json +52 -0
  280. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.heat_rejection.json +9 -0
  281. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.prototype_inputs.json +68 -38
  282. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.spc_typ.json +112 -25
  283. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.AirLoopHVAC.rb +21 -7
  284. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.WaterHeaterMixed.rb +1 -1
  285. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/comstock_ashrae_90_1_2013/data/ashrae_90_1.schedules.json +63 -99
  286. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/comstock_ashrae_90_1_2013/data/comstock_ashrae_90_1_2013.ext_ltg.json +7 -7
  287. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.boilers.json +1 -1
  288. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.chillers.json +2 -2
  289. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.construction_properties.json +1460 -0
  290. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.economizers.json +64 -0
  291. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.energy_recovery.json +104 -0
  292. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.heat_rejection.json +9 -0
  293. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.prototype_inputs.json +70 -40
  294. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.spc_typ.json +172 -55
  295. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.water_heaters.json +4 -4
  296. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.water_source_heat_pumps_heating.json +1 -1
  297. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.AirLoopHVAC.rb +456 -0
  298. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.AirTerminalSingleDuctVAVReheat.rb +24 -0
  299. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.CoolingTower.rb +19 -0
  300. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.CoolingTowerSingleSpeed.rb +5 -0
  301. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.CoolingTowerTwoSpeed.rb +5 -0
  302. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.CoolingTowerVariableSpeed.rb +16 -0
  303. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.FanVariableVolume.rb +37 -0
  304. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.Space.rb +189 -0
  305. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.ThermalZone.rb +57 -0
  306. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.ZoneHVACComponent.rb +22 -0
  307. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.rb +16 -0
  308. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.boilers.json +68 -0
  309. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.chillers.json +490 -0
  310. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.construction_properties.json +21244 -0
  311. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.construction_sets.json +2111 -0
  312. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.economizers.json +676 -0
  313. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.elevators.json +372 -0
  314. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.energy_recovery.json +1096 -0
  315. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.ext_ltg.json +169 -0
  316. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.heat_pumps.json +532 -0
  317. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.heat_pumps_heating.json +164 -0
  318. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.heat_rejection.json +49 -0
  319. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.motors.json +274 -0
  320. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.prototype_inputs.json +3094 -0
  321. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.ref_cases.json +854 -0
  322. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.ref_lnup.json +562 -0
  323. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.refrigeration_compressors.json +58 -0
  324. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.refrigeration_condenser.json +238 -0
  325. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.refrigeration_system.json +12 -0
  326. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.refrigeration_walkins.json +1316 -0
  327. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.spc_typ.json +23067 -0
  328. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.unitary_acs.json +648 -0
  329. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.water_heaters.json +72 -0
  330. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.water_source_heat_pumps.json +31 -0
  331. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.water_source_heat_pumps_heating.json +13 -0
  332. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.AirLoopHVAC.rb +456 -0
  333. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.AirTerminalSingleDuctVAVReheat.rb +24 -0
  334. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.CoolingTower.rb +19 -0
  335. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.CoolingTowerSingleSpeed.rb +5 -0
  336. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.CoolingTowerTwoSpeed.rb +5 -0
  337. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.CoolingTowerVariableSpeed.rb +16 -0
  338. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.FanVariableVolume.rb +37 -0
  339. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Space.rb +189 -0
  340. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.ThermalZone.rb +57 -0
  341. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.ZoneHVACComponent.rb +22 -0
  342. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.rb +16 -0
  343. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.boilers.json +68 -0
  344. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.chillers.json +490 -0
  345. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.construction_properties.json +21244 -0
  346. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.construction_sets.json +2111 -0
  347. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.economizers.json +676 -0
  348. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.elevators.json +372 -0
  349. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.energy_recovery.json +1096 -0
  350. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.ext_ltg.json +169 -0
  351. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.heat_pumps.json +664 -0
  352. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.heat_pumps_heating.json +204 -0
  353. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.heat_rejection.json +49 -0
  354. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.motors.json +274 -0
  355. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.prototype_inputs.json +3094 -0
  356. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.ref_cases.json +854 -0
  357. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.ref_lnup.json +562 -0
  358. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.refrigeration_compressors.json +58 -0
  359. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.refrigeration_condenser.json +238 -0
  360. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.refrigeration_system.json +12 -0
  361. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.refrigeration_walkins.json +1316 -0
  362. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.spc_typ.json +23067 -0
  363. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.unitary_acs.json +671 -0
  364. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.water_heaters.json +72 -0
  365. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.water_source_heat_pumps.json +31 -0
  366. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.water_source_heat_pumps_heating.json +13 -0
  367. data/lib/openstudio-standards/standards/ashrae_90_1/data/ashrae_90_1.constructions.json +1662 -332
  368. data/lib/openstudio-standards/standards/ashrae_90_1/data/ashrae_90_1.materials.json +5049 -289
  369. data/lib/openstudio-standards/standards/ashrae_90_1/data/ashrae_90_1.schedules.json +1743 -161
  370. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/comstock_doe_ref_1980_2004/data/ashrae_90_1.schedules.json +63 -99
  371. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/comstock_doe_ref_1980_2004/data/comstock_doe_ref_1980_2004.ext_ltg.json +11 -11
  372. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.heat_rejection.json +9 -0
  373. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.prototype_inputs.json +8 -8
  374. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.spc_typ.json +9 -9
  375. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.Model.rb +4 -4
  376. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/comstock_doe_ref_pre_1980/data/ashrae_90_1.schedules.json +63 -99
  377. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/comstock_doe_ref_pre_1980/data/comstock_doe_ref_pre_1980.ext_ltg.json +10 -10
  378. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.heat_rejection.json +9 -0
  379. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.prototype_inputs.json +7 -7
  380. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.spc_typ.json +9 -9
  381. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.Model.rb +4 -4
  382. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/data/nrel_zne_ready_2017.heat_rejection.json +9 -0
  383. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.AirLoopHVAC.rb +0 -1
  384. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.Model.rb +4 -4
  385. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.PlantLoop.rb +1 -1
  386. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.ZoneHVACComponent.rb +1 -1
  387. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/data/ze_aedg_multifamily.heat_rejection.json +9 -0
  388. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/data/ze_aedg_multifamily.water_heaters.json +2 -2
  389. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.AirLoopHVAC.rb +3 -6
  390. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.Model.rb +4 -4
  391. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.PlantLoop.rb +1 -1
  392. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.ZoneHVACComponent.rb +1 -1
  393. data/lib/openstudio-standards/standards/cbes/cbes.Model.rb +1 -3
  394. data/lib/openstudio-standards/standards/cbes/cbes.rb +1 -1
  395. data/lib/openstudio-standards/standards/deer/deer.AirLoopHVAC.rb +8 -13
  396. data/lib/openstudio-standards/standards/deer/deer.Model.rb +2 -2
  397. data/lib/openstudio-standards/standards/deer/deer.PlanarSurface.rb +2 -0
  398. data/lib/openstudio-standards/standards/deer/deer.Space.rb +1 -1
  399. data/lib/openstudio-standards/standards/deer/deer_2011/deer_2011.rb +0 -1
  400. data/lib/openstudio-standards/standards/deer/deer_2014/deer_2014.Space.rb +0 -1
  401. data/lib/openstudio-standards/standards/deer/deer_2014/deer_2014.rb +0 -1
  402. data/lib/openstudio-standards/standards/deer/deer_2015/deer_2015.Space.rb +0 -1
  403. data/lib/openstudio-standards/standards/deer/deer_2017/deer_2017.Space.rb +0 -1
  404. data/lib/openstudio-standards/standards/deer/deer_2020/deer_2020.AirLoopHVAC.rb +1 -1
  405. data/lib/openstudio-standards/standards/deer/deer_2020/deer_2020.FanVariableVolume.rb +1 -1
  406. data/lib/openstudio-standards/standards/deer/deer_2020/deer_2020.Space.rb +0 -1
  407. data/lib/openstudio-standards/standards/deer/deer_2025/deer_2025.AirLoopHVAC.rb +1 -1
  408. data/lib/openstudio-standards/standards/deer/deer_2025/deer_2025.FanVariableVolume.rb +1 -1
  409. data/lib/openstudio-standards/standards/deer/deer_2025/deer_2025.Space.rb +0 -1
  410. data/lib/openstudio-standards/standards/deer/deer_2030/deer_2030.AirLoopHVAC.rb +1 -1
  411. data/lib/openstudio-standards/standards/deer/deer_2030/deer_2030.FanVariableVolume.rb +1 -1
  412. data/lib/openstudio-standards/standards/deer/deer_2030/deer_2030.Space.rb +0 -1
  413. data/lib/openstudio-standards/standards/deer/deer_2035/deer_2035.AirLoopHVAC.rb +1 -1
  414. data/lib/openstudio-standards/standards/deer/deer_2035/deer_2035.FanVariableVolume.rb +1 -1
  415. data/lib/openstudio-standards/standards/deer/deer_2035/deer_2035.Space.rb +0 -1
  416. data/lib/openstudio-standards/standards/deer/deer_2040/deer_2040.AirLoopHVAC.rb +1 -1
  417. data/lib/openstudio-standards/standards/deer/deer_2040/deer_2040.FanVariableVolume.rb +1 -1
  418. data/lib/openstudio-standards/standards/deer/deer_2040/deer_2040.Space.rb +0 -1
  419. data/lib/openstudio-standards/standards/deer/deer_2045/deer_2045.AirLoopHVAC.rb +1 -1
  420. data/lib/openstudio-standards/standards/deer/deer_2045/deer_2045.FanVariableVolume.rb +1 -1
  421. data/lib/openstudio-standards/standards/deer/deer_2045/deer_2045.Space.rb +0 -1
  422. data/lib/openstudio-standards/standards/deer/deer_2050/deer_2050.AirLoopHVAC.rb +1 -1
  423. data/lib/openstudio-standards/standards/deer/deer_2050/deer_2050.FanVariableVolume.rb +1 -1
  424. data/lib/openstudio-standards/standards/deer/deer_2050/deer_2050.Space.rb +0 -1
  425. data/lib/openstudio-standards/standards/deer/deer_2055/deer_2055.AirLoopHVAC.rb +1 -1
  426. data/lib/openstudio-standards/standards/deer/deer_2055/deer_2055.FanVariableVolume.rb +1 -1
  427. data/lib/openstudio-standards/standards/deer/deer_2055/deer_2055.Space.rb +0 -1
  428. data/lib/openstudio-standards/standards/deer/deer_2060/deer_2060.AirLoopHVAC.rb +1 -1
  429. data/lib/openstudio-standards/standards/deer/deer_2060/deer_2060.FanVariableVolume.rb +1 -1
  430. data/lib/openstudio-standards/standards/deer/deer_2060/deer_2060.Space.rb +0 -1
  431. data/lib/openstudio-standards/standards/deer/deer_2065/deer_2065.AirLoopHVAC.rb +1 -1
  432. data/lib/openstudio-standards/standards/deer/deer_2065/deer_2065.FanVariableVolume.rb +1 -1
  433. data/lib/openstudio-standards/standards/deer/deer_2065/deer_2065.Space.rb +0 -1
  434. data/lib/openstudio-standards/standards/deer/deer_2070/deer_2070.AirLoopHVAC.rb +1 -1
  435. data/lib/openstudio-standards/standards/deer/deer_2070/deer_2070.FanVariableVolume.rb +1 -1
  436. data/lib/openstudio-standards/standards/deer/deer_2070/deer_2070.Space.rb +0 -1
  437. data/lib/openstudio-standards/standards/deer/deer_2075/deer_2075.AirLoopHVAC.rb +1 -1
  438. data/lib/openstudio-standards/standards/deer/deer_2075/deer_2075.FanVariableVolume.rb +1 -1
  439. data/lib/openstudio-standards/standards/deer/deer_2075/deer_2075.Space.rb +0 -1
  440. data/lib/openstudio-standards/standards/icc_iecc/icc_iecc_2015/icc_iecc_2015.rb +0 -1
  441. data/lib/openstudio-standards/standards/necb/BTAPPRE1980/btap_pre1980.rb +28 -7
  442. data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_3_and_8_single_speed.rb +16 -2
  443. data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_4.rb +15 -0
  444. data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_6.rb +14 -0
  445. data/lib/openstudio-standards/standards/necb/ECMS/data/erv.json +11 -7
  446. data/lib/openstudio-standards/standards/necb/ECMS/data/pv.json +112 -0
  447. data/lib/openstudio-standards/standards/necb/ECMS/data/unitary_acs.json +50 -0
  448. data/lib/openstudio-standards/standards/necb/ECMS/ecms.rb +21 -8
  449. data/lib/openstudio-standards/standards/necb/ECMS/erv.rb +17 -6
  450. data/lib/openstudio-standards/standards/necb/ECMS/hvac_systems.rb +142 -6
  451. data/lib/openstudio-standards/standards/necb/ECMS/nv.rb +189 -0
  452. data/lib/openstudio-standards/standards/necb/ECMS/pv_ground.rb +104 -0
  453. data/lib/openstudio-standards/standards/necb/NECB2011/building_envelope.rb +19 -13
  454. data/lib/openstudio-standards/standards/necb/NECB2011/data/erv.json +1 -1
  455. data/lib/openstudio-standards/standards/necb/NECB2011/data/geometry/LowriseApartment.osm +39278 -0
  456. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_1_single_speed.rb +17 -1
  457. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_2_and_5.rb +15 -0
  458. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_3_and_8_single_speed.rb +14 -2
  459. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_4.rb +13 -0
  460. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_6.rb +12 -0
  461. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_systems.rb +154 -12
  462. data/lib/openstudio-standards/standards/necb/NECB2011/lighting.rb +21 -3
  463. data/lib/openstudio-standards/standards/necb/NECB2011/necb_2011.rb +140 -21
  464. data/lib/openstudio-standards/standards/necb/NECB2011/nv.md +74 -0
  465. data/lib/openstudio-standards/standards/necb/NECB2011/pv_ground.md +44 -0
  466. data/lib/openstudio-standards/standards/necb/NECB2011/qaqc/necb_qaqc.rb +2 -2
  467. data/lib/openstudio-standards/standards/necb/NECB2011/qaqc/qaqc_resources/neb_end_use_prices.csv +39 -84
  468. data/lib/openstudio-standards/standards/oeesc/oeesc_2014/oeesc_2014.rb +0 -1
  469. data/lib/openstudio-standards/standards/standard.rb +6 -5
  470. data/lib/openstudio-standards/utilities/Add_template_field_to_json.rb +3 -3
  471. data/lib/openstudio-standards/utilities/convert_surfaces_to_adiabatic_necb_8426.rb +54 -54
  472. data/lib/openstudio-standards/utilities/generate_prototype_database.rb +2 -2
  473. data/lib/openstudio-standards/utilities/generate_space_types.rb +3 -3
  474. data/lib/openstudio-standards/utilities/logging.rb +7 -7
  475. data/lib/openstudio-standards/utilities/necb_to_epw_map.rb +14 -14
  476. data/lib/openstudio-standards/utilities/os_sim_extract.rb +25 -25
  477. data/lib/openstudio-standards/utilities/rename_surfaces.rb +10 -13
  478. data/lib/openstudio-standards/utilities/round_surf_coords.rb +18 -20
  479. data/lib/openstudio-standards/utilities/sched_create.rb +39 -41
  480. data/lib/openstudio-standards/utilities/set_mult_to_adiabatic.rb +31 -31
  481. data/lib/openstudio-standards/utilities/simulation.rb +5 -3
  482. data/lib/openstudio-standards/utilities/speacetype_map_converter.rb +10 -11
  483. data/lib/openstudio-standards/utilities/sqlfile.rb +6 -8
  484. data/lib/openstudio-standards/utilities/template_measure/measure.rb +108 -0
  485. data/lib/openstudio-standards/utilities/template_measure/measure.xml +162 -0
  486. data/lib/openstudio-standards/utilities/template_measure/resources/BTAPMeasureHelper.rb +448 -0
  487. data/lib/openstudio-standards/utilities/template_measure/tests/test.rb +160 -0
  488. data/lib/openstudio-standards/utilities/weatherData1_xlsx_to_json.rb +23 -26
  489. data/lib/openstudio-standards/version.rb +1 -1
  490. data/lib/openstudio-standards/weather/Weather.Model.rb +74 -80
  491. data/lib/openstudio-standards/weather/Weather.stat_file.rb +17 -17
  492. metadata +217 -2
@@ -1,18 +1,21 @@
1
-
2
1
  # Custom changes for the LargeHotel prototype.
3
2
  # These are changes that are inconsistent with other prototype
4
3
  # building types.
5
4
  module LargeHotel
6
5
  def model_custom_hvac_tweaks(building_type, climate_zone, prototype_input, model)
7
- OpenStudio.logFree(OpenStudio::Info, 'openstudio.model.Model', 'Started building type specific adjustments')
6
+ OpenStudio.logFree(OpenStudio::Info, 'openstudio.model.Model', 'Started building type specific HVAC adjustments')
8
7
 
9
8
  # add transformer
10
- transformer_efficiency = nil
9
+ # efficiency based on a 150 kVA transformer
11
10
  case template
12
11
  when '90.1-2004', '90.1-2007'
13
12
  transformer_efficiency = 0.971
14
13
  when '90.1-2010', '90.1-2013'
15
14
  transformer_efficiency = 0.983
15
+ when '90.1-2016', '90.1-2019'
16
+ transformer_efficiency = 0.988
17
+ else
18
+ transformer_efficiency = nil
16
19
  end
17
20
  return true unless !transformer_efficiency.nil?
18
21
 
@@ -35,9 +38,9 @@ module LargeHotel
35
38
  end
36
39
 
37
40
  exhaust_fan_space_types.each do |space_type_name|
38
- space_type_data = standards_lookup_table_first(table_name: 'space_types', search_criteria:{'template' => template,
39
- 'building_type' => building_type,
40
- 'space_type' => space_type_name})
41
+ space_type_data = standards_lookup_table_first(table_name: 'space_types', search_criteria: { 'template' => template,
42
+ 'building_type' => building_type,
43
+ 'space_type' => space_type_name })
41
44
  if space_type_data.nil?
42
45
  OpenStudio.logFree(OpenStudio::Error, 'openstudio.model.Model', "Unable to find space type #{template}-#{building_type}-#{space_type_name}")
43
46
  return false
@@ -123,6 +126,9 @@ module LargeHotel
123
126
 
124
127
  OpenStudio.logFree(OpenStudio::Info, 'openstudio.model.Model', 'Finished building type specific adjustments')
125
128
 
129
+ # Guestroom vacancy controls
130
+ model_add_guestroom_vacancy_controls(model, 'LargeHotel')
131
+
126
132
  return true
127
133
  end
128
134
 
@@ -138,14 +144,14 @@ module LargeHotel
138
144
  elec_equip_def1.setName('Kitchen Electric Equipment Definition1')
139
145
  elec_equip_def2.setName('Kitchen Electric Equipment Definition2')
140
146
  case template
141
- when '90.1-2004', '90.1-2007', '90.1-2010', '90.1-2013'
147
+ when '90.1-2004', '90.1-2007', '90.1-2010', '90.1-2013', '90.1-2016', '90.1-2019'
142
148
  elec_equip_def1.setFractionLatent(0)
143
149
  elec_equip_def1.setFractionRadiant(0.25)
144
150
  elec_equip_def1.setFractionLost(0)
145
151
  elec_equip_def2.setFractionLatent(0)
146
152
  elec_equip_def2.setFractionRadiant(0.25)
147
153
  elec_equip_def2.setFractionLost(0)
148
- if template == '90.1-2013'
154
+ if template == '90.1-2013' || template == '90.1-2016' || template == '90.1-2019'
149
155
  elec_equip_def1.setDesignLevel(457.7)
150
156
  elec_equip_def2.setDesignLevel(285)
151
157
  else
@@ -179,11 +185,11 @@ module LargeHotel
179
185
  model.getWaterHeaterMixeds.sort.each do |water_heater|
180
186
  if water_heater.name.to_s.include?('300gal')
181
187
  water_heater.resetAmbientTemperatureSchedule
182
- water_heater.setAmbientTemperatureIndicator('ThermalZone')
188
+ water_heater.setAmbientTemperatureIndicator('ThermalZone')
183
189
  water_heater.setAmbientTemperatureThermalZone(model.getThermalZoneByName('Basement ZN').get)
184
190
  elsif water_heater.name.to_s.include?('6.0gal')
185
191
  water_heater.resetAmbientTemperatureSchedule
186
- water_heater.setAmbientTemperatureIndicator('ThermalZone')
192
+ water_heater.setAmbientTemperatureIndicator('ThermalZone')
187
193
  water_heater.setAmbientTemperatureThermalZone(model.getThermalZoneByName('Kitchen_Flr_6 ZN').get)
188
194
  end
189
195
  end
@@ -191,21 +197,41 @@ module LargeHotel
191
197
 
192
198
  def model_custom_swh_tweaks(model, building_type, climate_zone, prototype_input)
193
199
  update_waterheater_ambient_parameters(model)
194
-
195
200
  return true
196
201
  end
197
202
 
198
203
  def model_custom_geometry_tweaks(building_type, climate_zone, prototype_input, model)
204
+ # Set original building North axis
205
+ model_set_building_north_axis(model, 0.0)
199
206
 
200
207
  return true
201
208
  end
202
209
 
203
210
  def air_terminal_single_duct_vav_reheat_apply_initial_prototype_damper_position(air_terminal_single_duct_vav_reheat, zone_oa_per_area)
204
- min_damper_position = template == '90.1-2010' || template == '90.1-2013' ? 0.2 : 0.3
211
+ min_damper_position = template == '90.1-2010' || template == '90.1-2013' || template == '90.1-2016' || template == '90.1-2019' ? 0.2 : 0.3
205
212
 
206
213
  # Set the minimum flow fraction
207
214
  air_terminal_single_duct_vav_reheat.setConstantMinimumAirFlowFraction(min_damper_position)
208
215
 
209
216
  return true
210
217
  end
218
+
219
+ # Type of SAT reset for this building type
220
+ #
221
+ # @param air_loop_hvac [OpenStudio::model::AirLoopHVAC] Airloop
222
+ # @return [String] Returns type of SAT reset
223
+ def air_loop_hvac_supply_air_temperature_reset_type(air_loop_hvac)
224
+ return 'oa'
225
+ end
226
+
227
+ # List transfer air target and source zones, and airflow (cfm)
228
+ #
229
+ # code_sections [90.1-2019_6.5.7.1], [90.1-2016_6.5.7.1]
230
+ # @return [Hash] target zones (key) and source zones (value) and air flow (value)
231
+ def model_transfer_air_target_and_source_zones(model)
232
+ model_transfer_air_target_and_source_zones_hash = {
233
+ 'Laundry_Flr_1 ZN' => ['Lobby_Flr_1 ZN', 500.0]
234
+ }
235
+ return model_transfer_air_target_and_source_zones_hash
236
+ end
211
237
  end
@@ -1,17 +1,21 @@
1
-
2
1
  # Custom changes for the LargeOffice prototype.
3
2
  # These are changes that are inconsistent with other prototype
4
3
  # building types.
5
4
  module LargeOffice
6
5
  def model_custom_hvac_tweaks(building_type, climate_zone, prototype_input, model)
6
+ OpenStudio.logFree(OpenStudio::Info, 'openstudio.model.Model', 'Started building type specific HVAC adjustments')
7
7
 
8
8
  # add transformer
9
- transformer_efficiency = nil
9
+ # efficiency based on a 500 kVA transformer
10
10
  case template
11
11
  when '90.1-2004', '90.1-2007'
12
12
  transformer_efficiency = 0.979
13
13
  when '90.1-2010', '90.1-2013'
14
14
  transformer_efficiency = 0.987
15
+ when '90.1-2016', '90.1-2019'
16
+ transformer_efficiency = 0.991
17
+ else
18
+ transformer_efficiency = nil
15
19
  end
16
20
  return true unless !transformer_efficiency.nil?
17
21
 
@@ -65,12 +69,11 @@ module LargeOffice
65
69
  end
66
70
  end
67
71
 
68
- # TODO: replace CoolingTowerTwoSpeed with a FluidCoolerTwoSpeed once the simulation failures are resolved
69
-
70
72
  # set infiltration schedule for plenums
71
73
  # @todo remove once infil_sch in Standards.Space pulls from default building infiltration schedule
72
74
  model.getSpaces.each do |space|
73
75
  next unless space.name.get.to_s.include? 'Plenum'
76
+
74
77
  # add infiltration if DOE Ref vintage
75
78
  if template == 'DOE Ref 1980-2004' || template == 'DOE Ref Pre-1980'
76
79
  # Create an infiltration rate object for this space
@@ -90,7 +93,7 @@ module LargeOffice
90
93
  end
91
94
  end
92
95
  end
93
-
96
+
94
97
  model.getPlantLoops.sort.each do |plant_loop|
95
98
  if plant_loop.name.to_s == 'Heat Pump Loop'
96
99
  plant_loop.setFluidType('EthyleneGlycol')
@@ -105,141 +108,213 @@ module LargeOffice
105
108
  OpenStudio.logFree(OpenStudio::Info, 'openstudio.model.Model', 'Adjusting daylight sensor positions and fractions')
106
109
 
107
110
  adjustments = [
108
- { '90.1-2010' => { 'Perimeter_bot_ZN_1' => { 'sensor_1_frac' => 0.05,
109
- 'sensor_2_frac' => 0.51,
110
- 'sensor_1_xyz' => [3.1242, 1.6764, 0.762],
111
- 'sensor_2_xyz' => [36.5536, 1.6764, 0.762],
112
- },
113
- 'Perimeter_bot_ZN_2' => { 'sensor_1_frac' => 0.49,
114
- 'sensor_2_frac' => 0.08,
115
- 'sensor_1_xyz' => [71.4308, 24.3691, 0.762],
116
- 'sensor_2_xyz' => [71.4308, 3.1242, 0.762],
117
- },
118
- 'Perimeter_bot_ZN_3' => { 'sensor_1_frac' => 0.51,
119
- 'sensor_2_frac' => 0.05,
120
- 'sensor_1_xyz' => [36.5536, 47.0617, 0.762],
121
- 'sensor_2_xyz' => [70.0034, 47.0617, 0.762],
122
- },
123
- 'Perimeter_bot_ZN_4' => { 'sensor_1_frac' => 0.49,
124
- 'sensor_2_frac' => 0.08,
125
- 'sensor_1_xyz' => [1.6764, 24.3691, 0.762],
126
- 'sensor_2_xyz' => [1.6764, 45.6194, 0.762],
127
- },
128
- 'Perimeter_mid_ZN_1' => { 'sensor_1_frac' => 0.05,
129
- 'sensor_2_frac' => 0.51,
130
- 'sensor_1_xyz' => [3.1242, 1.6764, 17.526],
131
- 'sensor_2_xyz' => [36.5536, 1.6764, 17.526],
132
- },
133
- 'Perimeter_mid_ZN_2' => { 'sensor_1_frac' => 0.49,
134
- 'sensor_2_frac' => 0.08,
135
- 'sensor_1_xyz' => [71.4308, 24.3691, 17.526],
136
- 'sensor_2_xyz' => [71.4308, 3.1242, 17.526],
137
- },
138
- 'Perimeter_mid_ZN_3' => { 'sensor_1_frac' => 0.51,
139
- 'sensor_2_frac' => 0.05,
140
- 'sensor_1_xyz' => [36.5536, 47.0617, 17.526],
141
- 'sensor_2_xyz' => [70.0034, 47.0617, 17.526],
142
- },
143
- 'Perimeter_mid_ZN_4' => { 'sensor_1_frac' => 0.49,
144
- 'sensor_2_frac' => 0.08,
145
- 'sensor_1_xyz' => [1.6764, 24.3691, 17.526],
146
- 'sensor_2_xyz' => [1.6764, 45.6194, 17.526],
147
- },
148
- 'Perimeter_top_ZN_1' => { 'sensor_1_frac' => 0.05,
149
- 'sensor_2_frac' => 0.51,
150
- 'sensor_1_xyz' => [3.1242, 1.6764, 34.29],
151
- 'sensor_2_xyz' => [36.5536, 1.6764, 34.29],
152
- },
153
- 'Perimeter_top_ZN_2' => { 'sensor_1_frac' => 0.49,
154
- 'sensor_2_frac' => 0.08,
155
- 'sensor_1_xyz' => [71.4308, 24.3691, 34.29],
156
- 'sensor_2_xyz' => [71.4308, 3.1242, 34.29],
157
- },
158
- 'Perimeter_top_ZN_3' => { 'sensor_1_frac' => 0.51,
159
- 'sensor_2_frac' => 0.05,
160
- 'sensor_1_xyz' => [36.5536, 47.0617, 34.29],
161
- 'sensor_2_xyz' => [70.0034, 47.0617, 34.29],
162
- },
163
- 'Perimeter_top_ZN_4' => { 'sensor_1_frac' => 0.49,
164
- 'sensor_2_frac' => 0.08,
165
- 'sensor_1_xyz' => [1.6764, 24.3691, 34.29],
166
- 'sensor_2_xyz' => [1.6764, 45.6194, 34.29],
167
- },
168
- },
169
- '90.1-2013' => { 'Perimeter_bot_ZN_1' => { 'sensor_1_frac' => 0.3857,
170
- 'sensor_2_frac' => 0.1385,
171
- 'sensor_1_xyz' => [36.576, 1.6764, 0.762],
172
- 'sensor_2_xyz' => [36.576, 3.3528, 0.762],
173
- },
174
- 'Perimeter_bot_ZN_2' => { 'sensor_1_frac' => 0.3857,
175
- 'sensor_2_frac' => 0.1385,
176
- 'sensor_1_xyz' => [71.4308, 24.384, 0.762],
177
- 'sensor_2_xyz' => [69.7544, 24.384, 0.762],
178
- },
179
- 'Perimeter_bot_ZN_3' => { 'sensor_1_frac' => 0.3857,
180
- 'sensor_2_frac' => 0.1385,
181
- 'sensor_1_xyz' => [36.576, 47.0617, 0.762],
182
- 'sensor_2_xyz' => [36.576, 45.3847, 0.762],
183
- },
184
- 'Perimeter_bot_ZN_4' => { 'sensor_1_frac' => 0.3857,
185
- 'sensor_2_frac' => 0.1385,
186
- 'sensor_1_xyz' => [1.6764, 24.384, 0.762],
187
- 'sensor_2_xyz' => [3.3528, 24.384, 0.762],
188
- },
189
- 'Perimeter_mid_ZN_1' => { 'sensor_1_frac' => 0.3857,
190
- 'sensor_2_frac' => 0.1385,
191
- 'sensor_1_xyz' => [36.576, 1.6764, 17.526],
192
- 'sensor_2_xyz' => [36.576, 3.3528, 17.526],
193
- },
194
- 'Perimeter_mid_ZN_2' => { 'sensor_1_frac' => 0.3857,
195
- 'sensor_2_frac' => 0.1385,
196
- 'sensor_1_xyz' => [71.4308, 24.384, 17.526],
197
- 'sensor_2_xyz' => [69.7544, 24.384, 17.526],
198
- },
199
- 'Perimeter_mid_ZN_3' => { 'sensor_1_frac' => 0.3857,
200
- 'sensor_2_frac' => 0.1385,
201
- 'sensor_1_xyz' => [36.576, 47.0617, 17.526],
202
- 'sensor_2_xyz' => [36.576, 45.3847, 17.526],
203
- },
204
- 'Perimeter_mid_ZN_4' => { 'sensor_1_frac' => 0.3857,
205
- 'sensor_2_frac' => 0.1385,
206
- 'sensor_1_xyz' => [1.6764, 24.384, 17.526],
207
- 'sensor_2_xyz' => [3.3528, 24.384, 17.526],
208
- },
209
- 'Perimeter_top_ZN_1' => { 'sensor_1_frac' => 0.3857,
210
- 'sensor_2_frac' => 0.1385,
211
- 'sensor_1_xyz' => [36.576, 1.6764, 34.29],
212
- 'sensor_2_xyz' => [36.576, 3.3528, 34.29],
213
- },
214
- 'Perimeter_top_ZN_2' => { 'sensor_1_frac' => 0.3857,
215
- 'sensor_2_frac' => 0.1385,
216
- 'sensor_1_xyz' => [71.4308, 24.384, 34.29],
217
- 'sensor_2_xyz' => [69.7544, 24.384, 34.29],
218
- },
219
- 'Perimeter_top_ZN_3' => { 'sensor_1_frac' => 0.3857,
220
- 'sensor_2_frac' => 0.1385,
221
- 'sensor_1_xyz' => [36.576, 47.0617, 34.29],
222
- 'sensor_2_xyz' => [36.576, 45.3847, 34.29],
223
- },
224
- 'Perimeter_top_ZN_4' => { 'sensor_1_frac' => 0.3857,
225
- 'sensor_2_frac' => 0.1385,
226
- 'sensor_1_xyz' => [1.6764, 24.384, 34.29],
227
- 'sensor_2_xyz' => [3.3528, 24.384, 34.29],
228
- },
229
- },
230
- }
231
- ]
111
+ { '90.1-2010' => { 'Perimeter_bot_ZN_1' => { 'sensor_1_frac' => 0.05,
112
+ 'sensor_2_frac' => 0.51,
113
+ 'sensor_1_xyz' => [3.1242, 1.6764, 0.762],
114
+ 'sensor_2_xyz' => [36.5536, 1.6764, 0.762] },
115
+ 'Perimeter_bot_ZN_2' => { 'sensor_1_frac' => 0.49,
116
+ 'sensor_2_frac' => 0.08,
117
+ 'sensor_1_xyz' => [71.4308, 24.3691, 0.762],
118
+ 'sensor_2_xyz' => [71.4308, 3.1242, 0.762] },
119
+ 'Perimeter_bot_ZN_3' => { 'sensor_1_frac' => 0.51,
120
+ 'sensor_2_frac' => 0.05,
121
+ 'sensor_1_xyz' => [36.5536, 47.0617, 0.762],
122
+ 'sensor_2_xyz' => [70.0034, 47.0617, 0.762] },
123
+ 'Perimeter_bot_ZN_4' => { 'sensor_1_frac' => 0.49,
124
+ 'sensor_2_frac' => 0.08,
125
+ 'sensor_1_xyz' => [1.6764, 24.3691, 0.762],
126
+ 'sensor_2_xyz' => [1.6764, 45.6194, 0.762] },
127
+ 'Perimeter_mid_ZN_1' => { 'sensor_1_frac' => 0.05,
128
+ 'sensor_2_frac' => 0.51,
129
+ 'sensor_1_xyz' => [3.1242, 1.6764, 17.526],
130
+ 'sensor_2_xyz' => [36.5536, 1.6764, 17.526] },
131
+ 'Perimeter_mid_ZN_2' => { 'sensor_1_frac' => 0.49,
132
+ 'sensor_2_frac' => 0.08,
133
+ 'sensor_1_xyz' => [71.4308, 24.3691, 17.526],
134
+ 'sensor_2_xyz' => [71.4308, 3.1242, 17.526] },
135
+ 'Perimeter_mid_ZN_3' => { 'sensor_1_frac' => 0.51,
136
+ 'sensor_2_frac' => 0.05,
137
+ 'sensor_1_xyz' => [36.5536, 47.0617, 17.526],
138
+ 'sensor_2_xyz' => [70.0034, 47.0617, 17.526] },
139
+ 'Perimeter_mid_ZN_4' => { 'sensor_1_frac' => 0.49,
140
+ 'sensor_2_frac' => 0.08,
141
+ 'sensor_1_xyz' => [1.6764, 24.3691, 17.526],
142
+ 'sensor_2_xyz' => [1.6764, 45.6194, 17.526] },
143
+ 'Perimeter_top_ZN_1' => { 'sensor_1_frac' => 0.05,
144
+ 'sensor_2_frac' => 0.51,
145
+ 'sensor_1_xyz' => [3.1242, 1.6764, 34.29],
146
+ 'sensor_2_xyz' => [36.5536, 1.6764, 34.29] },
147
+ 'Perimeter_top_ZN_2' => { 'sensor_1_frac' => 0.49,
148
+ 'sensor_2_frac' => 0.08,
149
+ 'sensor_1_xyz' => [71.4308, 24.3691, 34.29],
150
+ 'sensor_2_xyz' => [71.4308, 3.1242, 34.29] },
151
+ 'Perimeter_top_ZN_3' => { 'sensor_1_frac' => 0.51,
152
+ 'sensor_2_frac' => 0.05,
153
+ 'sensor_1_xyz' => [36.5536, 47.0617, 34.29],
154
+ 'sensor_2_xyz' => [70.0034, 47.0617, 34.29] },
155
+ 'Perimeter_top_ZN_4' => { 'sensor_1_frac' => 0.49,
156
+ 'sensor_2_frac' => 0.08,
157
+ 'sensor_1_xyz' => [1.6764, 24.3691, 34.29],
158
+ 'sensor_2_xyz' => [1.6764, 45.6194, 34.29] } },
159
+ '90.1-2013' => { 'Perimeter_bot_ZN_1' => { 'sensor_1_frac' => 0.3857,
160
+ 'sensor_2_frac' => 0.1385,
161
+ 'sensor_1_xyz' => [36.576, 1.6764, 0.762],
162
+ 'sensor_2_xyz' => [36.576, 3.3528, 0.762] },
163
+ 'Perimeter_bot_ZN_2' => { 'sensor_1_frac' => 0.3857,
164
+ 'sensor_2_frac' => 0.1385,
165
+ 'sensor_1_xyz' => [71.4308, 24.384, 0.762],
166
+ 'sensor_2_xyz' => [69.7544, 24.384, 0.762] },
167
+ 'Perimeter_bot_ZN_3' => { 'sensor_1_frac' => 0.3857,
168
+ 'sensor_2_frac' => 0.1385,
169
+ 'sensor_1_xyz' => [36.576, 47.0617, 0.762],
170
+ 'sensor_2_xyz' => [36.576, 45.3847, 0.762] },
171
+ 'Perimeter_bot_ZN_4' => { 'sensor_1_frac' => 0.3857,
172
+ 'sensor_2_frac' => 0.1385,
173
+ 'sensor_1_xyz' => [1.6764, 24.384, 0.762],
174
+ 'sensor_2_xyz' => [3.3528, 24.384, 0.762] },
175
+ 'Perimeter_mid_ZN_1' => { 'sensor_1_frac' => 0.3857,
176
+ 'sensor_2_frac' => 0.1385,
177
+ 'sensor_1_xyz' => [36.576, 1.6764, 17.526],
178
+ 'sensor_2_xyz' => [36.576, 3.3528, 17.526] },
179
+ 'Perimeter_mid_ZN_2' => { 'sensor_1_frac' => 0.3857,
180
+ 'sensor_2_frac' => 0.1385,
181
+ 'sensor_1_xyz' => [71.4308, 24.384, 17.526],
182
+ 'sensor_2_xyz' => [69.7544, 24.384, 17.526] },
183
+ 'Perimeter_mid_ZN_3' => { 'sensor_1_frac' => 0.3857,
184
+ 'sensor_2_frac' => 0.1385,
185
+ 'sensor_1_xyz' => [36.576, 47.0617, 17.526],
186
+ 'sensor_2_xyz' => [36.576, 45.3847, 17.526] },
187
+ 'Perimeter_mid_ZN_4' => { 'sensor_1_frac' => 0.3857,
188
+ 'sensor_2_frac' => 0.1385,
189
+ 'sensor_1_xyz' => [1.6764, 24.384, 17.526],
190
+ 'sensor_2_xyz' => [3.3528, 24.384, 17.526] },
191
+ 'Perimeter_top_ZN_1' => { 'sensor_1_frac' => 0.3857,
192
+ 'sensor_2_frac' => 0.1385,
193
+ 'sensor_1_xyz' => [36.576, 1.6764, 34.29],
194
+ 'sensor_2_xyz' => [36.576, 3.3528, 34.29] },
195
+ 'Perimeter_top_ZN_2' => { 'sensor_1_frac' => 0.3857,
196
+ 'sensor_2_frac' => 0.1385,
197
+ 'sensor_1_xyz' => [71.4308, 24.384, 34.29],
198
+ 'sensor_2_xyz' => [69.7544, 24.384, 34.29] },
199
+ 'Perimeter_top_ZN_3' => { 'sensor_1_frac' => 0.3857,
200
+ 'sensor_2_frac' => 0.1385,
201
+ 'sensor_1_xyz' => [36.576, 47.0617, 34.29],
202
+ 'sensor_2_xyz' => [36.576, 45.3847, 34.29] },
203
+ 'Perimeter_top_ZN_4' => { 'sensor_1_frac' => 0.3857,
204
+ 'sensor_2_frac' => 0.1385,
205
+ 'sensor_1_xyz' => [1.6764, 24.384, 34.29],
206
+ 'sensor_2_xyz' => [3.3528, 24.384, 34.29] } },
207
+ '90.1-2016' => { 'Perimeter_bot_ZN_1' => { 'sensor_1_frac' => 0.3857,
208
+ 'sensor_2_frac' => 0.1385,
209
+ 'sensor_1_xyz' => [36.576, 1.6764, 0.762],
210
+ 'sensor_2_xyz' => [36.576, 3.3528, 0.762] },
211
+ 'Perimeter_bot_ZN_2' => { 'sensor_1_frac' => 0.3857,
212
+ 'sensor_2_frac' => 0.1385,
213
+ 'sensor_1_xyz' => [71.4308, 24.384, 0.762],
214
+ 'sensor_2_xyz' => [69.7544, 24.384, 0.762] },
215
+ 'Perimeter_bot_ZN_3' => { 'sensor_1_frac' => 0.3857,
216
+ 'sensor_2_frac' => 0.1385,
217
+ 'sensor_1_xyz' => [36.576, 47.0617, 0.762],
218
+ 'sensor_2_xyz' => [36.576, 45.3847, 0.762] },
219
+ 'Perimeter_bot_ZN_4' => { 'sensor_1_frac' => 0.3857,
220
+ 'sensor_2_frac' => 0.1385,
221
+ 'sensor_1_xyz' => [1.6764, 24.384, 0.762],
222
+ 'sensor_2_xyz' => [3.3528, 24.384, 0.762] },
223
+ 'Perimeter_mid_ZN_1' => { 'sensor_1_frac' => 0.3857,
224
+ 'sensor_2_frac' => 0.1385,
225
+ 'sensor_1_xyz' => [36.576, 1.6764, 17.526],
226
+ 'sensor_2_xyz' => [36.576, 3.3528, 17.526] },
227
+ 'Perimeter_mid_ZN_2' => { 'sensor_1_frac' => 0.3857,
228
+ 'sensor_2_frac' => 0.1385,
229
+ 'sensor_1_xyz' => [71.4308, 24.384, 17.526],
230
+ 'sensor_2_xyz' => [69.7544, 24.384, 17.526] },
231
+ 'Perimeter_mid_ZN_3' => { 'sensor_1_frac' => 0.3857,
232
+ 'sensor_2_frac' => 0.1385,
233
+ 'sensor_1_xyz' => [36.576, 47.0617, 17.526],
234
+ 'sensor_2_xyz' => [36.576, 45.3847, 17.526] },
235
+ 'Perimeter_mid_ZN_4' => { 'sensor_1_frac' => 0.3857,
236
+ 'sensor_2_frac' => 0.1385,
237
+ 'sensor_1_xyz' => [1.6764, 24.384, 17.526],
238
+ 'sensor_2_xyz' => [3.3528, 24.384, 17.526] },
239
+ 'Perimeter_top_ZN_1' => { 'sensor_1_frac' => 0.3857,
240
+ 'sensor_2_frac' => 0.1385,
241
+ 'sensor_1_xyz' => [36.576, 1.6764, 34.29],
242
+ 'sensor_2_xyz' => [36.576, 3.3528, 34.29] },
243
+ 'Perimeter_top_ZN_2' => { 'sensor_1_frac' => 0.3857,
244
+ 'sensor_2_frac' => 0.1385,
245
+ 'sensor_1_xyz' => [71.4308, 24.384, 34.29],
246
+ 'sensor_2_xyz' => [69.7544, 24.384, 34.29] },
247
+ 'Perimeter_top_ZN_3' => { 'sensor_1_frac' => 0.3857,
248
+ 'sensor_2_frac' => 0.1385,
249
+ 'sensor_1_xyz' => [36.576, 47.0617, 34.29],
250
+ 'sensor_2_xyz' => [36.576, 45.3847, 34.29] },
251
+ 'Perimeter_top_ZN_4' => { 'sensor_1_frac' => 0.3857,
252
+ 'sensor_2_frac' => 0.1385,
253
+ 'sensor_1_xyz' => [1.6764, 24.384, 34.29],
254
+ 'sensor_2_xyz' => [3.3528, 24.384, 34.29] } },
255
+ '90.1-2019' => { 'Perimeter_bot_ZN_1' => { 'sensor_1_frac' => 0.3857,
256
+ 'sensor_2_frac' => 0.1385,
257
+ 'sensor_1_xyz' => [36.576, 1.6764, 0.762],
258
+ 'sensor_2_xyz' => [36.576, 3.3528, 0.762] },
259
+ 'Perimeter_bot_ZN_2' => { 'sensor_1_frac' => 0.3857,
260
+ 'sensor_2_frac' => 0.1385,
261
+ 'sensor_1_xyz' => [71.4308, 24.384, 0.762],
262
+ 'sensor_2_xyz' => [69.7544, 24.384, 0.762] },
263
+ 'Perimeter_bot_ZN_3' => { 'sensor_1_frac' => 0.3857,
264
+ 'sensor_2_frac' => 0.1385,
265
+ 'sensor_1_xyz' => [36.576, 47.0617, 0.762],
266
+ 'sensor_2_xyz' => [36.576, 45.3847, 0.762] },
267
+ 'Perimeter_bot_ZN_4' => { 'sensor_1_frac' => 0.3857,
268
+ 'sensor_2_frac' => 0.1385,
269
+ 'sensor_1_xyz' => [1.6764, 24.384, 0.762],
270
+ 'sensor_2_xyz' => [3.3528, 24.384, 0.762] },
271
+ 'Perimeter_mid_ZN_1' => { 'sensor_1_frac' => 0.3857,
272
+ 'sensor_2_frac' => 0.1385,
273
+ 'sensor_1_xyz' => [36.576, 1.6764, 17.526],
274
+ 'sensor_2_xyz' => [36.576, 3.3528, 17.526] },
275
+ 'Perimeter_mid_ZN_2' => { 'sensor_1_frac' => 0.3857,
276
+ 'sensor_2_frac' => 0.1385,
277
+ 'sensor_1_xyz' => [71.4308, 24.384, 17.526],
278
+ 'sensor_2_xyz' => [69.7544, 24.384, 17.526] },
279
+ 'Perimeter_mid_ZN_3' => { 'sensor_1_frac' => 0.3857,
280
+ 'sensor_2_frac' => 0.1385,
281
+ 'sensor_1_xyz' => [36.576, 47.0617, 17.526],
282
+ 'sensor_2_xyz' => [36.576, 45.3847, 17.526] },
283
+ 'Perimeter_mid_ZN_4' => { 'sensor_1_frac' => 0.3857,
284
+ 'sensor_2_frac' => 0.1385,
285
+ 'sensor_1_xyz' => [1.6764, 24.384, 17.526],
286
+ 'sensor_2_xyz' => [3.3528, 24.384, 17.526] },
287
+ 'Perimeter_top_ZN_1' => { 'sensor_1_frac' => 0.3857,
288
+ 'sensor_2_frac' => 0.1385,
289
+ 'sensor_1_xyz' => [36.576, 1.6764, 34.29],
290
+ 'sensor_2_xyz' => [36.576, 3.3528, 34.29] },
291
+ 'Perimeter_top_ZN_2' => { 'sensor_1_frac' => 0.3857,
292
+ 'sensor_2_frac' => 0.1385,
293
+ 'sensor_1_xyz' => [71.4308, 24.384, 34.29],
294
+ 'sensor_2_xyz' => [69.7544, 24.384, 34.29] },
295
+ 'Perimeter_top_ZN_3' => { 'sensor_1_frac' => 0.3857,
296
+ 'sensor_2_frac' => 0.1385,
297
+ 'sensor_1_xyz' => [36.576, 47.0617, 34.29],
298
+ 'sensor_2_xyz' => [36.576, 45.3847, 34.29] },
299
+ 'Perimeter_top_ZN_4' => { 'sensor_1_frac' => 0.3857,
300
+ 'sensor_2_frac' => 0.1385,
301
+ 'sensor_1_xyz' => [1.6764, 24.384, 34.29],
302
+ 'sensor_2_xyz' => [3.3528, 24.384, 34.29] } } }
303
+ ]
232
304
 
233
305
  # Adjust daylight sensors in each space
234
306
  model.getSpaces.each do |space|
235
- if adjustments[0].keys.include? (template)
236
- if adjustments[0][template].keys.include? (space.name.to_s)
307
+ if adjustments[0].keys.include? template
308
+ if adjustments[0][template].keys.include? space.name.to_s
237
309
  adj = adjustments[0][template][space.name.to_s]
238
310
  next if space.thermalZone.empty?
311
+
239
312
  zone = space.thermalZone.get
240
313
  next if space.spaceType.empty?
314
+
241
315
  spc_type = space.spaceType.get
242
316
  next if spc_type.standardsSpaceType.empty?
317
+
243
318
  stds_spc_type = spc_type.standardsSpaceType.get
244
319
  # Adjust the primary sensor
245
320
  if adj['sensor_1_frac'] && zone.primaryDaylightingControl.is_initialized
@@ -257,7 +332,7 @@ module LargeOffice
257
332
  end
258
333
  end
259
334
  # Adjust the secondary sensor
260
- if adj['sensor_2_frac']
335
+ if adj['sensor_2_frac']
261
336
  # Create second sensor if it doesn't exist
262
337
  if !zone.secondaryDaylightingControl.is_initialized
263
338
  sensor_2 = OpenStudio::Model::DaylightingControl.new(space.model)
@@ -293,21 +368,30 @@ module LargeOffice
293
368
  end
294
369
 
295
370
  def model_custom_swh_tweaks(model, building_type, climate_zone, prototype_input)
296
-
297
371
  return true
298
372
  end
299
373
 
300
374
  def model_custom_geometry_tweaks(building_type, climate_zone, prototype_input, model)
375
+ # Set original building North axis
376
+ model_set_building_north_axis(model, 0.0)
301
377
 
302
378
  return true
303
379
  end
304
380
 
305
381
  def air_terminal_single_duct_vav_reheat_apply_initial_prototype_damper_position(air_terminal_single_duct_vav_reheat, zone_oa_per_area)
306
- min_damper_position = template == '90.1-2010' || template == '90.1-2013' ? 0.2 : 0.3
382
+ min_damper_position = template == '90.1-2010' || template == '90.1-2013' || template == '90.1-2016' || template == '90.1-2019' ? 0.2 : 0.3
307
383
 
308
384
  # Set the minimum flow fraction
309
385
  air_terminal_single_duct_vav_reheat.setConstantMinimumAirFlowFraction(min_damper_position)
310
386
 
311
387
  return true
312
388
  end
389
+
390
+ # Type of SAT reset for this building type
391
+ #
392
+ # @param air_loop_hvac [OpenStudio::model::AirLoopHVAC] Airloop
393
+ # @return [String] Returns type of SAT reset
394
+ def air_loop_hvac_supply_air_temperature_reset_type(air_loop_hvac)
395
+ return 'oa'
396
+ end
313
397
  end