13 INTEGER lalim(ngrid),lmin(ngrid)
19 REAL zlev(ngrid,
nlay+1)
36 do l=
nlay,lalim(ig)+1,-1
37 if (
zw2(ig,
l).le.1.e-10)
then
46 if (
zw2(ig,
nlay) > 1.e-10 )
then
47 print*,
'WARNING !!!!! W2 thermiques non nul derniere couche '
54 if (lmin(ig).gt.1)
then
68 if (
l.le.lmax(ig))
then
69 if (
zw2(ig,
l).lt.0.)
then
73 wmax(ig)=max(wmax(ig),
zw2(ig,
l))
83 zlevinter(ig)=zlev(ig,1)
92 num(ig)=num(ig)+
zw2(ig,
l)*zlev(ig,
l)*(zlev(ig,
l+1)-zlev(ig,
l))
93 denom(ig)=denom(ig)+
zw2(ig,
l)*(zlev(ig,
l+1)-zlev(ig,
l))
97 if (denom(ig).gt.1.e-10)
then
98 zmax(ig)=2.*num(ig)/denom(ig)
107 zlevinter(ig)=(zlev(ig,lmax(ig)+1)-zlev(ig,lmax(ig)))* &
108 & linter(ig)+zlev(ig,lmax(ig))-lmax(ig)*(zlev(ig,lmax(ig)+1) &
109 & -zlev(ig,lmax(ig)))
112 zmax(ig)=max(
zmax(ig),zlevinter(ig)-zlev(ig,1))
122 if (lmix(ig).gt.1)
then
124 if (((
zw2(ig,lmix(ig)-1)-
zw2(ig,lmix(ig))) &
125 & *((zlev(ig,lmix(ig)))-(zlev(ig,lmix(ig)+1))) &
126 & -(
zw2(ig,lmix(ig))-
zw2(ig,lmix(ig)+1)) &
127 & *((zlev(ig,lmix(ig)-1))-(zlev(ig,lmix(ig))))).gt.1e-10) &
130 zmix(ig)=((
zw2(ig,lmix(ig)-1)-
zw2(ig,lmix(ig))) &
131 & *((zlev(ig,lmix(ig)))**2-(zlev(ig,lmix(ig)+1))**2) &
132 & -(
zw2(ig,lmix(ig))-
zw2(ig,lmix(ig)+1)) &
133 & *((zlev(ig,lmix(ig)-1))**2-(zlev(ig,lmix(ig)))**2)) &
134 & /(2.*((
zw2(ig,lmix(ig)-1)-
zw2(ig,lmix(ig))) &
135 & *((zlev(ig,lmix(ig)))-(zlev(ig,lmix(ig)+1))) &
136 & -(
zw2(ig,lmix(ig))-
zw2(ig,lmix(ig)+1)) &
137 & *((zlev(ig,lmix(ig)-1))-(zlev(ig,lmix(ig))))))
139 zmix(ig)=zlev(ig,lmix(ig))
155 if (
zmix(ig).ge.zlev(ig,
l).and. &
156 &
zmix(ig).lt.zlev(ig,
l+1))
then