[4661] | 1 | !------------------------------------------------------------------------------- |
---|
[5099] | 2 | |
---|
[4661] | 3 | ! ###################################### |
---|
| 4 | REAL FUNCTION QSATSEAW_1D(PT,PP) |
---|
| 5 | ! ###################################### |
---|
[5099] | 6 | |
---|
[4661] | 7 | !!**** *QSATW * - function to compute saturation vapor humidity from |
---|
| 8 | !! temperature |
---|
| 9 | !! |
---|
| 10 | !! PURPOSE |
---|
| 11 | !! ------- |
---|
| 12 | ! The purpose of this function is to compute the saturation vapor |
---|
| 13 | ! pressure from temperature over saline seawater |
---|
[5099] | 14 | |
---|
| 15 | |
---|
[4661] | 16 | !!** METHOD |
---|
| 17 | !! ------ |
---|
| 18 | !! Given temperature T (PT), the saturation vapor pressure es(T) |
---|
| 19 | !! (FOES(PT)) is computed by integration of the Clapeyron equation |
---|
| 20 | !! from the triple point temperature Tt (XTT) and the saturation vapor |
---|
| 21 | !! pressure of the triple point es(Tt) (XESTT), i.e |
---|
| 22 | !! The reduction due to salinity is compute with the factor 0.98 (reduction of 2%) |
---|
| 23 | !! |
---|
| 24 | !! es(T)= 0.98*EXP( alphaw - betaw /T - gammaw Log(T) ) |
---|
| 25 | !! |
---|
| 26 | !! with : |
---|
| 27 | !! alphaw (XALPW) = LOG(es(Tt))+ betaw/Tt + gammaw Log(Tt) |
---|
| 28 | !! betaw (XBETAW) = Lv(Tt)/Rv + gammaw Tt |
---|
| 29 | !! gammaw (XGAMW) = (Cl -Cpv) /Rv |
---|
| 30 | !! |
---|
| 31 | !! Then, the specific humidity at saturation is deduced. |
---|
| 32 | !! |
---|
| 33 | !! |
---|
| 34 | !! EXTERNAL |
---|
| 35 | !! -------- |
---|
| 36 | !! NONE |
---|
| 37 | !! |
---|
| 38 | !! IMPLICIT ARGUMENTS |
---|
| 39 | !! ------------------ |
---|
| 40 | !! Module MODD_CST : comtains physical constants |
---|
| 41 | !! XALPW : Constant for saturation vapor pressure function |
---|
| 42 | !! XBETAW : Constant for saturation vapor pressure function |
---|
| 43 | !! XGAMW : Constant for saturation vapor pressure function |
---|
| 44 | !! |
---|
| 45 | !! REFERENCE |
---|
| 46 | !! --------- |
---|
| 47 | !! Book2 of documentation of Meso-NH |
---|
| 48 | !! Zeng, X., Zhao, M., and Dickinson, R. E., 1998 : Intercomparaison of bulk |
---|
| 49 | !! aerodynamic algorithm for the computation of sea surface fluxes using |
---|
[5093] | 50 | !! TOGA COARE and TAO data. Journal of Climate, vol 11, n°10, pp 2628--2644 |
---|
[4661] | 51 | !! |
---|
| 52 | !! |
---|
| 53 | !! AUTHOR |
---|
| 54 | !! ------ |
---|
| 55 | !! C. Lebeaupin * Meteo France * |
---|
| 56 | !! |
---|
| 57 | !! MODIFICATIONS |
---|
| 58 | !! ------------- |
---|
| 59 | !! Original 6/04/2005 |
---|
| 60 | !------------------------------------------------------------------------------- |
---|
[5099] | 61 | |
---|
[4661] | 62 | !* 0. DECLARATIONS |
---|
| 63 | ! ------------ |
---|
[5099] | 64 | |
---|
[4661] | 65 | USE MODD_CSTS |
---|
| 66 | USE dimphy |
---|
| 67 | USE indice_sol_mod |
---|
| 68 | |
---|
| 69 | IMPLICIT NONE |
---|
| 70 | |
---|
| 71 | !* 0.1 Declarations of arguments and results |
---|
[5099] | 72 | |
---|
| 73 | |
---|
[4661] | 74 | REAL, DIMENSION(klon), INTENT(IN) :: PT ! Temperature |
---|
| 75 | ! (Kelvin) |
---|
| 76 | REAL, DIMENSION(klon), INTENT(IN) :: PP ! Pressure |
---|
| 77 | ! (Pa) |
---|
| 78 | REAL, DIMENSION(SIZE(PT)) :: PQSAT ! saturation vapor |
---|
| 79 | ! specific humidity |
---|
| 80 | ! with respect to |
---|
| 81 | ! water (kg/kg) |
---|
[5099] | 82 | |
---|
[4661] | 83 | !* 0.2 Declarations of local variables |
---|
[5099] | 84 | |
---|
[4661] | 85 | REAL, DIMENSION(SIZE(PT)) :: ZFOES ! saturation vapor |
---|
| 86 | ! pressure |
---|
| 87 | ! (Pascal) |
---|
[5099] | 88 | |
---|
[4661] | 89 | INTEGER :: JJ ! loop index |
---|
| 90 | !REAL(KIND=JPRB) :: ZHOOK_HANDLE |
---|
| 91 | !------------------------------------------------------------------------------- |
---|
[5099] | 92 | |
---|
[4661] | 93 | !IF (LHOOK) CALL DR_HOOK('MODE_THERMOS:QSATSEAW_1D',0,ZHOOK_HANDLE) |
---|
| 94 | !DO JJ = 1, SIZE(PT) |
---|
| 95 | !* 1. COMPUTE SATURATION VAPOR PRESSURE |
---|
| 96 | ! --------------------------------- |
---|
[5099] | 97 | |
---|
[4661] | 98 | ZFOES = 0.98*EXP( XALPW - XBETAW/PT - XGAMW*LOG(PT) ) |
---|
| 99 | ! vapor pressure reduction of 2% over saline seawater could have a significant |
---|
| 100 | ! impact on the computation of surface latent heat flux under strong wind |
---|
| 101 | ! conditions (Zeng et al, 1998). |
---|
[5099] | 102 | |
---|
[4661] | 103 | !* 2. COMPUTE SATURATION HUMIDITY |
---|
| 104 | ! --------------------------- |
---|
[5099] | 105 | |
---|
[4661] | 106 | PQSAT = XRD/XRV*ZFOES/PP /(1.+(XRD/XRV-1.)*ZFOES/PP) |
---|
[5099] | 107 | |
---|
[4661] | 108 | !ENDDO |
---|
| 109 | !IF (LHOOK) CALL DR_HOOK('MODE_THERMOS:QSATSEAW_1D',1,ZHOOK_HANDLE) |
---|
| 110 | !------------------------------------------------------------------------------- |
---|
[5099] | 111 | |
---|
[4661] | 112 | END FUNCTION QSATSEAW_1D |
---|
| 113 | !------------------------------------ |
---|