1 !vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvC 2 ! C 3 ! Module name: CALC_H (IJK, M, N) C 4 ! Purpose: Calculate specific enthalpy of species N in phase M C 5 ! C 6 ! Author: M. Syamlal Date: 27-DEC-2007C 7 ! Reviewer: Date: C 8 ! C 9 ! Revision Number: C 10 ! Purpose: C 11 ! Author: Date: dd-mmm-yy C 12 ! Reviewer: Date: dd-mmm-yy C 13 ! C 14 ! Literature/Document References: C 15 ! C 16 ! Variables referenced:None C 17 ! Variables modified:None C 18 ! C 19 ! Local variables: C 20 ! C 21 !^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^C 22 DOUBLE PRECISION FUNCTION CALC_H(refT, M, N) 23 !----------------------------------------------- 24 ! M o d u l e s 25 !----------------------------------------------- 26 USE param 27 USE param1 28 USE physprop 29 USE fldvar 30 31 USE constant, only: RGAS => GAS_CONST_cal 32 USE read_thermochemical, only: calc_ICpoR 33 34 IMPLICIT NONE 35 !----------------------------------------------- 36 ! D u m m y A r g u m e n t s 37 !----------------------------------------------- 38 ! cell, phase and species indices 39 40 DOUBLE PRECISION, INTENT(IN) :: refT ! Temperature 41 42 INTEGER, INTENT(IN) :: M ! Phase index 43 INTEGER, INTENT(IN) :: N ! Species index 44 45 DOUBLE PRECISION ICpoR 46 DOUBLE PRECISION lMW 47 48 INTEGER :: IER 49 50 !----------------------------------------------- 51 ! 52 IER = 0 53 54 if(M == 0)then 55 lMW = MW_g(N) 56 else 57 lMW = MW_s(M,N) 58 endif 59 60 ! Integrate the specific heat from zero to refT 61 ICpoR = calc_ICpoR(refT, M, N, IER) 62 63 ! Evaluate the enthalpy of speices N at refT 64 CALC_H = (HfrefoR(M,N) + ICpoR) * (RGAS / lMW) 65 66 RETURN 67 END FUNCTION CALC_H 68