UnitarySystemData Derived Type

type, private :: UnitarySystemData

UnitarySystemType UnitarySystemType_Num Name HeatPump SysAvailSchedPtr UnitarySystemInletNodeNum UnitarySystemOutletNodeNum CondenserType AirLoopEquipment ControlZoneNum ZoneSequenceCoolingNum ZoneSequenceHeatingNum NodeNumofControlledZone ZoneInletNode ControlZoneMassFlowFrac Humidistat DesignMaxOutletTemp CondenserNodeNum DehumidControlType_Num AirFlowControl ControlType RequestAutosize RunOnSensibleLoad RunOnLatentLoad RunOnLatentOnlyWithSensible DehumidificationMode FanOpMode LastMode AncillaryOnPower AncillaryOffPower DesignSpecMultispeedHPType DesignSpecMultispeedHPName CoolingCoilName CoolingCoilType_Num CoolingCoilIndex DesignCoolingCapacity CoolingCoilAvailSchPtr ActualDXCoilIndexForHXAssisted DOASDXCoolingCoilMinTout ISHundredPercentDOASDXCoil CoolCoilExists FrostControlStatus CoolCoilInletNodeNum CoolCoilOutletNodeNum CoolCoilFluidOutletNodeNum CoolCoilLoopNum CoolCoilLoopSide CoolCoilBranchNum CoolCoilCompNum CoolCoilFluidInletNode MaxCoolCoilFluidFlow CoolingCoilUpStream CoolCompPartLoadRatio HeatingCoilName HeatingCoilType_Num HeatingCoilIndex DesignHeatingCapacity HeatingSizingRatio DXHeatingCoil HeatCoilInletNodeNum HeatCoilOutletNodeNum HeatCoilFluidOutletNodeNum HeatingCoilPLFCurveIndex HeatingCoilAvailSchPtr HeatCoilExists HeatCoilLoopNum HeatCoilLoopSide HeatCoilBranchNum HeatCoilCompNum HeatCoilFluidInletNode MaxHeatCoilFluidFlow HeatCompPartLoadRatio SuppHeatCoilName SuppHeatCoilType_Num SuppHeatCoilIndex DesignSuppHeatingCapacity SuppCoilFluidInletNode SuppCoilFluidOutletNodeNum SuppCoilAirInletNode SuppCoilAirOutletNode SuppCoilAvailSchPtr MaxSuppCoilFluidFlow MaxOATSuppHeat SuppCoilExists SuppCoilLoopNum SuppCoilLoopSide SuppCoilBranchNum SuppCoilCompNum FanType_Num FanIndex ActualFanVolFlowRate FanOpModeSchedPtr FanAvailSchedPtr FanPlace FanExists FanDelayTime MaxCoolAirVolFlow MaxHeatAirVolFlow MaxNoCoolHeatAirVolFlow DesignFanVolFlowRate DesignMassFlowRate MaxCoolAirMassFlow MaxHeatAirMassFlow MaxNoCoolHeatAirMassFlow CoolingSAFMethod HeatingSAFMethod NoCoolHeatSAFMethod MinOATCompressor MaxONOFFCyclesperHour HPTimeConstant OnCyclePowerFraction DesignHRWaterVolumeFlow WSHPRuntimeFrac HeatingCoilSensDemand CoolingCoilSensDemand CoolingCoilLatentDemand HeatRecoveryInletNodeNum HeatRecoveryOutletNodeNum HeatRecActive DesignHeatRecMassFlowRate MaxHROutletWaterTemp HRLoopNum HRLoopSideNum HRBranchNum HRCompNum SystemHeatControlNodeNum SystemCoolControlNodeNum SuppHeatControlNodeNum DesiredOutletTemp DesiredOutletHumRat CoolingPartLoadFrac HeatingPartLoadFrac SuppHeatPartLoadFrac SupHeaterLoad SenLoadLoss LatLoadLoss SensibleLoadMet LatentLoadMet InitHeatPump WaterCyclingMode HeatCoolMode NumOfSpeedCooling NumOfSpeedHeating IdleSpeedRatio IdleVolumeAirRate IdleMassFlowRate CheckFanFlow HeatVolumeFlowRate HeatMassFlowRate CoolVolumeFlowRate CoolMassFlowRate MSHeatingSpeedRatio MSCoolingSpeedRatio NoHeatCoolSpeedRatio DesignSpecMSHPIndex MultiSpeedCoolingCoil MultiSpeedHeatingCoil VarSpeedCoolingCoil VarSpeedHeatingCoil CoolingSpeedNum HeatingSpeedNum CoolingSpeedRatio CoolingFanSpeedRatio HeatingSpeedRatio HeatingFanSpeedRatio CoolingCycRatio HeatingCycRatio PartLoadFrac FanPartLoadRatio CompPartLoadRatio ElecPower ElecPowerConsumption TotCoolEnergyRate SensCoolEnergyRate LatCoolEnergyRate TotHeatEnergyRate SensHeatEnergyRate LatHeatEnergyRate TotalAuxElecPower HeatingAuxElecConsumption CoolingAuxElecConsumption HeatRecoveryRate HeatRecoveryEnergy HeatRecoveryInletTemp HeatRecoveryOutletTemp HeatRecoveryMassFlowRate DehumidInducedHeatingDemandRate EMSSensibleZoneLoadValue EMSMoistureZoneLoadValue SpeedNum SpeedRatio CycRatio HXAssistedSensPLRIter HXAssistedSensPLRIterIndex HXAssistedSensPLRFail HXAssistedSensPLRFailIndex HXAssistedSensPLRFail2 HXAssistedSensPLRFailIndex2 HXAssistedLatPLRIter HXAssistedLatPLRIterIndex HXAssistedLatPLRFail HXAssistedLatPLRFailIndex HXAssistedCRLatPLRIter HXAssistedCRLatPLRIterIndex HXAssistedCRLatPLRFail HXAssistedCRLatPLRFailIndex HXAssistedCRLatPLRFail2 HXAssistedCRLatPLRFailIndex2 SensPLRIter SensPLRIterIndex SensPLRFail SensPLRFailIndex LatPLRIter LatPLRIterIndex LatPLRFail LatPLRFailIndex HeatCoilSensPLRIter HeatCoilSensPLRIterIndex HeatCoilSensPLRFail HeatCoilSensPLRFailIndex SuppHeatCoilSensPLRIter SuppHeatCoilSensPLRIterIndex SuppHeatCoilSensPLRFail SuppHeatCoilSensPLRFailIndex DXCoilSensPLRIter DXCoilSensPLRIterIndex DXCoilSensPLRFail DXCoilSensPLRFailIndex MSpdSensPLRIter MSpdSensPLRIterIndex MSpdCycSensPLRIter MSpdCycSensPLRIterIndex MSpdLatPLRIter MSpdLatPLRIterIndex MSpdCycLatPLRIter MSpdCycLatPLRIterIndex MaxIterIndex RegulaFalsIFailedIndex LatMaxIterIndex LatRegulaFalsIFailedIndex DesignFanVolFlowRateEMSOverrideOn MaxHeatAirVolFlowEMSOverrideOn MaxCoolAirVolFlowEMSOverrideOn MaxNoCoolHeatAirVolFlowEMSOverrideOn DesignFanVolFlowRateEMSOverrideValue MaxHeatAirVolFlowEMSOverrideValue MaxCoolAirVolFlowEMSOverrideValue MaxNoCoolHeatAirVolFlowEMSOverrideValue EMSOverrideSensZoneLoadRequest EMSOverrideMoistZoneLoadRequest StageNum Staged CoolCountAvail CoolIndexAvail HeatCountAvail HeatIndexAvail

Source Code


Components

TypeVisibility AttributesNameInitial
character(len=MaxNameLength), public :: UnitarySystemType =' '
integer, public :: UnitarySystemType_Num =0
character(len=MaxNameLength), public :: Name =' '
logical, public :: HeatPump =.FALSE.
integer, public :: SysAvailSchedPtr =0
integer, public :: UnitarySystemInletNodeNum =0
integer, public :: UnitarySystemOutletNodeNum =0
integer, public :: CondenserType =0
logical, public :: AirLoopEquipment =.TRUE.
integer, public :: ControlZoneNum =0
integer, public :: ZoneSequenceCoolingNum =0
integer, public :: ZoneSequenceHeatingNum =0
integer, public :: NodeNumofControlledZone =0
integer, public :: ZoneInletNode =0
real(kind=r64), public :: ControlZoneMassFlowFrac =0.0d0
logical, public :: Humidistat =.FALSE.
real(kind=r64), public :: DesignMaxOutletTemp =80.0d0
integer, public :: CondenserNodeNum =0
integer, public :: DehumidControlType_Num =0
integer, public :: AirFlowControl =1
integer, public :: ControlType =0
logical, public :: RequestAutosize =.FALSE.
logical, public :: RunOnSensibleLoad =.TRUE.
logical, public :: RunOnLatentLoad =.FALSE.
logical, public :: RunOnLatentOnlyWithSensible =.FALSE.
integer, public :: DehumidificationMode =0
integer, public :: FanOpMode =0
integer, public :: LastMode =0
real(kind=r64), public :: AncillaryOnPower =0.0d0
real(kind=r64), public :: AncillaryOffPower =0.0d0
character(len=MaxNameLength), public :: DesignSpecMultispeedHPType =' '
character(len=MaxNameLength), public :: DesignSpecMultispeedHPName =' '
character(len=MaxNameLength), public :: CoolingCoilName =' '
integer, public :: CoolingCoilType_Num =0
integer, public :: CoolingCoilIndex =0
real(kind=r64), public :: DesignCoolingCapacity =0.0d0
integer, public :: CoolingCoilAvailSchPtr =0
integer, public :: ActualDXCoilIndexForHXAssisted =0
real(kind=r64), public :: DOASDXCoolingCoilMinTout =0.0d0
logical, public :: ISHundredPercentDOASDXCoil =.FALSE.
logical, public :: CoolCoilExists =.FALSE.
integer, public :: FrostControlStatus =0
integer, public :: CoolCoilInletNodeNum =0
integer, public :: CoolCoilOutletNodeNum =0
integer, public :: CoolCoilFluidOutletNodeNum =0
integer, public :: CoolCoilLoopNum =0
integer, public :: CoolCoilLoopSide =0
integer, public :: CoolCoilBranchNum =0
integer, public :: CoolCoilCompNum =0
integer, public :: CoolCoilFluidInletNode =0
real(kind=r64), public :: MaxCoolCoilFluidFlow =Autosize
logical, public :: CoolingCoilUpStream =.TRUE.
real(kind=R64), public :: CoolCompPartLoadRatio =0.0d0
character(len=MaxNameLength), public :: HeatingCoilName =' '
integer, public :: HeatingCoilType_Num =0
integer, public :: HeatingCoilIndex =0
real(kind=r64), public :: DesignHeatingCapacity =0.0d0
real(kind=r64), public :: HeatingSizingRatio =1.0d0
logical, public :: DXHeatingCoil =.FALSE.
integer, public :: HeatCoilInletNodeNum =0
integer, public :: HeatCoilOutletNodeNum =0
integer, public :: HeatCoilFluidOutletNodeNum =0
integer, public :: HeatingCoilPLFCurveIndex =0
integer, public :: HeatingCoilAvailSchPtr =0
logical, public :: HeatCoilExists =.FALSE.
integer, public :: HeatCoilLoopNum =0
integer, public :: HeatCoilLoopSide =0
integer, public :: HeatCoilBranchNum =0
integer, public :: HeatCoilCompNum =0
integer, public :: HeatCoilFluidInletNode =0
real(kind=r64), public :: MaxHeatCoilFluidFlow =Autosize
real(kind=R64), public :: HeatCompPartLoadRatio =0.0d0
character(len=MaxNameLength), public :: SuppHeatCoilName =' '
integer, public :: SuppHeatCoilType_Num =0
integer, public :: SuppHeatCoilIndex =0
real(kind=r64), public :: DesignSuppHeatingCapacity =0.0d0
integer, public :: SuppCoilFluidInletNode =0
integer, public :: SuppCoilFluidOutletNodeNum =0
integer, public :: SuppCoilAirInletNode =0
integer, public :: SuppCoilAirOutletNode =0
integer, public :: SuppCoilAvailSchPtr =0
real(kind=r64), public :: MaxSuppCoilFluidFlow =Autosize
real(kind=r64), public :: MaxOATSuppHeat =21.0d0
logical, public :: SuppCoilExists =.FALSE.
integer, public :: SuppCoilLoopNum =0
integer, public :: SuppCoilLoopSide =0
integer, public :: SuppCoilBranchNum =0
integer, public :: SuppCoilCompNum =0
integer, public :: FanType_Num =0
integer, public :: FanIndex =0
real(kind=r64), public :: ActualFanVolFlowRate =0.0d0
integer, public :: FanOpModeSchedPtr =0
integer, public :: FanAvailSchedPtr =0
integer, public :: FanPlace =0
logical, public :: FanExists =.FALSE.
real(kind=r64), public :: FanDelayTime =0.0d0
real(kind=r64), public :: MaxCoolAirVolFlow =0.0d0
real(kind=r64), public :: MaxHeatAirVolFlow =0.0d0
real(kind=r64), public :: MaxNoCoolHeatAirVolFlow =0.0d0
real(kind=r64), public :: DesignFanVolFlowRate =0.0d0
real(kind=r64), public :: DesignMassFlowRate =0.0d0
real(kind=r64), public :: MaxCoolAirMassFlow =0.0d0
real(kind=r64), public :: MaxHeatAirMassFlow =0.0d0
real(kind=r64), public :: MaxNoCoolHeatAirMassFlow =0.0d0
integer, public :: CoolingSAFMethod =0
integer, public :: HeatingSAFMethod =0
integer, public :: NoCoolHeatSAFMethod =0
real(kind=r64), public :: MinOATCompressor =0.0d0
real(kind=r64), public :: MaxONOFFCyclesperHour =0.0d0
real(kind=r64), public :: HPTimeConstant =0.0d0
real(kind=r64), public :: OnCyclePowerFraction =0.0d0
real(kind=r64), public :: DesignHRWaterVolumeFlow =0.0d0
real(kind=R64), public :: WSHPRuntimeFrac =0.0d0
real(kind=R64), public :: HeatingCoilSensDemand =0.0d0
real(kind=R64), public :: CoolingCoilSensDemand =0.0d0
real(kind=R64), public :: CoolingCoilLatentDemand =0.0d0
integer, public :: HeatRecoveryInletNodeNum =0
integer, public :: HeatRecoveryOutletNodeNum =0
logical, public :: HeatRecActive =.FALSE.
real(kind=r64), public :: DesignHeatRecMassFlowRate =0.0d0
real(kind=r64), public :: MaxHROutletWaterTemp =0.0d0
integer, public :: HRLoopNum =0
integer, public :: HRLoopSideNum =0
integer, public :: HRBranchNum =0
integer, public :: HRCompNum =0
integer, public :: SystemHeatControlNodeNum =0
integer, public :: SystemCoolControlNodeNum =0
integer, public :: SuppHeatControlNodeNum =0
real(kind=r64), public :: DesiredOutletTemp =0.0d0
real(kind=r64), public :: DesiredOutletHumRat =1.0d0
real(kind=r64), public :: CoolingPartLoadFrac =0.0d0
real(kind=r64), public :: HeatingPartLoadFrac =0.0d0
real(kind=r64), public :: SuppHeatPartLoadFrac =0.0d0
real(kind=r64), public :: SupHeaterLoad =0.0d0
real(kind=r64), public :: SenLoadLoss =0.0d0
real(kind=r64), public :: LatLoadLoss =0.0d0
real(kind=r64), public :: SensibleLoadMet =0.0d0
real(kind=r64), public :: LatentLoadMet =0.0d0
logical, public :: InitHeatPump =.TRUE.
integer, public :: WaterCyclingMode =0
integer, public :: HeatCoolMode =0
integer, public :: NumOfSpeedCooling =0
integer, public :: NumOfSpeedHeating =0
real(kind=r64), public :: IdleSpeedRatio =0
real(kind=r64), public :: IdleVolumeAirRate =0
real(kind=r64), public :: IdleMassFlowRate =0
logical, public :: CheckFanFlow =.TRUE.
real(kind=r64), public, DIMENSION(:), ALLOCATABLE:: HeatVolumeFlowRate
real(kind=r64), public, DIMENSION(:), ALLOCATABLE:: HeatMassFlowRate
real(kind=r64), public, DIMENSION(:), ALLOCATABLE:: CoolVolumeFlowRate
real(kind=r64), public, DIMENSION(:), ALLOCATABLE:: CoolMassFlowRate
real(kind=r64), public, DIMENSION(:), ALLOCATABLE:: MSHeatingSpeedRatio
real(kind=r64), public, DIMENSION(:), ALLOCATABLE:: MSCoolingSpeedRatio
real(kind=r64), public :: NoHeatCoolSpeedRatio =1.0d0
integer, public :: DesignSpecMSHPIndex =0
logical, public :: MultiSpeedCoolingCoil =.FALSE.
logical, public :: MultiSpeedHeatingCoil =.FALSE.
logical, public :: VarSpeedCoolingCoil =.FALSE.
logical, public :: VarSpeedHeatingCoil =.FALSE.
integer, public :: CoolingSpeedNum =0
integer, public :: HeatingSpeedNum =0
real(kind=r64), public :: CoolingSpeedRatio =1.0d0
real(kind=r64), public :: CoolingFanSpeedRatio =1.0d0
real(kind=r64), public :: HeatingSpeedRatio =1.0d0
real(kind=r64), public :: HeatingFanSpeedRatio =1.0d0
real(kind=r64), public :: CoolingCycRatio =0.0d0
real(kind=r64), public :: HeatingCycRatio =0.0d0
real(kind=r64), public :: PartLoadFrac =0.0d0
real(kind=R64), public :: FanPartLoadRatio =0.0d0
real(kind=R64), public :: CompPartLoadRatio =0.0d0
real(kind=R64), public :: ElecPower =0.0d0
real(kind=R64), public :: ElecPowerConsumption =0.0d0
real(kind=r64), public :: TotCoolEnergyRate =0.0d0
real(kind=r64), public :: SensCoolEnergyRate =0.0d0
real(kind=r64), public :: LatCoolEnergyRate =0.0d0
real(kind=r64), public :: TotHeatEnergyRate =0.0d0
real(kind=r64), public :: SensHeatEnergyRate =0.0d0
real(kind=r64), public :: LatHeatEnergyRate =0.0d0
real(kind=r64), public :: TotalAuxElecPower =0.0d0
real(kind=r64), public :: HeatingAuxElecConsumption =0.0d0
real(kind=r64), public :: CoolingAuxElecConsumption =0.0d0
real(kind=r64), public :: HeatRecoveryRate =0.0d0
real(kind=r64), public :: HeatRecoveryEnergy =0.0d0
real(kind=r64), public :: HeatRecoveryInletTemp =0.0d0
real(kind=r64), public :: HeatRecoveryOutletTemp =0.0d0
real(kind=r64), public :: HeatRecoveryMassFlowRate =0.0d0
real(kind=r64), public :: DehumidInducedHeatingDemandRate =0.0d0
real(kind=r64), public :: EMSSensibleZoneLoadValue =0.0d0
real(kind=r64), public :: EMSMoistureZoneLoadValue =0.0d0
integer, public :: SpeedNum =0
real(kind=r64), public :: SpeedRatio =0.0d0
real(kind=r64), public :: CycRatio =0.0d0
integer, public :: HXAssistedSensPLRIter =0
integer, public :: HXAssistedSensPLRIterIndex =0
integer, public :: HXAssistedSensPLRFail =0
integer, public :: HXAssistedSensPLRFailIndex =0
integer, public :: HXAssistedSensPLRFail2 =0
integer, public :: HXAssistedSensPLRFailIndex2 =0
integer, public :: HXAssistedLatPLRIter =0
integer, public :: HXAssistedLatPLRIterIndex =0
integer, public :: HXAssistedLatPLRFail =0
integer, public :: HXAssistedLatPLRFailIndex =0
integer, public :: HXAssistedCRLatPLRIter =0
integer, public :: HXAssistedCRLatPLRIterIndex =0
integer, public :: HXAssistedCRLatPLRFail =0
integer, public :: HXAssistedCRLatPLRFailIndex =0
integer, public :: HXAssistedCRLatPLRFail2 =0
integer, public :: HXAssistedCRLatPLRFailIndex2 =0
integer, public :: SensPLRIter =0
integer, public :: SensPLRIterIndex =0
integer, public :: SensPLRFail =0
integer, public :: SensPLRFailIndex =0
integer, public :: LatPLRIter =0
integer, public :: LatPLRIterIndex =0
integer, public :: LatPLRFail =0
integer, public :: LatPLRFailIndex =0
integer, public :: HeatCoilSensPLRIter =0
integer, public :: HeatCoilSensPLRIterIndex =0
integer, public :: HeatCoilSensPLRFail =0
integer, public :: HeatCoilSensPLRFailIndex =0
integer, public :: SuppHeatCoilSensPLRIter =0
integer, public :: SuppHeatCoilSensPLRIterIndex =0
integer, public :: SuppHeatCoilSensPLRFail =0
integer, public :: SuppHeatCoilSensPLRFailIndex =0
integer, public :: DXCoilSensPLRIter =0
integer, public :: DXCoilSensPLRIterIndex =0
integer, public :: DXCoilSensPLRFail =0
integer, public :: DXCoilSensPLRFailIndex =0
integer, public :: MSpdSensPLRIter =0
integer, public :: MSpdSensPLRIterIndex =0
integer, public :: MSpdCycSensPLRIter =0
integer, public :: MSpdCycSensPLRIterIndex =0
integer, public :: MSpdLatPLRIter =0
integer, public :: MSpdLatPLRIterIndex =0
integer, public :: MSpdCycLatPLRIter =0
integer, public :: MSpdCycLatPLRIterIndex =0
integer, public :: MaxIterIndex =0
integer, public :: RegulaFalsIFailedIndex =0
integer, public :: LatMaxIterIndex =0
integer, public :: LatRegulaFalsIFailedIndex =0
logical, public :: DesignFanVolFlowRateEMSOverrideOn =.FALSE.
logical, public :: MaxHeatAirVolFlowEMSOverrideOn =.FALSE.
logical, public :: MaxCoolAirVolFlowEMSOverrideOn =.FALSE.
logical, public :: MaxNoCoolHeatAirVolFlowEMSOverrideOn =.FALSE.
real(kind=r64), public :: DesignFanVolFlowRateEMSOverrideValue =0.0d0
real(kind=r64), public :: MaxHeatAirVolFlowEMSOverrideValue =0.0d0
real(kind=r64), public :: MaxCoolAirVolFlowEMSOverrideValue =0.0d0
real(kind=r64), public :: MaxNoCoolHeatAirVolFlowEMSOverrideValue =0.0d0
logical, public :: EMSOverrideSensZoneLoadRequest =.FALSE.
logical, public :: EMSOverrideMoistZoneLoadRequest =.FALSE.
integer, public :: StageNum =0
logical, public :: Staged =.FALSE.
integer, public :: CoolCountAvail =0
integer, public :: CoolIndexAvail =0
integer, public :: HeatCountAvail =0
integer, public :: HeatIndexAvail =0

Source Code

TYPE UnitarySystemData
! HVAC system specific data
  CHARACTER(len=MaxNameLength) :: UnitarySystemType  = ' '     ! Type of Unitary System
  INTEGER    :: UnitarySystemType_Num                = 0       ! integer type of Unitary System
  CHARACTER(len=MaxNameLength) :: Name               = ' '     ! Name of the Unitary System
  LOGICAL    :: HeatPump                             = .FALSE. ! TRUE if both cooling and heating coils are DX
  INTEGER    :: SysAvailSchedPtr                     = 0       ! System Availability schedule
  INTEGER    :: UnitarySystemInletNodeNum            = 0       ! Parent inlet node number
  INTEGER    :: UnitarySystemOutletNodeNum           = 0       ! Parent outlet node number
  INTEGER    :: CondenserType                        = 0       ! type of condenser (AirCooled, EvapCooled, WaterCooled)
  LOGICAL    :: AirLoopEquipment                     = .TRUE.  ! identifies that this system is part of an air loop
  INTEGER    :: ControlZoneNum                       = 0       ! Index to controlled zone
  INTEGER    :: ZoneSequenceCoolingNum               = 0       ! Index to cooling sequence/priority for this zone
  INTEGER    :: ZoneSequenceHeatingNum               = 0       ! Index to heating sequence/priority for this zone
  INTEGER    :: NodeNumofControlledZone              = 0       ! Node number of controlled zone
  INTEGER    :: ZoneInletNode                        = 0       ! Zone inlet node number in the controlled zone
  REAL(r64)  :: ControlZoneMassFlowFrac              = 0.0d0   ! Fraction of flow to control zone
  LOGICAL    :: Humidistat                           = .FALSE. ! Set to True if dehumidification control mode is set to
  REAL(r64)  :: DesignMaxOutletTemp                  = 80.0d0  ! Maximum supply air temperature from heater [C]
  INTEGER    :: CondenserNodeNum                     = 0       ! index to condenser air inlet node
  INTEGER    :: DehumidControlType_Num               = 0       ! Set to Dehumid Control None, CoolReheat or MultiMode
  INTEGER    :: AirFlowControl                       = 1       ! UseCompressorOnFlow or UseCompressorOffFlow
  INTEGER    :: ControlType                          = 0       ! Setpoint or Load based control
  LOGICAL    :: RequestAutosize                      = .FALSE. ! determines if inputs need autosizing
  LOGICAL    :: RunOnSensibleLoad                    = .TRUE.  ! logical determines if this system will run to
  LOGICAL    :: RunOnLatentLoad                      = .FALSE. ! logical determines if this system will run to
  LOGICAL    :: RunOnLatentOnlyWithSensible          = .FALSE. ! allow latent dehumidification only if sensible load exists
  INTEGER    :: DehumidificationMode                 = 0       ! Dehumidification mode for multimode coil,
                                                               ! 0=normal, 1+=enhanced dehumidification mode
  INTEGER    :: FanOpMode                            = 0       ! Fan operating mode (see parameter above)
  INTEGER    :: LastMode                             = 0       ! last mode of operation, coolingmode or heatingmode
  REAL(r64)  :: AncillaryOnPower                    = 0.0d0    ! Ancillary On-Cycle Electric Power [W]
  REAL(r64)  :: AncillaryOffPower                   = 0.0d0    ! Ancillary Off-Cycle Electric Power [W]

  CHARACTER(len=MaxNameLength) :: DesignSpecMultispeedHPType = ' '  ! Object type for specifying multispeed flow rates
  CHARACTER(len=MaxNameLength) :: DesignSpecMultispeedHPName = ' '  ! Object name for specifying multispeed flow rates

! Cooling coil specific data
  CHARACTER(len=MaxNameLength) :: CoolingCoilName   = ' '      ! coil name (eliminate after blank is accepted in CALL)
  INTEGER    :: CoolingCoilType_Num                 = 0        ! numeric coil type
  INTEGER    :: CoolingCoilIndex                    = 0        ! index to specific cooling coil
  REAL(r64)  :: DesignCoolingCapacity               = 0.0d0    ! cooling coil capacity (W)
  INTEGER    :: CoolingCoilAvailSchPtr              = 0        ! cooling coil availability schedule index
  INTEGER    :: ActualDXCoilIndexForHXAssisted      = 0        ! index to DX coil used in HX assisted object
  REAL(r64)  :: DOASDXCoolingCoilMinTout            = 0.0d0    ! DOAS DX Cooling coil outlet air minimum temperature
  LOGICAL    :: ISHundredPercentDOASDXCoil          = .FALSE.  ! logical determines if this system will run as 100% DOAS
  LOGICAL    :: CoolCoilExists                      = .FALSE.  ! True if a cooling coil is specified in the unitary system
  INTEGER    :: FrostControlStatus                  = 0        ! DOAS coil system frost control status
  INTEGER    :: CoolCoilInletNodeNum                = 0        ! Cooling coil air inlet node number
  INTEGER    :: CoolCoilOutletNodeNum               = 0        ! Cooling coil air outlet node number
  INTEGER    :: CoolCoilFluidOutletNodeNum          = 0        ! Cooling coil fluid outlet node number (from Plant Loop data)
  INTEGER    :: CoolCoilLoopNum                     = 0        ! Plant loop num of chilled water coil
  INTEGER    :: CoolCoilLoopSide                    = 0        ! Supply side or demand side
  INTEGER    :: CoolCoilBranchNum                   = 0        ! Branch of number of the cooling coil in the plant loop
  INTEGER    :: CoolCoilCompNum                     = 0        ! Comp num of the cooling coil in the plant loop
  INTEGER    :: CoolCoilFluidInletNode              = 0        ! Cooling coil fluid inlet node
  REAL(r64)  :: MaxCoolCoilFluidFlow                = Autosize ! Maximum cooling coil fluid flow for chilled water coil
  LOGICAL    :: CoolingCoilUpStream                 = .TRUE.   ! Set to true when coolign coil is upstream in the unitary system
  REAL(R64)  :: CoolCompPartLoadRatio               = 0.0d0    ! Unitary system compressor part load ratio in cooling

! Heating coil specific data
  CHARACTER(len=MaxNameLength) :: HeatingCoilName   =' '       ! coil name (eliminate after blank is accepted in CALL)
  INTEGER    :: HeatingCoilType_Num                 = 0        ! numeric coil type
  INTEGER    :: HeatingCoilIndex                    = 0        ! index to specific heating coil
  REAL(r64)  :: DesignHeatingCapacity               = 0.0d0    ! heating coil capacity (W)
  REAL(r64)  :: HeatingSizingRatio                  = 1.0d0    ! ratio of heating coil to cooling coil size
  LOGICAL    :: DXHeatingCoil                       = .FALSE.  ! specifies if heating coil is DX
  INTEGER    :: HeatCoilInletNodeNum                = 0        ! Heating coil air inlet node number
  INTEGER    :: HeatCoilOutletNodeNum               = 0        ! Heating coil air outlet node number
  INTEGER    :: HeatCoilFluidOutletNodeNum          = 0        ! Heating coil fluid outlet node number (from Plant Loop data)
  INTEGER    :: HeatingCoilPLFCurveIndex            = 0        ! PLF curve index (not used yet?)
  INTEGER    :: HeatingCoilAvailSchPtr              = 0        ! heating coil availability schedule index
  LOGICAL    :: HeatCoilExists                      = .FALSE.  ! True if a heating coil is specified in the unitary system
  INTEGER    :: HeatCoilLoopNum                     = 0        ! Plant loop num of hot water or steam coil
  INTEGER    :: HeatCoilLoopSide                    = 0        ! Supply side or demand side
  INTEGER    :: HeatCoilBranchNum                   = 0        ! Branch of number of the heating coil in the plant loop
  INTEGER    :: HeatCoilCompNum                     = 0        ! Comp num of the heating coil in the plant loop
  INTEGER    :: HeatCoilFluidInletNode              = 0        ! Heating coil fluid inlet node
  REAL(r64)  :: MaxHeatCoilFluidFlow                = Autosize ! Maximum heating coil fluid flow for hot water or steam coil
  REAL(R64)  :: HeatCompPartLoadRatio               = 0.0d0    ! Unitary system compressor part load ratio in heating

! Supplemental heating coil specific data
  CHARACTER(len=MaxNameLength) :: SuppHeatCoilName  = ' '      ! coil name (eliminate after blank is accepted in CALL)
  INTEGER    :: SuppHeatCoilType_Num                = 0        ! numeric coil type
  INTEGER    :: SuppHeatCoilIndex                   = 0        ! index to specific supplemental heating coil
  REAL(r64)  :: DesignSuppHeatingCapacity           = 0.0d0    ! supplemental heating coil capacity (W)
  INTEGER    :: SuppCoilFluidInletNode              = 0        ! supplemental heating coil water/steam inlet node
  INTEGER    :: SuppCoilFluidOutletNodeNum          = 0        ! Supplemental coil fluid outlet node number (from Plant Loop data)
  INTEGER    :: SuppCoilAirInletNode                = 0        ! supplemental heating coil air inlet node
  INTEGER    :: SuppCoilAirOutletNode               = 0        ! supplemental heating coil air outlet node
  INTEGER    :: SuppCoilAvailSchPtr                 = 0        ! supplemental heating coil availability schedule index
  REAL(r64)  :: MaxSuppCoilFluidFlow                = Autosize ! supplemental heating coil maximum water/steam flow rate (m3/s)
  REAL(r64)  :: MaxOATSuppHeat                      = 21.0d0   ! Maximum outdoor dry-bulb temperature for supplemental coil [C]
  LOGICAL    :: SuppCoilExists                      = .FALSE.  ! True if a supp coil is specified in the unitary system
  INTEGER    :: SuppCoilLoopNum                     = 0        ! Plant loop num of supplemental coil
  INTEGER    :: SuppCoilLoopSide                    = 0        ! Supply side or demand side
  INTEGER    :: SuppCoilBranchNum                   = 0        ! Branch of number of the supplemental coil in the plant loop
  INTEGER    :: SuppCoilCompNum                     = 0        ! Comp num of the supplemental coil in the plant loop

! fan specific data
  INTEGER    :: FanType_Num                         = 0        ! Fan type num i.e. OnOff, ConstVol, VAV
  INTEGER    :: FanIndex                            = 0        ! index of fan of a particular type
  REAL(r64)  :: ActualFanVolFlowRate                = 0.0d0    ! Actual or design fan volume flow rate
  INTEGER    :: FanOpModeSchedPtr                   = 0        ! fan operating mode schedule pointer
  INTEGER    :: FanAvailSchedPtr                    = 0        ! fan availability schedule pointer
  INTEGER    :: FanPlace                            = 0        ! Blow through or DrawThrough Fan
  LOGICAL    :: FanExists                           = .FALSE.  ! True if a fan is specified in the unitary system
  REAL(r64)  :: FanDelayTime                        = 0.0d0    ! Fan delay time, time delay for the HP's fan to
                                                               ! shut off after compressor cycle off [s]
! air flow variables
  REAL(r64)  :: MaxCoolAirVolFlow                   = 0.0d0    ! Maximum coil air volumetric flow for cooling [m3/s]
  REAL(r64)  :: MaxHeatAirVolFlow                   = 0.0d0    ! Maximum coil air volumetric flow for heating [m3/s]
  REAL(r64)  :: MaxNoCoolHeatAirVolFlow             = 0.0d0    ! Maximum coil air volumetric flow for no cooling or heating [m3/s]
  REAL(r64)  :: DesignFanVolFlowRate                = 0.0d0    ! Design fan volume flow rate [m3/s]
  REAL(r64)  :: DesignMassFlowRate                  = 0.0d0    ! Design mass flow rate [m3/s]
  REAL(r64)  :: MaxCoolAirMassFlow                  = 0.0d0    ! Maximum coil air mass flow for cooling [kg/s]
  REAL(r64)  :: MaxHeatAirMassFlow                  = 0.0d0    ! Maximum coil air mass flow for heating [kg/s]
  REAL(r64)  :: MaxNoCoolHeatAirMassFlow            = 0.0d0    ! Maximum coil air mass flow for no cooling or heating [kg/s]
  INTEGER    :: CoolingSAFMethod                    = 0        ! Supply air flow method for cooling
  INTEGER    :: HeatingSAFMethod                    = 0        ! Supply air flow method for heating
  INTEGER    :: NoCoolHeatSAFMethod                 = 0        ! Supply air flow method for no cooling or heating

! Heat pump related specific data
  REAL(r64)  :: MinOATCompressor                    = 0.0d0    ! Minimum outdoor temperature below which compressor if off
  REAL(r64)  :: MaxONOFFCyclesperHour               = 0.0d0    ! Maximum cycling rate of unitary system [cycles/hr]
  REAL(r64)  :: HPTimeConstant                      = 0.0d0    ! Heat pump time constant [s]
  REAL(r64)  :: OnCyclePowerFraction                = 0.0d0    ! Fraction of on-cycle power use [~]
  REAL(r64)  :: DesignHRWaterVolumeFlow             = 0.0d0    ! Design water volume flow rate through heat recovery loop [m3/s]
  REAL(R64)  :: WSHPRuntimeFrac                     = 0.0d0    ! Runtime fraction of water source heat pump
  REAL(R64)  :: HeatingCoilSensDemand               = 0.0d0         ! Sensible demand on Heating Coil [W]
  REAL(R64)  :: CoolingCoilSensDemand               = 0.0d0         ! Sensible demand on Cooling Coil [W]
  REAL(R64)  :: CoolingCoilLatentDemand             = 0.0d0         ! Latent demand on Cooling Coil [W]

! Heat recovery related specific data
  INTEGER    :: HeatRecoveryInletNodeNum            = 0        ! Node number on heat recovery water inlet
  INTEGER    :: HeatRecoveryOutletNodeNum           = 0        ! Node number on heat recovery water outlet
  LOGICAL    :: HeatRecActive                       = .FALSE.  ! True when entered Heat Rec Vol Flow Rate > 0
  REAL(r64)  :: DesignHeatRecMassFlowRate           = 0.0d0    ! Design water mass flow rate through heat recovery loop [kg/s]
  REAL(r64)  :: MaxHROutletWaterTemp                = 0.0d0    ! Maximum outlet water temperature for heat recovery [C]
  INTEGER    :: HRLoopNum                           = 0        ! plant loop number for heat recovery
  INTEGER    :: HRLoopSideNum                       = 0        ! Plant loop side (supply or demand) for heat recovery
  INTEGER    :: HRBranchNum                         = 0        ! plant loop branch for heat recovery
  INTEGER    :: HRCompNum                           = 0        ! plant loop component for heat recovery

! set point based control varibles
  INTEGER    :: SystemHeatControlNodeNum            = 0        ! the node number of the node with the setpoint
  INTEGER    :: SystemCoolControlNodeNum            = 0        ! the node number of the node with the setpoint
  INTEGER    :: SuppHeatControlNodeNum              = 0        ! the node number of the node with the setpoint
  REAL(r64)  :: DesiredOutletTemp                   = 0.0d0    ! the setpoint temperature at the unit outlet node
  REAL(r64)  :: DesiredOutletHumRat                 = 1.0d0    ! the setpoint humidity ratio at the unit outlet node

! operational system variables
  REAL(r64)  :: CoolingPartLoadFrac                 = 0.0d0    ! part load cooling fraction for current timestep
  REAL(r64)  :: HeatingPartLoadFrac                 = 0.0d0    ! part load heating fraction for current timestep
  REAL(r64)  :: SuppHeatPartLoadFrac                = 0.0d0    ! part load supp heating fraction for current timestep
  REAL(r64)  :: SupHeaterLoad                       = 0.0d0    ! Supplemental Heat Load for current timestep
  REAL(r64)  :: SenLoadLoss                         = 0.0d0    ! Air distribution system sensible loss [W]
  REAL(r64)  :: LatLoadLoss                         = 0.0d0    ! Air distribution system latent loss [W]
  REAL(r64)  :: SensibleLoadMet                     = 0.0d0    ! System sensible load [W]
  REAL(r64)  :: LatentLoadMet                       = 0.0d0    ! System latent load [W]
  LOGICAL    :: InitHeatPump                        = .TRUE.   ! Heat pump initialization flag (for error reporting)
  INTEGER    :: WaterCyclingMode                    = 0        ! Heat Pump Coil water flow mode; See def in DataHVACGlobals,
                                                               ! 1=water cycling, 2=water constant, 3=water constant on demand

! start of additional varibles for variable speed water source heat pump
  INTEGER   :: HeatCoolMode                         = 0        ! System operating mode (0 = floating, 1 = cooling, 2 = heating)
  INTEGER   :: NumOfSpeedCooling                    = 0        ! The number of speeds for cooling
  INTEGER   :: NumOfSpeedHeating                    = 0        ! The number of speeds for heating
  REAL(r64) :: IdleSpeedRatio                       = 0        ! idle air fan ratio
  REAL(r64) :: IdleVolumeAirRate                    = 0        ! idle air flow rate [m3/s]
  REAL(r64) :: IdleMassFlowRate                     = 0        ! idle air flow rate [kg/s]
  LOGICAL   :: CheckFanFlow                         = .TRUE.   ! Supply airflow check
  REAL(r64), DIMENSION(:), ALLOCATABLE :: HeatVolumeFlowRate   ! Supply air volume flow rate during heating operation
  REAL(r64), DIMENSION(:), ALLOCATABLE :: HeatMassFlowRate     ! Supply air mass flow rate during heating operation
  REAL(r64), DIMENSION(:), ALLOCATABLE :: CoolVolumeFlowRate   ! Supply air volume flow rate during cooling operation
  REAL(r64), DIMENSION(:), ALLOCATABLE :: CoolMassFlowRate     ! Supply air mass flow rate during cooling operation
  REAL(r64), DIMENSION(:), ALLOCATABLE :: MSHeatingSpeedRatio  ! Fan speed ratio in heating mode
  REAL(r64), DIMENSION(:), ALLOCATABLE :: MSCoolingSpeedRatio  ! Fan speed ratio in cooling mode
  REAL(r64) :: NoHeatCoolSpeedRatio                 = 1.0d0    ! Fan speed ratio when no cooling or heating
  INTEGER   :: DesignSpecMSHPIndex                  = 0        ! Index to design specification multispeed heat pump object
  LOGICAL   :: MultiSpeedCoolingCoil                = .FALSE.  ! TRUE when cooling coil multispeed
  LOGICAL   :: MultiSpeedHeatingCoil                = .FALSE.  ! TRUE when heating coil multispeed
  LOGICAL   :: VarSpeedCoolingCoil                  = .FALSE.  ! TRUE when cooling coil variable speed
  LOGICAL   :: VarSpeedHeatingCoil                  = .FALSE.  ! TRUE when heating coil variable speed
  INTEGER   :: CoolingSpeedNum                      = 0        ! speed number for multispeed cooling coils types
  INTEGER   :: HeatingSpeedNum                      = 0        ! speed number for multispeed heating coils types
  REAL(r64) :: CoolingSpeedRatio                    = 1.0d0    ! current compressor speed ratio (variable speed)
  REAL(r64) :: CoolingFanSpeedRatio                 = 1.0d0    ! current fan speed ratio
  REAL(r64) :: HeatingSpeedRatio                    = 1.0d0    ! current compressor speed ratio (variable speed)
  REAL(r64) :: HeatingFanSpeedRatio                 = 1.0d0    ! current fan speed ratio
  REAL(r64) :: CoolingCycRatio                      = 0.0d0    ! cycling part load ratio (variable speed)
  REAL(r64) :: HeatingCycRatio                      = 0.0d0    ! cycling part load ratio (variable speed)
 ! end of additional variables for variable speed water source heat pump

! Report Varibles
  REAL(r64)    :: PartLoadFrac                     = 0.0d0     ! part load fraction for current time step (single speed)
  REAL(R64)    :: FanPartLoadRatio                 = 0.0d0     ! Unitary system fan part load ratio
  REAL(R64)    :: CompPartLoadRatio                = 0.0d0     ! Unitary system compressor part load ratio
  REAL(R64)    :: ElecPower                        = 0.0d0     ! Unitary System Electric Power
  REAL(R64)    :: ElecPowerConsumption             = 0.0d0     ! Electricity power comsumption: CondenserFan+CCHeater+Defrost+aux
  REAL(r64)    :: TotCoolEnergyRate                = 0.0d0     ! Unitary System Total Cooling Rate [W]
  REAL(r64)    :: SensCoolEnergyRate               = 0.0d0     ! Unitary System Sensible Cooling Rate [W]
  REAL(r64)    :: LatCoolEnergyRate                = 0.0d0     ! Unitary System Latent Cooling Rate [W]
  REAL(r64)    :: TotHeatEnergyRate                = 0.0d0     ! Unitary System Total Heating Rate [W]
  REAL(r64)    :: SensHeatEnergyRate               = 0.0d0     ! Unitary System Sensible Heating Rate [W]
  REAL(r64)    :: LatHeatEnergyRate                = 0.0d0     ! Unitary System Latent Heating Rate [W]
  REAL(r64)    :: TotalAuxElecPower                = 0.0d0     ! Unitary System Ancillary Electric Power [W]
  REAL(r64)    :: HeatingAuxElecConsumption        = 0.0d0     ! Unitary System Heating Ancillary Electric Energy [J]
  REAL(r64)    :: CoolingAuxElecConsumption        = 0.0d0     ! Unitary System Cooling Ancillary Electric Energy [J]
  REAL(r64)    :: HeatRecoveryRate                 = 0.0d0     ! Unitary System Heat Recovery Rate [W]
  REAL(r64)    :: HeatRecoveryEnergy               = 0.0d0     ! Unitary System Heat Recovery Energy [J]
  REAL(r64)    :: HeatRecoveryInletTemp            = 0.0d0     ! Unitary System Heat Recovery Inlet Temperature [C]
  REAL(r64)    :: HeatRecoveryOutletTemp           = 0.0d0     ! Unitary System Heat Recovery Outlet Temperature [C]
  REAL(r64)    :: HeatRecoveryMassFlowRate         = 0.0d0     ! Unitary System Heat Recovery Fluid Mass Flow Rate [kg/s]
  REAL(r64)    :: DehumidInducedHeatingDemandRate  = 0.0d0     ! Unitary System
  REAL(r64)    :: EMSSensibleZoneLoadValue         = 0.0d0     ! Value EMS is directing to use
  REAL(r64)    :: EMSMoistureZoneLoadValue         = 0.0d0     ! Value EMS is directing to use
  INTEGER      :: SpeedNum                         = 0         ! speed number of active multi- or variable-speed coil
  REAL(r64)    :: SpeedRatio                       = 0.0d0     ! current compressor speed ratio (variable speed)
  REAL(r64)    :: CycRatio                         = 0.0d0     ! cycling part load ratio (variable speed)

! Warning message variables
  INTEGER      :: HXAssistedSensPLRIter                = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedSensPLRIterIndex           = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedSensPLRFail                = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedSensPLRFailIndex           = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedSensPLRFail2               = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedSensPLRFailIndex2          = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedLatPLRIter                 = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedLatPLRIterIndex            = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedLatPLRFail                 = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedLatPLRFailIndex            = 0     ! used in HX Assisted calculations

  INTEGER      :: HXAssistedCRLatPLRIter               = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedCRLatPLRIterIndex          = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedCRLatPLRFail               = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedCRLatPLRFailIndex          = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedCRLatPLRFail2              = 0     ! used in HX Assisted calculations
  INTEGER      :: HXAssistedCRLatPLRFailIndex2         = 0     ! used in HX Assisted calculations

  INTEGER      :: SensPLRIter                          = 0     ! used in cool coil calculations
  INTEGER      :: SensPLRIterIndex                     = 0     ! used in cool coil calculations
  INTEGER      :: SensPLRFail                          = 0     ! used in cool coil calculations
  INTEGER      :: SensPLRFailIndex                     = 0     ! used in cool coil calculations
  INTEGER      :: LatPLRIter                           = 0     ! used in cool coil calculations
  INTEGER      :: LatPLRIterIndex                      = 0     ! used in cool coil calculations
  INTEGER      :: LatPLRFail                           = 0     ! used in cool coil calculations
  INTEGER      :: LatPLRFailIndex                      = 0     ! used in cool coil calculations

  INTEGER      :: HeatCoilSensPLRIter                  = 0     ! used in heat coil calculations
  INTEGER      :: HeatCoilSensPLRIterIndex             = 0     ! used in heat coil calculations
  INTEGER      :: HeatCoilSensPLRFail                  = 0     ! used in heat coil calculations
  INTEGER      :: HeatCoilSensPLRFailIndex             = 0     ! used in heat coil calculations

  INTEGER      :: SuppHeatCoilSensPLRIter              = 0     ! used in supp heat coil calculations
  INTEGER      :: SuppHeatCoilSensPLRIterIndex         = 0     ! used in supp heat coil calculations
  INTEGER      :: SuppHeatCoilSensPLRFail              = 0     ! used in supp heat coil calculations
  INTEGER      :: SuppHeatCoilSensPLRFailIndex         = 0     ! used in supp heat coil calculations

  INTEGER      :: DXCoilSensPLRIter                    = 0     ! used in DXCoil calculations
  INTEGER      :: DXCoilSensPLRIterIndex               = 0     ! used in DXCoil calculations
  INTEGER      :: DXCoilSensPLRFail                    = 0     ! used in DXCoil calculations
  INTEGER      :: DXCoilSensPLRFailIndex               = 0     ! used in DXCoil calculations

  INTEGER      :: MSpdSensPLRIter                      = 0     ! used in MultiSpeed calculations
  INTEGER      :: MSpdSensPLRIterIndex                 = 0     ! used in MultiSpeed calculations
  INTEGER      :: MSpdCycSensPLRIter                   = 0     ! used in MultiSpeed calculations
  INTEGER      :: MSpdCycSensPLRIterIndex              = 0     ! used in MultiSpeed calculations
  INTEGER      :: MSpdLatPLRIter                       = 0     ! used in MultiSpeed calculations
  INTEGER      :: MSpdLatPLRIterIndex                  = 0     ! used in MultiSpeed calculations
  INTEGER      :: MSpdCycLatPLRIter                    = 0     ! used in MultiSpeed calculations
  INTEGER      :: MSpdCycLatPLRIterIndex               = 0     ! used in MultiSpeed calculations

  INTEGER      :: MaxIterIndex                         = 0     ! used in PLR calculations for sensible load
  INTEGER      :: RegulaFalsIFailedIndex               = 0     ! used in PLR calculations for sensible load
  INTEGER      :: LatMaxIterIndex                      = 0     ! used in PLR calculations for moisture load
  INTEGER      :: LatRegulaFalsIFailedIndex            = 0     ! used in PLR calculations for moisture load

! EMS variables
  LOGICAL      :: DesignFanVolFlowRateEMSOverrideOn       = .FALSE. ! If true, then EMS is calling to override autosize fan flow
  LOGICAL      :: MaxHeatAirVolFlowEMSOverrideOn          = .FALSE. ! If true, then EMS is calling to override autosize fan flow
  LOGICAL      :: MaxCoolAirVolFlowEMSOverrideOn          = .FALSE. ! If true, then EMS is calling to override autosize fan flow
  LOGICAL      :: MaxNoCoolHeatAirVolFlowEMSOverrideOn    = .FALSE. ! If true, then EMS is calling to override autosize fan flow
  REAL(r64)    :: DesignFanVolFlowRateEMSOverrideValue    = 0.0d0   ! EMS value for override of fan flow rate autosize [m3/s]
  REAL(r64)    :: MaxHeatAirVolFlowEMSOverrideValue       = 0.0d0   ! EMS value for override of fan flow rate autosize [m3/s]
  REAL(r64)    :: MaxCoolAirVolFlowEMSOverrideValue       = 0.0d0   ! EMS value for override of fan flow rate autosize [m3/s]
  REAL(r64)    :: MaxNoCoolHeatAirVolFlowEMSOverrideValue = 0.0d0   ! EMS value for override of fan flow rate autosize [m3/s]
  LOGICAL      :: EMSOverrideSensZoneLoadRequest          = .FALSE. ! If true, then EMS is calling to override zone load
  LOGICAL      :: EMSOverrideMoistZoneLoadRequest         = .FALSE. ! If true, then EMS is calling to override zone load

! Staged thermostat control
  Integer      :: StageNum                             = 0     ! Stage number specified by staged thermostat
  LOGICAL      :: Staged                               = .FALSE.  ! Using Staged thermostat
  INTEGER      :: CoolCountAvail                       = 0     ! Counter used to minimize the occurrence of output warnings
  INTEGER      :: CoolIndexAvail                       = 0     ! Index used to minimize the occurrence of output warnings
  INTEGER      :: HeatCountAvail                       = 0     ! Counter used to minimize the occurrence of output warnings
  INTEGER      :: HeatIndexAvail                       = 0     ! Index used to minimize the occurrence of output warnings

END TYPE UnitarySystemData

ActuatorUsedType AiflowNetworkReportProp AirChillerSetData AirConnectionStruct AirflowNetworkCompProp AirflowNetworkExchangeProp AirflowNetworkLinkageProp AirflowNetworkLinkReportData AirflowNetworkLinkSimuData AirflowNetworkNodeProp AirflowNetworkNodeReportData AirflowNetworkNodeSimuData AirflowNetworkReportVars AirflowNetworkSimuProp AirIn AirLoopBranchData AirLoopCompData AirLoopControlData AirLoopFlowData AirLoopMixerData AirLoopOutsideAirConnectData AirLoopSplitterData AirLoopStatsType AirLooptoZoneData AirLoopZoneEquipConnectData AirModelData AirNodeData AirPatternInfobyZoneStruct AirReportVars AirTerminalMixerData AngleFactorData BalancedDesDehumPerfData BaseboardParams BaseboardParams BaseCell BaseChillerSpecs BasementZoneInfo BaseReportVars BaseThermalPropertySet BasisElemDescr BasisStruct BatteryDichargeDataStruct BBHeatData BinObjVarIDType BinResultsType BinStatisticsType BLASTAbsorberSpecs BoilerSpecs BoilerSpecs BoundingBoxVertStruct BranchData BranchData BranchListData BSDFBkSurfDescr BSDFDaylghtGeomDescr BSDFDaylghtPosition BSDFGeomDescr BSDFLayerAbsorpStruct BSDFRefPoints BSDFRefPointsGeomDescr BSDFStateDescr BSDFWindowDescript BSDFWindowGeomDescr BSDFWindowInputStruct cached_psat_t cached_twb_t CartesianCell CartesianPipeCellInformation CaseAndWalkInListDef CaseRAFractionData CaseWIZoneReportData CashFlowType CBVAVData CECInverterLookUpTableData CFSFILLGAS CFSGAP CFSLAYER CFSLWP CFSSWP CFSTY CGSHPNodeData ChargeBlockType ChargeSimpleType ChillerheaterSpecs CHReportVars CoefficientProps CoilCreditData CoilType CollectorData ColumnTagType CommonPipeData CompData CompDesWaterFlowData ComponentData ComponentData ComponentListData ComponentNameData ComponentProps ComponentSetPtData CompressorListDef CompSizeTableEntryType ComputationType ConnectAirSysComp ConnectAirSysSubComp ConnectAirSysSubSubComp ConnectedLoopData ConnectionPoint ConnectorData ConnectZoneComp ConnectZoneSubComp ConnectZoneSubSubComp ConstantFlowRadiantSystemData ConstCOPChillerSpecs ConstCOPReportVars ConstGradPattern ConstructionData ConstructionDataFD ContaminantData ControllerListProps ControllerPropsType ControllerStatsType ControlList ControlsType ConvectionCoefficient CoolBeamData CoolTowerParams CostAdjustmentStruct CostLineItemStruct CTGeneratorSpecs CurSimConditionsInfo CVData CVDVParameters CVFlow DamperDesignParams DamperFlowConditions DataPeriodData DataSetPointManager DaylightSavingPeriodData DayScheduleData DayWeatherVariables DCtoACInverterStruct DefineASHRAEAdaptiveOptimumStartCoeffs DefineColdestSetPointManager DefineCondEntSetPointManager DefineDiffTSysAvailManager DefineFollowOATempSetPointManager DefineFollowSysNodeTempSetPointManager DefineGroundTempSetPointManager DefineHiLoSysAvailManager DefineHybridVentSysAvailManager DefineIdealCondEntSetPointManager DefineLinearModelNode DefineMixedAirSetPointManager DefineNightCycSysAvailManager DefineNightVentSysAvailManager DefineOAPretreatSetPointManager DefineOptStartSysAvailManager DefineOutsideAirSetPointManager DefinePriAirSysAvailMgrs DefinePrimaryAirSystem DefineSchedDualSetPointManager DefineSchedOffSysAvailManager DefineSchedOnSysAvailManager DefineSchedSysAvailManager DefineScheduledSetPointManager DefineSurfaceSettings DefineSZCoolingSetPointManager DefineSZHeatingSetPointManager DefineSZMaxHumSetPointManager DefineSZMinHumSetPointManager DefineSZOneStageCoolinggSetPointManager DefineSZOneStageHeatingSetPointManager DefineSZReheatSetPointManager DefineWarmestSetPointManager DefineZoneCompAvailMgrs DefineZoneData DefMultiZoneAverageCoolingSetPointManager DefMultiZoneAverageHeatingSetPointManager DefMultiZoneAverageMaxHumSetPointManager DefMultiZoneAverageMinHumSetPointManager DefMultiZoneMaxHumSetPointManager DefMultiZoneMinHumSetPointManager DefRABFlowSetPointManager DefWarmestSetPtManagerTempFlow DemandManagerData DemandManagerListData DesDayWeathData DesiccantDehumidifierData DesignDayData DesignSpecMSHPData DetailedIceStorageData DirectAirProps DirectionNeighbor_Dictionary DirectionReal_Dictionary DisSysCompCoilProp DisSysCompCPDProp DisSysCompCVFProp DisSysCompDamperProp DisSysCompDetFanProp DisSysCompDuctProp DisSysCompELRProp DisSysCompHXProp DisSysCompLeakProp DisSysCompTermUnitProp DisSysLinkageProp DisSysNodeProp DistributionStructure DomainRectangle dTriangle DuctData DVData DXCoilData DXCoolingConditions DXHeatPumpSystemStruct EarthTubeData EarthTubeZoneReportVars EconVarType ElecBaseboardParams ElecStorageDataStruct ElectricChillerSpecs ElectricEIRChillerSpecs ElectricPowerLoadCenter ElectricRadiantSystemData ElectricReportVars ElectricTransformer EMSActuatorAvailableType EMSProgramCallManagementType EndUseCategoryType Energy EngineDrivenChillerSpecs EngineDrivenReportVars EnvironmentData EqNodeConnectionDef EquipConfiguration EquipList EquipListCompData EquipListPtrData EquipmentData EquipMeterData EquipOpList ErlExpressionType ErlStackType ErlValueType ErlVariableType EvapConditions EvapFluidCoolerInletConds EvapFluidCoolerspecs ExhaustAbsorberSpecs ExtendedFluidProperties ExteriorEquipmentUsage ExteriorLightUsage ExtVentedCavityStruct Face FanCoilData FanEquipConditions FarfieldInfo FaultProperties FCAirSupplyDataStruct FCAuxilHeatDataStruct FCDataStruct FCElecStorageDataStruct FCExhaustHXDataStruct FCInverterDataStruct FCPowerModuleStruct FCReportDataStruct FCStackCoolerDataStruct FCWaterSupplyDataStruct FenestrationSolarAbsorbed FileSectionsDefinition FluidCellInformation FluidCoolerInletConds FluidCoolerspecs FluidPropsGlycolData FluidPropsGlycolErrors FluidPropsGlycolRawData FluidPropsRefrigerantData FluidPropsRefrigErrors FrameDividerProperties FuelTypeProps FullDomainStructureInfo FurnaceEquipConditions GapDeflectionState GapSupportPillar GasAbsorberSpecs GasPropertyDataStruct GasTurbineReportVars GenData GeneratorDynamicsManagerStruct GeneratorFuelSupplyDataStruct GenericComponentZoneIntGainStruct GlheSpecs GlobalInternalGainMiscObject GridRegion GroundwaterWellDataStruct GshpSpecs GshpSpecs GshpSpecs GTChillerSpecs HalfLoopData HcInsideFaceUserCurveStruct HcOutsideFaceUserCurveStruct HeatExchangerStruct HeatExchCond HeatingCoilEquipConditions HeatPumpWaterHeaterData HeatReclaimDXCoilData HeatReclaimRefrigCondenserData HeatReclaimRefrigeratedRackData HighTempRadiantSystemData HumidifierData HVACAirLoopIterationConvergenceStruct HVACNodeConvergLogStruct HVACZoneInletConvergenceStruct HWBaseboardParams HXAssistedCoilParameters HydronicRadiantSystemData ICEngineGeneratorSpecs IceStorageMapping IceStorageSpecs IllumMapData IndirectAbsorberSpecs IndUnitData InfiltrationData InsideFaceAdaptiveConvAlgoStruct InstructionType IntegerVariables IntegerVariableType InternalVarsAvailableType InternalVarsUsedType IntWinAdjZoneExtWinStruct IrrigationDataStruct LightsData LineDefinition LocalPipeData Location LoopPipeData LoopSidePumpInformation LoopSideReportVars m_FlowControlValidator MapCalcData MarkedNodeData MaterialDataFD MaterialProperties MatrixDataStruct MeshExtents MeshPartition MeshPartitions MeshProperties MeterArrayType MeterData MeterType MicroCHPDataStruct MicroCHPParamsNonNormalized MicroCHPReportDataStruct MissingData MissingDataCounts MixerConditions MixerData MixerData MixingData MoistureInfo monetaryUnitType MonthlyColumnsType MonthlyFieldSetInputType MonthlyInputType MonthlyTablesType MoreNodeData MSHeatPumpData MSHeatPumpReportData MTGeneratorSpecs MultizoneCompDetOpeningProp MultizoneCompExhaustFanProp MultizoneCompHorOpeningProp MultizoneCompSimpleOpeningProp MultizoneCPArrayProp MultizoneCPValueProp MultizoneExternalNodeProp MultizoneSurfaceCrackProp MultizoneSurfaceCrackStdCndns MultizoneSurfaceELAProp MultizoneSurfaceProp MultizoneZoneProp NamedMonthlyType NeighborInformation NightVentPerfData NodeConnectionDef NodeData NodeListDef NonrecurringCostType OAControllerData OAControllerProps OAEquipList OAMixerProps OARequirementsData OAUnitData ObjectsDefinition OperationData OperatorType OpSchemePtrData OptStartDataType OSCData OSCMData OutputReportingVariables OutputTableBinnedType OutputVarSensorType OutsideAirSysProps OutsideEnergySourceSpecs OutsideFaceAdpativeConvAlgoStruct PackagedTESCoolingCoilStruct ParametersData ParentListData PeopleData PerfCurveTableDataStruct PerfomanceCurveData PipeCircuitInfo PipeData PipeHeatTransferReport PipeHTData PipeSegmentInfo PlaneEq PlantAvailMgrData PlantCallingOrderInfoStruct PlantConnection PlantConnectionStruct PlantConnectionStruct PlantConvergencePoint PlantIterationConvergenceStruct PlantLocation PlantLocatorStruct PlantLoopData PlantPressureCurveData PlantProfileData PlantSizingData Point Point3DInteger Point3DReal PointF PointType PollutionProps Polyhedron PondGroundHeatExchangerData PondGroundHeatExchangerReport PowIndUnitData PTUnitData PumpSpecs PumpVFDControlData PVArrayStruct PVReportVariables PVTCollectorStruct PVTReportStruct QualifyType RadialCellInformation RadialSizing RadSysTypeData RainfallCollectorDataStruct RangeCheckDef RangeDataCounts RatchetType RealVariables RealVariableType RectangleF RecurringCostsType RecurringErrorData ReformulatedEIRChillerSpecs RefrigCaseCreditData RefrigCaseData RefrigCompressorData RefrigCondenserData RefrigGasCoolerData RefrigRackData RefrigSystemData ReportBranchData ReportCompData ReportEIRVars ReportingInformation ReportLoopData reportNameType ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReportVars ReqReportVariables ReturnAir RoofGeoCharactisticsStruct RootFinderDataType RunPeriodData RuntimeReportVarType ScheduleData ScheduleTypeData ScreenTransData SecondaryLoopData SecretObjects SectionsDefinition ShadingVertexData ShadowingCombinations ShadowRelateType ShelfData SimplePVParamsStruct SimplePVTModelStruct SimpleWatertoAirHPConditions SimulationControl SimulationOrder SiteRainFallDataStruct SlabListData SNLModuleParamsStuct SNLPVCalcStruct SNLPVInputStruct SolReflRecSurfData SolutionTrackerType SpecialDayData SpectralDataProperties SplitterConditions SplitterData SplitterData StackType StandAloneERVData SteamBaseboardParams SteamCoilEquipConditions StorageTankDataStruct StormWindowData StratifiedNodeData subcell SubcomponentData SubcoolerData SubEquipmentData SubSubcomponentData SubSubEquipmentData SubTableType SummarizeLoads SupplyAir SurfaceAssocNestedStruct SurfaceData SurfaceDataFD SurfaceErrorTracking SurfaceGroundHeatExchangerData SurfaceGroundHeatExchangerQTF SurfaceGroundHeatExchngrReport SurfaceListData SurfaceScreenProperties SurfaceSolarIncident SurfaceWindowCalc SurfMapPattern SysAvailManagerList SysDesignParams SysFlowConditions SystemSizingData SystemSizingInputData TableDataStruct TableEntryType TableLookupData TariffType TCGlazingsType TDDPipeData TemperaturePatternStruct TemperValveData TempGridRegionData TempLoopData TempVsHeightPattern TerminalUnitListData TermUnitSizingData ThermalChimneyData ThermalComfortDataType ThermalComfortInASH55Type ThermalComfortSetpointType ThermChimReportVars ThermChimZnReportVars TimeSteps timings TOCEntriesType TokenType TowerInletConds Towerspecs TransferLoadListDef TransRefrigSystemData TrendVariableType TriQuadraticCurveDataStruct TRNSYSPVCalcStruct TRNSYSPVModuleParamsStruct TStatObject TwoVertGradInterpolPattern TypicalExtremeData UFEData UFIData UnitarySystemData UnitConvType UnitHeaterData UnitVentilatorData UseAdjustmentType UsePriceEscalationType UserAirTerminalComponentStruct UserCoilComponentStruct UserPlantComponentStruct UserZoneHVACForcedAirComponentStruct UTSCDataStruct VariableSpeedCoilData VariableTypeForDDOutput vector Vector_2d VentilatedSlabData VentilationData VentilationMechanicalProps VRFCondenserEquipment VRFTerminalUnitEquipment VSTowerData WalkInData WarehouseCoilData WarmupConvergence WaterCoilEquipConditions WaterConnectionsType WaterEquipmentType WaterHeaterDesuperheaterData WaterHeaterSizingData WaterSourceSpecs WaterThermalTankData WatertoAirHPEquipConditions WaterUseTankConnectionStruct WeatherProperties WeekScheduleData WholeBuildingElectricPowerSummary WindACData WindowBlindProperties WindowComplexShade WindowIndex WindowShadingControlData WindowStateIndex WindowThermalModelParams WindTurbineParams WrapperComponentSpecs WrapperReportVars WrapperSpecs ZoneAirBalanceData ZoneAirDistributionData ZoneAirEquip ZoneCatEUseData ZoneComfortControls ZoneComfortControlsFangerData ZoneComfortFangerControlType ZoneCompTypeData ZoneContamGenericDataBLDiff ZoneContamGenericDataConstant ZoneContamGenericDataCutoff ZoneContamGenericDataDecay ZoneContamGenericDataDRS ZoneContamGenericDataDVS ZoneContamGenericDataPDriven ZoneContControls ZoneData ZoneDaylightCalc ZoneDehumidifierData ZoneEqSizingData ZoneEquipData ZoneEvapCoolerUnitStruct ZoneGroupData ZoneHumidityControls ZoneInternalGainsStruct ZoneListData ZoneListData ZonePreDefRepType ZonePurchasedAir ZoneReportVars ZoneReturnPlenumConditions ZoneSatgedControls ZoneSimData ZoneSizingData ZoneSizingInputData ZoneSupplyPlenumConditions ZoneSystemContaminantDemandData ZoneSystemDemandData ZoneSystemMoistureDemand ZoneTempControls ZoneTempControlType ZoneViewFactorInformation