openstudio-standards 0.7.1 → 0.8.0.rc1

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 (362) hide show
  1. checksums.yaml +4 -4
  2. data/data/geometry/ASHRAE90120162019LargeHotel.json +58 -13
  3. data/data/geometry/ASHRAELargeHotel.json +58 -13
  4. data/data/standards/OpenStudio_Standards-ashrae_90_1-ALL-comstock(space_types).xlsx +0 -0
  5. data/data/standards/export_OpenStudio_libraries.rb +2 -2
  6. data/data/standards/manage_OpenStudio_Standards.rb +6 -6
  7. data/data/standards/openstudio_standards_duplicates_log.csv +7961 -1
  8. data/data/standards/test_performance_expected_dd_results.csv +2016 -2004
  9. data/lib/openstudio-standards/btap/fileio.rb +171 -5
  10. data/lib/openstudio-standards/constructions/create.rb +38 -4
  11. data/lib/openstudio-standards/constructions/modify.rb +10 -3
  12. data/lib/openstudio-standards/create_typical/create_typical.rb +42 -28
  13. data/lib/openstudio-standards/create_typical/space_type_information.rb +160 -0
  14. data/lib/openstudio-standards/create_typical/space_type_ratios.rb +16 -19
  15. data/lib/openstudio-standards/exterior_lighting/create.rb +454 -0
  16. data/lib/openstudio-standards/exterior_lighting/data/entryways.csv +52 -0
  17. data/lib/openstudio-standards/exterior_lighting/data/parking.csv +54 -0
  18. data/lib/openstudio-standards/exterior_lighting/data/typical_exterior_lighting.json +37 -0
  19. data/lib/openstudio-standards/exterior_lighting/information.rb +202 -0
  20. data/lib/openstudio-standards/geometry/information.rb +49 -2
  21. data/lib/openstudio-standards/hvac/components/create.rb +169 -0
  22. data/lib/openstudio-standards/hvac/components/modify.rb +42 -0
  23. data/lib/openstudio-standards/hvac/exhaust/create_exhaust_fan.rb +108 -0
  24. data/lib/openstudio-standards/hvac/exhaust/data/convert_data.rb +86 -0
  25. data/lib/openstudio-standards/hvac/exhaust/data/typical_exhaust.csv +18 -0
  26. data/lib/openstudio-standards/hvac/exhaust/data/typical_exhaust.json +89 -0
  27. data/lib/openstudio-standards/infiltration/nist_infiltration.rb +25 -13
  28. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeHotel.rb +0 -64
  29. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeOffice.rb +0 -25
  30. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.MediumOffice.rb +0 -25
  31. data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Warehouse.rb +1 -11
  32. data/lib/openstudio-standards/prototypes/common/objects/Prototype.AirConditionerVariableRefrigerantFlow.rb +5 -1
  33. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Fan.rb +0 -7
  34. data/lib/openstudio-standards/prototypes/common/objects/Prototype.HeatExchangerAirToAirSensibleAndLatent.rb +36 -18
  35. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.hvac.rb +1 -1
  36. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.rb +121 -239
  37. data/lib/openstudio-standards/prototypes/common/objects/Prototype.hvac_systems.rb +179 -151
  38. data/lib/openstudio-standards/prototypes/common/objects/Prototype.refrigeration.rb +0 -466
  39. data/lib/openstudio-standards/prototypes/common/objects/Prototype.utilities.rb +18 -2
  40. data/lib/openstudio-standards/refrigeration/create_case.rb +125 -0
  41. data/lib/openstudio-standards/refrigeration/create_compressor.rb +78 -0
  42. data/lib/openstudio-standards/refrigeration/create_compressor_rack.rb +48 -0
  43. data/lib/openstudio-standards/refrigeration/create_refrigeration_system.rb +74 -0
  44. data/lib/openstudio-standards/refrigeration/create_typical_refrigeration.rb +161 -0
  45. data/lib/openstudio-standards/refrigeration/create_walkin.rb +116 -0
  46. data/lib/openstudio-standards/refrigeration/data/refrigerated_cases.csv +31 -0
  47. data/lib/openstudio-standards/refrigeration/data/refrigerated_walkins.csv +76 -0
  48. data/lib/openstudio-standards/refrigeration/data/refrigeration_compressors.csv +13 -0
  49. data/lib/openstudio-standards/refrigeration/data/typical_refrigerated_cases.csv +17 -0
  50. data/lib/openstudio-standards/refrigeration/data/typical_refrigerated_walkins.csv +53 -0
  51. data/lib/openstudio-standards/refrigeration/information.rb +130 -0
  52. data/lib/openstudio-standards/schedules/parametric.rb +1 -1
  53. data/lib/openstudio-standards/service_water_heating/create_typical.rb +299 -0
  54. data/lib/openstudio-standards/service_water_heating/create_water_heating_loop.rb +16 -14
  55. data/lib/openstudio-standards/service_water_heating/data/convert_data.rb +119 -0
  56. data/lib/openstudio-standards/service_water_heating/data/typical_water_use_equipment.csv +54 -0
  57. data/lib/openstudio-standards/service_water_heating/data/typical_water_use_equipment.json +810 -0
  58. data/lib/openstudio-standards/service_water_heating/information.rb +69 -0
  59. data/lib/openstudio-standards/sql_file/fenestration.rb +1 -1
  60. data/lib/openstudio-standards/standards/Standards.AirConditionerVariableRefrigerantFlow.rb +154 -0
  61. data/lib/openstudio-standards/standards/Standards.AirLoopHVAC.rb +35 -12
  62. data/lib/openstudio-standards/standards/Standards.CoilCoolingDXMultiSpeed.rb +110 -61
  63. data/lib/openstudio-standards/standards/Standards.CoilCoolingDXSingleSpeed.rb +128 -29
  64. data/lib/openstudio-standards/standards/Standards.CoilCoolingDXTwoSpeed.rb +103 -38
  65. data/lib/openstudio-standards/standards/Standards.CoilCoolingWaterToAirHeatPumpEquationFit.rb +1 -1
  66. data/lib/openstudio-standards/standards/Standards.CoilDX.rb +106 -5
  67. data/lib/openstudio-standards/standards/Standards.CoilHeatingGasMultiStage.rb +8 -8
  68. data/lib/openstudio-standards/standards/Standards.CoolingTower.rb +44 -17
  69. data/lib/openstudio-standards/standards/Standards.Fan.rb +32 -21
  70. data/lib/openstudio-standards/standards/Standards.FluidCooler.rb +45 -18
  71. data/lib/openstudio-standards/standards/Standards.HeatExchangerSensLat.rb +14 -9
  72. data/lib/openstudio-standards/standards/Standards.Model.rb +294 -76
  73. data/lib/openstudio-standards/standards/Standards.Motor.rb +66 -0
  74. data/lib/openstudio-standards/standards/Standards.PlanarSurface.rb +2 -1
  75. data/lib/openstudio-standards/standards/Standards.Pump.rb +34 -20
  76. data/lib/openstudio-standards/standards/Standards.ServiceWaterHeating.rb +0 -353
  77. data/lib/openstudio-standards/standards/Standards.Space.rb +3 -107
  78. data/lib/openstudio-standards/standards/Standards.SpaceType.rb +2 -57
  79. data/lib/openstudio-standards/standards/Standards.Surface.rb +11 -3
  80. data/lib/openstudio-standards/standards/Standards.ThermalZone.rb +1 -120
  81. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.computer_room_acs.json +142 -0
  82. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.economizers.json +1006 -596
  83. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.energy_recovery.json +724 -0
  84. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.ext_ltg.json +1258 -163
  85. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.motors.json +1070 -140
  86. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.spc_typ.json +33 -3374
  87. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.unitary_acs.json +1400 -340
  88. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.vrfs.json +769 -0
  89. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/comstock_ashrae_90_1_2007/data/comstock_ashrae_90_1_2007.spc_typ.json +2 -5338
  90. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.computer_room_acs.json +142 -0
  91. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.economizers.json +1006 -596
  92. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.energy_recovery.json +724 -0
  93. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.ext_ltg.json +1258 -163
  94. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.motors.json +1070 -140
  95. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.spc_typ.json +15 -3343
  96. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.unitary_acs.json +1840 -372
  97. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.vrfs.json +769 -0
  98. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.AirLoopHVAC.rb +20 -10
  99. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.Space.rb +0 -9
  100. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/comstock_ashrae_90_1_2010/data/comstock_ashrae_90_1_2010.spc_typ.json +0 -5382
  101. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.computer_room_acs.json +142 -0
  102. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.economizers.json +1006 -628
  103. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.energy_recovery.json +718 -712
  104. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.ext_ltg.json +1438 -163
  105. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.motors.json +2552 -182
  106. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.spc_typ.json +14 -3368
  107. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.unitary_acs.json +2348 -352
  108. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.vrfs.json +769 -0
  109. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.AirLoopHVAC.rb +47 -61
  110. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.Model.rb +6 -0
  111. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.Motor.rb +11 -0
  112. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.Space.rb +0 -9
  113. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/comstock_ashrae_90_1_2013/data/comstock_ashrae_90_1_2013.spc_typ.json +2 -5522
  114. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.computer_room_acs.json +142 -0
  115. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.economizers.json +1006 -628
  116. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.energy_recovery.json +1358 -1346
  117. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.ext_ltg.json +1438 -163
  118. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.motors.json +1359 -189
  119. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.spc_typ.json +19 -3451
  120. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.unitary_acs.json +2176 -616
  121. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.vrfs.json +616 -0
  122. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.AirLoopHVAC.rb +47 -61
  123. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.Model.rb +9 -0
  124. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.Motor.rb +11 -0
  125. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.Space.rb +0 -9
  126. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/comstock_ashrae_90_1_2016/data/comstock_ashrae_90_1_2016.spc_typ.json +8 -6055
  127. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.computer_room_acs.json +142 -0
  128. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.economizers.json +1006 -628
  129. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.energy_recovery.json +1188 -1424
  130. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.ext_ltg.json +1498 -163
  131. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.motors.json +1769 -189
  132. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.spc_typ.json +15 -3422
  133. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.unitary_acs.json +1807 -408
  134. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.vrfs.json +1024 -0
  135. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.AirLoopHVAC.rb +70 -87
  136. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Model.rb +9 -0
  137. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Motor.rb +11 -0
  138. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Space.rb +0 -9
  139. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/comstock_ashrae_90_1_2019/data/comstock_ashrae_90_1_2019.spc_typ.json +8 -6080
  140. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.computer_room_acs.json +142 -0
  141. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.economizers.json +1006 -628
  142. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.energy_recovery.json +2806 -3296
  143. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.ext_ltg.json +1558 -163
  144. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.motors.json +1759 -189
  145. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.spc_typ.json +16 -3448
  146. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.unitary_acs.json +2758 -422
  147. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.vrfs.json +684 -0
  148. data/lib/openstudio-standards/standards/ashrae_90_1/data/ashrae_90_1.schedules.json +14 -3318
  149. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/comstock_doe_ref_1980_2004/data/comstock_doe_ref_1980_2004.spc_typ.json +2 -4786
  150. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.chillers.json +1 -1
  151. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.economizers.json +953 -207
  152. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.energy_recovery.json +724 -0
  153. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.ext_ltg.json +5 -5
  154. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.spc_typ.json +11 -2858
  155. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.AirConditionerVariableRefrigerantFlow.rb +13 -0
  156. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.Model.rb +0 -18
  157. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/comstock_doe_ref_pre_1980/data/comstock_doe_ref_pre_1980.spc_typ.json +1 -4739
  158. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.chillers.json +0 -51
  159. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.economizers.json +953 -207
  160. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.energy_recovery.json +724 -0
  161. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.ext_ltg.json +5 -5
  162. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.spc_typ.json +9 -2830
  163. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.AirConditionerVariableRefrigerantFlow.rb +13 -0
  164. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.Model.rb +0 -18
  165. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/data/nrel_zne_ready_2017.economizers.json +1006 -564
  166. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/data/nrel_zne_ready_2017.energy_recovery.json +1264 -0
  167. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/data/nrel_zne_ready_2017.ext_ltg.json +5 -5
  168. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/data/nrel_zne_ready_2017.spc_typ.json +0 -1079
  169. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.AirLoopHVAC.rb +132 -288
  170. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.HeatExchangerSensLat.rb +44 -20
  171. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.Model.rb +11 -0
  172. data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.Space.rb +0 -8
  173. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/data/ze_aedg_multifamily.economizers.json +1006 -564
  174. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/data/ze_aedg_multifamily.energy_recovery.json +1264 -0
  175. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/data/ze_aedg_multifamily.ext_ltg.json +5 -5
  176. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/data/ze_aedg_multifamily.spc_typ.json +0 -1079
  177. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.AirLoopHVAC.rb +137 -288
  178. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.HeatExchangerSensLat.rb +44 -20
  179. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.Model.rb +11 -0
  180. data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.Space.rb +0 -9
  181. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.AirLoopHVAC.rb +12 -10
  182. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.CoilCoolingDXSingleSpeed.rb +8 -6
  183. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.CoilCoolingDXTwoSpeed.rb +8 -6
  184. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.CoilDX.rb +9 -3
  185. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.Fan.rb +6 -40
  186. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.Model.rb +30 -337
  187. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.Space.rb +4 -5
  188. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.SpaceType.rb +1 -2
  189. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm.rb +56 -3
  190. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/ashrae_90_1_prm_2019.Model.rb +80 -0
  191. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/ashrae_90_1_prm_2019.rb +0 -10
  192. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/ashrae_90_1_prm_2019_WaterHeaterMixed.rb +35 -0
  193. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/data/ashrae_90_1_prm_2019.economizers.json +550 -0
  194. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/data/ashrae_90_1_prm_2019.energy_recovery.json +724 -0
  195. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/data/ashrae_90_1_prm_2019.ext_ltg.json +1216 -0
  196. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/data/ashrae_90_1_prm_2019.heat_pumps.json +5 -5
  197. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/data/ashrae_90_1_prm_2019.motors.json +225 -245
  198. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/data/ashrae_90_1_prm_2019.unitary_acs.json +174 -78
  199. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/data/ashrae_90_1_prm_2019.water_heaters.json +354 -317
  200. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_csv/userdata_enums.rb +19 -3
  201. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_airloop_hvac.json +185 -0
  202. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_airloop_hvac_doas.json +127 -0
  203. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_building.json +121 -0
  204. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_design_specification_outdoor_air.json +49 -0
  205. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_electric_equipment.json +113 -0
  206. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_exterior_lights.json +120 -0
  207. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_space.json +388 -0
  208. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_spacetype.json +367 -0
  209. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_thermal_zone.json +56 -0
  210. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_wateruse_connections.json +37 -0
  211. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_wateruse_equipment.json +69 -0
  212. data/lib/openstudio-standards/standards/ashrae_90_1_prm/userdata_json/userdata_wateruse_equipment_definition.json +37 -0
  213. data/lib/openstudio-standards/standards/cbes/cbes_pre_1978/data/cbes_pre_1978.ext_ltg.json +5 -5
  214. data/lib/openstudio-standards/standards/cbes/cbes_t24_1978/data/cbes_t24_1978.ext_ltg.json +5 -5
  215. data/lib/openstudio-standards/standards/cbes/cbes_t24_1992/data/cbes_t24_1992.ext_ltg.json +5 -5
  216. data/lib/openstudio-standards/standards/cbes/cbes_t24_2001/data/cbes_t24_2001.ext_ltg.json +5 -5
  217. data/lib/openstudio-standards/standards/cbes/cbes_t24_2005/data/cbes_t24_2005.ext_ltg.json +5 -5
  218. data/lib/openstudio-standards/standards/cbes/cbes_t24_2008/data/cbes_t24_2008.ext_ltg.json +5 -5
  219. data/lib/openstudio-standards/standards/deer/deer_1985/comstock_deer_1985/data/comstock_deer_1985.ext_ltg.json +5 -5
  220. data/lib/openstudio-standards/standards/deer/deer_1985/data/deer_1985.ext_ltg.json +5 -5
  221. data/lib/openstudio-standards/standards/deer/deer_1996/comstock_deer_1996/data/comstock_deer_1996.ext_ltg.json +5 -5
  222. data/lib/openstudio-standards/standards/deer/deer_1996/data/deer_1996.ext_ltg.json +5 -5
  223. data/lib/openstudio-standards/standards/deer/deer_2003/comstock_deer_2003/data/comstock_deer_2003.ext_ltg.json +5 -5
  224. data/lib/openstudio-standards/standards/deer/deer_2003/data/deer_2003.ext_ltg.json +5 -5
  225. data/lib/openstudio-standards/standards/deer/deer_2007/comstock_deer_2007/data/comstock_deer_2007.ext_ltg.json +5 -5
  226. data/lib/openstudio-standards/standards/deer/deer_2007/data/deer_2007.ext_ltg.json +5 -5
  227. data/lib/openstudio-standards/standards/deer/deer_2011/comstock_deer_2011/data/comstock_deer_2011.ext_ltg.json +5 -5
  228. data/lib/openstudio-standards/standards/deer/deer_2011/data/deer_2011.ext_ltg.json +5 -5
  229. data/lib/openstudio-standards/standards/deer/deer_2014/comstock_deer_2014/data/comstock_deer_2014.ext_ltg.json +5 -5
  230. data/lib/openstudio-standards/standards/deer/deer_2014/data/deer_2014.ext_ltg.json +5 -5
  231. data/lib/openstudio-standards/standards/deer/deer_2015/comstock_deer_2015/data/comstock_deer_2015.ext_ltg.json +5 -5
  232. data/lib/openstudio-standards/standards/deer/deer_2015/data/deer_2015.ext_ltg.json +5 -5
  233. data/lib/openstudio-standards/standards/deer/deer_2017/comstock_deer_2017/data/comstock_deer_2017.ext_ltg.json +5 -5
  234. data/lib/openstudio-standards/standards/deer/deer_2017/data/deer_2017.ext_ltg.json +5 -5
  235. data/lib/openstudio-standards/standards/deer/deer_2020/comstock_deer_2020/data/comstock_deer_2020.ext_ltg.json +5 -5
  236. data/lib/openstudio-standards/standards/deer/deer_2020/data/deer_2020.ext_ltg.json +5 -5
  237. data/lib/openstudio-standards/standards/deer/deer_2025/comstock_deer_2025/data/comstock_deer_2025.ext_ltg.json +5 -5
  238. data/lib/openstudio-standards/standards/deer/deer_2025/data/deer_2025.ext_ltg.json +5 -5
  239. data/lib/openstudio-standards/standards/deer/deer_2030/comstock_deer_2030/data/comstock_deer_2030.ext_ltg.json +5 -5
  240. data/lib/openstudio-standards/standards/deer/deer_2030/data/deer_2030.ext_ltg.json +5 -5
  241. data/lib/openstudio-standards/standards/deer/deer_2035/comstock_deer_2035/data/comstock_deer_2035.ext_ltg.json +5 -5
  242. data/lib/openstudio-standards/standards/deer/deer_2035/data/deer_2035.ext_ltg.json +5 -5
  243. data/lib/openstudio-standards/standards/deer/deer_2040/comstock_deer_2040/data/comstock_deer_2040.ext_ltg.json +5 -5
  244. data/lib/openstudio-standards/standards/deer/deer_2040/data/deer_2040.ext_ltg.json +5 -5
  245. data/lib/openstudio-standards/standards/deer/deer_2045/comstock_deer_2045/data/comstock_deer_2045.ext_ltg.json +5 -5
  246. data/lib/openstudio-standards/standards/deer/deer_2045/data/deer_2045.ext_ltg.json +5 -5
  247. data/lib/openstudio-standards/standards/deer/deer_2050/comstock_deer_2050/data/comstock_deer_2050.ext_ltg.json +5 -5
  248. data/lib/openstudio-standards/standards/deer/deer_2050/data/deer_2050.ext_ltg.json +5 -5
  249. data/lib/openstudio-standards/standards/deer/deer_2055/comstock_deer_2055/data/comstock_deer_2055.ext_ltg.json +5 -5
  250. data/lib/openstudio-standards/standards/deer/deer_2055/data/deer_2055.ext_ltg.json +5 -5
  251. data/lib/openstudio-standards/standards/deer/deer_2060/comstock_deer_2060/data/comstock_deer_2060.ext_ltg.json +5 -5
  252. data/lib/openstudio-standards/standards/deer/deer_2060/data/deer_2060.ext_ltg.json +5 -5
  253. data/lib/openstudio-standards/standards/deer/deer_2065/comstock_deer_2065/data/comstock_deer_2065.ext_ltg.json +5 -5
  254. data/lib/openstudio-standards/standards/deer/deer_2065/data/deer_2065.ext_ltg.json +5 -5
  255. data/lib/openstudio-standards/standards/deer/deer_2070/comstock_deer_2070/data/comstock_deer_2070.ext_ltg.json +5 -5
  256. data/lib/openstudio-standards/standards/deer/deer_2070/data/deer_2070.ext_ltg.json +5 -5
  257. data/lib/openstudio-standards/standards/deer/deer_2075/comstock_deer_2075/data/comstock_deer_2075.ext_ltg.json +5 -5
  258. data/lib/openstudio-standards/standards/deer/deer_2075/data/deer_2075.ext_ltg.json +5 -5
  259. data/lib/openstudio-standards/standards/deer/deer_pre_1975/comstock_deer_pre_1975/data/comstock_deer_pre_1975.ext_ltg.json +5 -5
  260. data/lib/openstudio-standards/standards/deer/deer_pre_1975/data/deer_pre_1975.ext_ltg.json +5 -5
  261. data/lib/openstudio-standards/standards/necb/BTAPPRE1980/btap_pre1980.rb +10 -1
  262. data/lib/openstudio-standards/standards/necb/BTAPPRE1980/data/unitary_acs.json +20 -20
  263. data/lib/openstudio-standards/standards/necb/ECMS/hvac_systems.rb +379 -27
  264. data/lib/openstudio-standards/standards/necb/NECB2011/autozone.rb +1 -4
  265. data/lib/openstudio-standards/standards/necb/NECB2011/beps_compliance_path.rb +0 -1
  266. data/lib/openstudio-standards/standards/necb/NECB2011/data/fuel_type_sets.json +1 -1
  267. data/lib/openstudio-standards/standards/necb/NECB2011/data/unitary_acs.json +20 -20
  268. data/lib/openstudio-standards/standards/necb/NECB2011/hvac_systems.rb +34 -22
  269. data/lib/openstudio-standards/standards/necb/NECB2011/necb_2011.rb +76 -23
  270. data/lib/openstudio-standards/standards/necb/NECB2011/necb_shw_calculation.xlsx +0 -0
  271. data/lib/openstudio-standards/standards/necb/NECB2011/service_water_heating.rb +4 -5
  272. data/lib/openstudio-standards/standards/necb/NECB2011/system_fuels.rb +6 -2
  273. data/lib/openstudio-standards/standards/necb/NECB2015/data/unitary_acs.json +26 -24
  274. data/lib/openstudio-standards/standards/necb/NECB2015/hvac_systems.rb +2 -1
  275. data/lib/openstudio-standards/standards/necb/NECB2020/data/unitary_acs.json +38 -32
  276. data/lib/openstudio-standards/standards/necb/common/btap_data.rb +215 -18
  277. data/lib/openstudio-standards/standards/necb/common/btap_datapoint.rb +190 -15
  278. data/lib/openstudio-standards/standards/necb/common/national_carbon_price_sched_feb_2025.json +60 -0
  279. data/lib/openstudio-standards/standards/necb/common/utility_pricing_2025-02-20.csv +92 -0
  280. data/lib/openstudio-standards/utilities/ruleset_check.rb +204 -0
  281. data/lib/openstudio-standards/version.rb +1 -1
  282. data/lib/openstudio-standards/weather/information.rb +1 -1
  283. data/lib/openstudio-standards.rb +32 -12
  284. metadata +78 -80
  285. data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.refrigeration.rb +0 -13
  286. data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.refrigeration.rb +0 -13
  287. data/lib/openstudio-standards/prototypes/cbes/cbes.refrigeration.rb +0 -13
  288. data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.exterior_lights.rb +0 -432
  289. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/ashrae_90_1_2004.Space.rb +0 -11
  290. 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 +0 -169
  291. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/comstock_ashrae_90_1_2004/data/comstock_ashrae_90_1_2004.ref_cases.json +0 -1456
  292. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/comstock_ashrae_90_1_2004/data/comstock_ashrae_90_1_2004.ref_lnup.json +0 -562
  293. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/comstock_ashrae_90_1_2004/data/comstock_ashrae_90_1_2004.spc_typ.json +0 -20804
  294. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.Space.rb +0 -11
  295. 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 +0 -169
  296. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/comstock_ashrae_90_1_2007/data/comstock_ashrae_90_1_2007.ref_cases.json +0 -1456
  297. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/comstock_ashrae_90_1_2007/data/comstock_ashrae_90_1_2007.ref_lnup.json +0 -562
  298. 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 +0 -169
  299. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/comstock_ashrae_90_1_2010/data/comstock_ashrae_90_1_2010.ref_cases.json +0 -1456
  300. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/comstock_ashrae_90_1_2010/data/comstock_ashrae_90_1_2010.ref_lnup.json +0 -562
  301. 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 +0 -169
  302. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/comstock_ashrae_90_1_2013/data/comstock_ashrae_90_1_2013.ref_cases.json +0 -1456
  303. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/comstock_ashrae_90_1_2013/data/comstock_ashrae_90_1_2013.ref_lnup.json +0 -562
  304. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/comstock_ashrae_90_1_2016/data/comstock_ashrae_90_1_2016.ext_ltg.json +0 -169
  305. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/comstock_ashrae_90_1_2016/data/comstock_ashrae_90_1_2016.ref_cases.json +0 -763
  306. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/comstock_ashrae_90_1_2016/data/comstock_ashrae_90_1_2016.ref_lnup.json +0 -562
  307. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/comstock_ashrae_90_1_2019/data/comstock_ashrae_90_1_2019.ext_ltg.json +0 -169
  308. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/comstock_ashrae_90_1_2019/data/comstock_ashrae_90_1_2019.ref_cases.json +0 -763
  309. data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/comstock_ashrae_90_1_2019/data/comstock_ashrae_90_1_2019.ref_lnup.json +0 -562
  310. 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 +0 -169
  311. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/comstock_doe_ref_1980_2004/data/comstock_doe_ref_1980_2004.ref_cases.json +0 -1456
  312. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/comstock_doe_ref_1980_2004/data/comstock_doe_ref_1980_2004.ref_lnup.json +0 -562
  313. 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 +0 -169
  314. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/comstock_doe_ref_pre_1980/data/comstock_doe_ref_pre_1980.ref_cases.json +0 -1456
  315. data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/comstock_doe_ref_pre_1980/data/comstock_doe_ref_pre_1980.ref_lnup.json +0 -562
  316. data/lib/openstudio-standards/standards/ashrae_90_1_prm/ashrae_90_1_prm_2019/data/ashrae_90_1_prm_2019.prm_economizers.json +0 -213
  317. data/lib/openstudio-standards/standards/cbes/cbes.Space.rb +0 -11
  318. data/lib/openstudio-standards/standards/cbes/cbes_t24_2005/cbes_t24_2005.Space.rb +0 -11
  319. data/lib/openstudio-standards/standards/cbes/cbes_t24_2008/cbes_t24_2008.Space.rb +0 -11
  320. data/lib/openstudio-standards/standards/deer/deer.Space.rb +0 -20
  321. data/lib/openstudio-standards/standards/deer/deer_1985/data/deer_1985.ref_cases.json +0 -1456
  322. data/lib/openstudio-standards/standards/deer/deer_1985/data/deer_1985.ref_lnup.json +0 -562
  323. data/lib/openstudio-standards/standards/deer/deer_1996/data/deer_1996.ref_cases.json +0 -1456
  324. data/lib/openstudio-standards/standards/deer/deer_1996/data/deer_1996.ref_lnup.json +0 -562
  325. data/lib/openstudio-standards/standards/deer/deer_2003/data/deer_2003.ref_cases.json +0 -1456
  326. data/lib/openstudio-standards/standards/deer/deer_2003/data/deer_2003.ref_lnup.json +0 -562
  327. data/lib/openstudio-standards/standards/deer/deer_2007/data/deer_2007.ref_cases.json +0 -1456
  328. data/lib/openstudio-standards/standards/deer/deer_2007/data/deer_2007.ref_lnup.json +0 -562
  329. data/lib/openstudio-standards/standards/deer/deer_2011/data/deer_2011.ref_cases.json +0 -1456
  330. data/lib/openstudio-standards/standards/deer/deer_2011/data/deer_2011.ref_lnup.json +0 -562
  331. data/lib/openstudio-standards/standards/deer/deer_2014/data/deer_2014.ref_cases.json +0 -1456
  332. data/lib/openstudio-standards/standards/deer/deer_2014/data/deer_2014.ref_lnup.json +0 -562
  333. data/lib/openstudio-standards/standards/deer/deer_2015/data/deer_2015.ref_cases.json +0 -1456
  334. data/lib/openstudio-standards/standards/deer/deer_2015/data/deer_2015.ref_lnup.json +0 -562
  335. data/lib/openstudio-standards/standards/deer/deer_2017/data/deer_2017.ref_cases.json +0 -1456
  336. data/lib/openstudio-standards/standards/deer/deer_2017/data/deer_2017.ref_lnup.json +0 -562
  337. data/lib/openstudio-standards/standards/deer/deer_2020/data/deer_2020.ref_cases.json +0 -1456
  338. data/lib/openstudio-standards/standards/deer/deer_2020/data/deer_2020.ref_lnup.json +0 -562
  339. data/lib/openstudio-standards/standards/deer/deer_2025/data/deer_2025.ref_cases.json +0 -1456
  340. data/lib/openstudio-standards/standards/deer/deer_2025/data/deer_2025.ref_lnup.json +0 -562
  341. data/lib/openstudio-standards/standards/deer/deer_2030/data/deer_2030.ref_cases.json +0 -1456
  342. data/lib/openstudio-standards/standards/deer/deer_2030/data/deer_2030.ref_lnup.json +0 -562
  343. data/lib/openstudio-standards/standards/deer/deer_2035/data/deer_2035.ref_cases.json +0 -1456
  344. data/lib/openstudio-standards/standards/deer/deer_2035/data/deer_2035.ref_lnup.json +0 -562
  345. data/lib/openstudio-standards/standards/deer/deer_2040/data/deer_2040.ref_cases.json +0 -1456
  346. data/lib/openstudio-standards/standards/deer/deer_2040/data/deer_2040.ref_lnup.json +0 -562
  347. data/lib/openstudio-standards/standards/deer/deer_2045/data/deer_2045.ref_cases.json +0 -1456
  348. data/lib/openstudio-standards/standards/deer/deer_2045/data/deer_2045.ref_lnup.json +0 -562
  349. data/lib/openstudio-standards/standards/deer/deer_2050/data/deer_2050.ref_cases.json +0 -1456
  350. data/lib/openstudio-standards/standards/deer/deer_2050/data/deer_2050.ref_lnup.json +0 -562
  351. data/lib/openstudio-standards/standards/deer/deer_2055/data/deer_2055.ref_cases.json +0 -1456
  352. data/lib/openstudio-standards/standards/deer/deer_2055/data/deer_2055.ref_lnup.json +0 -562
  353. data/lib/openstudio-standards/standards/deer/deer_2060/data/deer_2060.ref_cases.json +0 -1456
  354. data/lib/openstudio-standards/standards/deer/deer_2060/data/deer_2060.ref_lnup.json +0 -562
  355. data/lib/openstudio-standards/standards/deer/deer_2065/data/deer_2065.ref_cases.json +0 -1456
  356. data/lib/openstudio-standards/standards/deer/deer_2065/data/deer_2065.ref_lnup.json +0 -562
  357. data/lib/openstudio-standards/standards/deer/deer_2070/data/deer_2070.ref_cases.json +0 -1456
  358. data/lib/openstudio-standards/standards/deer/deer_2070/data/deer_2070.ref_lnup.json +0 -562
  359. data/lib/openstudio-standards/standards/deer/deer_2075/data/deer_2075.ref_cases.json +0 -1456
  360. data/lib/openstudio-standards/standards/deer/deer_2075/data/deer_2075.ref_lnup.json +0 -562
  361. data/lib/openstudio-standards/standards/deer/deer_pre_1975/data/deer_pre_1975.ref_cases.json +0 -1456
  362. data/lib/openstudio-standards/standards/deer/deer_pre_1975/data/deer_pre_1975.ref_lnup.json +0 -562
@@ -21,13 +21,29 @@ class UserData
21
21
  # @param another [String] another UserDataType enum
22
22
  # @return [Boolean] if the two enums or strings are the same
23
23
  def self.compare(one, another)
24
- return one && another && !one.empty? && !another.empty? && one.downcase.strip == another.downcase.strip
24
+ return false if one.nil? || another.nil?
25
+
26
+ one_value = boolean_to_string(one)
27
+ another_value = boolean_to_string(another)
28
+
29
+ if one_value.is_a?(String) && another_value.is_a?(String)
30
+ return one_value.strip.downcase == another_value.strip.downcase
31
+ else
32
+ return one_value == another_value
33
+ end
25
34
  end
35
+
36
+ def self.boolean_to_string(value)
37
+ return value if value.nil? || value.is_a?(Numeric) # For consistency in further comparison
38
+
39
+ value.is_a?(TrueClass) || value.is_a?(FalseClass) ? value.to_s : value
40
+ end
41
+
26
42
  end
27
43
 
28
44
  class UserDataBoolean < UserData
29
- TRUE = 'true'.freeze
30
- FALSE = 'false'.freeze
45
+ TRUE = true
46
+ FALSE = false
31
47
  end
32
48
 
33
49
  class UserDataHVACBldgType < UserData
@@ -0,0 +1,185 @@
1
+ {
2
+ "title": "ASHRAE 90.1 PRM Air Loop HVAC User Data",
3
+ "definitions": {
4
+ "UserDataAirLoopHVACData": {
5
+ "type": "object",
6
+ "properties": {
7
+ "userdata_airloop_hvac": {
8
+ "type": "array",
9
+ "description": "List of userdata_airloop_hvac rows",
10
+ "items": {
11
+ "$ref": "#/definitions/UserDataAirLoopHVAC"
12
+ }
13
+ }
14
+ }
15
+ },
16
+ "UserDataAirLoopHVAC": {
17
+ "type": "object",
18
+ "description": "User data air loop HVAC object",
19
+ "properties": {
20
+ "name": {
21
+ "type": "string",
22
+ "description": "Identifier or name for the air loop configuration"
23
+ },
24
+ "has_fan_power_credit_fully_ducted": {
25
+ "type": "integer",
26
+ "description": "Fan power credit for fully ducted systems",
27
+ "default": 0,
28
+ "minimum": 0,
29
+ "$comment": "Set this field to the number of return or exhaust systems required by code or accreditation standards to be fully ducted, or systems required to maintain air pressure differentials between adjacent rooms that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
30
+ },
31
+ "has_fan_power_credit_return_or_exhaust_flow_control": {
32
+ "type": "integer",
33
+ "description": "Fan power credit for return or exhaust flow control",
34
+ "default": 0,
35
+ "minimum": 0,
36
+ "$comment": "Set this field to the number of return and/or exhaust airflow control devices that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
37
+ },
38
+ "fan_power_credit_exhaust_treatment": {
39
+ "type": "integer",
40
+ "description": "Fan power credit for exhaust treatment",
41
+ "default": 0,
42
+ "minimum": 0,
43
+ "$comment": "Set this field to the sum of the pressure-drop (calculated at fan system design conditions) of all exhaust filters, scrubbers, or other exhaust treatment devices that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
44
+ },
45
+ "has_fan_power_credit_filtration_m9to12": {
46
+ "type": "integer",
47
+ "description": "Fan power credit for MERV 9-12 filtration",
48
+ "default": 0,
49
+ "minimum": 0,
50
+ "$comment": "Set this field to the number of MERV 9 through 12 filters that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
51
+ },
52
+ "has_fan_power_credit_filtration_m13to15": {
53
+ "type": "integer",
54
+ "default": 0,
55
+ "minimum": 0,
56
+ "description": "Fan power credit for MERV 13-15 filtration",
57
+ "$comment": "Set this field to the number of MERV 13 through 15 filters that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
58
+ },
59
+ "clean_filter_pressure_drop_for_fan_power_credit_filtration_m16plus": {
60
+ "type": "integer",
61
+ "default": 0,
62
+ "minimum": 0,
63
+ "description": "Clean filter pressure drop for MERV 16+ filtration fan power credit",
64
+ "$comment": "Set this field to the sum of the pressure-drop (calculated at 2 times the clean filter pressure-drop at fan system design conditions) of all MERV 16+ filters and electronically enhanced filters that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
65
+ },
66
+ "fan_power_credit_gas_phase_cleaners": {
67
+ "type": "integer",
68
+ "default": 0,
69
+ "minimum": 0,
70
+ "description": "Fan power credit for gas phase cleaners",
71
+ "$comment": "Set this field to the sum of carbon and other gas-phase air cleaners’ pressure-drop (at the fan system design conditions) that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
72
+ },
73
+ "fan_power_credit_biosafety": {
74
+ "type": "integer",
75
+ "default": 0,
76
+ "minimum": 0,
77
+ "description": "Fan power credit for biosafety measures",
78
+ "$comment": "Set this field to the sum of the pressure-drop (calculated at fan system design conditions) of biosafety cabinets that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
79
+ },
80
+ "fan_power_credit_other_than_coil_runaround": {
81
+ "type": "integer",
82
+ "default": 0,
83
+ "minimum": 0,
84
+ "description": "Fan power credit for other than coil runaround",
85
+ "$comment": "Set this field to the number of energy recovery devices other than coil runaround loop that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
86
+ },
87
+ "has_fan_power_credit_coil_runaround": {
88
+ "type": "integer",
89
+ "default": 0,
90
+ "minimum": 0,
91
+ "description": "Fan power credit for coil runaround",
92
+ "$comment": "Set this field to the number of runaround loop that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
93
+ },
94
+ "fan_power_credit_evaporative_humidifier_or_cooler": {
95
+ "type": "integer",
96
+ "default": 0,
97
+ "minimum": 0,
98
+ "description": "Fan power credit for evaporative humidifier or cooler",
99
+ "$comment": "Set this field to the sum of the pressure-drop (calculated at fan system design conditions) of the evaporative humidifier or cooler that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
100
+ },
101
+ "has_fan_power_credit_sound_attenuation": {
102
+ "type": "integer",
103
+ "default": 0,
104
+ "minimum": 0,
105
+ "description": "Fan power credit for sound attenuation",
106
+ "$comment": "Set this field to the number of sound attenuation sections of fans serving spaces with design background noise goals below NC35 that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
107
+ },
108
+ "has_fan_power_credit_exhaust_serving_fume_hoods": {
109
+ "type": "integer",
110
+ "default": 0,
111
+ "minimum": 0,
112
+ "description": "Fan power credit for exhaust serving fume hoods",
113
+ "$comment": "Set this field to the number of exhaust systems serving fume hoods that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
114
+ },
115
+ "has_fan_power_credit_lab_or_vivarium_highrise_vertical_duct": {
116
+ "type": "integer",
117
+ "default": 0,
118
+ "minimum": 0,
119
+ "description": "Fan power credit for lab or vivarium highrise vertical duct",
120
+ "$comment": "Set this field to the number of laboratory and vivarium exhaust systems in high-rise buildings that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
121
+ },
122
+ "economizer_exception_for_gas_phase_air_cleaning": {
123
+ "type": [
124
+ "boolean"
125
+ ],
126
+ "default": false,
127
+ "description": "Economizer exception for gas phase air cleaning",
128
+ "$comment": "Set this field to true if the airloop HVAC object include gas-phase air cleaning to meet the requirements of Standard 62.1, Section 6.1.2. If it doesnt apply leave this field blank or set to false."
129
+ },
130
+ "economizer_exception_for_open_refrigerated_cases": {
131
+ "type": [
132
+ "boolean"
133
+ ],
134
+ "default": false,
135
+ "description": "Economizer exception for open refrigerated cases",
136
+ "$comment": "Set this field to true where the use of outdoor air for cooling by the airloop HVAC object would affect supermarket open refrigerated case-work systems. If it doesnt apply leave this field blank or set to false."
137
+ },
138
+ "exhaust_energy_recovery_exception_for_toxic_fumes_etc": {
139
+ "type": [
140
+ "boolean"
141
+ ],
142
+ "default": false,
143
+ "description": "Exhaust energy recovery exception for toxic fumes",
144
+ "$comment": "Set this field to true if the airloop HVAC object is exhausting toxic, flammable, or corrosive fumes or paint or dust. If it doesnt apply leave this field blank or set to false."
145
+ },
146
+ "exhaust_energy_recovery_exception_for_type1_kitchen_hoods": {
147
+ "type": [
148
+ "boolean"
149
+ ],
150
+ "default": false,
151
+ "description": "Exhaust energy recovery exception for Type 1 kitchen hoods",
152
+ "$comment": "Set this field to true if the airloop HVAC object includes commercial kitchen hoods (grease) classified as Type 1 by NFPA 96. If it doesnt apply leave this field blank or set to false"
153
+ },
154
+ "exhaust_energy_recovery_exception_for_type_distributed_exhaust": {
155
+ "type": [
156
+ "boolean"
157
+ ],
158
+ "default": false,
159
+ "description": "Exhaust energy recovery exception for distributed exhaust",
160
+ "$comment": "Set this field to true when the airloop HVAC object largest exhaust source is less than 75% of the design outdoor airflow. If it doesnt apply leave this field blank or set to false."
161
+ },
162
+ "exhaust_energy_recovery_exception_for_dehumidifcation_with_series_cooling_recovery": {
163
+ "type": [
164
+ "boolean"
165
+ ],
166
+ "default": false,
167
+ "description": "Exhaust energy recovery exception for dehumidification with series cooling recovery",
168
+ "$comment": "Set this field to true when the airloop HVAC object is requiring dehumidification that employ energy recovery in series with the cooling coil. If it doesnt apply leave this field blank or set to false."
169
+ },
170
+ "dcv_exception_airloop": {
171
+ "type": [
172
+ "boolean"
173
+ ],
174
+ "default": false,
175
+ "description": "Demand-controlled ventilation exception for air loop",
176
+ "$comment": "Set this field to true if any of the exceptions under the section 6.4.3.8 applies. If it doesnt apply leave this field blank or set to false."
177
+ }
178
+ },
179
+ "required": [
180
+ "name"
181
+ ],
182
+ "additionalProperties": false
183
+ }
184
+ }
185
+ }
@@ -0,0 +1,127 @@
1
+ {
2
+ "title": "ASHRAE 90.1 PRM Air Loop DOAS HVAC User Data",
3
+ "definitions": {
4
+ "UserDataAirLoopHVACDOASData": {
5
+ "type": "object",
6
+ "properties": {
7
+ "userdata_airloop_hvac_doas": {
8
+ "type": "array",
9
+ "description": "List of userdata_airloop_hvac_doas rows",
10
+ "items": {
11
+ "$ref": "#/definitions/UserDataAirLoopHVACDOAS"
12
+ }
13
+ }
14
+ }
15
+ },
16
+ "UserDataAirLoopHVACDOAS": {
17
+ "type": "object",
18
+ "properties": {
19
+ "name": {
20
+ "type": "string",
21
+ "description": "Identifier or name for the air loop configuration"
22
+ },
23
+ "has_fan_power_credit_fully_ducted": {
24
+ "type": "integer",
25
+ "description": "Fan power credit for fully ducted systems",
26
+ "default": 0,
27
+ "minimum": 0,
28
+ "$comment": "Set this field to the number of return or exhaust systems required by code or accreditation standards to be fully ducted, or systems required to maintain air pressure differentials between adjacent rooms that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
29
+ },
30
+ "has_fan_power_credit_return_or_exhaust_flow_control": {
31
+ "type": "integer",
32
+ "description": "Fan power credit for return or exhaust flow control",
33
+ "default": 0,
34
+ "minimum": 0,
35
+ "$comment": "Set this field to the number of return and/or exhaust airflow control devices that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
36
+ },
37
+ "fan_power_credit_exhaust_treatment": {
38
+ "type": "integer",
39
+ "description": "Fan power credit for exhaust treatment",
40
+ "default": 0,
41
+ "minimum": 0,
42
+ "$comment": "Set this field to the sum of the pressure-drop (calculated at fan system design conditions) of all exhaust filters, scrubbers, or other exhaust treatment devices that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
43
+ },
44
+ "has_fan_power_credit_filtration_m9to12": {
45
+ "type": "integer",
46
+ "description": "Fan power credit for MERV 9-12 filtration",
47
+ "default": 0,
48
+ "minimum": 0,
49
+ "$comment": "Set this field to the number of MERV 9 through 12 filters that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
50
+ },
51
+ "has_fan_power_credit_filtration_m13to15": {
52
+ "type": "integer",
53
+ "default": 0,
54
+ "minimum": 0,
55
+ "description": "Fan power credit for MERV 13-15 filtration",
56
+ "$comment": "Set this field to the number of MERV 13 through 15 filters that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
57
+ },
58
+ "clean_filter_pressure_drop_for_fan_power_credit_filtration_m16plus": {
59
+ "type": "integer",
60
+ "default": 0,
61
+ "minimum": 0,
62
+ "description": "Clean filter pressure drop for MERV 16+ filtration fan power credit",
63
+ "$comment": "Set this field to the sum of the pressure-drop (calculated at 2 times the clean filter pressure-drop at fan system design conditions) of all MERV 16+ filters and electronically enhanced filters that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
64
+ },
65
+ "fan_power_credit_gas_phase_cleaners": {
66
+ "type": "integer",
67
+ "default": 0,
68
+ "minimum": 0,
69
+ "description": "Fan power credit for gas phase cleaners",
70
+ "$comment": "Set this field to the sum of carbon and other gas-phase air cleaners’ pressure-drop (at the fan system design conditions) that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
71
+ },
72
+ "fan_power_credit_biosafety": {
73
+ "type": "integer",
74
+ "default": 0,
75
+ "minimum": 0,
76
+ "description": "Fan power credit for biosafety measures",
77
+ "$comment": "Set this field to the sum of the pressure-drop (calculated at fan system design conditions) of biosafety cabinets that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
78
+ },
79
+ "fan_power_credit_other_than_coil_runaround": {
80
+ "type": "integer",
81
+ "default": 0,
82
+ "minimum": 0,
83
+ "description": "Fan power credit for other than coil runaround",
84
+ "$comment": "Set this field to the number of energy recovery devices other than coil runaround loop that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
85
+ },
86
+ "has_fan_power_credit_coil_runaround": {
87
+ "type": "integer",
88
+ "default": 0,
89
+ "minimum": 0,
90
+ "description": "Fan power credit for coil runaround",
91
+ "$comment": "Set this field to the number of runaround loop that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
92
+ },
93
+ "fan_power_credit_evaporative_humidifier_or_cooler": {
94
+ "type": "integer",
95
+ "default": 0,
96
+ "minimum": 0,
97
+ "description": "Fan power credit for evaporative humidifier or cooler",
98
+ "$comment": "Set this field to the sum of the pressure-drop (calculated at fan system design conditions) of the evaporative humidifier or cooler that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
99
+ },
100
+ "has_fan_power_credit_sound_attenuation": {
101
+ "type": "integer",
102
+ "default": 0,
103
+ "minimum": 0,
104
+ "description": "Fan power credit for sound attenuation",
105
+ "$comment": "Set this field to the number of sound attenuation sections of fans serving spaces with design background noise goals below NC35 that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
106
+ },
107
+ "has_fan_power_credit_exhaust_serving_fume_hoods": {
108
+ "type": "integer",
109
+ "default": 0,
110
+ "minimum": 0,
111
+ "description": "Fan power credit for exhaust serving fume hoods",
112
+ "$comment": "Set this field to the number of exhaust systems serving fume hoods that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
113
+ },
114
+ "has_fan_power_credit_lab_or_vivarium_highrise_vertical_duct": {
115
+ "type": "integer",
116
+ "default": 0,
117
+ "minimum": 0,
118
+ "description": "Fan power credit for lab or vivarium highrise vertical duct",
119
+ "$comment": "Set this field to the number of laboratory and vivarium exhaust systems in high-rise buildings that the airloop HVAC object includes. If it doesnt apply, set this field to 0."
120
+ }
121
+ },
122
+ "required": ["name"],
123
+ "additionalProperties": false
124
+ }
125
+ }
126
+ }
127
+
@@ -0,0 +1,121 @@
1
+ {
2
+ "title": "ASHRAE 90.1 PRM Building Type User Data",
3
+ "definitions": {
4
+ "UserDataBuildingData": {
5
+ "type": "object",
6
+ "properties": {
7
+ "userdata_building": {
8
+ "type": "array",
9
+ "description": "List of userdata_building rows",
10
+ "items": {
11
+ "$ref": "#/definitions/UserDataBuilding"
12
+ }
13
+ }
14
+ }
15
+ },
16
+ "UserDataBuilding": {
17
+ "type": "object",
18
+ "properties": {
19
+ "name": {
20
+ "type": "string",
21
+ "description": "Identifier or name for the building object"
22
+ },
23
+ "building_type_for_hvac": {
24
+ "type": ["null","string"],
25
+ "enum": [
26
+ null,
27
+ "heated-only storage",
28
+ "hospital",
29
+ "other nonresidential",
30
+ "public assembly",
31
+ "residential",
32
+ "retail",
33
+ "unconditioned"
34
+ ],
35
+ "default": null,
36
+ "description": "Building type for HVAC",
37
+ "$comment": "This field is used to determine the baseline model HVAC system. It can be overwritten at the zone level (see the documentation for userdata_thermal_zone.json). It should be set to one of the following values that best describes the proposed model building type."
38
+ },
39
+ "building_type_for_swh": {
40
+ "type": ["null","string"],
41
+ "enum": [
42
+ null,
43
+ "All others",
44
+ "Automotive facility",
45
+ "Convenience store",
46
+ "Convention center",
47
+ "Courthouse",
48
+ "Dining: Bar lounge/leisure",
49
+ "Dining: Cafeteria/fast food",
50
+ "Dining: Family",
51
+ "Dormitory",
52
+ "Exercise center",
53
+ "Fire station",
54
+ "Grocery store",
55
+ "Gymnasium",
56
+ "Health-care clinic",
57
+ "Hospital and outpatient surgery center",
58
+ "Hotel",
59
+ "Library",
60
+ "Manufacturing facility",
61
+ "Motel",
62
+ "Motion picture theater",
63
+ "Multifamily",
64
+ "Museum",
65
+ "Office",
66
+ "Parking garage",
67
+ "Penitentiary",
68
+ "Performing arts theater",
69
+ "Police station",
70
+ "Post office",
71
+ "Religious facility",
72
+ "Retail",
73
+ "School/university",
74
+ "Sports arena",
75
+ "Town hall",
76
+ "Transportation",
77
+ "Warehouse",
78
+ "Workshop"
79
+ ],
80
+ "default": null,
81
+ "description": "Building type for SWH",
82
+ "$comment": "This field is used to determine the baseline model service water heating system. It should be set to one of the following values that best describes the proposed model building type."
83
+ },
84
+ "building_type_for_wwr": {
85
+ "type": ["null", "string"],
86
+ "enum": [
87
+ null,
88
+ "All others",
89
+ "Grocery store",
90
+ "Healthcare (outpatient)",
91
+ "Hospital",
92
+ "Hotel/motel <= 75 rooms",
93
+ "Hotel/motel > 75 rooms",
94
+ "Office 5,000 to 50,000 sq ft",
95
+ "Office <= 5,000 sq ft",
96
+ "Office > 50,000 sq ft",
97
+ "Restaurant (full service)",
98
+ "Restaurant (quick service)",
99
+ "Retail (stand alone)",
100
+ "Retail (strip mall)",
101
+ "School (primary)",
102
+ "School (secondary and university)",
103
+ "Warehouse (nonrefrigerated)"
104
+ ],
105
+ "default": null,
106
+ "description": "Building type for Window to wall ratio",
107
+ "$comment": "This field is used to determine the baseline model’s window-to-wall ratio. It should be set to one of the following values that best described the proposed models building type."
108
+ },
109
+ "is_exempt_from_rotations": {
110
+ "type": "boolean",
111
+ "default": false,
112
+ "description": "Is exempted from rotation requirements",
113
+ "$comment": "Set this field to true if it can be demonstrated to the satisfaction of the rating authority that the building orientation is dictated by site considerations. If it doesnt apply, leave this field blank or set to false."
114
+ }
115
+ },
116
+ "description": "User data building object",
117
+ "required": ["name"],
118
+ "additionalProperties": false
119
+ }
120
+ }
121
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "title": "ASHRAE 90.1 PRM Design Specification Outdoor Air User Data",
3
+ "definitions": {
4
+ "UserDataDesignSpecificationOutdoorAirData": {
5
+ "type": "object",
6
+ "properties": {
7
+ "userdata_design_specification_outdoor_air": {
8
+ "type": "array",
9
+ "description": "List of userdata_design_specification_outdoor_air rows",
10
+ "items": {
11
+ "$ref": "#/definitions/UserDataDesignSpecificationOutdoorAir"
12
+ }
13
+ }
14
+ }
15
+ },
16
+ "UserDataDesignSpecificationOutdoorAir": {
17
+ "type": "object",
18
+ "properties": {
19
+ "name": {
20
+ "type": "string",
21
+ "description": "Identifier or name for the design specifiction outdoor air object"
22
+ },
23
+ "outdoor_airflow_per_person": {
24
+ "type": "number",
25
+ "minimum": 0.0,
26
+ "description": "Design outdoor air volume flow rate per person, in cfm/person."
27
+ },
28
+ "outdoor_airflow_per_floor_area": {
29
+ "type": "number",
30
+ "minimum": 0.0,
31
+ "description": "Design outdoor air volume flow rate per square meter of floor area, in cfm/ft²."
32
+ },
33
+ "outdoor_air_flowrate": {
34
+ "type": "number",
35
+ "minimum": 0.0,
36
+ "description": "Design outdoor air flow rate, in cfm."
37
+ },
38
+ "outdoor_air_flow_air_changes_per_hour": {
39
+ "type": "number",
40
+ "minimum": 0.0,
41
+ "description": "Design outdoor air volume flow air changes per hour. It is a factor."
42
+ }
43
+ },
44
+ "description": "User data design specification outdoor air object",
45
+ "required": ["name"],
46
+ "additionalProperties": false
47
+ }
48
+ }
49
+ }
@@ -0,0 +1,113 @@
1
+ {
2
+ "title": "ASHRAE 90.1 PRM Electric Equipment User Data",
3
+ "definitions": {
4
+ "UserDataElectricEquipmentData": {
5
+ "type": "object",
6
+ "properties": {
7
+ "userdata_electric_equipment": {
8
+ "type": "array",
9
+ "description": "List of userdata_electric_equipment rows",
10
+ "items": {
11
+ "$ref": "#/definitions/UserDataElectricEquipment"
12
+ }
13
+ }
14
+ }
15
+ },
16
+ "UserDataElectricEquipment": {
17
+ "type": "object",
18
+ "description": "User data electric equipment object",
19
+ "properties": {
20
+ "name": {
21
+ "type": "string",
22
+ "description": "Identifier or name for the Electric Equipment object"
23
+ },
24
+ "fraction_of_controlled_receptacles": {
25
+ "type": "number",
26
+ "minimum": 0,
27
+ "maximum": 1,
28
+ "description": "Percentage of all controlled receptacles as a fraction."
29
+ },
30
+ "receptacle_power_savings": {
31
+ "type": "number",
32
+ "minimum": 0,
33
+ "description": "Input the receptacle power savings directly."
34
+ },
35
+ "motor_horsepower": {
36
+ "type": "number",
37
+ "minimum": 0,
38
+ "description": "Horsepower of the motor."
39
+ },
40
+ "motor_efficiency": {
41
+ "type": "number",
42
+ "minimum": 0,
43
+ "maximum": 1.0,
44
+ "description": "Efficiency of the motor as a percentage."
45
+ },
46
+ "motor_is_exempt": {
47
+ "type": "boolean",
48
+ "default": false,
49
+ "description": "Set to true if the motor is exempt, false otherwise."
50
+ },
51
+ "elevator_weight_of_car": {
52
+ "type": "number",
53
+ "minimum": 0,
54
+ "description": "Weight of the elevator car in pounds."
55
+ },
56
+ "elevator_rated_load": {
57
+ "type": "number",
58
+ "minimum": 0,
59
+ "description": "Proposed design elevator load at which to operate, in pounds."
60
+ },
61
+ "elevator_counter_weight_of_car": {
62
+ "type": "number",
63
+ "minimum": 0,
64
+ "description": "Counterweight of the elevator car in pounds."
65
+ },
66
+ "elevator_speed_of_car": {
67
+ "type": "number",
68
+ "minimum": 0,
69
+ "description": "Speed of the proposed elevator, in feet per minute."
70
+ },
71
+ "elevator_number_of_stories": {
72
+ "type": "integer",
73
+ "minimum": 0,
74
+ "description": "Number of stories (including basement) that is covered by the elevator."
75
+ },
76
+ "elevator_number_of_lifts": {
77
+ "type": "integer",
78
+ "minimum": 0,
79
+ "description": "Number of elevators."
80
+ },
81
+ "elevator_area_ft2": {
82
+ "type": "number",
83
+ "minimum": 0,
84
+ "description": "Area of the elevator, in square feet."
85
+ },
86
+ "elevator_ventilation_cfm": {
87
+ "type": "number",
88
+ "minimum": 0,
89
+ "description": "Elevator ventilation fan specification, in Watt per cfm."
90
+ },
91
+ "refrigeration_equipment_class": {
92
+ "type": "string",
93
+ "description": "Class of the refrigeration equipment as per Table G3.10.2.",
94
+ "$comment": "Not implemented yet"
95
+ },
96
+ "refrigeration_equipment_volume": {
97
+ "type": "number",
98
+ "minimum": 0,
99
+ "description": "Volume of the chiller or frozen compartment, in cubic feet.",
100
+ "$comment": "Not implemented yet"
101
+ },
102
+ "refrigeration_equipment_total_display_area": {
103
+ "type": "number",
104
+ "minimum": 0,
105
+ "description": "Total display area of the refrigeration equipment.",
106
+ "$comment": "Not implemented yet"
107
+ }
108
+ },
109
+ "required": ["name"],
110
+ "additionalProperties": false
111
+ }
112
+ }
113
+ }