TYPE VSTowerData
! variables specific to variable-speed towers
REAL(r64), ALLOCATABLE, DIMENSION(:) :: Coeff !- model coefficients
LOGICAL :: FoundModelCoeff = .FALSE. !- TRUE if model is calibratable
REAL(r64) :: MinInletAirWBTemp = 0.0d0 !- model limit for min inlet air WB temp
REAL(r64) :: MaxInletAirWBTemp = 0.0d0 !- model limit for max inlet air WB temp
REAL(r64) :: MinRangeTemp = 0.0d0 !- model limit for min range temp
REAL(r64) :: MaxRangeTemp = 0.0d0 !- model limit for max range temp
REAL(r64) :: MinApproachTemp = 0.0d0 !- model limit for min approach temp
REAL(r64) :: MaxApproachTemp = 0.0d0 !- model limit for max approach temp
REAL(r64) :: MinWaterFlowRatio = 0.0d0 !- model limit for min water flow rate ratio
REAL(r64) :: MaxWaterFlowRatio = 0.0d0 !- model limit for max water flow rate ratio
REAL(r64) :: MaxLiquidToGasRatio = 0.0d0 !- model limit for max liquid to gas ratio
INTEGER :: VSErrorCountFlowFrac = 0 !- counter if water flow rate ratio limits are exceeded
INTEGER :: VSErrorCountWFRR = 0 !- counter if water flow rate ratio limits are exceeded
INTEGER :: VSErrorCountIAWB = 0 !- counter if inlet air wet-bulb temperature limits are exceeded
INTEGER :: VSErrorCountTR = 0 !- counter if tower range temperature limits are exceeded
INTEGER :: VSErrorCountTA = 0 !- counter if tower approach temperature limits are exceeded
INTEGER :: ErrIndexFlowFrac = 0 !- index to recurring error structure for liquid to gas ratio
INTEGER :: ErrIndexWFRR = 0 !- index to recurring error structure for water flow rate ratio
INTEGER :: ErrIndexIAWB = 0 !- index to recurring error structure for inlet air WB
INTEGER :: ErrIndexTR = 0 !- index to recurring error structure for tower range
INTEGER :: ErrIndexTA = 0 !- index to recurring error structure for tower approach
INTEGER :: ErrIndexLG = 0 !- index to recurring error structure for tower liquid/gas ratio
!- Tr = Range temperature
CHARACTER(len=220) :: TrBuffer1 = ' ' !- buffer to print Tr warning messages on following time step
CHARACTER(len=300) :: TrBuffer2 = ' ' !- buffer to print Tr warning messages on following time step
CHARACTER(len=80) :: TrBuffer3 = ' ' !- buffer to print Tr warning messages on following time step
!- Twb = Wet-bulb temperature
CHARACTER(len=220) :: TwbBuffer1 = ' ' !- buffer to print Twb warning messages on following time step
CHARACTER(len=300) :: TwbBuffer2 = ' ' !- buffer to print Twb warning messages on following time step
CHARACTER(len=80) :: TwbBuffer3 = ' ' !- buffer to print Twb warning messages on following time step
!- Ta = Approach temperature
CHARACTER(len=220) :: TaBuffer1 = ' ' !- buffer to print Ta warning messages on following time step
CHARACTER(len=300) :: TaBuffer2 = ' ' !- buffer to print Ta warning messages on following time step
CHARACTER(len=80) :: TaBuffer3 = ' ' !- buffer to print Ta warning messages on following time step
!- WFRR = Water flow rate ratio
CHARACTER(len=220) :: WFRRBuffer1 = ' ' !- buffer to print WFRR warning messages on following time step
CHARACTER(len=300) :: WFRRBuffer2 = ' ' !- buffer to print WFRR warning messages on following time step
CHARACTER(len=80) :: WFRRBuffer3 = ' ' !- buffer to print WFRR warning messages on following time step
!- LG = Liquid to gas ratio
CHARACTER(len=220) :: LGBuffer1 = ' ' !- buffer to print LG warning messages on following time step
CHARACTER(len=300) :: LGBuffer2 = ' ' !- buffer to print LG warning messages on following time step
CHARACTER(len=80) :: LGBuffer3 = ' ' !- buffer to print LG warning messages on following time step
LOGICAL :: PrintTrMessage = .FALSE. !- flag to print Tr error message
LOGICAL :: PrintTwbMessage = .FALSE. !- flag to print Twb error message
LOGICAL :: PrintTaMessage = .FALSE. !- flag to print Ta error message
LOGICAL :: PrintWFRRMessage = .FALSE. !- flag to print WFRR error message
LOGICAL :: PrintLGMessage = .FALSE. !- flag to print liquid-gas ratio error message
REAL(r64) :: TrLast = 0.0d0 ! value of Tr when warning occurred (passed to Recurring Warning)
REAL(r64) :: TwbLast = 0.0d0 ! value of Twb when warning occurred (passed to Recurring Warning)
REAL(r64) :: TaLast = 0.0d0 ! value of Ta when warning occurred (passed to Recurring Warning)
REAL(r64) :: WaterFlowRateRatioLast = 0.0d0 ! value of WFRR when warning occurred (passed to Recurring Warn)
REAL(r64) :: LGLast = 0.0d0 ! value of LG when warning occurred (passed to Recurring Warn)
END TYPE VSTowerData