42 |
DO I=2-Olx,sNx+Olx |
DO I=2-Olx,sNx+Olx |
43 |
IF ( use_original_hFac ) THEN |
IF ( use_original_hFac ) THEN |
44 |
vBarXY=0.25*( |
vBarXY=0.25*( |
45 |
& (vFld( i , j )*dxG( i , j ,bi,bj)*hFacS( i , j ,k,bi,bj) |
& (vFld( i , j )*dxG( i , j ,bi,bj)*_hFacS( i , j ,k,bi,bj) |
46 |
& +vFld(i-1, j )*dxG(i-1, j ,bi,bj)*hFacS(i-1, j ,k,bi,bj)) |
& +vFld(i-1, j )*dxG(i-1, j ,bi,bj)*_hFacS(i-1, j ,k,bi,bj)) |
47 |
& +(vFld( i ,j+1)*dxG( i ,j+1,bi,bj)*hFacS( i ,j+1,k,bi,bj) |
& +(vFld( i ,j+1)*dxG( i ,j+1,bi,bj)*_hFacS( i ,j+1,k,bi,bj) |
48 |
& +vFld(i-1,j+1)*dxG(i-1,j+1,bi,bj)*hFacS(i-1,j+1,k,bi,bj))) |
& +vFld(i-1,j+1)*dxG(i-1,j+1,bi,bj)*_hFacS(i-1,j+1,k,bi,bj))) |
49 |
IF (upwindVorticity) THEN |
IF (upwindVorticity) THEN |
50 |
IF (vBarXY.GT.0.) THEN |
IF (vBarXY.GT.0.) THEN |
51 |
vort3u=omega3(I,J)*r_hFacZ(i,j) |
vort3u=omega3(I,J)*r_hFacZ(i,j) |
58 |
ENDIF |
ENDIF |
59 |
ELSEIF ( SadournyCoriolis ) THEN |
ELSEIF ( SadournyCoriolis ) THEN |
60 |
Zm=0.5*( |
Zm=0.5*( |
61 |
& vFld( i , j )*dxG( i , j ,bi,bj)*hFacS( i , j ,k,bi,bj) |
& vFld( i , j )*dxG( i , j ,bi,bj)*_hFacS( i , j ,k,bi,bj) |
62 |
& +vFld(i-1, j )*dxG(i-1, j ,bi,bj)*hFacS(i-1, j ,k,bi,bj) ) |
& +vFld(i-1, j )*dxG(i-1, j ,bi,bj)*_hFacS(i-1, j ,k,bi,bj) ) |
63 |
Zp=0.5*( |
Zp=0.5*( |
64 |
& vFld( i ,j+1)*dxG( i ,j+1,bi,bj)*hFacS( i ,j+1,k,bi,bj) |
& vFld( i ,j+1)*dxG( i ,j+1,bi,bj)*_hFacS( i ,j+1,k,bi,bj) |
65 |
& +vFld(i-1,j+1)*dxG(i-1,j+1,bi,bj)*hFacS(i-1,j+1,k,bi,bj) ) |
& +vFld(i-1,j+1)*dxG(i-1,j+1,bi,bj)*_hFacS(i-1,j+1,k,bi,bj) ) |
66 |
IF (upwindVorticity) THEN |
IF (upwindVorticity) THEN |
67 |
IF ( (Zm+Zp) .GT.0.) THEN |
IF ( (Zm+Zp) .GT.0.) THEN |
68 |
vort3u=Zm*r_hFacZ(i, j )*omega3(i, j ) |
vort3u=Zm*r_hFacZ(i, j )*omega3(i, j ) |
96 |
|
|
97 |
IF (useJamartMomAdv) |
IF (useJamartMomAdv) |
98 |
& vBarXY = vBarXY * 4. _d 0 * hFacW(i,j,k,bi,bj) |
& vBarXY = vBarXY * 4. _d 0 * hFacW(i,j,k,bi,bj) |
99 |
& / MAX( epsil, (hFacS(i, j ,k,bi,bj)+hFacS(i-1, j ,k,bi,bj)) |
& / MAX( epsil,(_hFacS(i, j ,k,bi,bj)+_hFacS(i-1, j ,k,bi,bj)) |
100 |
& +(hFacS(i,j+1,k,bi,bj)+hFacS(i-1,j+1,k,bi,bj)) ) |
& +(_hFacS(i,j+1,k,bi,bj)+_hFacS(i-1,j+1,k,bi,bj)) ) |
101 |
|
|
102 |
uCoriolisTerm(i,j)= |
uCoriolisTerm(i,j)= |
103 |
& +vort3u*vBarXY*recip_dxC(i,j,bi,bj)*_maskW(i,j,k,bi,bj) |
& +vort3u*vBarXY*recip_dxC(i,j,bi,bj)*_maskW(i,j,k,bi,bj) |