/[lmdze]/trunk/phylmd/Thermcell/thermcell.f
ViewVC logotype

Diff of /trunk/phylmd/Thermcell/thermcell.f

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

revision 323 by guez, Thu Jan 24 17:19:06 2019 UTC revision 324 by guez, Wed Feb 6 15:58:03 2019 UTC
# Line 4  module thermcell_m Line 4  module thermcell_m
4    
5  contains  contains
6    
7    SUBROUTINE thermcell(ngrid, nlay, ptimestep, pplay, pplev, pphi, pu, pv, pt, &    SUBROUTINE thermcell(ngrid, nlay, ptimestep, pplay, pplev, pphi, u, v, pt, &
8         po, pduadj, pdvadj, pdtadj, pdoadj, fm0, entr0)         po, pduadj, pdvadj, pdtadj, pdoadj, fm0, entr0)
9    
10      ! Calcul du transport vertical dans la couche limite en pr\'esence      ! Calcul du transport vertical dans la couche limite en pr\'esence
# Line 22  contains Line 22  contains
22      USE dimphy, ONLY : klev, klon      USE dimphy, ONLY : klev, klon
23      USE suphec_m, ONLY : rd, rg, rkappa      USE suphec_m, ONLY : rd, rg, rkappa
24    
     ! arguments:  
   
25      INTEGER ngrid, nlay      INTEGER ngrid, nlay
26      real ptimestep      real ptimestep
     REAL, intent(in):: pt(ngrid, nlay)  
     real pdtadj(ngrid, nlay)  
     REAL, intent(in):: pu(ngrid, nlay)  
     real pduadj(ngrid, nlay)  
     REAL, intent(in):: pv(ngrid, nlay)  
     real pdvadj(ngrid, nlay)  
     REAL po(ngrid, nlay), pdoadj(ngrid, nlay)  
27      REAL, intent(in):: pplay(ngrid, nlay)      REAL, intent(in):: pplay(ngrid, nlay)
28      real, intent(in):: pplev(ngrid, nlay+1)      real, intent(in):: pplev(ngrid, nlay+1)
29      real, intent(in):: pphi(ngrid, nlay)      real, intent(in):: pphi(ngrid, nlay)
30        REAL, intent(in):: u(ngrid, nlay)
31        REAL, intent(in):: v(ngrid, nlay)
32        REAL, intent(in):: pt(ngrid, nlay)
33        REAL po(ngrid, nlay)
34        real pduadj(ngrid, nlay)
35        real pdvadj(ngrid, nlay)
36        real pdtadj(ngrid, nlay)
37        real pdoadj(ngrid, nlay)
38        real fm0(klon, klev+1), entr0(klon, klev)
39    
40        ! Local:
41        
42      integer idetr      integer idetr
43      save idetr      save idetr
44      data idetr/3/      data idetr/3/
45    
     ! local:  
   
46      INTEGER ig, k, l, lmaxa(klon), lmix(klon)      INTEGER ig, k, l, lmaxa(klon), lmix(klon)
47      ! CR: on remplace lmax(klon, klev+1)      ! CR: on remplace lmax(klon, klev+1)
48      INTEGER lmax(klon), lmin(klon), lentr(klon)      INTEGER lmax(klon), lmin(klon), lentr(klon)
# Line 75  contains Line 75  contains
75      real xxx(klon, klev+1)      real xxx(klon, klev+1)
76      real larg_cons(klon, klev+1)      real larg_cons(klon, klev+1)
77      real larg_detr(klon, klev+1)      real larg_detr(klon, klev+1)
78      real fm0(klon, klev+1), entr0(klon, klev), detr(klon, klev)      real detr(klon, klev)
79      real fm(klon, klev+1), entr(klon, klev)      real fm(klon, klev+1), entr(klon, klev)
80      real fmc(klon, klev+1)      real fmc(klon, klev+1)
81    
# Line 111  contains Line 111  contains
111         DO ig=1, ngrid         DO ig=1, ngrid
112            zpspsk(ig, l)=(pplay(ig, l)/pplev(ig, 1))**RKAPPA            zpspsk(ig, l)=(pplay(ig, l)/pplev(ig, 1))**RKAPPA
113            zh(ig, l)=pt(ig, l)/zpspsk(ig, l)            zh(ig, l)=pt(ig, l)/zpspsk(ig, l)
114            zu(ig, l)=pu(ig, l)            zu(ig, l)=u(ig, l)
115            zv(ig, l)=pv(ig, l)            zv(ig, l)=v(ig, l)
116            zo(ig, l)=po(ig, l)            zo(ig, l)=po(ig, l)
117            ztv(ig, l)=zh(ig, l)*(1.+0.61*zo(ig, l))            ztv(ig, l)=zh(ig, l)*(1.+0.61*zo(ig, l))
118         end DO         end DO

Legend:
Removed from v.323  
changed lines
  Added in v.324

  ViewVC Help
Powered by ViewVC 1.1.21