123 |
_RL rTransU(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RL rTransU(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
124 |
_RL rTransV(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RL rTransV(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
125 |
_RL KE(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RL KE(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
126 |
_RL viscAhD(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
c _RL viscAh_D(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
127 |
_RL viscAhZ(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
c _RL viscAh_Z(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
128 |
_RL viscA4D(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
c _RL viscA4_D(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
129 |
_RL viscA4Z(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
c _RL viscA4_Z(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
130 |
_RL vort3(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
c _RL vort3(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
131 |
_RL hDiv(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
c _RL hDiv(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
132 |
_RL strain(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RL strain(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
133 |
_RL tension(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RL tension(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
134 |
C I,J,K - Loop counters |
C I,J,K - Loop counters |
265 |
|
|
266 |
CALL MOM_CALC_KE(bi,bj,k,3,uFld,vFld,KE,myThid) |
CALL MOM_CALC_KE(bi,bj,k,3,uFld,vFld,KE,myThid) |
267 |
|
|
268 |
c IF (viscAstrain.NE.0. .OR. viscAtension.NE.0.) THEN |
IF (viscAstrain.NE.0. .OR. viscAtension.NE.0.) THEN |
269 |
CALL MOM_CALC_TENSION(bi,bj,k,uFld,vFld, |
CALL MOM_CALC_TENSION(bi,bj,k,uFld,vFld, |
270 |
O tension, |
O tension, |
271 |
I myThid) |
I myThid) |
272 |
CALL MOM_CALC_STRAIN(bi,bj,k,uFld,vFld,hFacZ, |
CALL MOM_CALC_STRAIN(bi,bj,k,uFld,vFld,hFacZ, |
273 |
O strain, |
O strain, |
274 |
I myThid) |
I myThid) |
275 |
c ENDIF |
ENDIF |
276 |
|
|
277 |
C--- First call (k=1): compute vertical adv. flux fVerU(kUp) & fVerV(kUp) |
C--- First call (k=1): compute vertical adv. flux fVerU(kUp) & fVerV(kUp) |
278 |
IF (momAdvection.AND.k.EQ.1) THEN |
IF (momAdvection.AND.k.EQ.1) THEN |
311 |
c IF (momViscosity) THEN |
c IF (momViscosity) THEN |
312 |
c & CALL MOM_CALC_VISCOSITY(bi,bj,k, |
c & CALL MOM_CALC_VISCOSITY(bi,bj,k, |
313 |
c I uFld,vFld, |
c I uFld,vFld, |
314 |
c O viscAhD,viscAhZ,myThid) |
c O viscAh_D,viscAh_Z,myThid) |
315 |
|
|
316 |
C---- Zonal momentum equation starts here |
C---- Zonal momentum equation starts here |
317 |
|
|
385 |
#endif |
#endif |
386 |
& *(fZon(i,j ) - fZon(i-1,j) |
& *(fZon(i,j ) - fZon(i-1,j) |
387 |
& +fMer(i,j+1) - fMer(i ,j) |
& +fMer(i,j+1) - fMer(i ,j) |
388 |
& +fVerU(i,j,kUp)*rkFac - fVerU(i,j,kDown)*rkFac |
& -fVerU(i,j,kUp)*rkSign + fVerU(i,j,kDown)*rkSign |
389 |
& ) |
& ) |
390 |
& - phxFac*dPhiHydX(i,j) |
& - phxFac*dPhiHydX(i,j) |
391 |
ENDDO |
ENDDO |
455 |
gU(i,j,k,bi,bj) = gU(i,j,k,bi,bj)+mTFacU*mT(i,j) |
gU(i,j,k,bi,bj) = gU(i,j,k,bi,bj)+mTFacU*mT(i,j) |
456 |
ENDDO |
ENDDO |
457 |
ENDDO |
ENDDO |
458 |
|
|
459 |
|
ENDIF |
460 |
|
IF (usingCylindricalGrid) THEN |
461 |
|
CALL MOM_U_METRIC_CYLINDER(bi,bj,k,uFld,vFld,mT,myThid) |
462 |
|
DO j=jMin,jMax |
463 |
|
DO i=iMin,iMax |
464 |
|
gU(i,j,k,bi,bj) = gU(i,j,k,bi,bj)+mTFacU*mT(i,j) |
465 |
|
ENDDO |
466 |
|
ENDDO |
467 |
|
|
468 |
ENDIF |
ENDIF |
|
|
|
469 |
C-- Set du/dt on boundaries to zero |
C-- Set du/dt on boundaries to zero |
470 |
DO j=jMin,jMax |
DO j=jMin,jMax |
471 |
DO i=iMin,iMax |
DO i=iMin,iMax |
546 |
#endif |
#endif |
547 |
& *(fZon(i+1,j) - fZon(i,j ) |
& *(fZon(i+1,j) - fZon(i,j ) |
548 |
& +fMer(i,j ) - fMer(i,j-1) |
& +fMer(i,j ) - fMer(i,j-1) |
549 |
& +fVerV(i,j,kUp)*rkFac - fVerV(i,j,kDown)*rkFac |
& -fVerV(i,j,kUp)*rkSign + fVerV(i,j,kDown)*rkSign |
550 |
& ) |
& ) |
551 |
& - phyFac*dPhiHydY(i,j) |
& - phyFac*dPhiHydY(i,j) |
552 |
ENDDO |
ENDDO |
617 |
ENDDO |
ENDDO |
618 |
ENDDO |
ENDDO |
619 |
ENDIF |
ENDIF |
620 |
|
IF (usingCylindricalGrid) THEN |
621 |
|
CALL MOM_V_METRIC_CYLINDER(bi,bj,k,uFld,vFld,mT,myThid) |
622 |
|
DO j=jMin,jMax |
623 |
|
DO i=iMin,iMax |
624 |
|
gV(i,j,k,bi,bj) = gV(i,j,k,bi,bj)+mTFacV*mT(i,j) |
625 |
|
ENDDO |
626 |
|
ENDDO |
627 |
|
ENDIF |
628 |
|
|
629 |
C-- Set dv/dt on boundaries to zero |
C-- Set dv/dt on boundaries to zero |
630 |
DO j=jMin,jMax |
DO j=jMin,jMax |