source: LMDZ6/trunk/libf/phylmd/clift.F90 @ 5006

Last change on this file since 5006 was 2197, checked in by Ehouarn Millour, 10 years ago

Added 'implicit none' statements and proper variable definitions where they were missing.
EM

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.1 KB
Line 
1
2! $Header$
3
4SUBROUTINE clift(p, t, rr, rs, plcl, dplcldt, dplcldq)
5IMPLICIT NONE
6  ! ***************************************************************
7  ! *                                                             *
8  ! * CLIFT : COMPUTE LIFTING CONDENSATION LEVEL AND ITS          *
9  ! *         DERIVATIVES RELATIVE TO T AND R                     *
10  ! *   (WITHIN 0.2% OF FORMULA OF BOLTON, MON. WEA. REV.,1980)   *
11  ! *                                                             *
12  ! * written by   : GRANDPEIX Jean-Yves, 17/11/98, 12.39.01      *
13  ! * modified by :                                               *
14  ! ***************************************************************
15  ! *
16  ! *Arguments :
17  ! *
18  ! * Input :  P = pressure of level from wich lifting is performed
19  ! *          T = temperature of level P
20  ! *          RR = vapour mixing ratio at level P
21  ! *          RS = vapour saturation mixing ratio at level P
22  ! *
23  ! * Output : PLCL = lifting condensation level
24  ! *          DPLCLDT = derivative of PLCL relative to T
25  ! *          DPLCLDQ = derivative of PLCL relative to R
26  ! *
27  ! cccccccccccccccccccccc
28  ! constantes coherentes avec le modele du Centre Europeen
29  ! RD = 1000.0 * 1.380658E-23 * 6.0221367E+23 / 28.9644
30  ! RV = 1000.0 * 1.380658E-23 * 6.0221367E+23 / 18.0153
31  ! CPD = 3.5 * RD
32  ! CPV = 4.0 * RV
33  ! CL = 4218.0
34  ! CI=2090.0
35  ! CPVMCL=CL-CPV
36  ! CLMCI=CL-CI
37  ! EPS=RD/RV
38  ! ALV0=2.5008E+06
39  ! ALF0=3.34E+05
40
41  ! on utilise les constantes thermo du Centre Europeen: (sb)
42
43  include "YOMCST.h"
44  real :: p,t,rr,rs,plcl,dplcldt,dplcldq,cpd,cpv,cl,cpvmcl,eps,alv0,a,b
45  real :: rh,chi,alv
46
47  cpd = rcpd
48  cpv = rcpv
49  cl = rcw
50  cpvmcl = cl - cpv
51  eps = rd/rv
52  alv0 = rlvtt
53
54
55  ! Bolton formula coefficients :
56  a = 1669.0
57  b = 122.0
58
59  rh = rr/rs
60  chi = t/(a-b*rh-t)
61  plcl = p*(rh**chi)
62
63  alv = alv0 - cpvmcl*(t-273.15)
64
65  ! -- sb: correction:
66  ! DPLCLDQ = PLCL*CHI*( 1./RR - B*CHI/T/RS*ALOG(RH) )
67  dplcldq = plcl*chi*(1./rr+b*chi/t/rs*alog(rh))
68  ! sb --
69
70  dplcldt = plcl*chi*((a-b*rh*(1.+alv/rv/t))/t**2*chi*alog(rh)-alv/rv/t**2)
71
72
73  RETURN
74END SUBROUTINE clift
Note: See TracBrowser for help on using the repository browser.