317 |
C The ideal gas law is used implicitly here rather than calculating |
C The ideal gas law is used implicitly here rather than calculating |
318 |
C the specific volume, analogous to the oceanic case. |
C the specific volume, analogous to the oceanic case. |
319 |
|
|
320 |
|
C-- virtual potential temperature anomaly (including water vapour effect) |
321 |
|
DO j=jMin,jMax |
322 |
|
DO i=iMin,iMax |
323 |
|
alphaRho(i,j)=maskC(i,j,k,bi,bj) |
324 |
|
& *( tFld(i,j,k,bi,bj)*(sFld(i,j,k,bi,bj)*atm_Rq+one) |
325 |
|
& -tRef(k) ) |
326 |
|
ENDDO |
327 |
|
ENDDO |
328 |
|
|
329 |
C--- Integrate d Phi / d pi |
C--- Integrate d Phi / d pi |
330 |
|
|
331 |
IF (integr_GeoPot.EQ.0) THEN |
IF (integr_GeoPot.EQ.0) THEN |
353 |
C-------- This discretization is the energy conserving form |
C-------- This discretization is the energy conserving form |
354 |
DO j=jMin,jMax |
DO j=jMin,jMax |
355 |
DO i=iMin,iMax |
DO i=iMin,iMax |
356 |
phiHydC(i,j) = phiHydF(i,j) |
phiHydC(i,j) = phiHydF(i,j) +ddPIm*alphaRho(i,j) |
357 |
& +ddPIm*maskC(i,j,k,bi,bj) |
phiHydF(i,j) = phiHydC(i,j) +ddPIp*alphaRho(i,j) |
|
& *(tFld(i,j,k,bi,bj)-tRef(k)) |
|
|
phiHydF(i,j) = phiHydC(i,j) |
|
|
& +ddPIp*maskC(i,j,k,bi,bj) |
|
|
& *(tFld(i,j,k,bi,bj)-tRef(k)) |
|
358 |
ENDDO |
ENDDO |
359 |
ENDDO |
ENDDO |
360 |
C end: Energy Conserving Form, No hFac -- |
C end: Energy Conserving Form, No hFac -- |
382 |
ddRloc = ddRloc + surfPhiFac*etaH(i,j,bi,bj) |
ddRloc = ddRloc + surfPhiFac*etaH(i,j,bi,bj) |
383 |
#endif |
#endif |
384 |
phiHydC(i,j) = ddRloc*recip_drF(k)*2. _d 0 |
phiHydC(i,j) = ddRloc*recip_drF(k)*2. _d 0 |
385 |
& *ddPIm*maskC(i,j,k,bi,bj) |
& *ddPIm*alphaRho(i,j) |
|
& *(tFld(i,j,k,bi,bj)-tRef(k)) |
|
386 |
ELSE |
ELSE |
387 |
phiHydC(i,j) = phiHydF(i,j) |
phiHydC(i,j) = phiHydF(i,j) +ddPIm*alphaRho(i,j) |
|
& +ddPIm*maskC(i,j,k,bi,bj) |
|
|
& *(tFld(i,j,k,bi,bj)-tRef(k)) |
|
388 |
ENDIF |
ENDIF |
389 |
phiHydF(i,j) = phiHydC(i,j) |
phiHydF(i,j) = phiHydC(i,j) +ddPIp*alphaRho(i,j) |
|
& +ddPIp*maskC(i,j,k,bi,bj) |
|
|
& *(tFld(i,j,k,bi,bj)-tRef(k)) |
|
390 |
ENDDO |
ENDDO |
391 |
ENDDO |
ENDDO |
392 |
C end: Finite Volume Form, with Part-Cell Topo, linear in P by Half level |
C end: Finite Volume Form, with Part-Cell Topo, linear in P by Half level |
427 |
#endif |
#endif |
428 |
phiHydC(i,j) =( MAX(zero,ddRloc)*rec_dRm*ddPIm |
phiHydC(i,j) =( MAX(zero,ddRloc)*rec_dRm*ddPIm |
429 |
& +MIN(zero,ddRloc)*rec_dRp*ddPIp ) |
& +MIN(zero,ddRloc)*rec_dRp*ddPIp ) |
430 |
& *(tFld(i,j,k,bi,bj)-tRef(k)) |
& *alphaRho(i,j) |
431 |
ELSE |
ELSE |
432 |
phiHydC(i,j) = phiHydF(i,j) |
phiHydC(i,j) = phiHydF(i,j) +ddPIm*alphaRho(i,j) |
|
& +ddPIm*maskC(i,j,k,bi,bj) |
|
|
& *(tFld(I,J,k,bi,bj)-tRef(k)) |
|
433 |
ENDIF |
ENDIF |
434 |
phiHydF(i,j) = phiHydC(i,j) |
phiHydF(i,j) = phiHydC(i,j) +ddPIp*alphaRho(i,j) |
|
& +ddPIp*maskC(i,j,k,bi,bj) |
|
|
& *(tFld(I,J,k,bi,bj)-tRef(k)) |
|
435 |
ENDDO |
ENDDO |
436 |
ENDDO |
ENDDO |
437 |
C end: Finite Difference Form, with Part-Cell Topo |
C end: Finite Difference Form, with Part-Cell Topo |