Ignore:
Timestamp:
Mar 19, 2014, 3:14:30 PM (10 years ago)
Author:
fhourdin
Message:

Reactivation du calcul d'un zmax continu pour les thermiques

(thermcell_height.F90, thermcell_plume.F90, thermcell_dry.F90)
ouvre la voie à la réactivation d'une fermeture humide des thermiques
iflag_thermals_closure=2
(conf_phys_m.F90, thermcell.h, thermcell_main.F90)

Modification liée à la conservation de l'eau

(add_phys_tend.F90, add_pbl_tend.F90, physiq.F90)

Modifications liées au déclenchement stochastique

  1. possibilité de revenir à la Ale déterministe pour le criter ALE>|CIN| iflag_trig_bl=2, 1 par défaut)
  2. possibilité d'activer une fermeture statistique où ALP est divisé par la probabilité de déclenchement iflag_clos_bl=1 (0 par défaut, ancienne option 1 passée en =2)

Modification de l'entrainemement dans la version "stratocumulus" du

modèle du thermique (quand iflag_thermals_ed=8).
(modifie thermcell_plume.F90)

Catherine, Jean-Yves et Frédéric

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ5/trunk/libf/phylmd/thermcell_main.F90

    r1978 r1998  
    513513    &                      lalim,lmin,zmax_sec,wmax_sec,lev_out)
    514514
     515 
    515516call test_ltherm(ngrid,nlay,pplev,pplay,lmin,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_dry  lmin  ')
    516517call test_ltherm(ngrid,nlay,pplev,pplay,lalim,seuil,ztv,po,ztva,zqla,f_star,zw2,'thermcell_dry  lalim ')
     
    533534      alim_star_clos(:,:)=alim_star(:,:)
    534535      alim_star_clos(:,:)=entr_star(:,:)+alim_star(:,:)
    535 
    536 ! Appel avec la version seche
     536!
     537!CR Appel de la fermeture seche
     538      if (iflag_thermals_closure.eq.1) then
     539
    537540      CALL thermcell_closure(ngrid,nlay,r_aspect_thermals,ptimestep,rho,  &
    538541     &   zlev,lalim,alim_star_clos,f_star,zmax_sec,wmax_sec,f,lev_out)
     
    541544! Appel avec les zmax et wmax tenant compte de la condensation
    542545! Semble moins bien marcher
    543 !     CALL thermcell_closure(ngrid,nlay,r_aspect_thermals,ptimestep,rho,  &
    544 !    &   zlev,lalim,alim_star,f_star,zmax,wmax,f,lev_out)
     546     else if (iflag_thermals_closure.eq.2) then
     547
     548     CALL thermcell_closure(ngrid,nlay,r_aspect_thermals,ptimestep,rho,  &
     549    &   zlev,lalim,alim_star,f_star,zmax,wmax,f,lev_out)
     550
     551     endif
     552
    545553!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    546554
     
    754762      do ig=1,ngrid
    755763        if (ok_lcl(ig)) then
    756           if ((pplay(ig,l) .ge. pcon(ig)) .and. (pplay(ig,l+1) .le. pcon(ig))) then
     764!ATTENTION,zw2 calcule en pplev
     765!          if ((pplay(ig,l) .ge. pcon(ig)) .and. (pplay(ig,l+1) .le. pcon(ig))) then
     766!          klcl(ig)=l
     767!          interp(ig)=(pcon(ig)-pplay(ig,klcl(ig)))/(pplay(ig,klcl(ig)+1)-pplay(ig,klcl(ig)))
     768!          endif
     769          if ((pplev(ig,l) .ge. pcon(ig)) .and. (pplev(ig,l+1) .le. pcon(ig))) then
    757770          klcl(ig)=l
    758           interp(ig)=(pcon(ig)-pplay(ig,klcl(ig)))/(pplay(ig,klcl(ig)+1)-pplay(ig,klcl(ig)))
     771          interp(ig)=(pcon(ig)-pplev(ig,klcl(ig)))/(pplev(ig,klcl(ig)+1)-pplev(ig,klcl(ig)))
    759772          endif
    760773        endif
     
    772785!!    enddo
    773786    do ig =1,ngrid
    774      zmax(ig)=pphi(ig,lmax(ig))/rg
     787!CR:REHABILITATION ZMAX CONTINU
     788!     zmax(ig)=pphi(ig,lmax(ig))/rg
    775789     if (ok_lcl(ig)) then
    776790      rhobarz0(ig)=rhobarz(ig,klcl(ig))+(rhobarz(ig,klcl(ig)+1) &
     
    915929!------------Closure------------------
    916930
    917   IF (iflag_clos_bl.ge.1) THEN
     931  IF (iflag_clos_bl.ge.2) THEN
    918932
    919933!-----Calcul de ALP_BL_STAT
     
    938952  enddo
    939953
    940   ENDIF ! (iflag_clos_bl.ge.1)
     954  ENDIF ! (iflag_clos_bl.ge.2)
    941955
    942956!!! fin nrlmd le 10/04/2012
Note: See TracChangeset for help on using the changeset viewer.