12 |
|
|
13 |
#ifdef ALLOW_DIAGNOSTICS |
#ifdef ALLOW_DIAGNOSTICS |
14 |
#include "SIZE.h" |
#include "SIZE.h" |
15 |
#include "diagnostics_SIZE.h" |
#include "DIAGNOSTICS_SIZE.h" |
16 |
#include "diagnostics.h" |
#include "DIAGNOSTICS.h" |
17 |
#endif |
#endif |
18 |
|
|
19 |
integer myThid,im1,im2,jm1,jm2,Nrphys,Nbi,Nbj,bi,bj,ntracer |
integer myThid,im1,im2,jm1,jm2,Nrphys,Nbi,Nbj,bi,bj,ntracer |
49 |
|
|
50 |
C ********************************************************************** |
C ********************************************************************** |
51 |
|
|
52 |
|
#ifdef ALLOW_DIAGNOSTICS |
53 |
do j=jm1,jm2 |
do j=jm1,jm2 |
54 |
do i=im1,im2 |
do i=im1,im2 |
55 |
pinv(i,j) = 1.0 / p(i,j,bi,bj) |
pinv(i,j) = 1.0 / p(i,j,bi,bj) |
146 |
enddo |
enddo |
147 |
endif |
endif |
148 |
|
|
149 |
|
if( (bi.eq.1) .and. (bj.eq.1) ) then |
150 |
nradswt = nradswt + 1 |
nradswt = nradswt + 1 |
151 |
nradswg = nradswg + 1 |
nradswg = nradswg + 1 |
152 |
nswgclr = nswgclr + 1 |
nswgclr = nswgclr + 1 |
155 |
nradlwg = nradlwg + 1 |
nradlwg = nradlwg + 1 |
156 |
nlwgclr = nlwgclr + 1 |
nlwgclr = nlwgclr + 1 |
157 |
nlwgup = nlwgup + 1 |
nlwgup = nlwgup + 1 |
158 |
|
endif |
159 |
|
|
160 |
C ********************************************************************** |
C ********************************************************************** |
161 |
do L=1,Nrphys |
do L=1,Nrphys |
221 |
enddo |
enddo |
222 |
enddo |
enddo |
223 |
endif |
endif |
224 |
|
|
225 |
c Longwave Heating Clear-Sky (deg/day) |
c Longwave Heating Clear-Sky (deg/day) |
226 |
c ------------------------------------ |
c ------------------------------------ |
227 |
if (ilwclr.ne.0) then |
if (ilwclr.ne.0) then |
240 |
if (iradsw.ne.0) then |
if (iradsw.ne.0) then |
241 |
do j=jm1,jm2 |
do j=jm1,jm2 |
242 |
do i=im1,im2 |
do i=im1,im2 |
243 |
qdiag(i,j,iradsw+l-1,bi,bj) = qdiag(i,j,iradsw+l-1,bi,bj) + |
qdiag(i,j,iradsw+l-1,bi,bj) = qdiag(i,j,iradsw+l-1,bi,bj) |
244 |
. + swdt(i,j,l,bi,bj)*radswt(i,j,bi,bj)* |
. + swdt(i,j,l,bi,bj)*radswt(i,j,bi,bj)* |
245 |
. pk(i,j,l,bi,bj)*pinv(i,j)*86400 |
. pk(i,j,l,bi,bj)*pinv(i,j)*86400 |
246 |
enddo |
enddo |
315 |
|
|
316 |
enddo |
enddo |
317 |
|
|
318 |
|
if( (bi.eq.1) .and. (bj.eq.1) ) then |
319 |
|
|
320 |
ndiabu = ndiabu + 1 |
ndiabu = ndiabu + 1 |
321 |
ndiabv = ndiabv + 1 |
ndiabv = ndiabv + 1 |
322 |
ndiabt = ndiabt + 1 |
ndiabt = ndiabt + 1 |
331 |
ntke = ntke + 1 |
ntke = ntke + 1 |
332 |
nsphu = nsphu + 1 |
nsphu = nsphu + 1 |
333 |
|
|
334 |
|
endif |
335 |
|
|
336 |
C ********************************************************************** |
C ********************************************************************** |
337 |
|
|
338 |
c Vertically Averaged Moist-T Increment (K/day) |
c Vertically Averaged Moist-T Increment (K/day) |
432 |
enddo |
enddo |
433 |
endif |
endif |
434 |
|
|
435 |
|
if( (bi.eq.1) .and. (bj.eq.1) ) then |
436 |
nvdtmoist = nvdtmoist + 1 |
nvdtmoist = nvdtmoist + 1 |
437 |
nvdtturb = nvdtturb + 1 |
nvdtturb = nvdtturb + 1 |
438 |
nvdtradlw = nvdtradlw + 1 |
nvdtradlw = nvdtradlw + 1 |
439 |
nvdtradsw = nvdtradsw + 1 |
nvdtradsw = nvdtradsw + 1 |
440 |
|
endif |
441 |
|
|
442 |
|
#endif |
443 |
return |
return |
444 |
end |
end |