3 & ,
u,
v,du,dv,ua,va,lev_out)
21 real masse(ngrid,
nlay),fm(ngrid,
nlay+1)
34 real wvd(ngrid,
nlay+1),wud(ngrid,
nlay+1)
37 LOGICAL ltherm(ngrid,
nlay)
54 detr(ig,
k)=fm(ig,
k)-fm(ig,
k+1)+entr(ig,
k)
67 &
'WARNING on initialise gamma(1:ngrid,1)=0.'
71 ltherm(ig,
k)=(fm(ig,
k+1)+
detr(ig,
k))*ptimestep > 1.e-5*masse(ig,
k)
72 if(ltherm(ig,
k).and.larga(ig)>0.)
then
73 gamma0(ig,
k)=masse(ig,
k) &
80 if (ltherm(ig,
k).and.larga(ig)<=0.) nlarga0=nlarga0+1
89 if (ltherm(ig,
k))
then
90 dua(ig,
k)=ua(ig,
k-1)-
u(ig,
k-1)
91 dva(ig,
k)=va(ig,
k-1)-
v(ig,
k-1)
115 if (ltherm(ig,
k))
then
119 gamma(ig,
k)=gamma0(ig,
k)*sqrt(dua(ig,
k)**2+dva(ig,
k)**2)
120 ua(ig,
k)=(fm(ig,
k)*ua(ig,
k-1) &
121 & +(zf2*entr(ig,
k)+
gamma(ig,
k))*
u(ig,
k)) &
122 & /(fm(ig,
k+1)+
detr(ig,
k)+entr(ig,
k)*zf*zf2 &
124 va(ig,
k)=(fm(ig,
k)*va(ig,
k-1) &
125 & +(zf2*entr(ig,
k)+
gamma(ig,
k))*
v(ig,
k)) &
126 & /(fm(ig,
k+1)+
detr(ig,
k)+entr(ig,
k)*zf*zf2 &
129 dua(ig,
k)=ua(ig,
k)-
u(ig,
k)
130 dva(ig,
k)=va(ig,
k)-
v(ig,
k)
131 ue(ig,
k)=(
u(ig,
k)-zf*ua(ig,
k))*zf2
132 ve(ig,
k)=(
v(ig,
k)-zf*va(ig,
k))*zf2
146 wud(ig,
k)=fm(ig,
k)*ue(ig,
k)
147 wvd(ig,
k)=fm(ig,
k)*ve(ig,
k)
162 & -(entr(ig,
k)+
gamma(ig,
k))*ue(ig,
k) &
163 & -wud(ig,
k)+wud(ig,
k+1)) &
166 & -(entr(ig,
k)+
gamma(ig,
k))*ve(ig,
k) &
167 & -wvd(ig,
k)+wvd(ig,
k+1)) &
179 print*,
'th_dv2 ig k gamma entr detr ua ue va ve wud wvd masse',ig,
k,
gamma(ig,
k), &
180 & entr(ig,
k),
detr(ig,
k),ua(ig,
k),ue(ig,
k),va(ig,
k),ve(ig,
k),wud(ig,
k),wvd(ig,
k),wud(ig,
k+1),wvd(ig,
k+1), &
187 print*,
'WARNING !!!!!! DANS THERMCELL_DV2 '
188 print*,nlarga0,
' points pour lesquels laraga=0. dans un thermique'
189 print*,
'Il faudrait decortiquer ces points'