VariableSpeedCoilData Derived Type

type, public :: VariableSpeedCoilData

Name VarSpeedCoilType NumOfSpeeds NormSpedLevel RatedWaterVolFlowRate RatedWaterMassFlowRate RatedAirVolFlowRate RatedCapHeat RatedCapCoolTotal MaxONOFFCyclesperHour Twet_Rated Gamma_Rated HOTGASREHEATFLG HPTimeConstant PLFFPLR CoolHeatType VSCoilTypeOfNum Simflag DesignWaterMassFlowRate DesignWaterVolFlowRate DesignAirMassFlowRate DesignAirVolFlowRate AirVolFlowRate AirMassFlowRate InletAirPressure InletAirDBTemp InletAirHumRat InletAirEnthalpy OutletAirDBTemp OutletAirHumRat OutletAirEnthalpy WaterVolFlowRate WaterMassFlowRate InletWaterTemp InletWaterEnthalpy OutletWaterTemp OutletWaterEnthalpy Power QLoadTotal QSensible QLatent QSource QWasteHeat Energy EnergyLoadTotal EnergySensible EnergyLatent EnergySource COP RunFrac PartLoadRatio RatedPowerHeat RatedCOPHeat RatedCapCoolSens RatedPowerCool RatedCOPCool AirInletNodeNum AirOutletNodeNum WaterInletNodeNum WaterOutletNodeNum LoopNum LoopSide BranchNum CompNum FindCompanionUpStreamCoil CompanionCoolingCoilNum CompanionHeatingCoilNum FanDelayTime MSErrIndex MSRatedPercentTotCap MSRatedTotCap MSRatedSHR MSRatedCOP MSRatedAirVolFlowPerRatedTotCap MSRatedAirVolFlowRate MSRatedAirMassFlowRate MSRatedWaterVolFlowPerRatedTotCap MSRatedWaterVolFlowRate MSRatedWaterMassFlowRate MSRatedCBF MSEffectiveAo MSCCapFTemp MSCCapAirFFlow MSCCapWaterFFlow MSEIRFTemp MSEIRAirFFlow MSEIRWaterFFlow MSWasteHeat MSWasteHeatFrac SpeedNumReport SpeedRatioReport DefrostStrategy DefrostControl EIRFPLR DefrostEIRFT MinOATCompressor OATempCompressorOn MaxOATDefrost DefrostTime DefrostCapacity HPCompressorRuntime HPCompressorRuntimeLast TimeLeftToDefrost DefrostPower DefrostConsumption ReportCoolingCoilCrankcasePower CrankcaseHeaterCapacity CrankcaseHeaterPower MaxOATCrankcaseHeater CrankcaseHeaterConsumption CondenserInletNodeNum CondenserType ReportEvapCondVars EvapCondPumpElecNomPower EvapCondPumpElecPower EvapWaterConsumpRate EvapCondPumpElecConsumption EvapWaterConsump BasinHeaterConsumption BasinHeaterPowerFTempDiff BasinHeaterSetPointTemp BasinHeaterPower BasinHeaterSchedulePtr EvapCondAirFlow EvapCondEffect MSRatedEvapCondVolFlowPerRatedTotCap EvapWaterSupplyMode EvapWaterSupplyName EvapWaterSupTankID EvapWaterTankDemandARRID CondensateCollectMode CondensateCollectName CondensateTankID CondensateTankSupplyARRID CondensateVdot CondensateVol CondInletTemp SourceAirMassFlowRate InletSourceAirTemp InletSourceAirEnthalpy

Source Code


Components

TypeVisibility AttributesNameInitial
character(len=MaxNameLength), public :: Name =' '
character(len=MaxNameLength), public :: VarSpeedCoilType =' '
integer, public :: NumOfSpeeds =2
integer, public :: NormSpedLevel =MaxSpedLevels
real(kind=r64), public :: RatedWaterVolFlowRate =AUTOSIZE
real(kind=r64), public :: RatedWaterMassFlowRate =AUTOSIZE
real(kind=r64), public :: RatedAirVolFlowRate =AUTOSIZE
real(kind=r64), public :: RatedCapHeat =AUTOSIZE
real(kind=r64), public :: RatedCapCoolTotal =AUTOSIZE
real(kind=r64), public :: MaxONOFFCyclesperHour =0.0d0
real(kind=r64), public :: Twet_Rated =0.0d0
real(kind=r64), public :: Gamma_Rated =0.0d0
integer, public :: HOTGASREHEATFLG =0
real(kind=r64), public :: HPTimeConstant =0.0d0
integer, public :: PLFFPLR =0
character(len=MaxNameLength), public :: CoolHeatType =' '
integer, public :: VSCoilTypeOfNum =0
logical, public :: Simflag =.false.
real(kind=r64), public :: DesignWaterMassFlowRate =0.0d0
real(kind=r64), public :: DesignWaterVolFlowRate =0.0d0
real(kind=r64), public :: DesignAirMassFlowRate =0.0d0
real(kind=r64), public :: DesignAirVolFlowRate =0.0d0
real(kind=r64), public :: AirVolFlowRate =0.0d0
real(kind=r64), public :: AirMassFlowRate =0.0d0
real(kind=r64), public :: InletAirPressure =0.0d0
real(kind=r64), public :: InletAirDBTemp =0.0d0
real(kind=r64), public :: InletAirHumRat =0.0d0
real(kind=r64), public :: InletAirEnthalpy =0.0d0
real(kind=r64), public :: OutletAirDBTemp =0.0d0
real(kind=r64), public :: OutletAirHumRat =0.0d0
real(kind=r64), public :: OutletAirEnthalpy =0.0d0
real(kind=r64), public :: WaterVolFlowRate =0.0d0
real(kind=r64), public :: WaterMassFlowRate =0.0d0
real(kind=r64), public :: InletWaterTemp =0.0d0
real(kind=r64), public :: InletWaterEnthalpy =0.0d0
real(kind=r64), public :: OutletWaterTemp =0.0d0
real(kind=r64), public :: OutletWaterEnthalpy =0.0d0
real(kind=r64), public :: Power =0.0d0
real(kind=r64), public :: QLoadTotal =0.0d0
real(kind=r64), public :: QSensible =0.0d0
real(kind=r64), public :: QLatent =0.0d0
real(kind=r64), public :: QSource =0.0d0
real(kind=r64), public :: QWasteHeat =0.0d0
real(kind=r64), public :: Energy =0.0d0
real(kind=r64), public :: EnergyLoadTotal =0.0d0
real(kind=r64), public :: EnergySensible =0.0d0
real(kind=r64), public :: EnergyLatent =0.0d0
real(kind=r64), public :: EnergySource =0.0d0
real(kind=r64), public :: COP =0.0d0
real(kind=r64), public :: RunFrac =0.0d0
real(kind=r64), public :: PartLoadRatio =0.0d0
real(kind=r64), public :: RatedPowerHeat =0.0d0
real(kind=r64), public :: RatedCOPHeat =0.0d0
real(kind=r64), public :: RatedCapCoolSens =0.0d0
real(kind=r64), public :: RatedPowerCool =0.0d0
real(kind=r64), public :: RatedCOPCool =0.0d0
integer, public :: AirInletNodeNum =0
integer, public :: AirOutletNodeNum =0
integer, public :: WaterInletNodeNum =0
integer, public :: WaterOutletNodeNum =0
integer, public :: LoopNum =0
integer, public :: LoopSide =0
integer, public :: BranchNum =0
integer, public :: CompNum =0
logical, public :: FindCompanionUpStreamCoil =.TRUE.
integer, public :: CompanionCoolingCoilNum =0
integer, public :: CompanionHeatingCoilNum =0
real(kind=r64), public :: FanDelayTime =0.0d0
integer, public :: MSErrIndex(MaxSpedLevels) =0
real(kind=r64), public :: MSRatedPercentTotCap(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedTotCap(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedSHR(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedCOP(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedAirVolFlowPerRatedTotCap(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedAirVolFlowRate(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedAirMassFlowRate(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedWaterVolFlowPerRatedTotCap(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedWaterVolFlowRate(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedWaterMassFlowRate(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedCBF(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSEffectiveAo(MaxSpedLevels) =0.0d0
integer, public :: MSCCapFTemp(MaxSpedLevels) =0
integer, public :: MSCCapAirFFlow(MaxSpedLevels) =0
integer, public :: MSCCapWaterFFlow(MaxSpedLevels) =0
integer, public :: MSEIRFTemp(MaxSpedLevels) =0
integer, public :: MSEIRAirFFlow(MaxSpedLevels) =0
integer, public :: MSEIRWaterFFlow(MaxSpedLevels) =0
integer, public :: MSWasteHeat(MaxSpedLevels) =0
real(kind=r64), public :: MSWasteHeatFrac(MaxSpedLevels) =0.0d0
real(kind=r64), public :: SpeedNumReport =0.0d0
real(kind=r64), public :: SpeedRatioReport =0.0d0
integer, public :: DefrostStrategy =0
integer, public :: DefrostControl =0
integer, public :: EIRFPLR =0
integer, public :: DefrostEIRFT =0
real(kind=r64), public :: MinOATCompressor =0.0d0
real(kind=r64), public :: OATempCompressorOn =0.0d0
real(kind=r64), public :: MaxOATDefrost =0.0d0
real(kind=r64), public :: DefrostTime =0.0d0
real(kind=r64), public :: DefrostCapacity =0.0d0
real(kind=r64), public :: HPCompressorRuntime =0.0d0
real(kind=r64), public :: HPCompressorRuntimeLast =0.0d0
real(kind=r64), public :: TimeLeftToDefrost =0.0d0
real(kind=r64), public :: DefrostPower =0.0d0
real(kind=r64), public :: DefrostConsumption =0.0d0
logical, public :: ReportCoolingCoilCrankcasePower =.true.
real(kind=r64), public :: CrankcaseHeaterCapacity =0.0d0
real(kind=r64), public :: CrankcaseHeaterPower =0.0d0
real(kind=r64), public :: MaxOATCrankcaseHeater =0.0d0
real(kind=r64), public :: CrankcaseHeaterConsumption =0.0d0
integer, public :: CondenserInletNodeNum =0
integer, public :: CondenserType =AirCooled
logical, public :: ReportEvapCondVars =.false.
real(kind=r64), public :: EvapCondPumpElecNomPower =0.0d0
real(kind=r64), public :: EvapCondPumpElecPower =0.0d0
real(kind=r64), public :: EvapWaterConsumpRate =0.0d0
real(kind=r64), public :: EvapCondPumpElecConsumption =0.0d0
real(kind=r64), public :: EvapWaterConsump =0.0d0
real(kind=r64), public :: BasinHeaterConsumption =0.0d0
real(kind=r64), public :: BasinHeaterPowerFTempDiff =0.0d0
real(kind=r64), public :: BasinHeaterSetPointTemp =0.0d0
real(kind=r64), public :: BasinHeaterPower =0.0d0
integer, public :: BasinHeaterSchedulePtr =0
real(kind=r64), public :: EvapCondAirFlow(MaxSpedLevels) =0.0d0
real(kind=r64), public :: EvapCondEffect(MaxSpedLevels) =0.0d0
real(kind=r64), public :: MSRatedEvapCondVolFlowPerRatedTotCap(MaxSpedLevels) =0.0d0
integer, public :: EvapWaterSupplyMode =WaterSupplyFromMains
character(len=MaxNameLength), public :: EvapWaterSupplyName =' '
integer, public :: EvapWaterSupTankID =0
integer, public :: EvapWaterTankDemandARRID =0
integer, public :: CondensateCollectMode =CondensateDiscarded
character(len=MaxNameLength), public :: CondensateCollectName =' '
integer, public :: CondensateTankID =0
integer, public :: CondensateTankSupplyARRID =0
real(kind=r64), public :: CondensateVdot =0.0d0
real(kind=r64), public :: CondensateVol =0.0d0
real(kind=r64), public :: CondInletTemp =0.0d0
real(kind=r64), public :: SourceAirMassFlowRate =0.0d0
real(kind=r64), public :: InletSourceAirTemp =0.0d0
real(kind=r64), public :: InletSourceAirEnthalpy =0.0d0

Source Code

TYPE, PUBLIC :: VariableSpeedCoilData ! variable speed coil
  CHARACTER(len=MaxNameLength) :: Name           =' '    ! Name of the  Coil
  CHARACTER(len=MaxNameLength) :: VarSpeedCoilType     =' '    ! type of coil

  INTEGER :: NumOfSpeeds    =2   ! Number of speeds
  INTEGER :: NormSpedLevel    =MaxSpedLevels   ! Nominal speed level

  REAL(r64) :: RatedWaterVolFlowRate           =AUTOSIZE  ! Rated/Ref Water Volumetric Flow Rate [m3/s]
  REAL(r64) :: RatedWaterMassFlowRate          =AUTOSIZE  ! Rated/Ref Water Volumetric Flow Rate [m3/s]
  REAL(r64) :: RatedAirVolFlowRate             =AUTOSIZE  ! Rated/Ref Air Volumetric Flow Rate [m3/s]
  REAL(r64) :: RatedCapHeat                    =AUTOSIZE  ! Rated/Ref Heating Capacity [W]
  REAL(r64) :: RatedCapCoolTotal               =AUTOSIZE  ! Rated/Ref Total Cooling Capacity [W]

  REAL(r64):: MaxONOFFCyclesperHour = 0.0d0 ! Maximum ON/OFF cycles per hour for the compressor (cycles/hour)

  REAL(r64):: Twet_Rated = 0.0d0      ! Nominal time for condensate to begin leaving the coil's
                                                   ! condensate drain line (sec)
  REAL(r64):: Gamma_Rated = 0.0d0     ! Initial moisture evaporation rate divided by steady-state
                                                   ! AC latent capacity (dimensionless)
  INTEGER :: HOTGASREHEATFLG = 0    !whether to use hot gas reheat
  REAL(r64) :: HPTimeConstant                  =0.0d0  ! Heat pump time constant [s]

  INTEGER:: PLFFPLR = 0     ! index of part load curve as a function of part load ratio

  CHARACTER(len=MaxNameLength) :: CoolHeatType=' ' ! Type of WatertoAirHP ie. Heating or Cooling
  INTEGER   :: VSCoilTypeOfNum              = 0     ! type of component in plant
  LOGICAL   :: Simflag                         =.false. ! Heat Pump Simulation Flag
  REAL(r64) :: DesignWaterMassFlowRate         =0.0d0  ! design water mass flow rate [kg/s]
  REAL(r64) :: DesignWaterVolFlowRate          =0.0d0  ! design water volumetric flow rate [m3/s]
  REAL(r64) :: DesignAirMassFlowRate           =0.0d0  ! Design Air Mass Flow Rate [kg/s]
  REAL(r64) :: DesignAirVolFlowRate            =0.0d0  ! Design Air Volumetric Flow Rate [m3/s]
  REAL(r64) :: AirVolFlowRate                  =0.0d0  ! Air Volumetric Flow Rate[m3/s], real time
  REAL(r64) :: AirMassFlowRate                 =0.0d0  ! Air Mass Flow Rate[kg/s], real time
  REAL(r64) :: InletAirPressure                =0.0d0 !air inlet pressure [pa]
  REAL(r64) :: InletAirDBTemp                  =0.0d0  ! Inlet Air Dry Bulb Temperature [C], real time
  REAL(r64) :: InletAirHumRat                  =0.0d0  ! Inlet Air Humidity Ratio [kg/kg], real time
  REAL(r64) :: InletAirEnthalpy                =0.0d0  ! Inlet Air Enthalpy [J/kg], real time
  REAL(r64) :: OutletAirDBTemp                 =0.0d0  ! Outlet Air Dry Bulb Temperature [C], real time
  REAL(r64) :: OutletAirHumRat                 =0.0d0  ! Outlet Air Humidity Ratio [kg/kg], real time
  REAL(r64) :: OutletAirEnthalpy               =0.0d0  ! Outlet Air Enthalpy [J/kg], real time
  REAL(r64) :: WaterVolFlowRate                =0.0d0  ! Water Volumetric Flow Rate [m3/s], real time
  REAL(r64) :: WaterMassFlowRate               =0.0d0  ! Water Mass Flow Rate [kg/s], real time
  REAL(r64) :: InletWaterTemp                  =0.0d0  ! Inlet Water Temperature [C]
  REAL(r64) :: InletWaterEnthalpy              =0.0d0  ! Inlet Water Enthalpy [J/kg]
  REAL(r64) :: OutletWaterTemp                 =0.0d0  ! Outlet Water Temperature [C]
  REAL(r64) :: OutletWaterEnthalpy             =0.0d0  ! Outlet Water Enthalpy [J/kg]
  REAL(r64) :: Power                           =0.0d0  ! Power Consumption [W]
  REAL(r64) :: QLoadTotal                      =0.0d0  ! Load Side Total Heat Transfer Rate [W]
  REAL(r64) :: QSensible                       =0.0d0  ! Sensible Load Side Heat Transfer Rate [W]
  REAL(r64) :: QLatent                         =0.0d0  ! Latent Load Side Heat Transfer Rate [W]
  REAL(r64) :: QSource                         =0.0d0  ! Source Side Heat Transfer Rate [W]
  REAL(r64) :: QWasteHeat                      =0.0d0  ! Recoverable waste Heat Transfer Rate [W]
  REAL(r64) :: Energy                          =0.0d0  ! Energy Consumption [J]
  REAL(r64) :: EnergyLoadTotal                 =0.0d0  ! Load Side Total Heat Transferred [J]
  REAL(r64) :: EnergySensible                  =0.0d0  ! Sensible Load Side Heat Transferred [J]
  REAL(r64) :: EnergyLatent                    =0.0d0  ! Latent Load Side Heat Transferred [J]
  REAL(r64) :: EnergySource                    =0.0d0  ! Source Side Heat Transferred [J]
  REAL(r64) :: COP                             =0.0d0  ! Heat Pump Coefficient of Performance [-]
  REAL(r64) :: RunFrac                         =0.0d0  ! Duty Factor
  REAL(r64) :: PartLoadRatio                   =0.0d0  ! Part Load Ratio

  REAL(r64) :: RatedPowerHeat                  =0.0d0  ! Rated/Ref Heating Power Consumption[W]
  REAL(r64) :: RatedCOPHeat                    =0.0d0  ! Rated/Ref Heating COP [W/W]
  REAL(r64) :: RatedCapCoolSens                =0.0d0  ! Rated/Ref Sensible Cooling Capacity [W]
  REAL(r64) :: RatedPowerCool                  =0.0d0  ! Rated/Ref Cooling Power Consumption[W]
  REAL(r64) :: RatedCOPCool                    =0.0d0  ! Rated/Ref Cooling COP [W/W]

  INTEGER      :: AirInletNodeNum              =0    ! Node Number of the Air Inlet
  INTEGER      :: AirOutletNodeNum             =0     ! Node Number of the Air Outlet
  INTEGER      :: WaterInletNodeNum            =0     ! Node Number of the Water Onlet
  INTEGER      :: WaterOutletNodeNum           =0     ! Node Number of the Water Outlet
  INTEGER      :: LoopNum                      =0    ! plant loop index for water side
  INTEGER      :: LoopSide                     =0    ! plant loop side index
  INTEGER      :: BranchNum                    =0    ! plant branch index
  INTEGER      :: CompNum                      =0    ! plant component index
! set by parent object and "pushed" to this structure in SetVSWSHPData subroutine

  LOGICAL      :: FindCompanionUpStreamCoil    = .TRUE.    ! Flag to get the companion coil in Init.
  INTEGER      :: CompanionCoolingCoilNum      =0           ! Heating coil companion cooling coil index
  INTEGER      :: CompanionHeatingCoilNum      =0           ! Cooling coil companion heating coil index

  REAL(r64) :: FanDelayTime                    =0.0d0  ! Fan delay time, time delay for the HP's fan to

  ! beginning for multispeed coil type
  INTEGER       :: MSErrIndex(MaxSpedLevels) = 0                ! index flag for num speeds/recurring messages
  REAL(r64)     :: MSRatedPercentTotCap(MaxSpedLevels) = 0.0d0    ! Percentage to the total cooling capacity for MS heat pump at the highest speed [dimensionless]
  REAL(r64)     :: MSRatedTotCap(MaxSpedLevels) = 0.0d0           ! Rated cooling capacity for MS heat pump [W]
  REAL(r64)     :: MSRatedSHR(MaxSpedLevels) = 0.0d0              ! Rated SHR for MS heat pump [dimensionless]
  REAL(r64)     :: MSRatedCOP(MaxSpedLevels) = 0.0d0              ! Rated COP for MS heat pump [dimensionless]

  REAL(r64)     :: MSRatedAirVolFlowPerRatedTotCap(MaxSpedLevels) = 0.0d0
  ! Rated Air volume flow rate per total capacity through unit at rated conditions [m^3/w]
  REAL(r64)     :: MSRatedAirVolFlowRate(MaxSpedLevels) = 0.0d0
  ! Air volume flow rate through unit at rated conditions [m3/s]
  REAL(r64)     :: MSRatedAirMassFlowRate(MaxSpedLevels) = 0.0d0
  ! Air mass flow rate through unit at rated conditions [kg/s]

  REAL(r64)     :: MSRatedWaterVolFlowPerRatedTotCap(MaxSpedLevels) = 0.0d0
  ! Rated water volume flow rate per total  capacity through unit at rated conditions [m^3/w]
  REAL(r64)     :: MSRatedWaterVolFlowRate(MaxSpedLevels) = 0.0d0
  ! Water volume flow rate through unit at rated conditions [m3/s]
  REAL(r64)     :: MSRatedWaterMassFlowRate(MaxSpedLevels) = 0.0d0
  ! Water mass flow rate through unit at rated conditions [kg/s]

  REAL(r64)     :: MSRatedCBF(MaxSpedLevels) = 0.0d0
  ! rated coil bypass factor
  REAL(r64)     :: MSEffectiveAo(MaxSpedLevels) = 0.0d0
  ! effective heat transfer surface at each speed

  INTEGER       :: MSCCapFTemp(MaxSpedLevels) = 0
  ! index of total capacity modifier curve
  INTEGER       :: MSCCapAirFFlow(MaxSpedLevels) = 0
  ! index of total capacity modifier curve as a function of air flow
  INTEGER       :: MSCCapWaterFFlow(MaxSpedLevels) = 0
  ! index of total capacity modifier curve as a function of water flow
  INTEGER       :: MSEIRFTemp(MaxSpedLevels) = 0
  ! index of energy input ratio modifier curve as a function of temperature
  INTEGER       :: MSEIRAirFFlow(MaxSpedLevels) = 0
  ! index of energy input ratio modifier curve as a function of air flow fraction
  INTEGER       :: MSEIRWaterFFlow(MaxSpedLevels) = 0
  ! index of energy input ratio modifier curve as a function of water flow fraction
  INTEGER       :: MSWasteHeat(MaxSpedLevels) = 0
  ! index of waste heat as a function of temperature
  REAL(r64)     :: MSWasteHeatFrac(MaxSpedLevels) = 0.0d0
  ! Waste heat fraction

  REAL(r64):: SpeedNumReport = 0.0d0
  !speed number for output
  REAL(r64):: SpeedRatioReport = 0.0d0
  !speed ratio for output between two neighboring speeds
  ! End of multispeed water source coil input

  !----------------------------------------------------------------
  !added variables and arrays for variable speed air-source heat pump
  !defrosting
  INTEGER :: DefrostStrategy        = 0   ! defrost strategy; 1=reverse-cycle, 2=resistive
  INTEGER :: DefrostControl         = 0   ! defrost control; 1=timed, 2=on-demand
  INTEGER :: EIRFPLR                = 0   ! index of energy input ratio vs part-load ratio curve
  INTEGER :: DefrostEIRFT           = 0   ! index of defrost mode total cooling capacity for reverse cycle heat pump
  REAL(r64) :: MinOATCompressor       =0.0d0  ! Minimum OAT for heat pump compressor operation
  REAL(r64) :: OATempCompressorOn   = 0.0d0  ! The outdoor tempearture when the compressor is automatically turned back on,
                                           ! if applicable, following automatic shut off. This field is used only for
                                           ! HSPF calculation.
  REAL(r64) :: MaxOATDefrost          =0.0d0  ! Maximum OAT for defrost operation
  REAL(r64) :: DefrostTime            =0.0d0  ! Defrost time period in hours
  REAL(r64) :: DefrostCapacity        =0.0d0  ! Resistive defrost to nominal capacity (at 21.11C/8.33C) ratio
  REAL(r64) :: HPCompressorRuntime    =0.0d0  ! keep track of compressor runtime
  REAL(r64) :: HPCompressorRuntimeLast=0.0d0  ! keep track of last time step compressor runtime (if simulation downshifts)
  REAL(r64) :: TimeLeftToDefrost      =0.0d0  ! keep track of time left to defrost heat pump
  REAL(r64) :: DefrostPower           =0.0d0  ! power used during defrost
  REAL(r64) :: DefrostConsumption     =0.0d0  ! energy used during defrost

  !crankcase heater
  LOGICAL :: ReportCoolingCoilCrankcasePower =.true. ! logical determines if the cooling coil crankcase heater power is reported
  REAL(r64) :: CrankcaseHeaterCapacity =0.0d0 ! total crankcase heater capacity [W]
  REAL(r64) :: CrankcaseHeaterPower    =0.0d0 ! report variable for average crankcase heater power [W]
  REAL(r64) :: MaxOATCrankcaseHeater   =0.0d0 ! maximum OAT for crankcase heater operation [C]
  REAL(r64) :: CrankcaseHeaterConsumption  = 0.0d0 ! report variable for total crankcase heater energy consumption [J]

  !condenser evaporative precooling
  INTEGER :: CondenserInletNodeNum = 0  ! Node number of outdoor condenser
  INTEGER :: CondenserType = AirCooled ! Type of condenser for DX cooling coil: AIR COOLED or EVAP COOLED
  LOGICAL :: ReportEvapCondVars =.false. ! true if any performance mode includes an evap condenser
  REAL(r64) :: EvapCondPumpElecNomPower =0.0d0  ! Nominal power input to the evap condenser water circulation pump [W]
  REAL(r64) :: EvapCondPumpElecPower =0.0d0    ! Average power consumed by the evap condenser water circulation pump over
                                           ! the time step [W]
  REAL(r64) :: EvapWaterConsumpRate =0.0d0 ! Evap condenser water consumption rate [m3/s]
  REAL(r64) :: EvapCondPumpElecConsumption =0.0d0 ! Electric energy consumed by the evap condenser water circulation pump [J]
  REAL(r64) :: EvapWaterConsump =0.0d0 ! Evap condenser water consumption [m3]
  REAL(r64) :: BasinHeaterConsumption    = 0.0d0  ! Basin heater energy consumption (J)


  REAL(r64) :: BasinHeaterPowerFTempDiff   = 0.0d0 ! Basin heater capacity per degree C below setpoint (W/C)
  REAL(r64) :: BasinHeaterSetPointTemp     = 0.0d0 ! setpoint temperature for basin heater operation (C)
  REAL(r64) :: BasinHeaterPower          = 0.0d0  ! Basin heater power (W)
  INTEGER   :: BasinHeaterSchedulePtr  = 0      ! Pointer to basin heater schedule

  REAL(r64) :: EvapCondAirFlow(MaxSpedLevels)=0.0d0  ! Air flow rate through the evap condenser at high speed, volumetric flow rate
                                                 ! for water use calcs [m3/s]
  REAL(r64) :: EvapCondEffect(MaxSpedLevels) =0.0d0  ! effectiveness of the evaporatively cooled condenser
                                            ! [high speed for multi-speed unit] (-)
  REAL(r64) :: MSRatedEvapCondVolFlowPerRatedTotCap(MaxSpedLevels) = 0.0d0 !evap condenser air flow ratio to capacity

  !begin variables for Water System interactions
  INTEGER ::EvapWaterSupplyMode                   = WaterSupplyFromMains !  where does water come from
  CHARACTER(len=MaxNameLength) :: EvapWaterSupplyName = ' ' ! name of water source e.g. water storage tank
  INTEGER ::EvapWaterSupTankID                    = 0 !
  INTEGER ::EvapWaterTankDemandARRID              = 0 !
  INTEGER ::CondensateCollectMode                 = CondensateDiscarded !  where does water come from
  CHARACTER(len=MaxNameLength) :: CondensateCollectName = ' ' ! name of water source e.g. water storage tank
  INTEGER ::CondensateTankID                      = 0 !
  INTEGER ::CondensateTankSupplyARRID             = 0 !

  REAL(r64)   :: CondensateVdot = 0.0d0 ! rate of water condensation from air stream [m3/s]
  REAL(r64)   :: CondensateVol  = 0.0d0 ! amount of water condensed from air stream [m3]

  REAL(r64)   :: CondInletTemp  =0.0d0            ! Evap condenser inlet temperature [C], report variable

  REAL(r64)   :: SourceAirMassFlowRate = 0.0d0 ! source air mass flow rate [kg/s]
  REAL(r64)   :: InletSourceAirTemp = 0.0d0 !source air temperature entering the outdoor coil [C]
  REAL(r64)   :: InletSourceAirEnthalpy = 0.0d0  !source air enthalpy entering the outdoor coil [J/kg]

  !end variables for water system interactions

END TYPE VariableSpeedCoilData

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