TYPE ElectricEIRChillerSpecs
CHARACTER(len=MaxNameLength) :: Name =' ' ! User identifier
INTEGER :: TypeNum = 0 ! plant loop type identifier
CHARACTER(len=MaxNameLength) :: EIRFPLRName =' ' ! EIRPLR curve name
INTEGER :: CondenserType = 0 ! Type of Condenser - Air Cooled, Water Cooled or Evap Cooled
REAL(r64) :: RefCap = 0.0d0 ! Reference capacity of chiller [W]
REAL(r64) :: RefCOP = 0.0d0 ! Reference coefficient of performance [W/W]
INTEGER :: FlowMode = FlowModeNotSet ! one of 3 modes for componet flow during operation
LOGICAL :: ModulatedFlowSetToLoop =.FALSE. ! True if the setpoint is missing at the outlet node
LOGICAL :: ModulatedFlowErrDone =.FALSE. ! true if setpoint warning issued
LOGICAL :: HRSPErrDone =.FALSE. ! TRUE if set point warning issued for heat recovery loop
REAL(r64) :: EvapVolFlowRate = 0.0d0 ! Reference water volumetric flow rate through the evaporator [m3/s]
REAL(r64) :: EvapMassFlowRateMax = 0.0d0 ! Reference water mass flow rate through evaporator [kg/s]
REAL(r64) :: CondVolFlowRate = 0.0d0 ! Reference water volumetric flow rate through the condenser [m3/s]
REAL(r64) :: CondMassFlowRateMax = 0.0d0 ! Reference water mass flow rate through condenser [kg/s]
REAL(r64) :: CondenserFanPowerRatio = 0.0d0 ! Reference power of condenser fan to capacity ratio, W/W
REAL(r64) :: CompPowerToCondenserFrac = 0.0d0 ! Fraction of compressor electric power rejected by condenser [0 to 1]
INTEGER :: EvapInletNodeNum = 0 ! Node number on the inlet side of the plant (evaporator side)
INTEGER :: EvapOutletNodeNum = 0 ! Node number on the outlet side of the plant (evaporator side)
INTEGER :: CondInletNodeNum = 0 ! Node number on the inlet side of the condenser
INTEGER :: CondOutletNodeNum = 0 ! Node number on the outlet side of the condenser
REAL(r64) :: MinPartLoadRat = 0.0d0 ! Minimum allowed operating fraction of full load
REAL(r64) :: MaxPartLoadRat = 0.0d0 ! Maximum allowed operating fraction of full load
REAL(r64) :: OptPartLoadRat = 0.0d0 ! Optimal operating fraction of full load
REAL(r64) :: MinUnLoadRat = 0.0d0 ! Minimum unloading ratio
REAL(r64) :: TempRefCondIn = 0.0d0 ! The reference secondary loop fluid temperature
! at the chiller condenser side inlet [C]
REAL(r64) :: TempRefEvapOut = 0.0d0 ! The reference primary loop fluid temperature
! at the chiller evaporator side outlet [C]
REAL(r64) :: TempLowLimitEvapOut = 0.0d0 ! Low temperature shut off [C]
REAL(r64) :: DesignHeatRecVolFlowRate = 0.0d0 ! Design water volumetric flow rate through heat recovery loop [m3/s]
REAL(r64) :: DesignHeatRecMassFlowRate = 0.0d0 ! Design water mass flow rate through heat recovery loop [kg/s]
REAL(r64) :: SizFac = 0.0d0 ! sizing factor
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)
LOGICAL :: HeatRecActive = .False. ! True when entered Heat Rec Vol Flow Rate > 0
INTEGER :: HeatRecInletNodeNum = 0 ! Node number for the heat recovery inlet side of the condenser
INTEGER :: HeatRecOutletNodeNum = 0 ! Node number for the heat recovery outlet side of the condenser
REAL(r64) :: HeatRecCapacityFraction = 0.d0 ! user input for heat recovery capacity fraction []
REAL(r64) :: HeatRecMaxCapacityLimit = 0.d0 ! Capacity limit for Heat recovery, one time calc [W]
INTEGER :: HeatRecSetpointNodeNum = 0 ! index for system node with the heat recover leaving setpoint
INTEGER :: HeatRecInletLimitSchedNum = 0 ! index for schedule for the inlet high limit for heat recovery operation
INTEGER :: ChillerCapFT = 0 ! Index for the total cooling capacity modifier curve
! (function of leaving chilled water temperature and
! entering condenser fluid temperature)
INTEGER :: ChillerEIRFT = 0 ! Index for the energy input ratio modifier curve
! (function of leaving chilled water temperature and
! entering condenser fluid temperature)
INTEGER :: ChillerEIRFPLR = 0 ! Index for the EIR vs part-load ratio curve
! INTEGER :: CondFanPowerFCap = 0 ! Condenser fan capacity as a function of chiller capacity
INTEGER :: ChillerCapFTError = 0 ! Used for negative capacity as a function of temp warnings
INTEGER :: ChillerCapFTErrorIndex = 0 ! Used for negative capacity as a function of temp warnings
INTEGER :: ChillerEIRFTError = 0 ! Used for negative EIR as a function of temp warnings
INTEGER :: ChillerEIRFTErrorIndex = 0 ! Used for negative EIR as a function of temp warnings
INTEGER :: ChillerEIRFPLRError = 0 ! Used for negative EIR as a function of PLR warnings
INTEGER :: ChillerEIRFPLRErrorIndex = 0 ! Used for negative EIR as a function of PLR warnings
REAL(r64) :: ChillerEIRFPLRMin = 0.0d0 ! Minimum value of PLR from EIRFPLR curve
REAL(r64) :: ChillerEIRFPLRMax = 0.0d0 ! Maximum value of PLR from EIRFPLR curve
INTEGER :: DeltaTErrCount = 0 ! Evaporator delta T equals 0 for variable flow chiller warning messages
INTEGER :: DeltaTErrCountIndex = 0 ! Index to evaporator delta T = 0 for variable flow chiller warning messages
INTEGER :: CWLoopNum = 0 ! chilled water plant loop index number
INTEGER :: CWLoopSideNum = 0 ! chilled water plant loop side index
INTEGER :: CWBranchNum = 0 ! chilled water plant loop branch index
INTEGER :: CWCompNum = 0 ! chilled water plant loop component index
INTEGER :: CDLoopNum = 0 ! condenser water plant loop index number
INTEGER :: CDLoopSideNum = 0 ! condenser water plant loop side index
INTEGER :: CDBranchNum = 0 ! condenser water plant loop branch index
INTEGER :: CDCompNum = 0 ! condenser water plant loop component index
INTEGER :: HRLoopNum = 0 ! heat recovery water plant loop index
INTEGER :: HRLoopSideNum = 0 ! heat recovery water plant loop side index
INTEGER :: HRBranchNum = 0 ! heat recovery water plant loop branch index
INTEGER :: HRCompNum = 0 ! heat recovery water plant loop component index
INTEGER :: BasinHeaterSchedulePtr = 0 ! Pointer to basin heater schedule
INTEGER :: CondMassFlowIndex = 0
CHARACTER(len=220):: MsgBuffer1 = ' ' !- buffer to print warning messages on following time step
CHARACTER(len=300):: MsgBuffer2 = ' ' !- buffer to print warning messages on following time step
REAL(r64) :: MsgDataLast = 0.0d0 ! value of data when warning occurred (passed to Recurring Warn)
LOGICAL :: PrintMessage = .FALSE. ! logical to determine if message is valid
INTEGER :: MsgErrorCount = 0 ! number of occurrences of warning
INTEGER :: ErrCount1 = 0 ! for recurring error messages
LOGICAL :: PossibleSubCooling = .FALSE. ! flag to indicate chiller is doing less cooling that requested
END TYPE ElectricEIRChillerSpecs