Ignore:
Timestamp:
Feb 17, 2024, 9:25:57 PM (3 months ago)
Author:
evignon
Message:

petites modification neige soufflee

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/lmdz_blowing_snow_sublim_sedim.F90

    r4821 r4828  
    110110    DO i = 1, ngrid
    111111
     112          rhoair  = pplay(i,k) / zt(i) / RD
     113          dz      = (paprs(i,k)-paprs(i,k+1)) / (rhoair*RG)
     114          ! BS fall velocity assumed to be constant for now
     115          zvelo(i) = fallv_bs
     116
     117
    112118          IF (zt(i) .GT. RTT) THEN
    113119             
     
    117123           
    118124             taumeltbs=taumeltbs0*exp(-max(0.,(zt(i)-RTT)/(tbsmelt-RTT)))
    119              dqmelt=min(zqbs(i),zqbs(i)/taumeltbs*dtime)
     125             dqmelt=min(zqbs(i),-1.*zqbs(i)*(exp(-dtime/taumeltbs)-1.))
    120126             maxdqmelt= max(RCPD*(1.0+RVTMP2*(zq(i)+zqbs(i)))*(zt(i)-RTT)/(RLMLT+RLVTT),0.)
    121              dqmelt=min(max(dqmelt,0.),maxdqmelt)
     127             dqmelt=min(dqmelt,maxdqmelt)
    122128             ! q update, melting + evaporation
    123129             zq(i) = zq(i) + dqmelt
     
    130136              ! negative celcius temperature     
    131137              ! Sublimation scheme   
    132 
     138             
    133139              rhoair=pplay(i,k)/zt(i)/RD
    134140              dqsub = 1./rhoair*coef_eva_bs*(1.0-zq(i)/qsi(i))*((rhoair*zvelo(i)*zqbs(i))**expo_eva_bs)*dtime
     
    148154
    149155        ! Sedimentation scheme
    150            
    151         rhoair  = pplay(i,k) / zt(i) / RD
    152         dz      = (paprs(i,k)-paprs(i,k+1)) / (rhoair*RG)
    153         ! BS fall velocity assumed to be constant for now
    154         zvelo(i) = fallv_bs
     156        !----------------------
    155157
    156158        sedimn(i) = rhoair*zqbs(i)*zvelo(i)
     
    173175                 zt(i) = zt(i) - zqbs(i) * RLSTT/RCPD/(1.0+RVTMP2*(zq(i)+zqbs(i)))
    174176              ELSE
    175                zt(i) = zt(i) - zqbs(i) * (RLVTT+RLMLT)/RCPD/(1.0+RVTMP2*(zq(i)+zqbs(i)))
     177                 zt(i) = zt(i) - zqbs(i) * (RLVTT+RLMLT)/RCPD/(1.0+RVTMP2*(zq(i)+zqbs(i)))
    176178              ENDIF
    177179              zqbs(i)=0.
Note: See TracChangeset for help on using the changeset viewer.