15 REAL zpspsk(klon),pplev(klon)
16 REAL ztla(klon),zqta(klon),zqla(klon)
21 REAL Tbef(klon),DT(klon)
22 REAL tdelta,qsatbef,zcor,qlbef,zdelta,zcvm5,dqsat,num,denom,dqsat_dT
25 REAL,
SAVE :: DDT0=.01
26 LOGICAL afaire(klon),tout_converge
46 tbef(ig)=ztla(ig)*zpspsk(ig)
47 zdelta=max(0.,sign(1.,rtt-tbef(ig)))
48 qsatbef= r2es * foeew(tbef(ig),zdelta)/pplev(ig)
49 qsatbef=min(0.5,qsatbef)
50 zcor=1./(1.-retv*qsatbef)
52 qlbef=max(0.,zqta(ig)-qsatbef)
53 dt(ig) = 0.5*rlvcp*qlbef
58 afaire(:)=abs(dt(:)).gt.ddt0
61 tbef(ig)=tbef(ig)+dt(ig)
62 zdelta=max(0.,sign(1.,rtt-tbef(ig)))
63 qsatbef= r2es * foeew(tbef(ig),zdelta)/pplev(ig)
64 qsatbef=min(0.5,qsatbef)
65 zcor=1./(1.-retv*qsatbef)
67 qlbef=zqta(ig)-qsatbef
68 zdelta=max(0.,sign(1.,rtt-tbef(ig)))
69 zcvm5=r5les*(1.-zdelta) + r5ies*zdelta
70 zcor=1./(1.-retv*qsatbef)
71 dqsat_dt=foede(tbef(ig),zdelta,zcvm5,qsatbef,zcor)
72 num=-tbef(ig)+ztla(ig)*zpspsk(ig)+rlvcp*qlbef
73 denom=1.+rlvcp*dqsat_dt
74 zqla(ig) = max(0.,zqta(ig)-qsatbef)
subroutine thermcell_condens(klon, active, zpspsk, pplev, ztla, zqta, zqla)
!$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