TYPE ReformulatedEIRChillerSpecs
CHARACTER(len=MaxNameLength) :: Name = ' ' ! User identifier
INTEGER :: TypeNum = 0 ! plant loop type identifier
CHARACTER(len=MaxNameLength) :: CAPFTName = ' ' ! CAPFT curve name
CHARACTER(len=MaxNameLength) :: EIRFTName = ' ' ! EIRFT curve name
CHARACTER(len=MaxNameLength) :: EIRFPLRName = ' ' ! EIRPLR curve name
INTEGER :: CondenserType = 0 ! Type of Condenser. Water Cooled is the only available option for now
REAL(r64) :: RefCap = 0.0d0 ! Reference capacity of the 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
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) :: 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 for the reformulated chiller [C]
REAL(r64) :: TempRefCondOut = 0.0d0 ! The reference secondary loop fluid temperature at the
! chiller condenser side outlet for the reformulated chiller [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
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 evaporator and condenser water temperatures)
INTEGER :: ChillerEIRFT = 0 ! Index for the energy input ratio modifier curve
! (function of leaving evaporator and condenser water temperatures)
INTEGER :: ChillerEIRFPLR = 0 ! Index for the energy input ratio vs part-load ratio curve
! (function of leaving condenser water temperature and part-load ratio)
! 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) :: ChillerCAPFTXTempMin = 0.0d0 ! Minimum value of CAPFT curve X variable [C]
REAL(r64) :: ChillerCAPFTXTempMax = 0.0d0 ! Maximum value of CAPFT curve X variable [C]
REAL(r64) :: ChillerCAPFTYTempMin = 0.0d0 ! Minimum value of CAPFT curve Y variable [C]
REAL(r64) :: ChillerCAPFTYTempMax = 0.0d0 ! Maximum value of CAPFT curve Y variable [C]
REAL(r64) :: ChillerEIRFTXTempMin = 0.0d0 ! Minimum value of EIRFT curve X variable [C]
REAL(r64) :: ChillerEIRFTXTempMax = 0.0d0 ! Maximum value of EIRFT curve X variable [C]
REAL(r64) :: ChillerEIRFTYTempMin = 0.0d0 ! Minimum value of EIRFT curve Y variable [C]
REAL(r64) :: ChillerEIRFTYTempMax = 0.0d0 ! Maximum value of EIRFT curve Y variable [C]
REAL(r64) :: ChillerEIRFPLRTempMin = 0.0d0 ! Minimum value of EIRFPLR curve condenser outlet temperature [C]
REAL(r64) :: ChillerEIRFPLRTempMax = 0.0d0 ! Maximum value of EIRFPLR curve condenser outlet temperature [C]
REAL(r64) :: ChillerEIRFPLRPLRMin = 0.0d0 ! Minimum value of EIRFPLR curve part-load ratio
REAL(r64) :: ChillerEIRFPLRPLRMax = 0.0d0 ! Maximum value of EIRFPLR curve part-load ratio
INTEGER :: CAPFTXIter = 0 ! Iteration counter for evaporator outlet temperature CAPFT warning messages
INTEGER :: CAPFTXIterIndex = 0 ! Index for evaporator outlet temperature CAPFT warning messages
INTEGER :: CAPFTYIter = 0 ! Iteration counter for condenser outlet temperature CAPFT warning messages
INTEGER :: CAPFTYIterIndex = 0 ! Index for condenser outlet temperature CAPFT warning messages
INTEGER :: EIRFTXIter = 0 ! Iteration counter for evaporator outlet temperature EIRFT warning messages
INTEGER :: EIRFTXIterIndex = 0 ! Index for evaporator outlet temperature EIRFT warning messages
INTEGER :: EIRFTYIter = 0 ! Iteration counter for condenser outlet temperature EIRFT warning messages
INTEGER :: EIRFTYIterIndex = 0 ! Index for condenser outlet temperature EIRFT warning messages
INTEGER :: EIRFPLRTIter = 0 ! Iteration counter for condenser outlet temperature EIRFPLR warning messages
INTEGER :: EIRFPLRTIterIndex = 0 ! Index for condenser outlet temperature EIRFPLR warning messages
INTEGER :: EIRFPLRPLRIter = 0 ! Iteration counter for part-load ratio EIRFPLR warning messages
INTEGER :: EIRFPLRPLRIterIndex = 0 ! Index for part-load ratio EIRFPLR warning messages
INTEGER :: IterLimitExceededNum = 0 ! Iteration limit exceeded for RegulaFalsi routine
INTEGER :: IterLimitErrIndex = 0 ! Index to iteration limit warning for RegulaFalsi routine
INTEGER :: IterFailed = 0 ! Iteration limit failed for RegulaFalsi routine
INTEGER :: IterFailedIndex = 0 ! Index to iteration limit failed for RegulaFalsi routine
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 :: 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 ReformulatedEIRChillerSpecs