openstudio-standards 0.2.14 → 0.2.15.pre.rc1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/data/geometry/ASHRAECollege.json +0 -19
- data/data/geometry/ASHRAEMidriseApartment.json +47 -47
- data/data/geometry/ASHRAESecondarySchool.osm +2 -2
- data/data/standards/OpenStudio_Standards-ashrae_90_1.xlsx +0 -0
- data/data/standards/export_OpenStudio_libraries.rb +1 -1
- data/data/standards/manage_OpenStudio_Standards.rb +43 -87
- data/data/standards/metadata_units_OpenStudio_Standards-ashrae_90_1.csv +9 -0
- data/data/standards/openstudio_standards_duplicates_log.csv +142 -27
- data/data/standards/test_performance_expected_dd_results.csv +2016 -2016
- data/data/weather/CAN_NU_Iqaluit.AP.719090_CWEC2016.ddy +2316 -0
- data/data/weather/CAN_NU_Iqaluit.AP.719090_CWEC2016.epw +8768 -0
- data/data/weather/CAN_NU_Iqaluit.AP.719090_CWEC2016.stat +697 -0
- data/lib/openstudio-standards/btap/WeatherData1.json +54 -0
- data/lib/openstudio-standards/btap/WeatherData1.xlsx +0 -0
- data/lib/openstudio-standards/btap/btap_result.rb +12 -10
- data/lib/openstudio-standards/btap/envelope.rb +2 -2
- data/lib/openstudio-standards/btap/geometry.rb +96 -49
- data/lib/openstudio-standards/{utilities → btap/utilities}/Add_template_field_to_json.rb +0 -0
- data/lib/openstudio-standards/{utilities → btap/utilities}/convert_surfaces_to_adiabatic_necb_8426.rb +0 -0
- data/lib/openstudio-standards/{utilities → btap/utilities}/generate_space_types.rb +0 -0
- data/lib/openstudio-standards/{utilities → btap/utilities}/necb_to_epw_map.rb +0 -0
- data/lib/openstudio-standards/{utilities → btap/utilities}/os_sim_extract.rb +0 -0
- data/lib/openstudio-standards/{utilities → btap/utilities}/rename_surfaces.rb +0 -0
- data/lib/openstudio-standards/{utilities → btap/utilities}/round_surf_coords.rb +0 -0
- data/lib/openstudio-standards/{utilities → btap/utilities}/sched_create.rb +0 -0
- data/lib/openstudio-standards/{utilities → btap/utilities}/set_mult_to_adiabatic.rb +0 -0
- data/lib/openstudio-standards/btap/utilities/space_type.rb +78 -0
- data/lib/openstudio-standards/{utilities → btap/utilities}/weatherData1_xlsx_to_json.rb +0 -0
- data/lib/openstudio-standards/hvac_sizing/Siz.AirConditionerVariableRefrigerantFlow.rb +1 -1
- data/lib/openstudio-standards/hvac_sizing/Siz.HVACComponent.rb +1 -1
- data/lib/openstudio-standards/hvac_sizing/Siz.HeatingCoolingFuels.rb +20 -6
- data/lib/openstudio-standards/hvac_sizing/Siz.Model.rb +6 -6
- data/lib/openstudio-standards/hvac_sizing/Siz.WaterHeaterMixed.rb +2 -2
- data/lib/openstudio-standards/hvac_sizing/Siz.ZoneHVACTerminalUnitVariableRefrigerantFlow.rb +1 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2004/ashrae_90_1_2004.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2004/ashrae_90_1_2004.PumpVariableSpeed.rb +6 -7
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.FanConstantVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.FanOnOff.rb +5 -5
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.FanVariableVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.PumpVariableSpeed.rb +6 -7
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.FanConstantVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.FanOnOff.rb +5 -5
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.FanVariableVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.Model.elevators.rb +6 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.Model.rb +10 -9
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.PumpVariableSpeed.rb +9 -11
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.FanConstantVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.FanOnOff.rb +5 -5
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.FanVariableVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.Model.elevators.rb +11 -7
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.Model.rb +17 -16
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.PumpVariableSpeed.rb +9 -11
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.hvac_systems.rb +4 -2
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.FanConstantVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.FanOnOff.rb +5 -5
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.FanVariableVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.Model.elevators.rb +11 -7
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.Model.rb +23 -22
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.PumpVariableSpeed.rb +9 -10
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.hvac_systems.rb +4 -2
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.FanConstantVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.FanOnOff.rb +5 -5
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.FanVariableVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Model.elevators.rb +11 -7
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Model.rb +23 -22
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Pump.rb +89 -0
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.PumpVariableSpeed.rb +9 -10
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Space.rb +76 -0
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.hvac_systems.rb +22 -2
- data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.Model.elevators.rb +11 -11
- data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.refrigeration.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.CoilHeatingGas.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.Model.elevators.rb +11 -11
- data/lib/openstudio-standards/prototypes/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.refrigeration.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/nrel_nze_ready_2017/nrel_zne_ready_2017.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/nrel_nze_ready_2017/nrel_zne_ready_2017.FanConstantVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/nrel_nze_ready_2017/nrel_zne_ready_2017.FanOnOff.rb +5 -5
- data/lib/openstudio-standards/prototypes/ashrae_90_1/nrel_nze_ready_2017/nrel_zne_ready_2017.FanVariableVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/nrel_nze_ready_2017/nrel_zne_ready_2017.HeatExchangerAirToAirSensibleAndLatent.rb +2 -0
- data/lib/openstudio-standards/prototypes/ashrae_90_1/nrel_nze_ready_2017/nrel_zne_ready_2017.Model.elevators.rb +11 -7
- data/lib/openstudio-standards/prototypes/ashrae_90_1/nrel_nze_ready_2017/nrel_zne_ready_2017.Model.rb +10 -10
- data/lib/openstudio-standards/prototypes/ashrae_90_1/nrel_nze_ready_2017/nrel_zne_ready_2017.hvac_systems.rb +4 -2
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.FanConstantVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.FanOnOff.rb +5 -5
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.FanVariableVolume.rb +5 -4
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.HeatExchangerAirToAirSensibleAndLatent.rb +2 -0
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.Model.elevators.rb +11 -7
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.Model.rb +10 -10
- data/lib/openstudio-standards/prototypes/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.hvac_systems.rb +4 -2
- data/lib/openstudio-standards/prototypes/cbes/cbes.Model.elevators.rb +3 -6
- data/lib/openstudio-standards/prototypes/cbes/cbes.refrigeration.rb +5 -4
- data/lib/openstudio-standards/prototypes/cbes/cbes_t24_2008/cbes_t24_2008.FanConstantVolume.rb +5 -3
- data/lib/openstudio-standards/prototypes/cbes/cbes_t24_2008/cbes_t24_2008.FanOnOff.rb +5 -4
- data/lib/openstudio-standards/prototypes/cbes/cbes_t24_2008/cbes_t24_2008.FanVariableVolume.rb +5 -3
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.College.rb +65 -30
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Courthouse.rb +54 -23
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.FullServiceRestaurant.rb +135 -147
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.HighRiseApartment.rb +42 -7
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Hospital.rb +85 -12
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Laboratory.rb +42 -30
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeDataCenterHighITE.rb +39 -8
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeDataCenterLowITE.rb +39 -8
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeHotel.rb +60 -12
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeOffice.rb +33 -265
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.LargeOfficeDetailed.rb +41 -3
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.MediumOffice.rb +69 -297
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.MediumOfficeDetailed.rb +68 -25
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.MidriseApartment.rb +88 -59
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Outpatient.rb +88 -9
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.PrimarySchool.rb +48 -10
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.QuickServiceRestaurant.rb +130 -145
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.RetailStandalone.rb +29 -101
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.RetailStripmall.rb +24 -7
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SecondarySchool.rb +48 -589
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SmallDataCenterHighITE.rb +38 -7
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SmallDataCenterLowITE.rb +38 -8
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SmallHotel.rb +40 -7
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SmallOffice.rb +85 -171
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SmallOfficeDetailed.rb +87 -44
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SuperMarket.rb +46 -5
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.SuperTallBuilding.rb +105 -17
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.TallBuilding.rb +97 -15
- data/lib/openstudio-standards/prototypes/common/buildings/Prototype.Warehouse.rb +26 -167
- data/lib/openstudio-standards/prototypes/common/do_not_edit_metaclasses.rb +3828 -1131
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.AirConditionerVariableRefrigerantFlow.rb +3 -0
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.AirTerminalSingleDuctVAVReheat.rb +2 -1
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.BoilerHotWater.rb +2 -0
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CentralAirSourceHeatPump.rb +2 -0
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilCoolingDXSingleSpeed.rb +4 -1
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilCoolingDXTwoSpeed.rb +3 -0
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilCoolingWater.rb +4 -1
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilCoolingWaterToAirHeatPumpEquationFit.rb +3 -0
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilHeatingDXSingleSpeed.rb +9 -0
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilHeatingElectric.rb +3 -0
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilHeatingGas.rb +9 -4
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilHeatingWater.rb +4 -1
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoilHeatingWaterToAirHeatPumpEquationFit.rb +3 -0
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.ControllerWaterCoil.rb +2 -2
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.CoolingTower.rb +4 -1
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.Fan.rb +23 -2
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.FanConstantVolume.rb +29 -4
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.FanOnOff.rb +29 -5
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.FanVariableVolume.rb +43 -4
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.FanZoneExhaust.rb +22 -0
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.HeatExchangerAirToAirSensibleAndLatent.rb +46 -3
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.elevators.rb +27 -22
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.exterior_lights.rb +15 -8
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.hvac.rb +22 -4
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.rb +429 -59
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.swh.rb +18 -11
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.Model.transformers.rb +11 -2
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.Pump.rb +1 -0
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.PumpVariableSpeed.rb +8 -10
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.ServiceWaterHeating.rb +37 -28
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.SizingSystem.rb +24 -6
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.hvac_systems.rb +251 -65
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.radiant_system_controls.rb +1 -1
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.refrigeration.rb +46 -31
- data/lib/openstudio-standards/prototypes/common/objects/Prototype.utilities.rb +62 -10
- data/lib/openstudio-standards/prototypes/common/prototype_metaprogramming.rb +76 -33
- data/lib/openstudio-standards/prototypes/deer/deer.Model.rb +1 -1
- data/lib/openstudio-standards/standards/Standards.AirLoopHVAC.rb +445 -275
- data/lib/openstudio-standards/standards/Standards.AirTerminalSingleDuctParallelPIUReheat.rb +3 -3
- data/lib/openstudio-standards/standards/Standards.AirTerminalSingleDuctVAVReheat.rb +26 -21
- data/lib/openstudio-standards/standards/Standards.BoilerHotWater.rb +5 -2
- data/lib/openstudio-standards/standards/Standards.BuildingStory.rb +7 -9
- data/lib/openstudio-standards/standards/Standards.ChillerElectricEIR.rb +8 -2
- data/lib/openstudio-standards/standards/Standards.CoilCoolingDXMultiSpeed.rb +10 -6
- data/lib/openstudio-standards/standards/Standards.CoilCoolingDXSingleSpeed.rb +5 -1
- data/lib/openstudio-standards/standards/Standards.CoilCoolingDXTwoSpeed.rb +6 -1
- data/lib/openstudio-standards/standards/Standards.CoilCoolingWaterToAirHeatPumpEquationFit.rb +45 -4
- data/lib/openstudio-standards/standards/Standards.CoilDX.rb +18 -8
- data/lib/openstudio-standards/standards/Standards.CoilHeatingDXMultiSpeed.rb +9 -7
- data/lib/openstudio-standards/standards/Standards.CoilHeatingDXSingleSpeed.rb +8 -4
- data/lib/openstudio-standards/standards/Standards.CoilHeatingGas.rb +86 -3
- data/lib/openstudio-standards/standards/Standards.CoilHeatingGasMultiStage.rb +5 -2
- data/lib/openstudio-standards/standards/Standards.CoilHeatingWaterToAirHeatPumpEquationFit.rb +6 -2
- data/lib/openstudio-standards/standards/Standards.Construction.rb +66 -35
- data/lib/openstudio-standards/standards/Standards.CoolingTower.rb +7 -7
- data/lib/openstudio-standards/standards/Standards.CoolingTowerSingleSpeed.rb +2 -2
- data/lib/openstudio-standards/standards/Standards.CoolingTowerTwoSpeed.rb +2 -1
- data/lib/openstudio-standards/standards/Standards.CoolingTowerVariableSpeed.rb +2 -1
- data/lib/openstudio-standards/standards/Standards.Fan.rb +53 -35
- data/lib/openstudio-standards/standards/Standards.FanVariableVolume.rb +22 -16
- data/lib/openstudio-standards/standards/Standards.FluidCooler.rb +2 -2
- data/lib/openstudio-standards/standards/Standards.HeaderedPumpsVariableSpeed.rb +4 -4
- data/lib/openstudio-standards/standards/Standards.HeatExchangerSensLat.rb +77 -19
- data/lib/openstudio-standards/standards/Standards.Model.rb +387 -245
- data/lib/openstudio-standards/standards/Standards.PlanarSurface.rb +13 -15
- data/lib/openstudio-standards/standards/Standards.PlantLoop.rb +94 -48
- data/lib/openstudio-standards/standards/Standards.Pump.rb +28 -20
- data/lib/openstudio-standards/standards/Standards.PumpVariableSpeed.rb +3 -4
- data/lib/openstudio-standards/standards/Standards.ScheduleCompact.rb +2 -1
- data/lib/openstudio-standards/standards/Standards.ScheduleConstant.rb +2 -0
- data/lib/openstudio-standards/standards/Standards.ScheduleRuleset.rb +34 -24
- data/lib/openstudio-standards/standards/Standards.Space.rb +179 -116
- data/lib/openstudio-standards/standards/Standards.SpaceType.rb +23 -12
- data/lib/openstudio-standards/standards/Standards.SubSurface.rb +55 -25
- data/lib/openstudio-standards/standards/Standards.Surface.rb +57 -32
- data/lib/openstudio-standards/standards/Standards.ThermalZone.rb +157 -107
- data/lib/openstudio-standards/standards/Standards.WaterHeaterMixed.rb +9 -6
- data/lib/openstudio-standards/standards/Standards.ZoneHVACComponent.rb +52 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1.Standards.FanVariableVolume.rb +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/ashrae_90_1_2004.AirLoopHVAC.rb +28 -18
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/ashrae_90_1_2004.FanVariableVolume.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/ashrae_90_1_2004.PlantLoop.rb +4 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/ashrae_90_1_2004.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/comstock_ashrae_90_1_2004/comstock_ashrae_90_1_2004.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/comstock_ashrae_90_1_2004/data/ashrae_90_1.schedules.json +696 -2938
- 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 +1 -1
- 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 +123 -123
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.furnaces.json +26 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.prototype_inputs.json +11 -11
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_system.json +0 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.spc_typ.json +395 -384
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.unitary_acs.json +69 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.AirLoopHVAC.rb +20 -13
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.FanVariableVolume.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.Model.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/ashrae_90_1_2007.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/comstock_ashrae_90_1_2007/comstock_ashrae_90_1_2007.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/comstock_ashrae_90_1_2007/data/ashrae_90_1.schedules.json +696 -2938
- 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 +1 -1
- 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 +122 -122
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.furnaces.json +26 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.prototype_inputs.json +11 -11
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_system.json +0 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.spc_typ.json +413 -401
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.unitary_acs.json +69 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.AirLoopHVAC.rb +42 -53
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.AirTerminalSingleDuctVAVReheat.rb +3 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.CoolingTower.rb +5 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.FanVariableVolume.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.Space.rb +6 -4
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/ashrae_90_1_2010.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/comstock_ashrae_90_1_2010/comstock_ashrae_90_1_2010.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/comstock_ashrae_90_1_2010/data/ashrae_90_1.schedules.json +696 -2938
- 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 +1 -1
- 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 +129 -129
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.energy_recovery.json +210 -42
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.furnaces.json +26 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.prototype_inputs.json +11 -11
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_system.json +0 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.spc_typ.json +460 -320
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.unitary_acs.json +69 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.AirLoopHVAC.rb +45 -51
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.AirTerminalSingleDuctVAVReheat.rb +3 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.CoolingTower.rb +5 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.CoolingTowerVariableSpeed.rb +2 -3
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.FanVariableVolume.rb +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.Space.rb +8 -5
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.ThermalZone.rb +2 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.WaterHeaterMixed.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.ZoneHVACComponent.rb +1 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/ashrae_90_1_2013.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/comstock_ashrae_90_1_2013/comstock_ashrae_90_1_2013.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/comstock_ashrae_90_1_2013/data/ashrae_90_1.schedules.json +696 -2938
- 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 +1 -1
- 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 +121 -121
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.energy_recovery.json +420 -84
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.furnaces.json +26 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.prototype_inputs.json +12 -12
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_system.json +0 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.spc_typ.json +475 -335
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.unitary_acs.json +69 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.AirLoopHVAC.rb +40 -50
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.AirTerminalSingleDuctVAVReheat.rb +3 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.CoolingTower.rb +5 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.CoolingTowerVariableSpeed.rb +2 -3
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.FanVariableVolume.rb +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.Space.rb +8 -5
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.ThermalZone.rb +2 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.ZoneHVACComponent.rb +1 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/ashrae_90_1_2016.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/comstock_ashrae_90_1_2016/comstock_ashrae_90_1_2016.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/comstock_ashrae_90_1_2016/data/ashrae_90_1.schedules.json +696 -2938
- 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 +1 -1
- 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 +152 -128
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.energy_recovery.json +488 -84
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.furnaces.json +26 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.spc_typ.json +47 -47
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2016/data/ashrae_90_1_2016.unitary_acs.json +69 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.AirLoopHVAC.rb +342 -56
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.AirTerminalSingleDuctVAVReheat.rb +3 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.CoolingTower.rb +5 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.CoolingTowerVariableSpeed.rb +2 -3
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.FanVariableVolume.rb +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.Space.rb +25 -5
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.ThermalZone.rb +2 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.ZoneHVACComponent.rb +30 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/ashrae_90_1_2019.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/comstock_ashrae_90_1_2019/comstock_ashrae_90_1_2019.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/comstock_ashrae_90_1_2019/data/ashrae_90_1.schedules.json +696 -2938
- 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 +1 -1
- 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 +151 -127
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.boilers.json +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.energy_recovery.json +2307 -101
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.furnaces.json +26 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.refrigeration_compressors.json +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.spc_typ.json +47 -47
- data/lib/openstudio-standards/standards/ashrae_90_1/ashrae_90_1_2019/data/ashrae_90_1_2019.unitary_acs.json +69 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/data/ashrae_90_1.curves.json +25 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/data/ashrae_90_1.schedules.json +286 -224
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/comstock_doe_ref_1980_2004/comstock_doe_ref_1980_2004.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/comstock_doe_ref_1980_2004/data/ashrae_90_1.schedules.json +696 -2938
- 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 +1 -1
- 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 +126 -126
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.furnaces.json +26 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.prototype_inputs.json +11 -11
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.refrigeration_system.json +0 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/data/doe_ref_1980_2004.spc_typ.json +405 -393
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.AirLoopHVAC.rb +15 -11
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.Model.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.PlantLoop.rb +3 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_1980_2004/doe_ref_1980_2004.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/comstock_doe_ref_pre_1980/comstock_doe_ref_pre_1980.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/comstock_doe_ref_pre_1980/data/ashrae_90_1.schedules.json +696 -2938
- 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 +121 -121
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.furnaces.json +37 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.prototype_inputs.json +11 -11
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.refrigeration_system.json +0 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/data/doe_ref_pre_1980.spc_typ.json +403 -391
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.AirLoopHVAC.rb +15 -11
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.Model.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.PlantLoop.rb +3 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/doe_ref_pre_1980/doe_ref_pre_1980.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/data/nrel_zne_ready_2017.furnaces.json +15 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.AirLoopHVAC.rb +64 -42
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.AirTerminalSingleDuctVAVReheat.rb +3 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.CoolingTower.rb +5 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.CoolingTowerVariableSpeed.rb +2 -3
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.FanVariableVolume.rb +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.HeatExchangerSensLat.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.Model.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.PlantLoop.rb +4 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.Space.rb +5 -3
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.ZoneHVACComponent.rb +3 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/nrel_zne_ready_2017/nrel_zne_ready_2017.rb +4 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/data/ze_aedg_multifamily.furnaces.json +15 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.AirLoopHVAC.rb +61 -36
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.AirTerminalSingleDuctVAVReheat.rb +3 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.CoolingTower.rb +5 -8
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.CoolingTowerVariableSpeed.rb +2 -3
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.FanVariableVolume.rb +2 -2
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.HeatExchangerSensLat.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.Model.rb +1 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.PlantLoop.rb +4 -1
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.Space.rb +6 -4
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.ZoneHVACComponent.rb +3 -0
- data/lib/openstudio-standards/standards/ashrae_90_1/ze_aedg_multifamily/ze_aedg_multifamily.rb +4 -0
- data/lib/openstudio-standards/standards/cbes/cbes.AirLoopHVAC.rb +20 -14
- data/lib/openstudio-standards/standards/cbes/cbes.PlantLoop.rb +3 -0
- data/lib/openstudio-standards/standards/cbes/cbes.rb +4 -0
- data/lib/openstudio-standards/standards/cbes/cbes_pre_1978/cbes_pre_1978.rb +4 -0
- data/lib/openstudio-standards/standards/cbes/cbes_t24_1978/cbes_t24_1978.rb +4 -0
- data/lib/openstudio-standards/standards/cbes/cbes_t24_1992/cbes_t24_1992.rb +4 -0
- data/lib/openstudio-standards/standards/cbes/cbes_t24_2001/cbes_t24_2001.rb +4 -0
- data/lib/openstudio-standards/standards/cbes/cbes_t24_2005/cbes_t24_2005.rb +4 -0
- data/lib/openstudio-standards/standards/cbes/cbes_t24_2008/cbes_t24_2008.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer.AirLoopHVAC.rb +10 -5
- data/lib/openstudio-standards/standards/deer/deer.PlanarSurface.rb +1 -1
- data/lib/openstudio-standards/standards/deer/deer.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_1985/comstock_deer_1985/comstock_deer_1985.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_1985/comstock_deer_1985/data/comstock_deer_1985.ext_ltg.json +2 -2
- data/lib/openstudio-standards/standards/deer/deer_1985/deer_1985.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_1996/comstock_deer_1996/comstock_deer_1996.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_1996/comstock_deer_1996/data/comstock_deer_1996.ext_ltg.json +2 -2
- data/lib/openstudio-standards/standards/deer/deer_1996/deer_1996.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2003/comstock_deer_2003/comstock_deer_2003.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2003/comstock_deer_2003/data/comstock_deer_2003.ext_ltg.json +2 -2
- data/lib/openstudio-standards/standards/deer/deer_2003/deer_2003.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2007/comstock_deer_2007/comstock_deer_2007.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2007/comstock_deer_2007/data/comstock_deer_2007.ext_ltg.json +2 -2
- data/lib/openstudio-standards/standards/deer/deer_2007/deer_2007.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2011/comstock_deer_2011/comstock_deer_2011.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2011/comstock_deer_2011/data/comstock_deer_2011.ext_ltg.json +2 -2
- data/lib/openstudio-standards/standards/deer/deer_2011/deer_2011.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2014/comstock_deer_2014/comstock_deer_2014.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2014/comstock_deer_2014/data/comstock_deer_2014.ext_ltg.json +2 -2
- data/lib/openstudio-standards/standards/deer/deer_2014/deer_2014.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2014/deer_2014.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2015/comstock_deer_2015/comstock_deer_2015.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2015/comstock_deer_2015/data/comstock_deer_2015.ext_ltg.json +2 -2
- data/lib/openstudio-standards/standards/deer/deer_2015/deer_2015.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2015/deer_2015.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2017/comstock_deer_2017/comstock_deer_2017.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2017/comstock_deer_2017/data/comstock_deer_2017.ext_ltg.json +2 -2
- data/lib/openstudio-standards/standards/deer/deer_2017/deer_2017.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2017/deer_2017.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2020/comstock_deer_2020/comstock_deer_2020.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2020/deer_2020.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2020/deer_2020.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2020/deer_2020.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2020/deer_2020.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2025/comstock_deer_2025/comstock_deer_2025.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2025/deer_2025.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2025/deer_2025.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2025/deer_2025.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2025/deer_2025.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2030/comstock_deer_2030/comstock_deer_2030.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2030/deer_2030.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2030/deer_2030.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2030/deer_2030.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2030/deer_2030.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2035/comstock_deer_2035/comstock_deer_2035.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2035/deer_2035.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2035/deer_2035.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2035/deer_2035.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2035/deer_2035.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2040/comstock_deer_2040/comstock_deer_2040.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2040/deer_2040.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2040/deer_2040.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2040/deer_2040.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2040/deer_2040.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2045/comstock_deer_2045/comstock_deer_2045.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2045/deer_2045.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2045/deer_2045.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2045/deer_2045.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2045/deer_2045.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2050/comstock_deer_2050/comstock_deer_2050.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2050/deer_2050.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2050/deer_2050.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2050/deer_2050.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2050/deer_2050.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2055/comstock_deer_2055/comstock_deer_2055.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2055/deer_2055.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2055/deer_2055.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2055/deer_2055.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2055/deer_2055.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2060/comstock_deer_2060/comstock_deer_2060.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2060/deer_2060.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2060/deer_2060.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2060/deer_2060.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2060/deer_2060.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2065/comstock_deer_2065/comstock_deer_2065.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2065/deer_2065.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2065/deer_2065.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2065/deer_2065.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2065/deer_2065.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2070/comstock_deer_2070/comstock_deer_2070.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2070/deer_2070.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2070/deer_2070.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2070/deer_2070.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2070/deer_2070.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2075/comstock_deer_2075/comstock_deer_2075.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_2075/deer_2075.AirLoopHVAC.rb +9 -5
- data/lib/openstudio-standards/standards/deer/deer_2075/deer_2075.FanVariableVolume.rb +3 -0
- data/lib/openstudio-standards/standards/deer/deer_2075/deer_2075.Space.rb +5 -3
- data/lib/openstudio-standards/standards/deer/deer_2075/deer_2075.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_pre_1975/comstock_deer_pre_1975/comstock_deer_pre_1975.rb +4 -0
- data/lib/openstudio-standards/standards/deer/deer_pre_1975/comstock_deer_pre_1975/data/comstock_deer_pre_1975.ext_ltg.json +2 -2
- data/lib/openstudio-standards/standards/deer/deer_pre_1975/deer_pre_1975.rb +4 -0
- data/lib/openstudio-standards/standards/icc_iecc/icc_iecc_2015/icc_iecc_2015.rb +4 -0
- data/lib/openstudio-standards/standards/necb/BTAP1980TO2010/btap_1980to2010.rb +6 -28
- data/lib/openstudio-standards/standards/necb/BTAPPRE1980/btap_pre1980.rb +25 -110
- data/lib/openstudio-standards/standards/necb/BTAPPRE1980/building_envelope.rb +45 -60
- data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_3_and_8_single_speed.rb +19 -23
- data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_4.rb +84 -83
- data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_system_6.rb +52 -47
- data/lib/openstudio-standards/standards/necb/BTAPPRE1980/hvac_systems.rb +43 -40
- data/lib/openstudio-standards/standards/necb/ECMS/data/boiler_set.json +18 -0
- data/lib/openstudio-standards/standards/necb/ECMS/data/chiller_set.json +211 -0
- data/lib/openstudio-standards/standards/necb/ECMS/data/curves.json +1195 -20
- data/lib/openstudio-standards/standards/necb/ECMS/data/furnace_set.json +18 -0
- data/lib/openstudio-standards/standards/necb/ECMS/data/heat_pumps.json +244 -182
- data/lib/openstudio-standards/standards/necb/ECMS/data/heat_pumps_heating.json +232 -185
- data/lib/openstudio-standards/standards/necb/ECMS/data/shw_set.json +20 -2
- data/lib/openstudio-standards/standards/necb/ECMS/ecms.rb +18 -25
- data/lib/openstudio-standards/standards/necb/ECMS/erv.rb +12 -13
- data/lib/openstudio-standards/standards/necb/ECMS/hvac_systems.rb +1647 -466
- data/lib/openstudio-standards/standards/necb/ECMS/loads.rb +93 -0
- data/lib/openstudio-standards/standards/necb/ECMS/nv.rb +40 -47
- data/lib/openstudio-standards/standards/necb/ECMS/pv_ground.rb +26 -25
- data/lib/openstudio-standards/standards/necb/NECB2011/autozone.rb +303 -305
- data/lib/openstudio-standards/standards/necb/NECB2011/beps_compliance_path.rb +45 -45
- data/lib/openstudio-standards/standards/necb/NECB2011/building_envelope.rb +90 -120
- data/lib/openstudio-standards/standards/necb/NECB2011/data/geometry/Hospital.osm +1176 -1115
- data/lib/openstudio-standards/standards/necb/NECB2011/data/geometry/LowriseApartment.osm +8279 -28923
- data/lib/openstudio-standards/standards/necb/NECB2011/data/space_types.json +1173 -1173
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_1_multi_speed.rb +15 -13
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_1_single_speed.rb +32 -29
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_2_and_5.rb +25 -26
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_3_and_8_multi_speed.rb +14 -14
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_3_and_8_single_speed.rb +24 -29
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_4.rb +85 -84
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_system_6.rb +41 -42
- data/lib/openstudio-standards/standards/necb/NECB2011/hvac_systems.rb +209 -197
- data/lib/openstudio-standards/standards/necb/NECB2011/lighting.rb +87 -82
- data/lib/openstudio-standards/standards/necb/NECB2011/necb_2011.rb +510 -406
- data/lib/openstudio-standards/standards/necb/NECB2011/nv.md +3 -3
- data/lib/openstudio-standards/standards/necb/NECB2011/qaqc/necb_qaqc.rb +686 -683
- data/lib/openstudio-standards/standards/necb/NECB2011/service_water_heating.rb +129 -82
- data/lib/openstudio-standards/standards/necb/NECB2015/data/space_types.json +1608 -1608
- data/lib/openstudio-standards/standards/necb/NECB2015/hvac_systems.rb +25 -18
- data/lib/openstudio-standards/standards/necb/NECB2015/lighting.rb +73 -67
- data/lib/openstudio-standards/standards/necb/NECB2015/necb_2015.rb +18 -22
- data/lib/openstudio-standards/standards/necb/NECB2015/qaqc/necb_2015_qaqc.rb +59 -63
- data/lib/openstudio-standards/standards/necb/NECB2017/data/space_types.json +1608 -1608
- data/lib/openstudio-standards/standards/necb/NECB2017/hvac_systems.rb +1 -4
- data/lib/openstudio-standards/standards/necb/NECB2017/necb_2017.rb +10 -14
- data/lib/openstudio-standards/standards/necb/NECB2020/building_envelope.rb +779 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/boilers.json +122 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/chillers.json +335 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/constants.json +13 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/furnaces.json +41 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/heat_pumps.json +452 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/heat_pumps_heating.json +164 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/heat_rejection.json +228 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/led_lighting_data.json +2883 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/space_types.json +25851 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/surface_thermal_transmittance.json +60 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/data/unitary_acs.json +585 -0
- data/lib/openstudio-standards/standards/necb/NECB2020/necb_2020.rb +175 -0
- data/lib/openstudio-standards/standards/necb/common/bc_step_code_indicators.md +10 -0
- data/lib/openstudio-standards/standards/necb/common/btap_data.rb +1963 -0
- data/lib/openstudio-standards/standards/necb/common/btap_datapoint.rb +410 -0
- data/lib/openstudio-standards/standards/necb/common/neb_end_use_prices.csv +42 -0
- data/lib/openstudio-standards/standards/necb/common/necb_reference_runs.csv +28705 -0
- data/lib/openstudio-standards/standards/necb/common/phius.md +23 -0
- data/lib/openstudio-standards/standards/necb/common/space_type_upgrade_map.json +1158 -386
- data/lib/openstudio-standards/standards/oeesc/oeesc_2014/oeesc_2014.rb +4 -0
- data/lib/openstudio-standards/standards/standard.rb +2 -1
- data/lib/openstudio-standards/utilities/define_thermal_zone_and_mulitpliers.rb +1 -1
- data/lib/openstudio-standards/utilities/logging.rb +6 -0
- data/lib/openstudio-standards/utilities/simulation.rb +30 -14
- data/lib/openstudio-standards/utilities/{speacetype_map_converter.rb → spacetype_map_converter.rb} +0 -0
- data/lib/openstudio-standards/utilities/sqlfile.rb +112 -71
- data/lib/openstudio-standards/version.rb +2 -2
- data/lib/openstudio-standards/weather/Weather.Model.rb +209 -9
- data/lib/openstudio-standards/weather/Weather.stat_file.rb +1 -1
- data/lib/openstudio-standards.rb +9 -0
- metadata +106 -205
- data/data/standards/OpenStudio_Standards-ashrae_90_1-ALL-comstock(space_types).xlsx +0 -0
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.boilers.json +0 -49
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.chillers.json +0 -293
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.construction_properties.json +0 -25426
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.construction_sets.json +0 -1600
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.economizers.json +0 -564
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.elevators.json +0 -349
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.ext_ltg.json +0 -164
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.ground_temperatures.json +0 -10663
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.heat_pumps.json +0 -508
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.heat_pumps_heating.json +0 -156
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.heat_rejection.json +0 -44
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.motors.json +0 -184
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.prototype_inputs.json +0 -3094
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.ref_cases.json +0 -829
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.ref_lnup.json +0 -562
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_compressors.json +0 -52
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_condenser.json +0 -220
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_system.json +0 -156
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.refrigeration_walkins.json +0 -1316
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.spc_typ.json +0 -21446
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.unitary_acs.json +0 -554
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.water_heaters.json +0 -68
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.water_source_heat_pumps.json +0 -28
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2004/data/ashrae_90_1_2004.water_source_heat_pumps_heating.json +0 -12
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.boilers.json +0 -49
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.chillers.json +0 -293
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.construction_properties.json +0 -12487
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.construction_sets.json +0 -1600
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.economizers.json +0 -564
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.elevators.json +0 -349
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.ext_ltg.json +0 -164
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.ground_temperatures.json +0 -10663
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.heat_pumps.json +0 -466
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.heat_pumps_heating.json +0 -137
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.heat_rejection.json +0 -44
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.motors.json +0 -184
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.prototype_inputs.json +0 -3094
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.ref_cases.json +0 -829
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.ref_lnup.json +0 -562
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_compressors.json +0 -52
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_condenser.json +0 -220
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_system.json +0 -156
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.refrigeration_walkins.json +0 -1316
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.spc_typ.json +0 -21380
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.unitary_acs.json +0 -554
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.water_heaters.json +0 -68
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.water_source_heat_pumps.json +0 -28
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2007/data/ashrae_90_1_2007.water_source_heat_pumps_heating.json +0 -12
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.boilers.json +0 -49
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.chillers.json +0 -395
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.construction_properties.json +0 -12487
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.construction_sets.json +0 -1600
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.economizers.json +0 -592
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.elevators.json +0 -349
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.energy_recovery.json +0 -550
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.ext_ltg.json +0 -164
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.ground_temperatures.json +0 -10663
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.heat_pumps.json +0 -466
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.heat_pumps_heating.json +0 -137
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.heat_rejection.json +0 -44
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.motors.json +0 -238
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.prototype_inputs.json +0 -3094
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.ref_cases.json +0 -829
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.ref_lnup.json +0 -562
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_compressors.json +0 -52
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_condenser.json +0 -220
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_system.json +0 -156
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.refrigeration_walkins.json +0 -1316
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.spc_typ.json +0 -21548
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.unitary_acs.json +0 -554
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.water_heaters.json +0 -68
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.water_source_heat_pumps.json +0 -28
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2010/data/ashrae_90_1_2010.water_source_heat_pumps_heating.json +0 -12
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.boilers.json +0 -64
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.chillers.json +0 -871
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.construction_properties.json +0 -12487
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.construction_sets.json +0 -1600
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.economizers.json +0 -592
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.elevators.json +0 -349
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.energy_recovery.json +0 -1096
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.ext_ltg.json +0 -164
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.ground_temperatures.json +0 -10663
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.heat_pumps.json +0 -886
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.heat_pumps_heating.json +0 -194
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.heat_rejection.json +0 -44
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.motors.json +0 -247
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.prototype_inputs.json +0 -3094
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.ref_cases.json +0 -829
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.ref_lnup.json +0 -562
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_compressors.json +0 -52
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_condenser.json +0 -220
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_system.json +0 -156
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.refrigeration_walkins.json +0 -1316
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.spc_typ.json +0 -22079
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.unitary_acs.json +0 -994
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.water_heaters.json +0 -68
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.water_source_heat_pumps.json +0 -28
- data/data/standards/export/ashrae_90_1/ashrae_90_1_2013/data/ashrae_90_1_2013.water_source_heat_pumps_heating.json +0 -12
- data/lib/openstudio-standards/utilities/convert_costing_constructions.rb +0 -105
@@ -2,7 +2,7 @@ class Standard
|
|
2
2
|
# @!group hvac_systems
|
3
3
|
|
4
4
|
# Returns standard design sizing temperatures
|
5
|
-
|
5
|
+
#
|
6
6
|
# @return [Hash] Hash of design sizing temperature lookups
|
7
7
|
def standard_design_sizing_temperatures
|
8
8
|
dsgn_temps = {}
|
@@ -21,9 +21,9 @@ class Standard
|
|
21
21
|
return dsgn_temps
|
22
22
|
end
|
23
23
|
|
24
|
-
# Creates a hot water loop with a boiler, district heating, or a
|
25
|
-
# water-to-water heat pump and adds it to the model.
|
24
|
+
# Creates a hot water loop with a boiler, district heating, or a water-to-water heat pump and adds it to the model.
|
26
25
|
#
|
26
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
27
27
|
# @param boiler_fuel_type [String] valid choices are Electricity, NaturalGas, PropaneGas, FuelOilNo1, FuelOilNo2, DistrictHeating, HeatPump
|
28
28
|
# @param ambient_loop [OpenStudio::Model::PlantLoop] The condenser loop for the heat pump. Only used when boiler_fuel_type is HeatPump.
|
29
29
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
@@ -152,7 +152,7 @@ class Standard
|
|
152
152
|
max_plr: boiler_max_plr,
|
153
153
|
sizing_factor: boiler_sizing_factor)
|
154
154
|
|
155
|
-
#
|
155
|
+
# @todo Yixing. Adding temperature setpoint controller at boiler outlet causes simulation errors
|
156
156
|
# boiler_stpt_manager = OpenStudio::Model::SetpointManagerScheduled.new(self, hw_temp_sch)
|
157
157
|
# boiler_stpt_manager.setName("Boiler outlet setpoint manager")
|
158
158
|
# boiler_stpt_manager.addToNode(boiler.outletModelObject.get.to_Node.get)
|
@@ -186,6 +186,7 @@ class Standard
|
|
186
186
|
|
187
187
|
# Creates a chilled water loop and adds it to the model.
|
188
188
|
#
|
189
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
189
190
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
190
191
|
# @param cooling_fuel [String] cooling fuel. Valid choices are: Electricity, DistrictCooling
|
191
192
|
# @param dsgn_sup_wtr_temp [Double] design supply water temperature in degrees Fahrenheit, default 44F
|
@@ -249,8 +250,8 @@ class Standard
|
|
249
250
|
chw_stpt_manager = OpenStudio::Model::SetpointManagerScheduled.new(model, chw_temp_sch)
|
250
251
|
chw_stpt_manager.setName("#{chilled_water_loop.name} Setpoint Manager")
|
251
252
|
chw_stpt_manager.addToNode(chilled_water_loop.supplyOutletNode)
|
252
|
-
#
|
253
|
-
#
|
253
|
+
# @todo Yixing check the CHW Setpoint from standards
|
254
|
+
# @todo Should be a OutdoorAirReset, see the changes I've made in Standards.PlantLoop.apply_prm_baseline_temperatures
|
254
255
|
|
255
256
|
# create chilled water pumps
|
256
257
|
if chw_pumping_type == 'const_pri'
|
@@ -379,6 +380,7 @@ class Standard
|
|
379
380
|
|
380
381
|
# Creates a condenser water loop and adds it to the model.
|
381
382
|
#
|
383
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
382
384
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
383
385
|
# @param cooling_tower_type [String] valid choices are Open Cooling Tower, Closed Cooling Tower
|
384
386
|
# @param cooling_tower_fan_type [String] valid choices are Centrifugal, "Propeller or Axial"
|
@@ -501,7 +503,7 @@ class Standard
|
|
501
503
|
end
|
502
504
|
when 'TwoSpeed Fan'
|
503
505
|
cooling_tower = OpenStudio::Model::CoolingTowerTwoSpeed.new(model)
|
504
|
-
#
|
506
|
+
# @todo expose newer cooling tower sizing fields in API
|
505
507
|
# cooling_tower.setLowFanSpeedAirFlowRateSizingFactor(0.5)
|
506
508
|
# cooling_tower.setLowFanSpeedFanPowerSizingFactor(0.3)
|
507
509
|
# cooling_tower.setLowFanSpeedUFactorTimesAreaSizingFactor
|
@@ -557,7 +559,10 @@ class Standard
|
|
557
559
|
if EmbeddedScripting.hasFile(ddy_file)
|
558
560
|
ddy_string = EmbeddedScripting.getFileAsString(ddy_file)
|
559
561
|
temp_ddy_path = "#{Dir.pwd}/in.ddy"
|
560
|
-
File.open(temp_ddy_path, 'wb')
|
562
|
+
File.open(temp_ddy_path, 'wb') do |f|
|
563
|
+
f << ddy_string
|
564
|
+
f.flush
|
565
|
+
end
|
561
566
|
ddy_model = OpenStudio::EnergyPlus.loadAndTranslateIdf(temp_ddy_path).get
|
562
567
|
File.delete(temp_ddy_path) if File.exist?(temp_ddy_path)
|
563
568
|
else
|
@@ -629,6 +634,7 @@ class Standard
|
|
629
634
|
|
630
635
|
# Creates a heat pump loop which has a boiler and fluid cooler for supplemental heating/cooling and adds it to the model.
|
631
636
|
#
|
637
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
632
638
|
# @param heating_fuel [String]
|
633
639
|
# @param cooling_fuel [String] cooling fuel. Valid options are: Electricity, DistrictCooling
|
634
640
|
# @param cooling_type [String] cooling type if not DistrictCooling.
|
@@ -642,7 +648,7 @@ class Standard
|
|
642
648
|
# @param dsgn_sup_wtr_temp [Double] design supply water temperature in degrees Fahrenheit, default 102.2F
|
643
649
|
# @param dsgn_sup_wtr_temp_delt [Double] design supply-return water temperature difference in degrees Rankine, default 19.8R
|
644
650
|
# @return [OpenStudio::Model::PlantLoop] the resulting plant loop
|
645
|
-
#
|
651
|
+
# @todo replace cooling tower with fluid cooler after fixing sizing inputs
|
646
652
|
def model_add_hp_loop(model,
|
647
653
|
heating_fuel: 'NaturalGas',
|
648
654
|
cooling_fuel: 'Electricity',
|
@@ -840,9 +846,10 @@ class Standard
|
|
840
846
|
|
841
847
|
# Creates loop that roughly mimics a properly sized ground heat exchanger for supplemental heating/cooling and adds it to the model.
|
842
848
|
#
|
849
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
843
850
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
844
851
|
# @return [OpenStudio::Model::PlantLoop] the resulting plant loop
|
845
|
-
#
|
852
|
+
# @todo replace condenser loop w/ ground HX model that does not involve district objects
|
846
853
|
def model_add_ground_hx_loop(model,
|
847
854
|
system_name: 'Ground HX Loop')
|
848
855
|
OpenStudio.logFree(OpenStudio::Info, 'openstudio.Model.Model', 'Adding ground source loop.')
|
@@ -935,10 +942,11 @@ class Standard
|
|
935
942
|
|
936
943
|
# Adds an ambient condenser water loop that will be used in a district to connect buildings as a shared sink/source for heat pumps.
|
937
944
|
#
|
945
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
938
946
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
939
947
|
# @return [OpenStudio::Model::PlantLoop] the ambient loop
|
940
|
-
#
|
941
|
-
#
|
948
|
+
# @todo add inputs for design temperatures like heat pump loop object
|
949
|
+
# @todo handle ground and heat pump with this; make heating/cooling source options (boiler, fluid cooler, district)
|
942
950
|
def model_add_district_ambient_loop(model,
|
943
951
|
system_name: 'Ambient Loop')
|
944
952
|
OpenStudio.logFree(OpenStudio::Info, 'openstudio.Model.Model', 'Adding district ambient loop.')
|
@@ -1027,6 +1035,7 @@ class Standard
|
|
1027
1035
|
# Creates a DOAS system with cold supply and terminal units for each zone.
|
1028
1036
|
# This is the default DOAS system for DOE prototype buildings. Use model_add_doas for other DOAS systems.
|
1029
1037
|
#
|
1038
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
1030
1039
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
1031
1040
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
1032
1041
|
# @param hot_water_loop [OpenStudio::Model::PlantLoop] hot water loop to connect to heating and zone fan coils
|
@@ -1209,7 +1218,7 @@ class Standard
|
|
1209
1218
|
erv = OpenStudio::Model::HeatExchangerAirToAirSensibleAndLatent.new(model)
|
1210
1219
|
erv.addToNode(oa_system.outboardOANode.get)
|
1211
1220
|
erv.setHeatExchangerType('Rotary')
|
1212
|
-
#
|
1221
|
+
# @todo come up with scheme for estimating power of ERV motor wheel which might require knowing airflow.
|
1213
1222
|
# erv.setNominalElectricPower(value_new)
|
1214
1223
|
erv.setEconomizerLockout(true)
|
1215
1224
|
erv.setSupplyAirOutletTemperatureControl(false)
|
@@ -1254,6 +1263,7 @@ class Standard
|
|
1254
1263
|
|
1255
1264
|
# Creates a DOAS system with terminal units for each zone.
|
1256
1265
|
#
|
1266
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
1257
1267
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
1258
1268
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
1259
1269
|
# @param doas_type [String] DOASCV or DOASVAV, determines whether the DOAS is operated at scheduled,
|
@@ -1555,6 +1565,7 @@ class Standard
|
|
1555
1565
|
|
1556
1566
|
# Creates a VAV system and adds it to the model.
|
1557
1567
|
#
|
1568
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
1558
1569
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
1559
1570
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
1560
1571
|
# @param return_plenum [OpenStudio::Model::ThermalZone] the zone to attach as the supply plenum, or nil, in which case no return plenum will be used
|
@@ -1795,6 +1806,7 @@ class Standard
|
|
1795
1806
|
|
1796
1807
|
# Creates a VAV system with parallel fan powered boxes and adds it to the model.
|
1797
1808
|
#
|
1809
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
1798
1810
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
1799
1811
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
1800
1812
|
# @param chilled_water_loop [OpenStudio::Model::PlantLoop] chilled water loop to connect to the cooling coil
|
@@ -1926,6 +1938,7 @@ class Standard
|
|
1926
1938
|
|
1927
1939
|
# Creates a packaged VAV system and adds it to the model.
|
1928
1940
|
#
|
1941
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
1929
1942
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
1930
1943
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
1931
1944
|
# @param return_plenum [OpenStudio::Model::ThermalZone] the zone to attach as the supply plenum, or nil, in which case no return plenum will be used
|
@@ -2113,6 +2126,7 @@ class Standard
|
|
2113
2126
|
|
2114
2127
|
# Creates a packaged VAV system with parallel fan powered boxes and adds it to the model.
|
2115
2128
|
#
|
2129
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
2116
2130
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
2117
2131
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
2118
2132
|
# @param chilled_water_loop [OpenStudio::Model::PlantLoop] chilled water loop to connect cooling coils to. If nil, will be DX cooling
|
@@ -2251,6 +2265,7 @@ class Standard
|
|
2251
2265
|
|
2252
2266
|
# Creates a CAV system and adds it to the model.
|
2253
2267
|
#
|
2268
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
2254
2269
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
2255
2270
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
2256
2271
|
# @param hot_water_loop [OpenStudio::Model::PlantLoop] hot water loop to connect to heating and reheat coils.
|
@@ -2413,6 +2428,7 @@ class Standard
|
|
2413
2428
|
|
2414
2429
|
# Creates a PSZ-AC system for each zone and adds it to the model.
|
2415
2430
|
#
|
2431
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
2416
2432
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
2417
2433
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
2418
2434
|
# @param cooling_type [String] valid choices are Water, Two Speed DX AC, Single Speed DX AC, Single Speed Heat Pump, Water To Air Heat Pump
|
@@ -2655,7 +2671,7 @@ class Standard
|
|
2655
2671
|
oa_system.setName("#{air_loop.name} OA System")
|
2656
2672
|
oa_system.addToNode(air_loop.supplyInletNode)
|
2657
2673
|
|
2658
|
-
#
|
2674
|
+
# @todo enable economizer maximum fraction outdoor air schedule input
|
2659
2675
|
# econ_eff_sch = model_add_schedule(model, 'RetailStandalone PSZ_Econ_MaxOAFrac_Sch')
|
2660
2676
|
|
2661
2677
|
# set air loop availability controls and night cycle manager, after oa system added
|
@@ -2682,6 +2698,7 @@ class Standard
|
|
2682
2698
|
|
2683
2699
|
# Creates a packaged single zone VAV system for each zone and adds it to the model.
|
2684
2700
|
#
|
2701
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
2685
2702
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
2686
2703
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
2687
2704
|
# @param heating_type [String] valid choices are NaturalGas, Electricity, Water, nil (no heat)
|
@@ -2797,7 +2814,7 @@ class Standard
|
|
2797
2814
|
clg_coil.addSpeed(clg_spd_1)
|
2798
2815
|
clg_coil.setNominalSpeedLevel(1)
|
2799
2816
|
|
2800
|
-
#
|
2817
|
+
# @todo enable economizer maximum fraction outdoor air schedule input
|
2801
2818
|
# econ_eff_sch = model_add_schedule(model, 'RetailStandalone PSZ_Econ_MaxOAFrac_Sch')
|
2802
2819
|
|
2803
2820
|
# wrap coils in a unitary system
|
@@ -2807,7 +2824,7 @@ class Standard
|
|
2807
2824
|
unitary_system.setCoolingCoil(clg_coil)
|
2808
2825
|
unitary_system.setSupplementalHeatingCoil(supplemental_htg_coil)
|
2809
2826
|
unitary_system.setName("#{zone.name} Unitary PSZ-VAV")
|
2810
|
-
unitary_system.setString(2, 'SingleZoneVAV') #
|
2827
|
+
unitary_system.setString(2, 'SingleZoneVAV') # @todo add setControlType() method
|
2811
2828
|
unitary_system.setControllingZoneorThermostatLocation(zone)
|
2812
2829
|
unitary_system.setMaximumSupplyAirTemperature(dsgn_temps['zn_htg_dsgn_sup_air_temp_c'])
|
2813
2830
|
unitary_system.setFanPlacement('BlowThrough')
|
@@ -2844,6 +2861,7 @@ class Standard
|
|
2844
2861
|
|
2845
2862
|
# Adds a data center load to a given space.
|
2846
2863
|
#
|
2864
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
2847
2865
|
# @param space [OpenStudio::Model::Space] which space to assign the data center loads to
|
2848
2866
|
# @param dc_watts_per_area [Double] data center load, in W/m^2
|
2849
2867
|
# @return [Bool] returns true if successful, false if not
|
@@ -2863,6 +2881,7 @@ class Standard
|
|
2863
2881
|
|
2864
2882
|
# Creates a data center PSZ-AC system for each zone.
|
2865
2883
|
#
|
2884
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
2866
2885
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
2867
2886
|
# @param hot_water_loop [OpenStudio::Model::PlantLoop] hot water loop to connect to the heating coil
|
2868
2887
|
# @param heat_pump_loop [OpenStudio::Model::PlantLoop] heat pump water loop to connect to heat pump
|
@@ -3023,6 +3042,7 @@ class Standard
|
|
3023
3042
|
|
3024
3043
|
# Creates a CRAC system for data center and adds it to the model.
|
3025
3044
|
#
|
3045
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
3026
3046
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
3027
3047
|
# @param thermal_zones [String] zones to connect to this system
|
3028
3048
|
# @param hvac_op_sch [String] name of the HVAC operation schedule
|
@@ -3235,6 +3255,7 @@ class Standard
|
|
3235
3255
|
|
3236
3256
|
# Creates a CRAH system for larger size data center and adds it to the model.
|
3237
3257
|
#
|
3258
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
3238
3259
|
# @param chilled_water_loop [string]
|
3239
3260
|
# @param system_name [String] the name of the system, or nil in which case it will be defaulted
|
3240
3261
|
# @param thermal_zones [String] zones to connect to this system
|
@@ -3391,6 +3412,7 @@ class Standard
|
|
3391
3412
|
|
3392
3413
|
# Creates a split DX AC system for each zone and adds it to the model.
|
3393
3414
|
#
|
3415
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
3394
3416
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
3395
3417
|
# @param cooling_type [String] valid choices are Two Speed DX AC, Single Speed DX AC, Single Speed Heat Pump
|
3396
3418
|
# @param heating_type [String] valid choices are Gas, Single Speed Heat Pump
|
@@ -3550,6 +3572,7 @@ class Standard
|
|
3550
3572
|
|
3551
3573
|
# Creates a minisplit heatpump system for each zone and adds it to the model.
|
3552
3574
|
#
|
3575
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
3553
3576
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
3554
3577
|
# @param cooling_type [String] valid choices are Two Speed DX AC, Single Speed DX AC, Single Speed Heat Pump
|
3555
3578
|
# @param heating_type [String] valid choices are Single Speed DX
|
@@ -3664,6 +3687,7 @@ class Standard
|
|
3664
3687
|
|
3665
3688
|
# Creates a PTAC system for each zone and adds it to the model.
|
3666
3689
|
#
|
3690
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
3667
3691
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
3668
3692
|
# @param cooling_type [String] valid choices are Two Speed DX AC, Single Speed DX AC
|
3669
3693
|
# @param heating_type [String] valid choices are NaturalGas, Electricity, Water, nil (no heat)
|
@@ -3785,6 +3809,7 @@ class Standard
|
|
3785
3809
|
|
3786
3810
|
# Creates a PTHP system for each zone and adds it to the model.
|
3787
3811
|
#
|
3812
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
3788
3813
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
3789
3814
|
# @param fan_type [String] valid choices are ConstantVolume, Cycling
|
3790
3815
|
# @param ventilation [Bool] If true, ventilation will be supplied through the unit. If false,
|
@@ -3870,6 +3895,7 @@ class Standard
|
|
3870
3895
|
|
3871
3896
|
# Creates a unit heater for each zone and adds it to the model.
|
3872
3897
|
#
|
3898
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
3873
3899
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
3874
3900
|
# @param hvac_op_sch [String] name of the HVAC operation schedule or nil in which case will be defaulted to always on
|
3875
3901
|
# @param fan_control_type [String] valid choices are OnOff, ConstantVolume, VariableVolume
|
@@ -3986,6 +4012,7 @@ class Standard
|
|
3986
4012
|
|
3987
4013
|
# Creates a high temp radiant heater for each zone and adds it to the model.
|
3988
4014
|
#
|
4015
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
3989
4016
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
3990
4017
|
# @param heating_type [String] valid choices are Gas, Electric
|
3991
4018
|
# @param combustion_efficiency [Double] combustion efficiency as decimal
|
@@ -4043,6 +4070,7 @@ class Standard
|
|
4043
4070
|
|
4044
4071
|
# Creates an evaporative cooler for each zone and adds it to the model.
|
4045
4072
|
#
|
4073
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
4046
4074
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to connect to this system
|
4047
4075
|
# @return [Array<OpenStudio::Model::AirLoopHVAC>] the resulting evaporative coolers
|
4048
4076
|
def model_add_evap_cooler(model,
|
@@ -4127,7 +4155,7 @@ class Standard
|
|
4127
4155
|
programs << avail_program
|
4128
4156
|
|
4129
4157
|
# Direct Evap Cooler
|
4130
|
-
#
|
4158
|
+
# @todo better assumptions for evap cooler performance and fan pressure rise
|
4131
4159
|
evap = OpenStudio::Model::EvaporativeCoolerDirectResearchSpecial.new(model, model.alwaysOnDiscreteSchedule)
|
4132
4160
|
evap.setName("#{zone.name} Evap Media")
|
4133
4161
|
evap.autosizePrimaryAirDesignFlowRate
|
@@ -4198,6 +4226,7 @@ class Standard
|
|
4198
4226
|
|
4199
4227
|
# Adds hydronic or electric baseboard heating to each zone.
|
4200
4228
|
#
|
4229
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
4201
4230
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to add baseboards to.
|
4202
4231
|
# @param hot_water_loop [OpenStudio::Model::PlantLoop] The hot water loop that serves the baseboards. If nil, baseboards are electric.
|
4203
4232
|
# @return [Array<OpenStudio::Model::ZoneHVACBaseboardConvectiveElectric, OpenStudio::Model::ZoneHVACBaseboardConvectiveWater>]
|
@@ -4232,6 +4261,7 @@ class Standard
|
|
4232
4261
|
|
4233
4262
|
# Adds Variable Refrigerant Flow system and terminal units for each zone
|
4234
4263
|
#
|
4264
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
4235
4265
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to add fan coil units
|
4236
4266
|
# @param ventilation [Bool] If true, ventilation will be supplied through the unit. If false,
|
4237
4267
|
# no ventilation will be supplied through the unit, with the expectation that it will be provided by a DOAS or separate system.
|
@@ -4288,6 +4318,7 @@ class Standard
|
|
4288
4318
|
|
4289
4319
|
# Adds four pipe fan coil units to each zone.
|
4290
4320
|
#
|
4321
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
4291
4322
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to add fan coil units
|
4292
4323
|
# @param chilled_water_loop [OpenStudio::Model::PlantLoop] the chilled water loop that serves the fan coils.
|
4293
4324
|
# @param hot_water_loop [OpenStudio::Model::PlantLoop] the hot water loop that serves the fan coils.
|
@@ -4372,6 +4403,7 @@ class Standard
|
|
4372
4403
|
|
4373
4404
|
# Adds low temperature radiant loop systems to each zone.
|
4374
4405
|
#
|
4406
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
4375
4407
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to add radiant loops
|
4376
4408
|
# @param hot_water_loop [OpenStudio::Model::PlantLoop] the hot water loop that serves the radiant loop.
|
4377
4409
|
# @param chilled_water_loop [OpenStudio::Model::PlantLoop] the chilled water loop that serves the radiant loop.
|
@@ -4394,7 +4426,7 @@ class Standard
|
|
4394
4426
|
# @param radiant_lockout_end_time [double] decimal hour of when radiant lockout ends
|
4395
4427
|
# Only used if radiant_lockout is true
|
4396
4428
|
# @return [Array<OpenStudio::Model::ZoneHVACLowTemperatureRadiantVariableFlow>] array of radiant objects.
|
4397
|
-
#
|
4429
|
+
# @todo Once the OpenStudio API supports it, make chilled water loops optional for heating only systems
|
4398
4430
|
def model_add_low_temp_radiant(model,
|
4399
4431
|
thermal_zones,
|
4400
4432
|
hot_water_loop,
|
@@ -4693,7 +4725,7 @@ class Standard
|
|
4693
4725
|
|
4694
4726
|
# radiant loop layout details
|
4695
4727
|
radiant_loop.setHydronicTubingInsideDiameter(0.015875) # 5/8 in. ID, 3/4 in. OD
|
4696
|
-
# @
|
4728
|
+
# @todo include a method to determine tubing length in the zone
|
4697
4729
|
# loop_length = 7*zone.floorArea
|
4698
4730
|
# radiant_loop.setHydronicTubingLength()
|
4699
4731
|
radiant_loop.setNumberofCircuits('CalculateFromCircuitLength')
|
@@ -4725,6 +4757,7 @@ class Standard
|
|
4725
4757
|
# Adds a window air conditioner to each zone.
|
4726
4758
|
# Code adapted from: https://github.com/NREL/OpenStudio-BEopt/blob/master/measures/ResidentialHVACRoomAirConditioner/measure.rb
|
4727
4759
|
#
|
4760
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
4728
4761
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to add fan coil units to.
|
4729
4762
|
# @return [Array<OpenStudio::Model::ZoneHVACPackagedTerminalAirConditioner>] and array of PTACs used as window AC units
|
4730
4763
|
def model_add_window_ac(model,
|
@@ -4779,6 +4812,7 @@ class Standard
|
|
4779
4812
|
# Code adapted from:
|
4780
4813
|
# https://github.com/NREL/OpenStudio-BEopt/blob/master/measures/ResidentialHVACFurnaceFuel/measure.rb
|
4781
4814
|
#
|
4815
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
4782
4816
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to add fan coil units to.
|
4783
4817
|
# @param heating [Bool] if true, the unit will include a NaturalGas heating coil
|
4784
4818
|
# @param cooling [Bool] if true, the unit will include a DX cooling coil
|
@@ -4909,6 +4943,7 @@ class Standard
|
|
4909
4943
|
# Code adapted from:
|
4910
4944
|
# https://github.com/NREL/OpenStudio-BEopt/blob/master/measures/ResidentialHVACAirSourceHeatPumpSingleSpeed/measure.rb
|
4911
4945
|
#
|
4946
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
4912
4947
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to add fan coil units to.
|
4913
4948
|
# @param heating [Bool] if true, the unit will include a NaturalGas heating coil
|
4914
4949
|
# @param cooling [Bool] if true, the unit will include a DX cooling coil
|
@@ -5044,6 +5079,7 @@ class Standard
|
|
5044
5079
|
|
5045
5080
|
# Adds zone level water-to-air heat pumps for each zone.
|
5046
5081
|
#
|
5082
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5047
5083
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones served by heat pumps
|
5048
5084
|
# @param condenser_loop [OpenStudio::Model::PlantLoop] the condenser loop for the heat pumps #
|
5049
5085
|
# @param ventilation [Bool] if true, ventilation will be supplied through the unit.
|
@@ -5095,9 +5131,10 @@ class Standard
|
|
5095
5131
|
|
5096
5132
|
# Adds zone level ERVs for each zone.
|
5097
5133
|
#
|
5134
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5098
5135
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to add heat pumps to.
|
5099
5136
|
# @return [Array<OpenStudio::Model::ZoneHVACEnergyRecoveryVentilator>] an array of zone ERVs
|
5100
|
-
#
|
5137
|
+
# @todo review the static pressure rise for the ERV
|
5101
5138
|
def model_add_zone_erv(model,
|
5102
5139
|
thermal_zones)
|
5103
5140
|
ervs = []
|
@@ -5192,6 +5229,7 @@ class Standard
|
|
5192
5229
|
|
5193
5230
|
# Adds ideal air loads systems for each zone.
|
5194
5231
|
#
|
5232
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5195
5233
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] array of zones to enable ideal air loads
|
5196
5234
|
# @param hvac_op_sch [String] name of the HVAC operation schedule, default is always on
|
5197
5235
|
# @param heat_avail_sch [String] name of the heating availability schedule, default is always on
|
@@ -5269,7 +5307,7 @@ class Standard
|
|
5269
5307
|
ideal_loads.setHumidificationControlType(humid_ctrl_type)
|
5270
5308
|
if include_outdoor_air
|
5271
5309
|
# get the design specification outdoor air of the largest space in the zone
|
5272
|
-
#
|
5310
|
+
# @todo create a new design specification outdoor air object that sums ventilation rates and schedules if multiple design specification outdoor air objects
|
5273
5311
|
space_areas = zone.spaces.map(&:floorArea)
|
5274
5312
|
largest_space = zone.spaces.select { |s| s.floorArea == space_areas.max }
|
5275
5313
|
largest_space = largest_space[0]
|
@@ -5353,13 +5391,14 @@ class Standard
|
|
5353
5391
|
|
5354
5392
|
# Adds an exhaust fan to each zone.
|
5355
5393
|
#
|
5394
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5356
5395
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] an array of thermal zones
|
5357
5396
|
# @param flow_rate [Double] the exhaust fan flow rate in m^3/s
|
5358
5397
|
# @param availability_sch_name [String] the name of the fan availability schedule
|
5359
5398
|
# @param flow_fraction_schedule_name [String] the name of the flow fraction schedule
|
5360
5399
|
# @param balanced_exhaust_fraction_schedule_name [String] the name of the balanced exhaust fraction schedule
|
5361
5400
|
# @return [Array<OpenStudio::Model::FanZoneExhaust>] an array of exhaust fans created
|
5362
|
-
# @todo
|
5401
|
+
# @todo use the create_fan_zone_exhaust method, default to 1.25 inH2O pressure rise and fan efficiency of 0.6
|
5363
5402
|
def model_add_exhaust_fan(model,
|
5364
5403
|
thermal_zones,
|
5365
5404
|
flow_rate: nil,
|
@@ -5410,6 +5449,7 @@ class Standard
|
|
5410
5449
|
|
5411
5450
|
# Adds a zone ventilation design flow rate to each zone.
|
5412
5451
|
#
|
5452
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5413
5453
|
# @param thermal_zones [Array<OpenStudio::Model::ThermalZone>] an array of thermal zones
|
5414
5454
|
# @param ventilation_type [String] the zone ventilation type either Exhaust, Natural, or Intake
|
5415
5455
|
# @param flow_rate [Double] the ventilation design flow rate in m^3/s
|
@@ -5488,6 +5528,7 @@ class Standard
|
|
5488
5528
|
|
5489
5529
|
# Get the existing chilled water loop in the model or add a new one if there isn't one already.
|
5490
5530
|
#
|
5531
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5491
5532
|
# @param cool_fuel [String] the cooling fuel. Valid choices are Electricity, DistrictCooling, and HeatPump.
|
5492
5533
|
# @param chilled_water_loop_cooling_type [String] Archetype for chilled water loops, AirCooled or WaterCooled
|
5493
5534
|
def model_get_or_add_chilled_water_loop(model, cool_fuel,
|
@@ -5537,6 +5578,8 @@ class Standard
|
|
5537
5578
|
end
|
5538
5579
|
|
5539
5580
|
# Determine which type of fan the cooling tower will have. Defaults to TwoSpeed Fan.
|
5581
|
+
#
|
5582
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5540
5583
|
# @return [String] the fan type: TwoSpeed Fan, Variable Speed Fan
|
5541
5584
|
def model_cw_loop_cooling_tower_fan_type(model)
|
5542
5585
|
fan_type = 'Variable Speed Fan'
|
@@ -5545,6 +5588,7 @@ class Standard
|
|
5545
5588
|
|
5546
5589
|
# Adds a waterside economizer to the chilled water and condenser loop
|
5547
5590
|
#
|
5591
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5548
5592
|
# @param integrated [Bool] when set to true, models an integrated waterside economizer
|
5549
5593
|
# Integrated: in series with chillers, can run simultaneously with chillers
|
5550
5594
|
# Non-Integrated: in parallel with chillers, chillers locked out during operation
|
@@ -5693,6 +5737,7 @@ class Standard
|
|
5693
5737
|
|
5694
5738
|
# Get the existing hot water loop in the model or add a new one if there isn't one already.
|
5695
5739
|
#
|
5740
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5696
5741
|
# @param heat_fuel [String] the heating fuel. Valid choices are NaturalGas, Electricity, DistrictHeating
|
5697
5742
|
# @param hot_water_loop_type [String] Archetype for hot water loops
|
5698
5743
|
# HighTemperature (180F supply) or LowTemperature (120F supply)
|
@@ -5735,6 +5780,9 @@ class Standard
|
|
5735
5780
|
end
|
5736
5781
|
|
5737
5782
|
# Get the existing ambient water loop in the model or add a new one if there isn't one already.
|
5783
|
+
#
|
5784
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5785
|
+
# @return [OpenStudio::Model::PlantLoop] the ambient water loop
|
5738
5786
|
def model_get_or_add_ambient_water_loop(model)
|
5739
5787
|
# retrieve the existing hot water loop or add a new one if necessary
|
5740
5788
|
ambient_water_loop = if model.getPlantLoopByName('Ambient Loop').is_initialized
|
@@ -5746,6 +5794,9 @@ class Standard
|
|
5746
5794
|
end
|
5747
5795
|
|
5748
5796
|
# Get the existing ground heat exchanger loop in the model or add a new one if there isn't one already.
|
5797
|
+
#
|
5798
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5799
|
+
# @return [OpenStudio::Model::PlantLoop] the ground hx loop
|
5749
5800
|
def model_get_or_add_ground_hx_loop(model)
|
5750
5801
|
# retrieve the existing ground HX loop or add a new one if necessary
|
5751
5802
|
ground_hx_loop = if model.getPlantLoopByName('Ground HX Loop').is_initialized
|
@@ -5758,6 +5809,7 @@ class Standard
|
|
5758
5809
|
|
5759
5810
|
# Get the existing heat pump loop in the model or add a new one if there isn't one already.
|
5760
5811
|
#
|
5812
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5761
5813
|
# @param heat_fuel [String] the heating fuel. Valid choices are NaturalGas, Electricity, DistrictHeating
|
5762
5814
|
# @param cool_fuel [String] the cooling fuel. Valid choices are Electricity and DistrictCooling.
|
5763
5815
|
# @param heat_pump_loop_cooling_type [String] the type of cooling equipment if not DistrictCooling.
|
@@ -5779,6 +5831,7 @@ class Standard
|
|
5779
5831
|
# Add the specified system type to the specified zones based on the specified template.
|
5780
5832
|
# For multi-zone system types, add one system per story.
|
5781
5833
|
#
|
5834
|
+
# @param model [OpenStudio::Model::Model] OpenStudio model object
|
5782
5835
|
# @param system_type [String] The system type
|
5783
5836
|
# @param main_heat_fuel [String] Main heating fuel used for air loops and plant loops
|
5784
5837
|
# @param zone_heat_fuel [String] Zone heating fuel for zone hvac equipment and terminal units
|
@@ -6423,48 +6476,181 @@ class Standard
|
|
6423
6476
|
rename_plant_loop_nodes(model)
|
6424
6477
|
end
|
6425
6478
|
|
6426
|
-
#
|
6427
|
-
#
|
6428
|
-
|
6429
|
-
|
6430
|
-
|
6431
|
-
|
6432
|
-
|
6433
|
-
|
6434
|
-
|
6435
|
-
|
6436
|
-
|
6437
|
-
|
6438
|
-
|
6439
|
-
|
6440
|
-
|
6441
|
-
|
6442
|
-
|
6443
|
-
|
6444
|
-
|
6445
|
-
|
6446
|
-
|
6447
|
-
|
6448
|
-
|
6449
|
-
|
6450
|
-
|
6451
|
-
|
6452
|
-
|
6453
|
-
|
6454
|
-
|
6455
|
-
|
6456
|
-
|
6457
|
-
|
6458
|
-
|
6459
|
-
|
6460
|
-
|
6461
|
-
|
6462
|
-
|
6463
|
-
|
6464
|
-
|
6465
|
-
|
6466
|
-
|
6467
|
-
|
6468
|
-
|
6479
|
+
# Add a residential ERV: standalone ERV that operates to provide OA,
|
6480
|
+
# use in conjuction witha system that having mechanical cooling and
|
6481
|
+
# a heating coil
|
6482
|
+
#
|
6483
|
+
# @param model [OpenStudio::Model::Model] OpenStudio Model object
|
6484
|
+
# @param thermal_zone [OpenStudio::Model::ThermalZone] OpenStudio ThermalZone object
|
6485
|
+
# @param climate_zone [String] Climate zone
|
6486
|
+
# @param energy_recovery [Boolean] Indicates if the ERV is to recover energy, if false, only provides OA
|
6487
|
+
# @return [OpenStudio::Model::ZoneHVACEnergyRecoveryVentilator] Standalone ERV
|
6488
|
+
def model_add_residential_erv(model,
|
6489
|
+
thermal_zone,
|
6490
|
+
climate_zone,
|
6491
|
+
energy_recovery,
|
6492
|
+
min_oa_flow_m3_per_s_per_m2 = nil)
|
6493
|
+
|
6494
|
+
OpenStudio.logFree(OpenStudio::Info, 'openstudio.Model.Model', "Adding standalone ERV for #{thermal_zone.name}.")
|
6495
|
+
|
6496
|
+
# Exception 3 to 6.5.6.1.1
|
6497
|
+
case template
|
6498
|
+
when '90.1-2019'
|
6499
|
+
case climate_zone
|
6500
|
+
when 'ASHRAE 169-2006-0A',
|
6501
|
+
'ASHRAE 169-2006-0B',
|
6502
|
+
'ASHRAE 169-2006-1A',
|
6503
|
+
'ASHRAE 169-2006-1B',
|
6504
|
+
'ASHRAE 169-2006-2A',
|
6505
|
+
'ASHRAE 169-2006-2B',
|
6506
|
+
'ASHRAE 169-2006-3A',
|
6507
|
+
'ASHRAE 169-2006-3B',
|
6508
|
+
'ASHRAE 169-2006-3C',
|
6509
|
+
'ASHRAE 169-2006-4A',
|
6510
|
+
'ASHRAE 169-2006-4B',
|
6511
|
+
'ASHRAE 169-2006-4C',
|
6512
|
+
'ASHRAE 169-2006-5A',
|
6513
|
+
'ASHRAE 169-2006-5B',
|
6514
|
+
'ASHRAE 169-2006-5C',
|
6515
|
+
'ASHRAE 169-2013-0A',
|
6516
|
+
'ASHRAE 169-2013-0B',
|
6517
|
+
'ASHRAE 169-2013-1A',
|
6518
|
+
'ASHRAE 169-2013-1B',
|
6519
|
+
'ASHRAE 169-2013-2A',
|
6520
|
+
'ASHRAE 169-2013-2B',
|
6521
|
+
'ASHRAE 169-2013-3A',
|
6522
|
+
'ASHRAE 169-2013-3B',
|
6523
|
+
'ASHRAE 169-2013-3C',
|
6524
|
+
'ASHRAE 169-2013-4A',
|
6525
|
+
'ASHRAE 169-2013-4B',
|
6526
|
+
'ASHRAE 169-2013-4C',
|
6527
|
+
'ASHRAE 169-2013-5A',
|
6528
|
+
'ASHRAE 169-2013-5B',
|
6529
|
+
'ASHRAE 169-2013-5C'
|
6530
|
+
if thermal_zone_floor_area(thermal_zone) <= OpenStudio.convert(500, 'ft^2', 'm^2').get
|
6531
|
+
energy_recovery = false
|
6532
|
+
OpenStudio.logFree(OpenStudio::Info, 'openstudio.Model.Model', "Energy recovery will not be modeled for the ERV serving #{thermal_zone.name}.")
|
6533
|
+
end
|
6534
|
+
end
|
6535
|
+
end
|
6536
|
+
|
6537
|
+
# Determine ERR and design basis when energy recovery is required
|
6538
|
+
#
|
6539
|
+
# enthalpy_recovery_ratio = nil will trigger an ERV with no effectiveness that only provides OA
|
6540
|
+
enthalpy_recovery_ratio = nil
|
6541
|
+
if energy_recovery
|
6542
|
+
case template
|
6543
|
+
when '90.1-2019'
|
6544
|
+
search_criteria = {
|
6545
|
+
'template' => template,
|
6546
|
+
'climate_zone' => climate_zone,
|
6547
|
+
'under_8000_hours' => false,
|
6548
|
+
'nontransient_dwelling' => true
|
6549
|
+
}
|
6550
|
+
else
|
6551
|
+
search_criteria = {
|
6552
|
+
'template' => template,
|
6553
|
+
'climate_zone' => climate_zone,
|
6554
|
+
'under_8000_hours' => false
|
6555
|
+
}
|
6556
|
+
end
|
6557
|
+
|
6558
|
+
erv_enthalpy_recovery_ratio = model_find_object(standards_data['energy_recovery'], search_criteria)
|
6559
|
+
|
6560
|
+
# Extract ERR from data lookup
|
6561
|
+
if !erv_enthalpy_recovery_ratio.nil?
|
6562
|
+
if erv_enthalpy_recovery_ratio['enthalpy_recovery_ratio'].nil? & erv_enthalpy_recovery_ratio['enthalpy_recovery_ratio_design_conditions'].nil?
|
6563
|
+
# If not included in the data, an enthalpy
|
6564
|
+
# recovery ratio (ERR) of 50% is used
|
6565
|
+
enthalpy_recovery_ratio = 0.5
|
6566
|
+
case climate_zone
|
6567
|
+
when 'ASHRAE 169-2006-6B',
|
6568
|
+
'ASHRAE 169-2013-6B',
|
6569
|
+
'ASHRAE 169-2006-7A',
|
6570
|
+
'ASHRAE 169-2013-7A',
|
6571
|
+
'ASHRAE 169-2006-7B',
|
6572
|
+
'ASHRAE 169-2013-7B',
|
6573
|
+
'ASHRAE 169-2006-8A',
|
6574
|
+
'ASHRAE 169-2013-8A',
|
6575
|
+
'ASHRAE 169-2006-8B',
|
6576
|
+
'ASHRAE 169-2013-8B'
|
6577
|
+
design_conditions = 'heating'
|
6578
|
+
else
|
6579
|
+
design_conditions = 'cooling'
|
6580
|
+
end
|
6581
|
+
else
|
6582
|
+
design_conditions = erv_enthalpy_recovery_ratio['enthalpy_recovery_ratio_design_conditions'].downcase
|
6583
|
+
enthalpy_recovery_ratio = erv_enthalpy_recovery_ratio['enthalpy_recovery_ratio']
|
6584
|
+
end
|
6585
|
+
end
|
6586
|
+
end
|
6587
|
+
|
6588
|
+
# Create fans
|
6589
|
+
#
|
6590
|
+
# Fan power:
|
6591
|
+
# No energy recovery = 0.806 W/cfm
|
6592
|
+
# Energy recovery = 0.934 W/cfm
|
6593
|
+
supply_fan = create_fan_by_name(model,
|
6594
|
+
'ERV_Supply_Fan',
|
6595
|
+
fan_name: "#{thermal_zone.name} ERV Supply Fan")
|
6596
|
+
exhaust_fan = create_fan_by_name(model,
|
6597
|
+
'ERV_Supply_Fan',
|
6598
|
+
fan_name: "#{thermal_zone.name} ERV Exhaust Fan")
|
6599
|
+
supply_fan.setMotorEfficiency(0.48)
|
6600
|
+
exhaust_fan.setMotorEfficiency(0.48)
|
6601
|
+
supply_fan.setFanTotalEfficiency(0.303158)
|
6602
|
+
exhaust_fan.setFanTotalEfficiency(0.303158)
|
6603
|
+
if energy_recovery
|
6604
|
+
supply_fan.setPressureRise(270.64755)
|
6605
|
+
exhaust_fan.setPressureRise(270.64755)
|
6606
|
+
else
|
6607
|
+
supply_fan.setPressureRise(233.6875)
|
6608
|
+
exhaust_fan.setPressureRise(233.6875)
|
6609
|
+
end
|
6610
|
+
|
6611
|
+
# Create ERV Controller
|
6612
|
+
erv_controller = OpenStudio::Model::ZoneHVACEnergyRecoveryVentilatorController.new(model)
|
6613
|
+
erv_controller.setName("#{thermal_zone.name} ERV Controller")
|
6614
|
+
erv_controller.setControlHighIndoorHumidityBasedonOutdoorHumidityRatio(false)
|
6615
|
+
|
6616
|
+
# Create heat exchanger
|
6617
|
+
heat_exchanger = OpenStudio::Model::HeatExchangerAirToAirSensibleAndLatent.new(model)
|
6618
|
+
heat_exchanger.setName("#{thermal_zone.name} ERV HX")
|
6619
|
+
heat_exchanger.setSupplyAirOutletTemperatureControl(false)
|
6620
|
+
heat_exchanger.setHeatExchangerType('Rotary')
|
6621
|
+
heat_exchanger.setEconomizerLockout(false)
|
6622
|
+
heat_exchanger.setFrostControlType('ExhaustOnly')
|
6623
|
+
heat_exchanger.setThresholdTemperature(-23.3)
|
6624
|
+
heat_exchanger.setInitialDefrostTimeFraction(0.167)
|
6625
|
+
heat_exchanger.setRateofDefrostTimeFractionIncrease(1.44)
|
6626
|
+
heat_exchanger.setAvailabilitySchedule(model_add_schedule(model, 'Always On - No Design Day'))
|
6627
|
+
heat_exchanger_air_to_air_sensible_and_latent_apply_prototype_efficiency_enthalpy_recovery_ratio(heat_exchanger, enthalpy_recovery_ratio, design_conditions, climate_zone)
|
6628
|
+
|
6629
|
+
erv = OpenStudio::Model::ZoneHVACEnergyRecoveryVentilator.new(model, heat_exchanger, supply_fan, exhaust_fan)
|
6630
|
+
erv.setName("#{thermal_zone.name} ERV")
|
6631
|
+
|
6632
|
+
erv.setController(erv_controller)
|
6633
|
+
erv.addToThermalZone(thermal_zone)
|
6634
|
+
|
6635
|
+
# Set OA requirements; Assumes a default of 55 cfm
|
6636
|
+
if min_oa_flow_m3_per_s_per_m2.nil?
|
6637
|
+
erv.setSupplyAirFlowRate(OpenStudio.convert(55.0, 'cfm', 'm^3/s').get)
|
6638
|
+
erv.setExhaustAirFlowRate(OpenStudio.convert(55.0, 'cfm', 'm^3/s').get)
|
6639
|
+
else
|
6640
|
+
erv.setVentilationRateperUnitFloorArea(min_oa_flow_m3_per_s_per_m2)
|
6641
|
+
end
|
6642
|
+
erv.setVentilationRateperOccupant(0.0)
|
6643
|
+
|
6644
|
+
# Ensure the ERV takes priority, so ventilation load is included when treated by other zonal systems
|
6645
|
+
# From EnergyPlus I/O reference:
|
6646
|
+
# "For situations where one or more equipment types has limited capacity or limited control capability, order the
|
6647
|
+
# sequence so that the most controllable piece of equipment runs last. For example, with a dedicated outdoor air
|
6648
|
+
# system (DOAS), the air terminal for the DOAS should be assigned Heating Sequence = 1 and Cooling Sequence = 1.
|
6649
|
+
# Any other equipment should be assigned sequence 2 or higher so that it will see the net load after the DOAS air
|
6650
|
+
# is added to the zone."
|
6651
|
+
thermal_zone.setCoolingPriority(erv.to_ModelObject.get, 1)
|
6652
|
+
thermal_zone.setHeatingPriority(erv.to_ModelObject.get, 1)
|
6653
|
+
|
6654
|
+
return erv
|
6469
6655
|
end
|
6470
6656
|
end
|