25   REAL,
DIMENSION(:,:,:),
ALLOCATABLE,
SAVE :: 
d_tr_cl   
   26   REAL,
DIMENSION(:,:,:),
ALLOCATABLE,
SAVE :: 
d_tr_dec                             
   27   REAL,
DIMENSION(:,:,:),
ALLOCATABLE,
SAVE :: 
d_tr_cv   
   32   REAL,
DIMENSION(:,:,:),
ALLOCATABLE,
SAVE :: 
d_tr_ls 
   35   REAL,
DIMENSION(:,:,:),
ALLOCATABLE,
SAVE :: 
d_tr_sat 
   37   REAL,
DIMENSION(:,:,:),
ALLOCATABLE,
SAVE :: 
qpr,
qdi  
   38   REAL,
DIMENSION(:,:,:),
ALLOCATABLE,
SAVE :: 
qpa,
qmel 
   41   REAL,
DIMENSION(:,:,:),
ALLOCATABLE,
SAVE :: 
d_tr_th   
   44   REAL,
DIMENSION(:,:),
ALLOCATABLE,
SAVE      :: 
qprls       
   45   REAL,
DIMENSION(:,:),
ALLOCATABLE,
SAVE      :: 
d_tr_dry  
   57        nstep,     julien,   gmtime,   debutphy,       &
 
   60        pen_u,     pde_u,    pen_d,    pde_d,          &
 
   61        cdragh,    coefh,    fm_therm, entr_therm,     &
 
   62        yu1,       yv1,      ftsol,    pctsrf,         &
 
   64        wstar,     ale_bl,      ale_wake,              &
 
   66        frac_impa,frac_nucl,beta_fisrt,beta_v1,        &
 
   68        sh,        rh,       cldfra,   rneb,           &
 
   69        diafra,    cldliq,   itop_con, ibas_con,       &
 
   70        pmflxr,    pmflxs,   prfl,     psfl,           &
 
   72        phi2,      d1a,      dam,      sij, wght_cvfd, &   
 
   73        wdtraina,  wdtrainm, 
sigd,     clw, elij,      &   
 
   74        evap,      ep,       epmlmmm,  eplamm,         &   
 
   75        dnwd,      aerosol_couple,     flxmass_w,      &
 
   76        tau_aero,  piz_aero,  cg_aero, ccm,            &
 
  108     include 
"thermcell.h" 
  116     INTEGER,
INTENT(IN) :: nstep      
 
  117     INTEGER,
INTENT(IN) :: julien     
 
  118     REAL,
INTENT(IN)    :: gmtime     
 
  119     REAL,
INTENT(IN)    :: pdtphys    
 
  120     LOGICAL,
INTENT(IN) :: debutphy   
 
  121     LOGICAL,
INTENT(IN) :: lafin      
 
  123     REAL,
DIMENSION(klon),
INTENT(IN) :: xlat    
 
  124     REAL,
DIMENSION(klon),
INTENT(IN) :: xlon    
 
  128     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: t_seri  
 
  129     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: u       
 
  130     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: v       
 
  131     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: sh      
 
  132     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: rh      
 
  133     REAL,
DIMENSION(klon,klev+1),
INTENT(IN) :: paprs   
 
  134     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: pplay   
 
  135     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: pphi    
 
  136     REAL,
DIMENSION(klon),
INTENT(IN)        :: pphis
 
  137     REAL,
DIMENSION(klev),
INTENT(IN)        :: presnivs 
 
  138     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: cldliq  
 
  139     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: cldfra  
 
  140     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: diafra  
 
  141     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: rneb    
 
  144     REAL,
DIMENSION(klon,klev),
INTENT(IN)   :: beta_fisrt 
 
  145     REAL,
DIMENSION(klon,klev),
INTENT(out)  :: beta_v1    
 
  148     INTEGER,
DIMENSION(klon),
INTENT(IN)     :: itop_con
 
  149     INTEGER,
DIMENSION(klon),
INTENT(IN)     :: ibas_con
 
  150     REAL,
DIMENSION(klon),
INTENT(IN)        :: albsol  
 
  154     REAL,
DIMENSION(klon,klev,nbtr),
INTENT(IN)    :: d_tr_dyn
 
  158     REAL,
DIMENSION(klon,klev),
INTENT(IN) :: pmfu  
 
  159     REAL,
DIMENSION(klon,klev),
INTENT(IN) :: pmfd  
 
  160     REAL,
DIMENSION(klon,klev),
INTENT(IN) :: pen_u 
 
  161     REAL,
DIMENSION(klon,klev),
INTENT(IN) :: pde_u 
 
  162     REAL,
DIMENSION(klon,klev),
INTENT(IN) :: pen_d 
 
  163     REAL,
DIMENSION(klon,klev),
INTENT(IN) :: pde_d 
 
  166     REAL,
DIMENSION(klon,klev+1),
INTENT(IN)   :: pmflxr, pmflxs 
 
  167     REAL,
DIMENSION(klon,klev+1),
INTENT(IN)   :: prfl, psfl 
 
  169     LOGICAL,
INTENT(IN)                       :: aerosol_couple
 
  170     REAL,
DIMENSION(klon,klev),
INTENT(IN)     :: flxmass_w
 
  171     REAL,
DIMENSION(klon,klev,naero_grp,2),
INTENT(IN) :: tau_aero
 
  172     REAL,
DIMENSION(klon,klev,naero_grp,2),
INTENT(IN) :: piz_aero
 
  173     REAL,
DIMENSION(klon,klev,naero_grp,2),
INTENT(IN) :: cg_aero
 
  174     CHARACTER(len=4),
DIMENSION(naero_grp),
INTENT(IN) :: rfname 
 
  175     REAL,
DIMENSION(klon,klev,2),
INTENT(IN)   :: ccm 
 
  177     REAL,
DIMENSION(klon,klev),
INTENT(IN)     :: da
 
  178     REAL,
DIMENSION(klon,klev,klev),
INTENT(IN):: phi
 
  180     REAL,
DIMENSION(klon,klev),
INTENT(IN)      :: d1a,dam
 
  181     REAL,
DIMENSION(klon,klev,klev),
INTENT(IN) :: phi2
 
  183     REAL,
DIMENSION(klon,klev),
INTENT(IN)      :: wdtrainA
 
  184     REAL,
DIMENSION(klon,klev),
INTENT(IN)      :: wdtrainM
 
  185     REAL,
DIMENSION(klon),
INTENT(IN)           :: sigd
 
  187     REAL,
DIMENSION(klon,klev),
INTENT(IN)      :: evap
 
  188     REAL,
DIMENSION(klon,klev),
INTENT(IN)      :: ep
 
  189     REAL,
DIMENSION(klon,klev,klev),
INTENT(IN) :: sij
 
  190     REAL,
DIMENSION(klon,klev),
INTENT(IN)      :: wght_cvfd          
 
  191     REAL,
DIMENSION(klon,klev,klev),
INTENT(IN) :: elij
 
  192     REAL,
DIMENSION(klon,klev,klev),
INTENT(IN) :: epmlmMm
 
  193     REAL,
DIMENSION(klon,klev),
INTENT(IN)      :: eplaMm
 
  194     REAL,
DIMENSION(klon,klev),
INTENT(IN)      :: clw
 
  198     REAL,
DIMENSION(klon,klev),
INTENT(IN)     :: mp
 
  199     REAL,
DIMENSION(klon,klev),
INTENT(IN)     :: upwd      
 
  200     REAL,
DIMENSION(klon,klev),
INTENT(IN)     :: dnwd      
 
  204     REAL,
DIMENSION(klon,klev+1),
INTENT(IN)   :: fm_therm
 
  205     REAL,
DIMENSION(klon,klev),
INTENT(IN)     :: entr_therm
 
  211     REAL,
DIMENSION(:),
INTENT(IN)   :: cdragh          
 
  212     REAL,
DIMENSION(:,:),
INTENT(IN) :: coefh           
 
  213     REAL,
DIMENSION(:),
INTENT(IN)   :: ustar,u10m,v10m 
 
  214     REAL,
DIMENSION(:),
INTENT(IN)   :: wstar,ale_bl,ale_wake 
 
  215     REAL,
DIMENSION(:),
INTENT(IN)   :: yu1             
 
  216     REAL,
DIMENSION(:),
INTENT(IN)   :: yv1             
 
  222     REAL, 
DIMENSION(:), 
ALLOCATABLE, 
SAVE :: ccntrAA
 
  223     REAL, 
DIMENSION(:), 
ALLOCATABLE, 
SAVE :: ccntrENV
 
  224     REAL, 
DIMENSION(:), 
ALLOCATABLE, 
SAVE :: coefcoli
 
  225     LOGICAL, 
DIMENSION(:), 
ALLOCATABLE, 
SAVE :: flag_cvltr
 
  227     REAL, 
DIMENSION(klon,klev) :: ccntrAA_3d
 
  228     REAL, 
DIMENSION(klon,klev) :: ccntrENV_3d
 
  229     REAL, 
DIMENSION(klon,klev) :: coefcoli_3d
 
  233     REAL,
DIMENSION(klon,klev),
INTENT(IN) :: frac_impa 
 
  234     REAL,
DIMENSION(klon,klev),
INTENT(IN) :: frac_nucl 
 
  237     REAL,
DIMENSION(klon,nbsrf),
INTENT(IN) :: ftsol  
 
  238     REAL,
DIMENSION(klon,nbsrf),
INTENT(IN) :: pctsrf 
 
  243     REAL,
DIMENSION(klon,klev,nbtr),
INTENT(INOUT) :: tr_seri 
 
  244     REAL,
DIMENSION(klon,klev)                    :: sourceBE 
 
  255     REAL,
DIMENSION(:,:),
ALLOCATABLE,
SAVE :: source  
 
  262     INTEGER                   :: nhori, nvert
 
  263     REAL                      :: zsto, zout, zjulian
 
  264     INTEGER,
SAVE              :: nid_tra     
 
  266     REAL,
DIMENSION(klon)      :: zx_tmp_fi2d 
 
  268     LOGICAL,
PARAMETER         :: ok_sync=.
true.
 
  273     LOGICAL,
DIMENSION(:),
ALLOCATABLE,
SAVE :: aerosol  
 
  275     REAL,
DIMENSION(klon,klev)             :: delp     
 
  279     REAL,
DIMENSION(klon,klev)      :: d_tr     
 
  280     REAL,
DIMENSION(klon,klev)      :: Mint
 
  281     REAL,
DIMENSION(klon,klev,nbtr) :: zmfd1a
 
  282     REAL,
DIMENSION(klon,klev,nbtr) :: zmfdam
 
  283     REAL,
DIMENSION(klon,klev,nbtr) :: zmfphi2
 
  286     REAL,
DIMENSION(klon,klev,nbtr) :: flestottr 
 
  287     REAL,
DIMENSION(klon,klev)      :: zmasse    
 
  288     REAL,
DIMENSION(klon,klev)      :: ztra_th
 
  290     REAL,
DIMENSION(klon,klev)      :: zrho
 
  291     REAL,
DIMENSION(klon,klev)      :: zdz
 
  292     REAL                           :: evaplsc,dx,beta 
 
  293     REAL,
DIMENSION(klon)           :: his_dh          
 
  295     REAL           :: ql_incloud_ref     
 
  299     INTEGER,
SAVE :: iflag_vdf_trac,iflag_con_trac,iflag_the_trac
 
  300     INTEGER,
SAVE  :: iflag_con_trac_omp, iflag_vdf_trac_omp,iflag_the_trac_omp
 
  303     LOGICAL,
SAVE :: lessivage
 
  307     INTEGER,
SAVE  :: iflag_lscav_omp,iflag_lscav
 
  308     REAL, 
SAVE ::   ccntrAA_in,ccntrAA_omp
 
  309     REAL, 
SAVE ::   ccntrENV_in,ccntrENV_omp
 
  310     REAL, 
SAVE ::   coefcoli_in,coefcoli_omp
 
  312     LOGICAL,
SAVE  :: convscav_omp,convscav
 
  373           delp(i,k) = paprs(i,k)-paprs(i,k+1)
 
  391        call getin(
'convscav', convscav_omp)
 
  393        call getin(
'iflag_vdf_trac', iflag_vdf_trac_omp)
 
  395        call getin(
'iflag_con_trac', iflag_con_trac_omp)
 
  397        call getin(
'iflag_the_trac', iflag_the_trac_omp)
 
  400        convscav=convscav_omp
 
  401        iflag_vdf_trac=iflag_vdf_trac_omp
 
  402        iflag_con_trac=iflag_con_trac_omp
 
  403        iflag_the_trac=iflag_the_trac_omp
 
  404        write(
lunout,*) 
'phytrac passage dans routine conv avec lessivage', convscav
 
  414        call getin(
'iflag_lscav', iflag_lscav_omp)
 
  418        call getin(
'ccntrAA', ccntraa_omp)
 
  419        call getin(
'ccntrENV', ccntrenv_omp)
 
  420        call getin(
'coefcoli', coefcoli_omp)
 
  423        iflag_lscav=iflag_lscav_omp
 
  424        ccntraa_in=ccntraa_omp
 
  425        ccntrenv_in=ccntrenv_omp
 
  426        coefcoli_in=coefcoli_omp
 
  428        SELECT CASE(iflag_lscav)
 
  430           WRITE(
lunout,*)  
'Large scale scavenging: none' 
  432           WRITE(
lunout,*)  
'Large scale scavenging: C. Genthon, Tellus(1992), 44B, 371-389' 
  434           WRITE(
lunout,*)  
'Large scale scavenging: C. Genthon, modified P. Heinrich' 
  436           WRITE(
lunout,*)  
'Large scale scavenging: M. Shekkar Reddy and O. Boucher, JGR(2004), 109, D14202' 
  438           WRITE(
lunout,*)  
'Large scale scavenging: Reddy and Boucher, modified R. Pilon' 
  441        WRITE(*,*) 
'FIRST TIME IN PHYTRAC : pdtphys(sec) = ',pdtphys,
'ecrit_tra (sec) = ',ecrit_tra
 
  442        ALLOCATE( source(
klon,
nbtr), stat=ierr)
 
  443        IF (ierr /= 0) 
CALL abort_physic(
'phytrac', 
'pb in allocation 1',1)
 
  445        ALLOCATE( aerosol(
nbtr), stat=ierr)
 
  446        IF (ierr /= 0) 
CALL abort_physic(
'phytrac', 
'pb in allocation 2',1)
 
  452           CALL traclmdz_init(pctsrf,xlat,xlon,ftsol,tr_seri,t_seri,pplay,sh,pdtphys,aerosol,lessivage)
 
  463        ALLOCATE(flag_cvltr(
nbtr))
 
  466           ALLOCATE(ccntraa(
nbtr))
 
  467           ALLOCATE(ccntrenv(
nbtr))
 
  468           ALLOCATE(coefcoli(
nbtr))
 
  473                 IF (convscav.and.aerosol(it)) 
THEN 
  474                    flag_cvltr(it)=.
true.
 
  475                    ccntraa(it) =ccntraa_in    
 
  476                    ccntrenv(it)=ccntrenv_in
 
  477                    coefcoli(it)=coefcoli_in
 
  479                    flag_cvltr(it)=.
false.
 
  505                 flag_cvltr(it)=.
false.
 
  510           flag_cvltr(:) = .
false. 
 
  521        WRITE(
lunout,*) 
'print out all tracer flags' 
  524        WRITE(
lunout,*) 
'iflag_con_trac =', iflag_con_trac
 
  526        WRITE(
lunout,*) 
'convscav       =', convscav
 
  527        WRITE(
lunout,*) 
'iflag_lscav    =', iflag_lscav
 
  528        WRITE(
lunout,*) 
'aerosol        =', aerosol
 
  529        WRITE(
lunout,*) 
'iflag_the_trac =', iflag_the_trac
 
  531        WRITE(
lunout,*) 
'iflag_vdf_trac =', iflag_vdf_trac
 
  533        WRITE(
lunout,*) 
'lessivage      =', lessivage
 
  534        write(
lunout,*)  
'flag_cvltr    = ', flag_cvltr
 
  537           CALL abort_physic(
'phytrac', 
'lessivage=T config_inca=inca impossible',1)
 
  546           zmasse(i,k)=(paprs(i,k)-paprs(i,k+1))/
rg 
  550     IF (
id_be .GT. 0) 
THEN 
  553              sourcebe(i,k)=
srcbe(i,k)       
 
  565        CALL traclmdz(nstep, julien, gmtime, pdtphys, t_seri, paprs, pplay, &
 
  566             cdragh,  coefh, yu1, yv1, ftsol, pctsrf, xlat, xlon,iflag_vdf_trac>=0,sh, &
 
  567             rh, pphi, ustar, wstar, ale_bl, ale_wake,  u10m, v10m, &
 
  574             nstep,    julien,   gmtime,         lafin,     &
 
  575             pdtphys,  t_seri,   paprs,          pplay,     &
 
  576             pmfu,     upwd,     ftsol,  pctsrf, pphis,     &
 
  577             pphi,     albsol,   sh,             rh,        &
 
  578             cldfra,   rneb,     diafra,         cldliq,    &
 
  579             itop_con, ibas_con, pmflxr,         pmflxs,    &
 
  580             prfl,     psfl,     aerosol_couple, flxmass_w, &
 
  581             tau_aero, piz_aero, cg_aero,        ccm,       &
 
  589             presnivs, xlat, xlon, pphis, pphi, &
 
  590             t_seri, pplay, paprs, sh , &
 
  598     IF (iflag_con_trac==1) 
THEN 
  609              CALL nflxtr(pdtphys, pmfu, pmfd, pen_u, pde_u, pen_d, pde_d, &
 
  610                   pplay, paprs, tr_seri(:,:,it), 
d_tr_cv(:,:,it))
 
  614              IF (flag_cvltr(it)) 
THEN 
  618                 ccntraa_3d(:,:) =ccntraa(it)
 
  619                 ccntrenv_3d(:,:)=ccntrenv(it)
 
  620                 coefcoli_3d(:,:)=coefcoli(it)
 
  625                 print*,
'CV SCAV ',it,ccntraa(it),ccntrenv(it)
 
  627                 CALL cvltr_scav(pdtphys, da, phi,phi2,d1a,dam, mp,ep,         &
 
  628                      sigd,sij,wght_cvfd,clw,elij,epmlmmm,eplamm,              &     
 
  629                      pmflxr,pmflxs,evap,t_seri,wdtraina,wdtrainm,             &   
 
  630                      paprs,it,tr_seri,upwd,dnwd,itop_con,ibas_con,            &
 
  631                      ccntraa_3d,ccntrenv_3d,coefcoli_3d,                      &
 
  634                      zmfd1a,zmfphi2,zmfdam)
 
  643                 CALL cvltr_noscav(it,pdtphys, da, phi,mp,wght_cvfd,paprs,pplay, &  
 
  654                 tr_seri(i,k,it) = tr_seri(i,k,it) + 
d_tr_cv(i,k,it)
 
  658           CALL minmaxqfi(tr_seri(:,:,it),0.,1.e33,
'convection it = '//
solsym(it))
 
  672              tr_seri(i,k,it)=max(tr_seri(i,k,it),0.)
 
  673              tr_seri(i,k,it)=min(tr_seri(i,k,it),1.e10)
 
  689                 tr_seri(i,k,it)=max(tr_seri(i,k,it)+
d_tr_th(i,k,it),0.)
 
  701     IF (iflag_vdf_trac==1) 
THEN 
  709              CALL cltrac(pdtphys, coefh,t_seri,       &
 
  710                   tr_seri(:,:,it), source(:,it),      &
 
  711                   paprs, pplay, delp,                 &
 
  714              tr_seri(:,:,it)=tr_seri(:,:,it)+
d_tr_cl(:,:,it)
 
  720     ELSE IF (iflag_vdf_trac==0) 
THEN 
  725           d_tr_cl(:,1,it)=source(:,it)*
rg/delp(:,1)*pdtphys
 
  726           tr_seri(:,1,it)=tr_seri(:,1,it)+
d_tr_cl(:,1,it)
 
  730     ELSE IF (iflag_vdf_trac==-1) 
THEN 
  749        ql_incloud_ref = 10.e-4
 
  750        ql_incloud_ref =  5.e-4
 
  754        ql_incl = ql_incloud_ref
 
  757        IF (iflag_lscav .EQ. 3 .OR. iflag_lscav .EQ. 4) 
THEN 
  762              IF (aerosol(it)) 
THEN 
  769              CALL lsc_scav(pdtphys,it,iflag_lscav,aerosol,ql_incl,prfl,psfl,rneb,beta_fisrt,  &
 
  771                   beta_v1,pplay,paprs,t_seri,tr_seri,
d_tr_insc,   &
 
  778                    tr_seri(i,k,it)=tr_seri(i,k,it)+
d_tr_ls(i,k,it)
 
  786        ELSE IF (iflag_lscav .EQ. 2) 
THEN  
  791           flestottr(:,:,:) = 0. 
 
  794              IF (aerosol(it)) 
THEN 
  799                       zrho(i,k)=pplay(i,k)/t_seri(i,k)/rd
 
  800                       zdz(i,k)=(paprs(i,k)-paprs(i,k+1))/zrho(i,k)/
rg 
  809                       his_dh(i)=his_dh(i)-dx*zrho(i,k)*zdz(i,k)/pdtphys 
 
  810                       evaplsc = prfl(i,k) - prfl(i,k+1) + psfl(i,k) - psfl(i,k+1)
 
  812                       IF ( evaplsc .LT.0..and.abs(prfl(i,k+1)+psfl(i,k+1)).gt.1.e-10) 
THEN 
  813                          evaplsc = (-evaplsc)/(prfl(i,k+1)+psfl(i,k+1))
 
  820                          if ((prfl(i,k)+psfl(i,k)).lt.1.e-10) 
THEN 
  823                          dx=beta*his_dh(i)/zrho(i,k)/zdz(i,k)*pdtphys
 
  824                          his_dh(i)=(1.-beta)*his_dh(i)   
 
  827                       d_tr_ls(i,k,it)=tr_seri(i,k,it)*(frac_impa(i,k)*frac_nucl(i,k)-1.) &
 
  832                            ( 1 - frac_nucl(i,k) )*tr_seri(i,k,it)
 
  834                            ( 1 - frac_impa(i,k) )*tr_seri(i,k,it)
 
  837                       flestottr(i,k,it) = flestottr(i,k,it) -   &
 
  840                            ( paprs(i,k)-paprs(i,k+1) ) /        &
 
  854        ELSE IF (iflag_lscav .EQ. 1) 
THEN  
  859           flestottr(:,:,:) = 0. 
 
  867              IF (aerosol(it)) 
THEN 
  871                            ( 1 - frac_nucl(i,k) )*tr_seri(i,k,it)
 
  873                            ( 1 - frac_impa(i,k) )*tr_seri(i,k,it)
 
  878                       flestottr(i,k,it) = flestottr(i,k,it) -   &
 
  881                            ( paprs(i,k)-paprs(i,k+1) ) /        &
 
  886                       tr_seri(i,k,it)=tr_seri(i,k,it)*frac_impa(i,k)*frac_nucl(i,k)
 
character(len=8), dimension(:), allocatable, save solsym
 
real, dimension(:,:,:), allocatable, save d_tr_trsp
 
subroutine traclmdz_init(pctsrf, xlat, xlon, ftsol, tr_seri, t_seri, pplay, sh, pdtphys, aerosol, lessivage)
 
subroutine lsc_scav(pdtime, it, iflag_lscav,
 
character(len=4), save config_inca
 
!$Id ok_orolf LOGICAL ok_limitvrai LOGICAL ok_all_xml INTEGER iflag_con
 
real, dimension(:,:,:), allocatable, save qpr
 
real, dimension(:,:,:), allocatable, save d_tr_cv
 
real, dimension(:,:,:), allocatable, save d_tr_lessi_nucl
 
subroutine cvltr_noscav(it, pdtime, da, phi, mp, wght_cvfd, paprs, pplay, x, upd, dnd, dx)
 
subroutine cltrac(dtime, coef, t, tr, flux, paprs, pplay, delp, d_tr, d_tr_dry, flux_tr_dry)
 
real, dimension(:,:,:), allocatable, save d_tr_cl
 
real, dimension(:,:,:), allocatable, save d_tr_dec
 
real, dimension(:,:), allocatable, save flux_tr_dry
 
integer, dimension(:), allocatable, save conv_flg
 
subroutine nflxtr(pdtime, pmfu, pmfd, pen_u, pde_u, pen_d, pde_d, pplay, paprs, x, dx)
 
real, dimension(:,:,:), allocatable, save d_tr_bcscav
 
real, dimension(:,:,:), allocatable, save qdi
 
integer, dimension(:), allocatable, save pbl_flg
 
real, dimension(:,:,:), allocatable, save d_tr_evapls
 
subroutine traclmdz(nstep, julien, gmtime, pdtphys, t_seri, paprs, pplay, cdragh, coefh, yu1, yv1, ftsol, pctsrf, xlat, xlon, couchelimite, sh, rh, pphi, ustar, wstar, ale_bl, ale_wake, zu10m, zv10m, tr_seri, source, d_tr_cl, d_tr_dec, zmasse)
 
real, dimension(:,:,:), allocatable, save d_tr_uscav
 
!$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
 
subroutine tracinca_init(aerosol, lessivage)
 
real, dimension(:,:,:), allocatable, save d_tr_sscav
 
real, dimension(:,:), allocatable, save srcbe
 
real, dimension(:,:,:), allocatable, save qpa
 
!$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 pplay
 
real, dimension(:,:,:), allocatable, save d_tr_insc
 
!$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 &zphi geo500!IM on interpole a chaque pas de temps le paprs
 
!$Id Turb_fcg_gcssold get_uvd hqturb_gcssold endif!large scale llm day day1 day day1 *dt_toga endif!time annee_ref dt_toga u_toga vq_toga w_prof vq_prof llm u(l)
 
real, dimension(:,:,:), allocatable, save d_tr_th
 
!$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
 
nsplit_thermals!nrlmd le iflag_clos_bl tau_trig_deep real::s_trig!fin nrlmd le fact_thermals_ed_dz iflag_wake iflag_thermals_closure common ctherm1 iflag_thermals
 
real, dimension(:,:), allocatable, save qprls
 
subroutine thermcell_dq(ngrid, nlay, impl, ptimestep, fm, entr, masse, q, dq, qa, lev_out)
 
!$Id zjulian!correction pour l heure initiale!jyg!jyg CALL pdtphys
 
subroutine tracinca(nstep, julien, gmtime, lafin, pdtphys, t_seri, paprs, pplay, pmfu, upwd, ftsol, pctsrf, pphis, pphi, albsol, sh, rh, cldfra, rneb, diafra, cldliq, itop_con, ibas_con, pmflxr, pmflxs, prfl, psfl, aerosol_couple, flxmass_w, tau_aero, piz_aero, cg_aero, ccm, rfname, tr_seri, source)
 
character(len=4), save type_trac
 
real, dimension(:,:,:), allocatable, save dtrcvma
 
logical, save is_mpi_root
 
subroutine minmaxqfi(zq, qmin, qmax, comment)
 
subroutine abort_physic(modname, message, ierr)
 
subroutine cvltr_scav(pdtime, da, phi, phi2, d1a, dam, mpIN, epIN, sigd, sij, wght_cvfd, clw, elij, epmlmMm, eplaMm, pmflxrIN, pmflxsIN, ev, te, wdtrainA, wdtrainM, paprs, it, tr, upd, dnd, inb, icb, ccntrAA_3d, ccntrENV_3d, coefcoli_3d, dtrcv, trsptd, dtrSscav, dtrsat, dtrUscav, qDi, qPr, qPa, qMel, qTrdi, dtrcvMA, Mint, zmfd1a, zmfphi2, zmfdam)
 
real, dimension(:,:,:), allocatable, save d_tr_sat
 
real, dimension(:,:,:), allocatable, save d_tr_ls
 
subroutine phytrac(nstep, julien, gmtime, debutphy, lafin, pdtphys, u, v, t_seri, paprs, pplay, pmfu, pmfd, pen_u, pde_u, pen_d, pde_d, cdragh, coefh, fm_therm, entr_therm, yu1, yv1, ftsol, pctsrf, ustar, u10m, v10m, wstar, ale_bl, ale_wake, xlat, xlon, frac_impa, frac_nucl, beta_fisrt, beta_v1, presnivs, pphis, pphi, albsol, sh, rh, cldfra, rneb, diafra, cldliq, itop_con, ibas_con, pmflxr, pmflxs, prfl, psfl, da, phi, mp, upwd, phi2, d1a, dam, sij, wght_cvfd, wdtrainA, wdtrainM, sigd, clw, elij, evap, ep, epmlmMm, eplaMm, dnwd, aerosol_couple, flxmass_w, tau_aero, piz_aero, cg_aero, ccm, rfname, d_tr_dyn, tr_seri)
 
!$Id!Parameters for nlm real sigd
 
integer, parameter naero_grp
 
subroutine tracreprobus(pdtphys, gmtime, debutphy, julien, presnivs, xlat, xlon, pphis, pphi, t_seri, pplay, paprs, sh, tr_seri)
 
real, dimension(:,:,:), allocatable, save qmel
 
!$Header!gestion des impressions de sorties et de débogage la sortie standard prt_level COMMON comprint lunout
 
real, dimension(:,:,:), allocatable, save d_tr_lessi_impa
 
real, dimension(:,:), allocatable, save d_tr_dry
 
real, dimension(:,:,:), allocatable, save qtrdi