161 |
C*********************************************************************** |
C*********************************************************************** |
162 |
C Unshadow input arrays (and make 'fizhi theta' from true theta) |
C Unshadow input arrays (and make 'fizhi theta' from true theta) |
163 |
C*********************************************************************** |
C*********************************************************************** |
|
|
|
164 |
kappa = getcon('KAPPA') |
kappa = getcon('KAPPA') |
165 |
p0kappa = 1000.0 ** kappa |
p0kappa = 1000.0 ** kappa |
166 |
S0 = getcon('S0') |
S0 = getcon('S0') |
170 |
xlats(i,j) = lats(i,j,bi,bj) |
xlats(i,j) = lats(i,j,bi,bj) |
171 |
xlons(i,j) = lons(i,j,bi,bj) |
xlons(i,j) = lons(i,j,bi,bj) |
172 |
surfZ(i,j) = Zsurf(i,j,bi,bj) |
surfZ(i,j) = Zsurf(i,j,bi,bj) |
|
raincon(i,j) = rainconin(i,j,bi,bj) |
|
|
rainlsp(i,j) = rainlspin(i,j,bi,bj) |
|
|
snowfall(i,j) = snowfallin(i,j,bi,bj) |
|
173 |
enddo |
enddo |
174 |
enddo |
enddo |
175 |
|
|
190 |
pkle(i,j,Nrphys+1,bi,bj)=(pephy(i,j,Nrphys+1,bi,bj)/100.) **kappa |
pkle(i,j,Nrphys+1,bi,bj)=(pephy(i,j,Nrphys+1,bi,bj)/100.) **kappa |
191 |
p(i,j,bi,bj) = pephy(i,j,Nrphys+1,bi,bj)/100. |
p(i,j,bi,bj) = pephy(i,j,Nrphys+1,bi,bj)/100. |
192 |
sea_ice(i,j) = sice(i,j,bi,bj) |
sea_ice(i,j) = sice(i,j,bi,bj) |
193 |
|
raincon(i,j) = rainconin(i,j,bi,bj) |
194 |
|
rainlsp(i,j) = rainlspin(i,j,bi,bj) |
195 |
|
snowfall(i,j) = snowfallin(i,j,bi,bj) |
196 |
enddo |
enddo |
197 |
enddo |
enddo |
198 |
do L = 1,Nrphys |
do L = 1,Nrphys |
262 |
do L = 1,Nrphys |
do L = 1,Nrphys |
263 |
do j = jm1,jm2 |
do j = jm1,jm2 |
264 |
do i = im1,im2 |
do i = im1,im2 |
|
duphy(i,j,L,bi,bj) = moistu(i,j,L,bi,bj) + turbu(i,j,L,bi,bj) |
|
|
dvphy(i,j,L,bi,bj) = moistv(i,j,L,bi,bj) + turbv(i,j,L,bi,bj) |
|
|
dthphy(i,j,L,bi,bj) = ((moistt(i,j,L,bi,bj)+turbt(i,j,L,bi,bj)+ |
|
|
. lwdt(i,j,L,bi,bj) + |
|
|
. dlwdtg(i,j,L,bi,bj) * (tgz(i,j,bi,bj)-tg0(i,j,bi,bj)) + |
|
|
. swdt(i,j,L,bi,bj)*radswt(i,j,bi,bj) )*p0kappa ) / p(i,j,bi,bj) |
|
|
dsphy(i,j,L,bi,bj) = (moistq(i,j,L,1,bi,bj)+turbq(i,j,L,1,bi,bj)) |
|
|
. /p(i,j,bi,bj) |
|
|
enddo |
|
|
enddo |
|
|
enddo |
|
|
|
|
|
do L = 1,Nrphys |
|
|
do j = jm1,jm2 |
|
|
do i = im1,im2 |
|
265 |
cldtotlwin(i,j,L,bi,bj) = cldtot_lw(i,j,L) |
cldtotlwin(i,j,L,bi,bj) = cldtot_lw(i,j,L) |
266 |
cldlsplwin(i,j,L,bi,bj) = cldlsp_lw(i,j,L) |
cldlsplwin(i,j,L,bi,bj) = cldlsp_lw(i,j,L) |
267 |
cldraslwin(i,j,L,bi,bj) = cldras_lw(i,j,L) |
cldraslwin(i,j,L,bi,bj) = cldras_lw(i,j,L) |
288 |
|
|
289 |
endif |
endif |
290 |
|
|
291 |
|
do L = 1,Nrphys |
292 |
|
do j = jm1,jm2 |
293 |
|
do i = im1,im2 |
294 |
|
duphy(i,j,L,bi,bj) = moistu(i,j,L,bi,bj) + turbu(i,j,L,bi,bj) |
295 |
|
dvphy(i,j,L,bi,bj) = moistv(i,j,L,bi,bj) + turbv(i,j,L,bi,bj) |
296 |
|
dthphy(i,j,L,bi,bj) = ((moistt(i,j,L,bi,bj)+turbt(i,j,L,bi,bj)+ |
297 |
|
. lwdt(i,j,L,bi,bj) + |
298 |
|
. dlwdtg(i,j,L,bi,bj) * (tgz(i,j,bi,bj)-tg0(i,j,bi,bj)) + |
299 |
|
. swdt(i,j,L,bi,bj)*radswt(i,j,bi,bj) )*p0kappa ) / p(i,j,bi,bj) |
300 |
|
dsphy(i,j,L,bi,bj) = (moistq(i,j,L,1,bi,bj)+turbq(i,j,L,1,bi,bj)) |
301 |
|
. /p(i,j,bi,bj) |
302 |
|
enddo |
303 |
|
enddo |
304 |
|
enddo |
305 |
|
|
306 |
call fizhi_step_diag(myid,p,uphy,vphy,thphy,sphy,qq,pkl,dpres, |
call fizhi_step_diag(myid,p,uphy,vphy,thphy,sphy,qq,pkl,dpres, |
307 |
. radswt,radswg,swgclr,osr,osrclr,st4,dst4,tgz,tg0,radlwg,lwgclr, |
. radswt,radswg,swgclr,osr,osrclr,st4,dst4,tgz,tg0,radlwg,lwgclr, |
308 |
. turbu,turbv,turbt,turbq,moistu,moistv,moistt,moistq, |
. turbu,turbv,turbt,turbq,moistu,moistv,moistt,moistq, |