122 |
_RL vFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RL vFld(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
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) |
126 |
|
_RL viscAhD(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
127 |
|
_RL viscAhZ(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
128 |
|
_RL viscA4D(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
129 |
|
_RL viscA4Z(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
130 |
|
_RL vort3(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
131 |
|
_RL hDiv(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
132 |
|
_RL strain(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
133 |
|
_RL tension(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
134 |
C I,J,K - Loop counters |
C I,J,K - Loop counters |
135 |
C rVelMaskOverride - Factor for imposing special surface boundary conditions |
C rVelMaskOverride - Factor for imposing special surface boundary conditions |
136 |
C ( set according to free-surface condition ). |
C ( set according to free-surface condition ). |
164 |
INTEGER km1,kp1 |
INTEGER km1,kp1 |
165 |
_RL wVelBottomOverride |
_RL wVelBottomOverride |
166 |
LOGICAL bottomDragTerms |
LOGICAL bottomDragTerms |
|
_RL KE(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
|
167 |
CEOP |
CEOP |
168 |
|
|
169 |
km1=MAX(1,k-1) |
km1=MAX(1,k-1) |
187 |
fMer(i,j) = 0. |
fMer(i,j) = 0. |
188 |
rTransU(i,j) = 0. |
rTransU(i,j) = 0. |
189 |
rTransV(i,j) = 0. |
rTransV(i,j) = 0. |
190 |
|
strain(i,j) = 0. |
191 |
|
tension(i,j) = 0. |
192 |
ENDDO |
ENDDO |
193 |
ENDDO |
ENDDO |
194 |
|
|
263 |
ENDDO |
ENDDO |
264 |
ENDDO |
ENDDO |
265 |
|
|
266 |
CALL MOM_CALC_KE(bi,bj,k,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 |
269 |
|
CALL MOM_CALC_TENSION(bi,bj,k,uFld,vFld, |
270 |
|
O tension, |
271 |
|
I myThid) |
272 |
|
CALL MOM_CALC_STRAIN(bi,bj,k,uFld,vFld,hFacZ, |
273 |
|
O strain, |
274 |
|
I myThid) |
275 |
|
c 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 |
308 |
I myTime, myIter, myThid) |
I myTime, myIter, myThid) |
309 |
ENDIF |
ENDIF |
310 |
|
|
311 |
|
c IF (momViscosity) THEN |
312 |
|
c & CALL MOM_CALC_VISCOSITY(bi,bj,k, |
313 |
|
c I uFld,vFld, |
314 |
|
c O viscAhD,viscAhZ,myThid) |
315 |
|
|
316 |
C---- Zonal momentum equation starts here |
C---- Zonal momentum equation starts here |
317 |
|
|