10 |
|
|
11 |
use dimens_m |
use dimens_m |
12 |
use dimphy |
use dimphy |
13 |
use YOMCST |
use SUPHEC_M |
14 |
use conema3_m |
use conema3_m |
15 |
use yoethf |
use yoethf_m |
16 |
use fcttre |
use fcttre |
17 |
IMPLICIT none |
IMPLICIT none |
18 |
c====================================================================== |
c====================================================================== |
62 |
INTEGER ntra,ntrac !number of tracers; if no tracer transport |
INTEGER ntra,ntrac !number of tracers; if no tracer transport |
63 |
! is needed, set ntra = 1 (or 0) |
! is needed, set ntra = 1 (or 0) |
64 |
PARAMETER (ntrac=nqmx-2) |
PARAMETER (ntrac=nqmx-2) |
65 |
REAL dtime |
REAL, intent(in):: dtime |
66 |
c |
c |
67 |
REAL d_t2(klon,klev), d_q2(klon,klev) ! sbl |
REAL d_t2(klon,klev), d_q2(klon,klev) ! sbl |
68 |
REAL d_u2(klon,klev), d_v2(klon,klev) ! sbl |
REAL d_u2(klon,klev), d_v2(klon,klev) ! sbl |
70 |
REAL em_d_u2(klev), em_d_v2(klev) ! sbl |
REAL em_d_u2(klev), em_d_v2(klev) ! sbl |
71 |
c |
c |
72 |
REAL, intent(in):: paprs(klon,klev+1) |
REAL, intent(in):: paprs(klon,klev+1) |
73 |
real pplay(klon,klev) |
real, intent(in):: pplay(klon,klev) |
74 |
REAL t(klon,klev), q(klon,klev), d_t(klon,klev), d_q(klon,klev) |
REAL t(klon,klev), q(klon,klev), d_t(klon,klev), d_q(klon,klev) |
75 |
REAL u(klon,klev), v(klon,klev), tra(klon,klev,ntra) |
REAL u(klon,klev), v(klon,klev) |
76 |
|
real, intent(in):: tra(klon,klev,ntra) |
77 |
REAL d_u(klon,klev), d_v(klon,klev), d_tra(klon,klev,ntra) |
REAL d_u(klon,klev), d_v(klon,klev), d_tra(klon,klev,ntra) |
78 |
REAL work1(klon,klev), work2(klon,klev) |
REAL work1(klon,klev), work2(klon,klev) |
79 |
REAL upwd(klon,klev), dnwd(klon,klev), dnwdbis(klon,klev) |
REAL upwd(klon,klev), dnwd(klon,klev), dnwdbis(klon,klev) |
250 |
|
|
251 |
c -- appel schema de nuages: |
c -- appel schema de nuages: |
252 |
|
|
|
c CALL CLOUDS_SUB_LS(klev,em_q,em_qs,em_t |
|
|
c i ,em_p,em_ph,dtime,em_qcondc |
|
|
c o ,em_cldf,em_cldq,em_pradj,em_ftadj,em_fradj,em_ifc) |
|
|
|
|
253 |
do k = 1, klev |
do k = 1, klev |
254 |
cldf(i,k) = em_cldf(k) ! cloud fraction (0-1) |
cldf(i,k) = em_cldf(k) ! cloud fraction (0-1) |
255 |
cldq(i,k) = em_cldq(k) ! in-cloud water content (kg/kg) |
cldq(i,k) = em_cldq(k) ! in-cloud water content (kg/kg) |
353 |
if (ktop(i)-kbas(i).gt.0.and. |
if (ktop(i)-kbas(i).gt.0.and. |
354 |
s l.ge.kbas(i).and.l.le.ktop(i)) then |
s l.ge.kbas(i).and.l.le.ktop(i)) then |
355 |
qcond_incld(i,l)=rain(i)*8.e4 |
qcond_incld(i,l)=rain(i)*8.e4 |
|
c s *(pplay(i,l )-paprs(i,ktop(i)+1)) |
|
356 |
s /(pplay(i,kbas(i))-pplay(i,ktop(i))) |
s /(pplay(i,kbas(i))-pplay(i,ktop(i))) |
357 |
c s **2 |
c s **2 |
358 |
else |
else |