Index: LMDZ6/trunk/libf/phylmd/lmdz_wake.f90
===================================================================
--- LMDZ6/trunk/libf/phylmd/lmdz_wake.f90	(revision 5774)
+++ LMDZ6/trunk/libf/phylmd/lmdz_wake.f90	(revision 5775)
@@ -2478,4 +2478,5 @@
   ! Cgw    : vitesse de propagation de onde de gravite
   ! LL     : distance between 2 wakes
+  ! Tgen   : 1 sur le temps caracteristique d'amortissement par les naissances de poches
 
   ! -------------------------------------------------------------------------
@@ -2573,4 +2574,5 @@
   REAL, DIMENSION (klon, klev)                          :: cgw
   REAL, DIMENSION (klon, klev)                          :: tgw
+  REAL, DIMENSION (klon, klev)                          :: tgen
 
   ! Variables liees au calcul de hw
@@ -2931,4 +2933,5 @@
 dp_omgb(:,:) = 0.
 dp_deltomg(:,:) = 0.
+tgen(:,:) = 0.
 hw(:) = 0.
 wape(:) = 0.
@@ -3817,4 +3820,5 @@
             entr(i, k) = entr_p(i,k) + gfl(i)*cstar(i) + &
                          sigmaw(i)*(1.-sigmaw(i))*dp_deltomg(i, k)   
+            tgen(i,k) = entr_p(i,k)/sigmaw(i)
 !>jyg
             wkspread(i, k) = (entr(i,k)-detr(i,k))/sigmaw(i)
@@ -3848,17 +3852,15 @@
           !! term (d_deltat_dadv); hence only the entrainment due to population dynamics (entr_p)
           !! appears in the expression of d_deltatw.
-          IF (dtimesub*tgw(i,k)<1.E-10) THEN
+          IF (dtimesub*(tgw(i,k)+tgen(i,k))<1.E-10) THEN
 !!!            d_deltatw(i, k) = dtimesub*(ff(i)+dtke(i,k) - &        ! nouvelle notation
             d_deltatw(i, k) = dtimesub*(d_deltat_dadv(i,k)+d_deltat_lsadv(i,k)+d_deltat_dcv(i,k) - & 
-               entr_p(i,k)*deltatw(i,k)/sigmaw(i) - &
                (death_rate(i)*sigmaw(i)+detr(i,k))*deltatw(i,k)/(1.-sigmaw(i)) - & ! cc
-               tgw(i,k)*deltatw(i,k) )
+               (tgw(i,k)+tgen(i,k))*deltatw(i,k) )
           ELSE
-            d_deltatw(i, k) = 1/tgw(i, k)*(1-exp(-dtimesub*tgw(i,k)))* &
+            d_deltatw(i, k) = 1/(tgw(i,k)+tgen(i,k))*(1-exp(-dtimesub*(tgw(i,k)+tgen(i,k))))* &
 !!!               (ff(i)+dtke(i,k) - &                                ! nouvelle notation
                (d_deltat_dadv(i,k)+d_deltat_lsadv(i,k)+d_deltat_dcv(i,k) - &
-                entr_p(i,k)*deltatw(i,k)/sigmaw(i) - &
                 (death_rate(i)*sigmaw(i)+detr(i,k))*deltatw(i,k)/(1.-sigmaw(i)) - &
-                tgw(i,k)*deltatw(i,k) )
+                (tgw(i,k)+tgen(i,k))*deltatw(i,k) )
           END IF
 
@@ -3868,7 +3870,14 @@
           !! term (d_deltaq_dadv); hence only the entrainment due to population dynamics (entr_p)
           !! appears in the expression of d_deltaqw.
-          d_deltaqw(i, k) = dtimesub*(d_deltaq_dadv(i,k)+d_deltaq_lsadv(i,k)+d_deltaq_dcv(i,k) - & 
-            entr_p(i,k)*deltaqw(i,k)/sigmaw(i) - &
-            (death_rate(i)*sigmaw(i)+detr(i,k))*deltaqw(i,k)/(1.-sigmaw(i)))
+          IF (dtimesub*tgen(i,k)<1.E-10) THEN
+            d_deltaqw(i, k) = dtimesub*(d_deltaq_dadv(i,k)+d_deltaq_lsadv(i,k)+d_deltaq_dcv(i,k) - & 
+               (death_rate(i)*sigmaw(i)+detr(i,k))*deltaqw(i,k)/(1.-sigmaw(i)) - &
+               tgen(i,k)*deltaqw(i,k))
+          ELSE
+            d_deltaqw(i, k) = 1/tgen(i,k)*(1-exp(-dtimesub*tgen(i,k))) * &
+               (d_deltaq_dadv(i,k)+d_deltaq_lsadv(i,k)+d_deltaq_dcv(i,k) - & 
+               (death_rate(i)*sigmaw(i)+detr(i,k))*deltaqw(i,k)/(1.-sigmaw(i)) - &
+               tgen(i,k)*deltaqw(i,k))
+          END IF
           ! cc
 
@@ -3885,4 +3894,7 @@
       PRINT *, 'wake-4.4, isubstep= ', isubstep,' deltatw(igout,k) ', (k,deltatw(igout,k), k=1,klev)
       PRINT *, 'wake-4.4, isubstep= ', isubstep,' d_deltat_dcv(igout,k) ', (k,d_deltat_dcv(igout,k), k=1,klev)
+      PRINT *, 'wake-4.4, isubstep= ', isubstep,' d_deltat_dadv(igout,k) ', (k,d_deltat_dadv(igout,k), k=1,klev)
+      PRINT *, 'wake-4.4, isubstep= ', isubstep,' d_deltat_lsadv(igout,k) ', (k,d_deltat_lsadv(igout,k), k=1,klev)
+      PRINT *, 'wake-4.4, isubstep= ', isubstep,' tgen(igout,k)*deltatw(igout,k) ', (k,tgen(igout,k)*deltatw(igout,k), k=1,klev)
       PRINT *, 'wake-4.4, isubstep= ', isubstep,' tgw(igout,k)*deltatw(igout,k) ', (k,tgw(igout,k)*deltatw(igout,k), k=1,klev)
       PRINT *, 'wake-4.4, isubstep= ', isubstep,' death_rate(igout) ', death_rate(igout)
