/[lmdze]/trunk/phylmd/clift.f90
ViewVC logotype

Diff of /trunk/phylmd/clift.f90

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

trunk/phylmd/clift.f revision 76 by guez, Fri Nov 15 18:45:49 2013 UTC trunk/phylmd/clift.f90 revision 81 by guez, Wed Mar 5 14:38:41 2014 UTC
# Line 1  Line 1 
1  !  
2  ! $Header: /home/cvsroot/LMDZ4/libf/phylmd/clift.F,v 1.1.1.1 2004/05/19 12:53:08 lmdzadmin Exp $  ! $Header: /home/cvsroot/LMDZ4/libf/phylmd/clift.F,v 1.1.1.1 2004/05/19
3  !  ! 12:53:08 lmdzadmin Exp $
4          SUBROUTINE CLIFT (P,T,RR,RS,PLCL,DPLCLDT,DPLCLDQ)  
5  C***************************************************************  SUBROUTINE clift(p, t, rr, rs, plcl, dplcldt, dplcldq)
6  C*                                                             *    ! ***************************************************************
7  C* CLIFT : COMPUTE LIFTING CONDENSATION LEVEL AND ITS          *    ! *                                                             *
8  C*         DERIVATIVES RELATIVE TO T AND R                     *    ! * CLIFT : COMPUTE LIFTING CONDENSATION LEVEL AND ITS          *
9  C*   (WITHIN 0.2% OF FORMULA OF BOLTON, MON. WEA. REV.,1980)   *    ! *         DERIVATIVES RELATIVE TO T AND R                     *
10  C*                                                             *    ! *   (WITHIN 0.2% OF FORMULA OF BOLTON, MON. WEA. REV.,1980)   *
11  C* written by   : GRANDPEIX Jean-Yves, 17/11/98, 12.39.01      *    ! *                                                             *
12  C* modified by :                                               *    ! * written by   : GRANDPEIX Jean-Yves, 17/11/98, 12.39.01      *
13  C***************************************************************    ! * modified by :                                               *
14  C*    ! ***************************************************************
15  C*Arguments :    ! *
16  C*    ! *Arguments :
17  C* Input :  P = pressure of level from wich lifting is performed    ! *
18  C*          T = temperature of level P    ! * Input :  P = pressure of level from wich lifting is performed
19  C*          RR = vapour mixing ratio at level P    ! *          T = temperature of level P
20  C*          RS = vapour saturation mixing ratio at level P    ! *          RR = vapour mixing ratio at level P
21  C*    ! *          RS = vapour saturation mixing ratio at level P
22  C* Output : PLCL = lifting condensation level    ! *
23  C*          DPLCLDT = derivative of PLCL relative to T    ! * Output : PLCL = lifting condensation level
24  C*          DPLCLDQ = derivative of PLCL relative to R    ! *          DPLCLDT = derivative of PLCL relative to T
25  C*    ! *          DPLCLDQ = derivative of PLCL relative to R
26  ccccccccccccccccccccccc    ! *
27  c constantes coherentes avec le modele du Centre Europeen    ! cccccccccccccccccccccc
28  c      RD = 1000.0 * 1.380658E-23 * 6.0221367E+23 / 28.9644    ! constantes coherentes avec le modele du Centre Europeen
29  c      RV = 1000.0 * 1.380658E-23 * 6.0221367E+23 / 18.0153    ! RD = 1000.0 * 1.380658E-23 * 6.0221367E+23 / 28.9644
30  c      CPD = 3.5 * RD    ! RV = 1000.0 * 1.380658E-23 * 6.0221367E+23 / 18.0153
31  c      CPV = 4.0 * RV    ! CPD = 3.5 * RD
32  c      CL = 4218.0    ! CPV = 4.0 * RV
33  c      CI=2090.0    ! CL = 4218.0
34  c      CPVMCL=CL-CPV    ! CI=2090.0
35  c      CLMCI=CL-CI    ! CPVMCL=CL-CPV
36  c      EPS=RD/RV    ! CLMCI=CL-CI
37  c      ALV0=2.5008E+06    ! EPS=RD/RV
38  c      ALF0=3.34E+05    ! ALV0=2.5008E+06
39  c    ! ALF0=3.34E+05
40  c on utilise les constantes thermo du Centre Europeen: (sb)  
41  c    ! on utilise les constantes thermo du Centre Europeen: (sb)
42        use SUPHEC_M  
43  c    USE suphec_m
44         CPD = RCPD  
45         CPV = RCPV    cpd = rcpd
46         CL = RCW    cpv = rcpv
47         CPVMCL = CL-CPV    cl = rcw
48         EPS = RD/RV    cpvmcl = cl - cpv
49         ALV0 = RLVTT    eps = rd/rv
50  c    alv0 = rlvtt
51  c  
52  c      Bolton formula coefficients :  
53        A = 1669.0    ! Bolton formula coefficients :
54        B = 122.0    a = 1669.0
55  c    b = 122.0
56        RH=RR/RS  
57        CHI=T/(A-B*RH-T)    rh = rr/rs
58        PLCL=P*(RH**CHI)    chi = t/(a-b*rh-t)
59  c    plcl = p*(rh**chi)
60        ALV = ALV0 - CPVMCL*(T-273.15)  
61  c    alv = alv0 - cpvmcl*(t-273.15)
62  c -- sb: correction:  
63  c       DPLCLDQ = PLCL*CHI*( 1./RR - B*CHI/T/RS*ALOG(RH) )    ! -- sb: correction:
64        DPLCLDQ = PLCL*CHI*( 1./RR + B*CHI/T/RS*ALOG(RH) )    ! DPLCLDQ = PLCL*CHI*( 1./RR - B*CHI/T/RS*ALOG(RH) )
65  c sb --    dplcldq = plcl*chi*(1./rr+b*chi/t/rs*alog(rh))
66  c    ! sb --
67        DPLCLDT = PLCL*CHI*((A-B*RH*(1.+ALV/RV/T))/T**2*CHI*ALOG(RH)  
68       $                    - ALV/RV/T**2 )    dplcldt = plcl*chi*((a-b*rh*(1.+alv/rv/t))/t**2*chi*alog(rh)-alv/rv/t**2)
69  c  
70  c  
71        RETURN    RETURN
72        END  END SUBROUTINE clift

Legend:
Removed from v.76  
changed lines
  Added in v.81

  ViewVC Help
Powered by ViewVC 1.1.21