| 44 |
C === Local variables === |
C === Local variables === |
| 45 |
C i,j,bi,bj - Loop counters |
C i,j,bi,bj - Loop counters |
| 46 |
INTEGER i, j, bi, bj |
INTEGER i, j, bi, bj |
| 47 |
|
C hFacU, hFacV - determine the no-slip boundary condition |
| 48 |
|
INTEGER k |
| 49 |
|
_RS hFacU, hFacV |
| 50 |
|
|
| 51 |
|
|
| 52 |
C |
C |
| 53 |
DO bj=myByLo(myThid),myByHi(myThid) |
DO bj=myByLo(myThid),myByHi(myThid) |
| 75 |
& *recip_rSphere |
& *recip_rSphere |
| 76 |
& ) |
& ) |
| 77 |
C one metric term is missing |
C one metric term is missing |
|
CML e12(I,J,bi,bj)=HALF*( |
|
|
CML & (uFld(I,J+1,bi,bj)+uFld(I+1,J+1,bi,bj) |
|
|
CML & -uFld(I,J-1,bi,bj)-uFld(I+1,J-1,bi,bj)) |
|
|
CML & * 1. _d 0 / (dyC(I,J,bi,bj) + dyC(I,J-1,bi,bj)) |
|
|
CML & + |
|
|
CML & (vFld(I+1,J+1,bi,bj)+vFld(I+1,J,bi,bj) |
|
|
CML & -vFld(I-1,J+1,bi,bj)-vFld(I-1,J,bi,bj)) |
|
|
CML & * 1. _d 0 / (dxC(I,J,bi,bj) + dxC(I-1,J,bi,bj)) |
|
|
CML & +HALF* |
|
|
CML & (uFld(I, J, bi,bj)+uFld(I+1,J, bi,bj)) |
|
|
CML & * _tanPhiAtU(I,J,bi,bj)*recip_rSphere) |
|
| 78 |
ENDDO |
ENDDO |
| 79 |
ENDDO |
ENDDO |
| 80 |
|
IF ( SEAICE_no_slip ) THEN |
| 81 |
|
C no slip boundary conditions are applied as a body force |
| 82 |
|
C following mom_u/v_sidedrag |
| 83 |
|
k = 1 |
| 84 |
|
DO j=1-Oly+1,sNy+Oly-1 |
| 85 |
|
DO i=1-Olx+1,sNx+Olx-1 |
| 86 |
|
hFacU = _maskW(i,j,k,bi,bj) - _maskW(i,j-1,k,bi,bj) |
| 87 |
|
hFacV = _maskS(i,j,k,bi,bj) - _maskS(i-1,j,k,bi,bj) |
| 88 |
|
|
| 89 |
|
e12(I,J,bi,bj)= e12(I,J,bi,bj) |
| 90 |
|
& + HALF*( recip_rAz(i,j,bi,bj) |
| 91 |
|
& *( hFacU * ( _dxC(i,j ,bi,bj)*uFld(i,j ,bi,bj) |
| 92 |
|
& + _dxC(i,j-1,bi,bj)*uFld(i,j-1,bi,bj) ) |
| 93 |
|
& + hFacV * ( _dyC(i ,j,bi,bj)*vFld(i ,j,bi,bj) |
| 94 |
|
& + _dyC(i-1,j,bi,bj)*vFld(i-1,j,bi,bj) ) ) |
| 95 |
|
& - hFacU |
| 96 |
|
& * 0.25 _d 0 * (uFld(I,J,bi,bj)+uFld(I ,J-1,bi,bj)) |
| 97 |
|
& * ( _tanPhiAtU(I,J,bi,bj) + _tanPhiAtU(I,J-1,bi,bj) ) |
| 98 |
|
& *recip_rSphere |
| 99 |
|
& ) |
| 100 |
|
C one metric term is missing |
| 101 |
|
ENDDO |
| 102 |
|
ENDDO |
| 103 |
|
|
| 104 |
|
ENDIF |
| 105 |
ENDDO |
ENDDO |
| 106 |
ENDDO |
ENDDO |
| 107 |
#endif /* SEAICE_ALLOW_DYNAMICS */ |
#endif /* SEAICE_ALLOW_DYNAMICS */ |