39 |
_RL dlwdtg(im2,jm2,Nrphys,Nbi,Nbj) |
_RL dlwdtg(im2,jm2,Nrphys,Nbi,Nbj) |
40 |
|
|
41 |
integer i,j,L |
integer i,j,L |
42 |
|
_RL getcon, gravity |
43 |
_RL pinv(im2,jm2), qbar(im2,jm2),tmpdiag(im2,jm2) |
_RL pinv(im2,jm2), qbar(im2,jm2),tmpdiag(im2,jm2) |
44 |
#ifdef ALLOW_DIAGNOSTICS |
#ifdef ALLOW_DIAGNOSTICS |
45 |
logical diagnostics_is_on |
logical diagnostics_is_on |
111 |
call diagnostics_fill(tmpdiag,'OSRCLR ',0,1,3,bi,bj,myid) |
call diagnostics_fill(tmpdiag,'OSRCLR ',0,1,3,bi,bj,myid) |
112 |
endif |
endif |
113 |
|
|
114 |
|
c Planetary Albedo |
115 |
|
c ---------------- |
116 |
|
if(diagnostics_is_on('PLALBEDO',myid) ) then |
117 |
|
do j=jm1,jm2 |
118 |
|
do i=im1,im2 |
119 |
|
if(radswt(i,j,bi,bj).ne.0.) then |
120 |
|
tmpdiag(i,j) = osr(i,j,bi,bj) |
121 |
|
else |
122 |
|
tmpdiag(i,j) = 0. |
123 |
|
endif |
124 |
|
enddo |
125 |
|
enddo |
126 |
|
call diagnostics_fill(tmpdiag,'PLALBEDO',0,1,3,bi,bj,myid) |
127 |
|
endif |
128 |
|
|
129 |
c Upward Longwave Flux at the Ground (W/m**2) |
c Upward Longwave Flux at the Ground (W/m**2) |
130 |
c ------------------------------------------- |
c ------------------------------------------- |
131 |
if(diagnostics_is_on('LWGUP ',myid) ) then |
if(diagnostics_is_on('LWGUP ',myid) ) then |
427 |
call diagnostics_fill(tmpdiag,'VDTRADSW',0,1,3,bi,bj,myid) |
call diagnostics_fill(tmpdiag,'VDTRADSW',0,1,3,bi,bj,myid) |
428 |
endif |
endif |
429 |
|
|
430 |
|
c Total Precipitable Water (g/cm^2) |
431 |
|
c --------------------------------------------- |
432 |
|
if(diagnostics_is_on('TPW ',myid) ) then |
433 |
|
gravity = getcon('GRAVITY') |
434 |
|
do j=jm1,jm2 |
435 |
|
do i=im1,im2 |
436 |
|
qbar(i,j) = 0.0 |
437 |
|
enddo |
438 |
|
enddo |
439 |
|
do L=1,Nrphys |
440 |
|
do j=jm1,jm2 |
441 |
|
do i=im1,im2 |
442 |
|
qbar(i,j) = qbar(i,j) + |
443 |
|
. sphy(i,j,L,bi,bj)*dp(i,j,L,bi,bj) |
444 |
|
enddo |
445 |
|
enddo |
446 |
|
enddo |
447 |
|
do j=jm1,jm2 |
448 |
|
do i=im1,im2 |
449 |
|
tmpdiag(i,j) = qbar(i,j)*10. _d 0 /gravity |
450 |
|
enddo |
451 |
|
enddo |
452 |
|
call diagnostics_fill(tmpdiag,'TPW ',0,1,3,bi,bj,myid) |
453 |
|
endif |
454 |
#endif |
#endif |
455 |
return |
return |
456 |
end |
end |