4 SUBROUTINE conema3(dtime, paprs, pplay, t, q, u, v, tra, ntra, work1, work2, &
 
    5     d_t, d_q, d_u, d_v, d_tra, rain, snow, kbas, ktop, upwd, dnwd, dnwdbis, &
 
    6     bas, top, ma, cape, tvp, rflag, pbase, bbase, dtvpdt1, dtvpdq1, dplcldt, &
 
   83   LOGICAL, 
SAVE :: first = .
true.
 
   87   REAL, 
ALLOCATABLE, 
SAVE :: em_t(:)
 
   90   REAL, 
ALLOCATABLE, 
SAVE :: em_q(:)
 
   93   REAL, 
ALLOCATABLE, 
SAVE :: em_qs(:)
 
   96   REAL, 
ALLOCATABLE, 
SAVE :: em_u(:), em_v(:), em_tra(:, :)
 
   99   REAL, 
ALLOCATABLE, 
SAVE :: em_ph(:), em_p(:)
 
  102   REAL, 
ALLOCATABLE, 
SAVE :: em_work1(:), em_work2(:)
 
  105   REAL, 
SAVE :: em_precip
 
  107   REAL, 
ALLOCATABLE, 
SAVE :: em_d_t(:), em_d_q(:)
 
  110   REAL, 
ALLOCATABLE, 
SAVE :: em_d_u(:), em_d_v(:), em_d_tra(:, :)
 
  113   REAL, 
ALLOCATABLE, 
SAVE :: em_upwd(:), em_dnwd(:), em_dnwdbis(:)
 
  115   REAL em_dtvpdt1(
klev), em_dtvpdq1(
klev)
 
  116   REAL em_dplcldt, em_dplcldr
 
  122   INTEGER em_bas, em_top
 
  129   REAL zx_t, zx_qs, zdelta, zcor
 
  137   REAL, 
ALLOCATABLE, 
SAVE :: emmip(:)
 
  141   REAL, 
ALLOCATABLE, 
SAVE :: emmke(:)
 
  147   REAL, 
ALLOCATABLE, 
SAVE :: emma(:)
 
  155   REAL em_cape, em_tvp(
klev)
 
  156   REAL em_pbase, em_bbase
 
  157   INTEGER iw, j, k, ix, iy
 
  183     ALLOCATE (em_t(
klev))
 
  184     ALLOCATE (em_q(
klev))
 
  185     ALLOCATE (em_qs(
klev))
 
  187     ALLOCATE (em_ph(
klev+1), em_p(
klev))
 
  188     ALLOCATE (em_work1(
klev), em_work2(
klev))
 
  189     ALLOCATE (em_d_t(
klev), em_d_q(
klev))
 
  191     ALLOCATE (em_upwd(
klev), em_dnwd(
klev), em_dnwdbis(
klev))
 
  192     ALLOCATE (emmip(
klev))
 
  193     ALLOCATE (emmke(
klev))
 
  194     ALLOCATE (emma(
klev))
 
  199   qcond_incld(:, :) = 0.
 
  205       em_ph(l) = paprs(i, l)/100.0
 
  209       em_p(l) = pplay(i, l)/100.0
 
  215         em_tra(l, itra) = tra(i, l, itra)
 
  228       zdelta = max(0., sign(1.,rtt-zx_t))
 
  229       zx_qs = r2es*foeew(zx_t, zdelta)/em_p(l)/100.0
 
  230       zx_qs = min(0.5, zx_qs)
 
  232       zcor = 1./(1.-retv*zx_qs)
 
  237       em_work1(l) = work1(i, l)
 
  238       em_work2(l) = work2(i, l)
 
  261 1792 
FORMAT (
'sig avant convect ', /, 10(1
x,e13.5))
 
  264 1793 
FORMAT (
'w avant convect ', /, 10(1
x,e13.5))
 
  272       em_tra, em_p, em_ph, 
klev, 
klev+1, 
klev-1, ntra, dtime, iflag, em_d_t, &
 
  273       em_d_q, em_d_u, em_d_v, em_d_tra, em_precip, em_bas, em_top, em_upwd, &
 
  274       em_dnwd, em_dnwdbis, em_work1, em_work2, emmip, emmke, emma, ment, &
 
  275       qent, tps, tls, sij, em_cape, em_tvp, em_pbase, em_bbase, em_dtvpdt1, &
 
  276       em_dtvpdq1, em_dplcldt, em_dplcldr, & 
 
  277       em_d_t2, em_d_q2, em_d_u2, em_d_v2, em_wd, em_qcond, em_qcondc) 
 
  297       cldf(i, k) = em_cldf(k) 
 
  298       cldq(i, k) = em_cldq(k) 
 
  299       ftadj(i, k) = em_ftadj(k) 
 
  300       fqadj(i, k) = em_fradj(k) 
 
  301       ifc(i, k) = em_ifc(k) 
 
  308     IF (iflag/=1 .AND. iflag/=4) 
THEN 
  324       sigsum = sigsum + em_work1(k)
 
  326     IF (sigsum==0.0) 
THEN 
  342     IF (iflag==1 .OR. iflag==4) 
THEN 
  351     rain(i) = em_precip/86400.0
 
  355     rflag(i) = 
real(iflag)
 
  358     dplcldt(i) = em_dplcldt
 
  359     dplcldr(i) = em_dplcldr
 
  361       d_t2(i, l) = dtime*em_d_t2(l)
 
  362       d_q2(i, l) = dtime*em_d_q2(l)
 
  363       d_u2(i, l) = dtime*em_d_u2(l)
 
  364       d_v2(i, l) = dtime*em_d_v2(l)
 
  366       d_t(i, l) = dtime*em_d_t(l)
 
  367       d_q(i, l) = dtime*em_d_q(l)
 
  368       d_u(i, l) = dtime*em_d_u(l)
 
  369       d_v(i, l) = dtime*em_d_v(l)
 
  371         d_tra(i, l, itra) = dtime*em_d_tra(l, itra)
 
  373       upwd(i, l) = em_upwd(l)
 
  374       dnwd(i, l) = em_dnwd(l)
 
  375       dnwdbis(i, l) = em_dnwdbis(l)
 
  376       work1(i, l) = em_work1(l)
 
  377       work2(i, l) = em_work2(l)
 
  379       tvp(i, l) = em_tvp(l)
 
  380       dtvpdt1(i, l) = em_dtvpdt1(l)
 
  381       dtvpdq1(i, l) = em_dtvpdq1(l)
 
  384         qcond_incld(i, l) = em_qcondc(l)
 
  386         qcond_incld(i, l) = em_qcond(l)
 
  396         IF (ktop(i)-kbas(i)>0 .AND. l>=kbas(i) .AND. l<=ktop(i)) 
THEN 
  397           qcond_incld(i, l) = rain(i)*8.e4 & 
 
  399             /(pplay(i,kbas(i))-pplay(i,ktop(i)))
 
  402           qcond_incld(i, l) = 0.
 
  405       print *, 
'l=', l, 
',   qcond_incld=', qcond_incld(1, l)
 
subroutine convect3(dtime, epmax, ok_adj, t1, r1, rs, u, v, tra, p, ph, nd,ndp1, nl, ntra, delt, iflag, ft, fr, fu, fv, ftra, precip, icb, inb,upwd, dnwd, dnwd0, sig, w0, mike, mke, ma, ments, qents, tps, tls, sigij,cape, tvp, pbase, buoybase,
 
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL false
 
!$Header!c c INCLUDE fxyprim h c c c Fonctions in line c c REAL fyprim REAL rj c c il faut la calculer avant d appeler ces fonctions c c c Fonctions a changer selon x(x) et y(y) choisis.c-----------------------------------------------------------------c c.....ici
 
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL ulevSTD CALL &zphi philevSTD CALL &zx_rh rhlevSTD!DO klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon klev DO klon du jour ou toutes les read_climoz CALL true
 
!$Id sig2feed!common comconema2 iflag_cvl_sigd common comconema1 epmax
 
subroutine conema3(dtime, paprs, pplay, t, q, u, v, tra, ntra, work1, work2, d_t, d_q, d_u, d_v, d_tra, rain, snow, kbas, ktop, upwd, dnwd, dnwdbis, bas, top, ma, cape, tvp, rflag, pbase, bbase, dtvpdt1, dtvpdq1, dplcldt, dplcldr, qcond_incld)