# ******************************************************************************* # OpenStudio(R), Copyright (c) Alliance for Sustainable Energy, LLC. # See also https://openstudio.net/license # ******************************************************************************* class OpenStudio::Model::ZoneHVACTerminalUnitVariableRefrigerantFlow def maxHeatingCapacity if heatingCoil.is_initialized heatingCoil.get.maxHeatingCapacity else OpenStudio::OptionalDouble.new end end def maxCoolingCapacity if coolingCoil.is_initialized coolingCoil.get.maxCoolingCapacity else OpenStudio::OptionalDouble.new end end def maxAirFlowRate vals = [] if supplyAirFlowRateDuringCoolingOperation.is_initialized vals << supplyAirFlowRateDuringCoolingOperation.get elsif autosizedSupplyAirFlowRateDuringCoolingOperation.is_initialized vals << autosizedSupplyAirFlowRateDuringCoolingOperation.get end if supplyAirFlowRateWhenNoCoolingisNeeded.is_initialized vals << supplyAirFlowRateWhenNoCoolingisNeeded.get elsif autosizedSupplyAirFlowRateWhenNoCoolingisNeeded.is_initialized vals << autosizedSupplyAirFlowRateWhenNoCoolingisNeeded.get end if supplyAirFlowRateDuringHeatingOperation.is_initialized vals << supplyAirFlowRateDuringHeatingOperation.get elsif autosizedSupplyAirFlowRateDuringHeatingOperation.is_initialized vals << autosizedSupplyAirFlowRateDuringHeatingOperation.get end if supplyAirFlowRateWhenNoHeatingisNeeded.is_initialized vals << supplyAirFlowRateWhenNoHeatingisNeeded.get elsif autosizedSupplyAirFlowRateWhenNoHeatingisNeeded.is_initialized vals << autosizedSupplyAirFlowRateWhenNoHeatingisNeeded.get end if vals.size.zero? OpenStudio::OptionalDouble.new else OpenStudio::OptionalDouble.new(vals.max) end end def maxWaterFlowRate vals = [] if coolingCoil.is_initialized if coolingCoil.get.maxWaterFlowRate.is_initialized vals << coolingCoil.get.maxWaterFlowRate.get end end if heatingCoil.is_initialized if heatingCoil.get.maxWaterFlowRate.is_initialized vals << heatingCoil.get.maxWaterFlowRate.get end end if vals.size.zero? OpenStudio::OptionalDouble.new else OpenStudio::OptionalDouble.new(vals.max) end end def maxHeatingCapacityAutosized if heatingCoil.is_initialized heatingCoil.get.maxHeatingCapacityAutosized else OpenStudio::OptionalDouble.new end end def maxCoolingCapacityAutosized if coolingCoil.is_initialized coolingCoil.get.maxCoolingCapacityAutosized else OpenStudio::OptionalDouble.new end end def maxAirFlowRateAutosized if supplyAirFlowRateDuringCoolingOperation.is_initialized return OpenStudio::OptionalBool.new(false) elsif supplyAirFlowRateWhenNoCoolingisNeeded.is_initialized return OpenStudio::OptionalBool.new(false) elsif supplyAirFlowRateDuringHeatingOperation.is_initialized return OpenStudio::OptionalBool.new(false) elsif supplyAirFlowRateWhenNoHeatingisNeeded.is_initialized return OpenStudio::OptionalBool.new(false) else return OpenStudio::OptionalBool.new(true) end end def maxWaterFlowRateAutosized if coolingCoil.is_initialized if coolingCoil.get.maxWaterFlowRate.is_initialized return OpenStudio::OptionalBool.new(false) end end if heatingCoil.is_initialized if heatingCoil.get.maxWaterFlowRate.is_initialized return OpenStudio::OptionalBool.new(false) end end return OpenStudio::OptionalBool.new(true) end def performanceCharacteristics effs = [] effs += supplyAirFan.performanceCharacteristics effs += coolingCoil.get.performanceCharacteristics if coolingCoil.is_initialized effs += heatingCoil.get.performanceCharacteristics if heatingCoil.is_initialized return effs end end