Changeset 5933


Ignore:
Timestamp:
Dec 16, 2025, 10:03:43 AM (4 weeks ago)
Author:
evignon
Message:

petite modif de la param des nuages de phase suite aux reponses aux reviews du papier de Lea

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/lmdz_lscp_tools.f90

    r5727 r5933  
    310310   REAL :: rho_air
    311311   REAL :: psati                                                          !--saturation vapor pressure wrt ice             [Pa]
    312 
     312   REAL :: sigmaw2                                                        !--variance of vertical turbulent velocity       [m2/s2]
    313313                                                                       
    314314    REAL :: tempvig1, tempvig2
     
    334334    DO i=1,klon
    335335     rho_air  = pplay(i) / temp(i) / RD
     336     ! assuming turbulence isotropy, tke=3/2*sigmaw2
     337     sigmaw2=2./3*tke(i)
    336338     ! because cldfra is intent in, but can be locally modified due to test
    337339     cldfra1D = cldfra(i)
     
    384386           !--cloud else fully iced cloud
    385387           IF ( (qiceini_incl .LT. eps) .AND. (invtau_e(i) .LT. eps) ) THEN
    386               IF ( (wvel(i) .GT. eps) .OR. (tke(i) .GT. eps) ) THEN
     388              IF ( (wvel(i)+sqrt(sigmaw2) .GT. eps) .OR. (tke(i) .GT. eps) ) THEN
    387389                 qvap_cld(i)   = qsatl(i) * cldfra1D
    388390                 qliq(i)       = MAX(0.,qtot_incl(i)-qsatl(i)) * cldfra1D
     
    484486                 !--Tau_dissipturb is the time needed for turbulence to decay
    485487                 !--due to viscosity
    486                  tau_dissipturb = gamma_taud * 2. * 2./3. * tke(i) / tke_dissip(i) / C0
     488                 tau_dissipturb = gamma_taud * 2. * sigmaw2 / tke_dissip(i) / C0
    487489
    488490                 !--------------------- PDF COMPUTATIONS ---------------------
     
    495497
    496498                 liqfra_max = MAX(0., (MIN (1.,( qtot_incl(i) - (qice_ini(i) / cldfra1D) - qsati(i) * (1 + sursat_iceext ) ) / ( qsatl(i) - qsati(i) ) ) ) )
    497                  sigma2_pdf = 1./2. * ( ai**2 ) *  2./3. * tke(i) * tau_dissipturb / (invtau_phaserelax + invtau_e(i))
     499                 sigma2_pdf = 1./2. * ( ai**2 ) *  sigmaw2 * tau_dissipturb / (invtau_phaserelax + invtau_e(i))
    498500                 ! sursat ranges between -1 and 1, so we prevent sigma2 so exceed 1
    499501                 cldfraliq(i) = 0.5 * (1. - erf( ( sursat_iceliq - sursat_equ) / (SQRT(2.* sigma2_pdf) ) ) )
Note: See TracChangeset for help on using the changeset viewer.