TYPE CTGeneratorSpecs
CHARACTER(len=MaxNameLength) :: Name = ' ' ! user identifier
CHARACTER(len=MaxNameLength) :: TypeOf = 'Generator:CombustionTurbine' ! Type of Generator
INTEGER :: CompType_Num = iGeneratorCombTurbine
CHARACTER(len=MaxNameLength) :: FuelType ! Type of Fuel - DIESEL, GASOLINE, GAS
REAL(r64) :: RatedPowerOutput = 0.0d0 ! W - design nominal capacity of Generator
INTEGER :: ElectricCircuitNode = 0 ! Electric Circuit Node
REAL(r64) :: MinPartLoadRat = 0.0d0 ! (CT MIN) min allowed operating frac full load
REAL(r64) :: MaxPartLoadRat = 0.0d0 ! (CT MAX) max allowed operating frac full load
REAL(r64) :: OptPartLoadRat = 0.0d0 ! (CT BEST) optimal operating frac full load
REAL(r64) :: FuelEnergyUseRate = 0.0d0 !(EFUEL) rate of Fuel Energy Required to run COMBUSTION turbine (W)
REAL(r64) :: FuelEnergy = 0.0d0 !Amount of Fuel Energy Required to run COMBUSTION turbine (J)
INTEGER :: PLBasedFuelInputCurve = 0 !(FUL1GC) Curve Index for Part Load Ratio Based Fuel Input
! Coefficients Poly Fit
INTEGER :: TempBasedFuelInputCurve = 0 !(FUL2GC) Curve Index for Ambient Temperature Based Fuel Input
! Coeff Poly Fit
REAL(r64) :: ExhaustFlow = 0.0d0 !(FEX) Exhaust Gas Flow Rate cubic meters per second???
INTEGER :: ExhaustFlowCurve = 0 !(FEXGC) Curve Index for Exhaust Gas Flow Rate Input Coef Poly Fit
REAL(r64) :: ExhaustTemp = 0.0d0 !(TEX) Exhaust Gas Temperature in C
INTEGER :: PLBasedExhaustTempCurve = 0 !(TEX1GC) Curve Index for Part Load Ratio Based Exhaust Temp Input
! Coeffs Poly Fit
INTEGER :: TempBasedExhaustTempCurve = 0 !(TEX2GC) Curve Index for Ambient Temperature Based Exhaust Gas Temp to
! Fuel Energy Input Coeffs Poly Fit
REAL(r64) :: QLubeOilRecovered = 0.0d0 !(ELUBE) Recovered Lube Oil Energy (W)
REAL(r64) :: QExhaustRecovered = 0.0d0 !(EEX) Recovered Exhaust heat (W)
REAL(r64) :: QTotalHeatRecovered = 0.0d0 !total heat recovered (W)
REAL(r64) :: LubeOilEnergyRec = 0.0d0 ! Recovered Lube Oil Energy (J)
REAL(r64) :: ExhaustEnergyRec = 0.0d0 ! Recovered Exhaust heat (J)
REAL(r64) :: TotalHeatEnergyRec = 0.0d0 !total heat recovered (J)
INTEGER :: QLubeOilRecoveredCurve = 0 !(ELUBEGC) Curve Index for Recoverable Lube Oil heat Input Coef Poly Fit
REAL(r64) :: UA = 0.0d0 !(UACGC) exhaust gas Heat Exchanger UA
REAL(r64),DIMENSION(2) :: UACoef = 0.0d0 !Heat Exchanger UA Coeffs Poly Fit
REAL(r64) :: MaxExhaustperCTPower = 0.0d0 !MAX EXHAUST FLOW PER W POWER OUTPUT COEFF
REAL(r64) :: DesignHeatRecVolFlowRate = 0.0d0 ! m3/s, Design Water mass flow rate through heat recovery loop
REAL(r64) :: DesignHeatRecMassFlowRate = 0.0d0 ! kg/s, Design Water mass flow rate through heat recovery loop
REAL(r64) :: DesignMinExitGasTemp = 0.0d0 !Steam Saturation Temperature (C)
REAL(r64) :: DesignAirInletTemp = 0.0d0 !Design Turbine Air Inlet Temperature (C)
REAL(r64) :: ExhaustStackTemp = 0.0d0 !turbine exhaust gas temp (C)
LOGICAL :: HeatRecActive = .false. ! true when design max flow rate > 0
INTEGER :: HeatRecInletNodeNum = 0 ! Node number on the heat recovery inlet side of the condenser
INTEGER :: HeatRecOutletNodeNum = 0 ! Node number on the heat recovery outlet side of the condenser
REAL(r64) :: HeatRecInletTemp = 0.0d0 !Inlet Temperature of the heat recovery fluid
REAL(r64) :: HeatRecOutletTemp = 0.0d0 !Outlet Temperature of the heat recovery fluid
REAL(r64) :: HeatRecMdot = 0.0d0 ! reporting: Heat Recovery Loop Mass flow rate
INTEGER :: HRLoopNum = 0 ! cooling water plant loop index number, for heat recovery
INTEGER :: HRLoopSideNum = 0 ! cooling water plant loop side index, for heat recovery
INTEGER :: HRBranchNum = 0 ! cooling water plant loop branch index, for heat recovery
INTEGER :: HRCompNum = 0 ! cooling water plant loop component index, for heat recovery
REAL(r64) :: FuelMdot = 0.0d0 ! reporting: Fuel Amount used (kg/s)
REAL(r64) :: FuelHeatingValue = 0.0d0 !Heating Value for Fuel in (kJ/kg)
REAL(r64) :: ElecPowerGenerated = 0.0d0 ! reporting: power generated (W)
REAL(r64) :: ElecEnergyGenerated = 0.0d0 ! reporting: power generated (W)
REAL(r64) :: HeatRecMaxTemp = 0.0d0 !Max Temp that can be produced in heat recovery
INTEGER :: OAInletNode = 0 ! optional inlet node index pointer for outdoor air for compustion
END TYPE CTGeneratorSpecs