C C C LIST OF SUBROUTINES IN THIS FILE C C HC_HVPEQN : HEAT OF VAPORIZATION EQUATIONS C HC_HVPVET : VETERE-WATSON HEAT OF VAPORIZAITON ESTIMATION C C C******************************************************************* C C KDB THEMOPHYSICAL PROPERTIES CALCULATION FORTRAN ROUTINE LIBRARY C C [NAME ] HC_HVPEQN C C [TYPE ] FORTRAN SUBROUTINE C C [PURPOSE] HEAT OF VAPORIZATION USING INTERNAL CORRELATION EQUATION C C [USAGE ] CALL HC_HVPEQN(ICN,T,HVP,IST) C C [ARGUMENTS] C ICN : COMPONENT NUMBER (1-50) TO CALCULATE VAPOR PRESSURE (INTEGER, INPUT) C T : TEMPERATURE IN KELVIN (REAL*8, INPUT) C C HVP : HEAT OF VAPORIZATION IN KJ/KG-MOL (REAL*8, OUTPUT) C IST : STATUS OF CALCULATION (INTEGER, OUTPUT) C = 0 : NORMAL TERMINATION C = 201 : HEAT OF VAPORIZATION COEFFICIENT NOT AVAILABLE C = 202 : OUT OF RANGE FOR THE APPLICATION C C [COMMENTS] C C [REQUIRED COMMON BLOCKS] C COMMON /HC_KHVP/ HEAT OF VAPORIZATION COEFFICIENTS C C [REQUIRED SUBROUTINES OR FUNCTIONS] C NONE C C [REFERENCE] C NONE C C [REVISION INFORMATION] C 1.PROGRMAMMED BY J.W.KANG, KOREA UNIVERSITY, 1996 C 2.REVISED BY J.W.KANG, KOREA UNIVERSITY, 2000 C 3.REVISED BY J.W.KANG, KOREA UNIVERSITY, 2001 C******************************************************************* SUBROUTINE HC_HVPEQN(ICN,T,HVP,IST) IMPLICIT DOUBLE PRECISION (A-H,O-Z) INTEGER IST,ICN REAL*8 T,HVP COMMON/HC_KHVP/IEQ_HVP(50),HVP_A(50),HVP_B(50),HVP_C(50), 1 HVP_D(50),HVP_E(50),HVP_F(50),HVP_G(50),HVP_T1(50),HVP_T2(50) C --- INITIALIZATION IST = 0 HVP = 0.0 C --- CHECK IF EQUATION COEFF.S AVAILABLE IF(IEQ_HVP(ICN).LE.0) IST = 201 C --- CHECK IF THE RANGE OF APPLICATION IF((T.LT.HVP_T1(ICN)).OR.(T.GT.HVP_T2(ICN)) ) IST = 202 IF(IST.NE.0) RETURN C --- HEAT OF VAPORIZATION CALCULATION HVP = HVP_A(ICN)*1000.D0 *(1.D0-T/HVP_B(ICN))**HVP_C(ICN) RETURN END C******************************************************************* C C KDB THEMOPHYSICAL PROPERTIES CALCULATION FORTRAN ROUTINE LIBRARY C C [NAME ] HC_HVPVET C C [TYPE ] FORTRAN SUBROUTINE C C [PURPOSE] HEAT OF VAPORIZATION ESTIMATION USING VETERE-WATSON METHOD C C [USAGE ] CALL HC_HVPVET(ICN,T,HVP,IST) C C [ARGUMENTS] C ICN : COMPONENT NUMBER (1-50) TO CALCULATE VAPOR PRESSURE C (INTEGER, INPUT) C T : TEMPERATURE IN KELVIN (REAL*8, INPUT) C C HVP : HEAT OF VAPORIZATION IN KJ/KG-MOL (REAL*8, OUTPUT) C IST : STATUS OF CALCULATION (INTEGER, OUTPUT) C = 0 : NORMAL TERMINATION C = 211 : BOILING POINT DATA NOT AVAILABLE C = 212 : CRITICAL TEMPERATURE DATA NOT AVAILABLE C = 213 : CRITICAL PRESSURE DATA NOT AVAILABLE C = 214 : GIVEN T EXCEEDS CRITICAL TEMPERATURE C C [COMMENTS] C FOR ALCOHOLS, SPECIFY THE ICLASS(ICN) AS VALUE OF 11 - 14 C C [REQUIRED COMMON BLOCKS] C COMMON /HC_NAME/ COMPONENT IDENTITY C COMMON /HC_PROP/ COMPONENT BASIC PROPERTIES C C [REQUIRED SUBROUTINES OR FUNCTIONS] C NONE C C [REFERENCE] C 1. A.VETERE,FLUID PHASE EQUILIB.,106,1 (1995) C 2. R.E.THEK AND L.I.STIEL, AICHE J.,12, 599 (1966) C C [REVISION INFORMATION] C 1.PROGRMAMMED BY J.W.KANG, KOREA UNIVERSITY, 1996 C 2.REVISED BY J.W.KANG, KOREA UNIVERSITY, 2000 C 3.REVISED BY J.W.KANG, KOREA UNIVERSITY, 2001 C 4.REVISED BY Y.S.KIM, KOREA UNIVERSITY, 2002 C******************************************************************* SUBROUTINE HC_HVPVET(ICN,T,HVP,IST) IMPLICIT DOUBLE PRECISION (A-H,O-Z) INTEGER IST,ICN REAL*8 T,HVP CHARACTER*50 CNAME CHARACTER*20 FORMULA COMMON/HC_NAME/ICMP(50),CNAME(50),FORMULA(50),ICLASS(50) COMMON/HC_PROP/WT(50),TB(50),TF(50),TC(50),PC(50),VC(50),ZC(50) 1 ,ACCF(50),WSRK(50),VEST(50),ZRA(50),SOLP(50),VOLP(50) 2 ,QI(50),RI(50),DM(50) C --- INITIALIZATION IST = 0 HVP = 0.0 C --- CHECK IF ALL THE AVAILABALE DATA EXISTS IF(T.GT.TC(ICN)) IST = 214 IF(TB(ICN).LE.0.) IST = 211 IF(TC(ICN).LE.0.) IST = 212 IF(PC(ICN).LE.0.) IST = 213 IF(IST.NE.0) RETURN C --- HEAT OF VAPORIZATION AT BOILIN POINT USING VETERE METHOD TBR = TB(ICN)/TC(ICN) IF ( ICLASS(ICN).GE.11 .AND. ICLASS(ICN).LE.14 ) THEN IF ( ICMP(ICN) .EQ. 817) FF = 1.D0 FF = 1.05 ENDIF IF (ICMP(ICN).EQ.1938) FF = 1.05 ! SULFUR TRIOXIDE (SO3) IF (ICMP(ICN).EQ.1928) FF = 1.05 ! NITRIC OXIDE (NO) IF (ICMP(ICN).EQ.1929) FF = 1.05 ! NITORGEN DIOXIDE (NO2) PCB = PC(ICN)/100.D0 TERM1 =1.D0 - TBR + FF*(1.D0-(1.D0-TBR)**0.38)*DLOG(TBR) TERM2 =(1.D0-TBR)**0.38D0*(DLOG(PCB)-0.513D0+0.5066D0/PCB/TBR/TBR) HVPB = 8.314D0*TB(ICN)*TERM2/TERM1 C --- APPLY WATSON CORRELATION TR = T/TC(ICN) HVP = HVPB*( (1.D0 - TR) / (1.D0-TBR) ) **0.38D0 RETURN END C******************************************************************* C END OF FILE