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 

