8 |
C | slope. | |
C | slope. | |
9 |
C \==========================================================/ |
C \==========================================================/ |
10 |
SUBROUTINE CORRECTION_STEP( bi, bj, iMin, iMax, jMin, jMax, |
SUBROUTINE CORRECTION_STEP( bi, bj, iMin, iMax, jMin, jMax, |
11 |
I K, etaX, etaY, |
I K, etaSurfX, etaSurfY, |
12 |
I myCurrentTime, myThid ) |
I myCurrentTime, myThid ) |
13 |
IMPLICIT NONE |
IMPLICIT NONE |
14 |
! Common |
! Common |
19 |
#include "GRID.h" |
#include "GRID.h" |
20 |
#include "CG2D.h" |
#include "CG2D.h" |
21 |
C == Routine Arguments == |
C == Routine Arguments == |
22 |
C etaX, etaY - Surface slope |
C etaSurfX, etaSurfY - Surface slope |
23 |
C bi,bj,iMin,iMax,jMin,jMax, K - Loop counters |
C bi,bj,iMin,iMax,jMin,jMax, K - Loop counters |
24 |
C myThid - Instance number for this call to S/R CORRECTION_STEP |
C myThid - Instance number for this call to S/R CORRECTION_STEP |
25 |
C myCurrentTime - Current simulation time for this instance. |
C myCurrentTime - Current simulation time for this instance. |
26 |
_RL etaX(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RL etaSurfX(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
27 |
_RL etaY(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
_RL etaSurfY(1-OLx:sNx+OLx,1-OLy:sNy+OLy) |
28 |
INTEGER bi,bj,iMin,iMax,jMin,jMax |
INTEGER bi,bj,iMin,iMax,jMin,jMax |
29 |
INTEGER K |
INTEGER K |
30 |
INTEGER myThid |
INTEGER myThid |
42 |
DO j=jMin,jMax |
DO j=jMin,jMax |
43 |
DO i=iMin,iMax |
DO i=iMin,iMax |
44 |
uVel(i,j,k,bi,bj)=( gUNm1(i,j,k,bi,bj) |
uVel(i,j,k,bi,bj)=( gUNm1(i,j,k,bi,bj) |
45 |
& -deltaTmom*hxFac*gBaro *pSurfX(i,j) |
& -deltaTmom*hxFac*gBaro *etaSurfX(i,j) |
46 |
& )*_maskW(i,j,k,bi,bj) |
& )*_maskW(i,j,k,bi,bj) |
47 |
gUNm1(i,j,k,bi,bj)=gU(i,j,k,bi,bj) |
gUNm1(i,j,k,bi,bj)=gU(i,j,k,bi,bj) |
48 |
ENDDO |
ENDDO |
52 |
DO j=jMin,jMax |
DO j=jMin,jMax |
53 |
DO i=iMin,iMax |
DO i=iMin,iMax |
54 |
vVel(i,j,k,bi,bj)=( gVNm1(i,j,k,bi,bj) |
vVel(i,j,k,bi,bj)=( gVNm1(i,j,k,bi,bj) |
55 |
& -deltaTmom*hyFac*rRhonil *pSurfY(i,j) |
& -deltaTmom*hyFac*gBaro *etaSurfY(i,j) |
56 |
& )*_maskS(i,j,k,bi,bj) |
& )*_maskS(i,j,k,bi,bj) |
57 |
gVNm1(i,j,k,bi,bj)=gV(i,j,k,bi,bj) |
gVNm1(i,j,k,bi,bj)=gV(i,j,k,bi,bj) |
58 |
ENDDO |
ENDDO |