22 |
#include "GRID.h" |
#include "GRID.h" |
23 |
#include "SURFACE.h" |
#include "SURFACE.h" |
24 |
#include "MOM_VISC.h" |
#include "MOM_VISC.h" |
|
#if defined (ALLOW_3D_VISCAH) || defined (ALLOW_3D_VISCA4) |
|
|
#include "DYNVARS.h" |
|
|
#endif |
|
25 |
|
|
26 |
C !INPUT PARAMETERS: |
C !INPUT PARAMETERS: |
27 |
C myThid :: thread number |
C myThid :: my thread Id number |
28 |
INTEGER myThid |
INTEGER myThid |
29 |
CEOP |
CEOP |
30 |
|
|
31 |
C !LOCAL VARIABLES: |
C !LOCAL VARIABLES: |
32 |
C i,j,k,bi,bj :: loop counter |
C i,j,k,bi,bj :: loop counter |
33 |
INTEGER i,j,bi,bj |
INTEGER i,j,bi,bj |
34 |
#if (defined (NONLIN_FRSURF) || \ |
#if defined (ALLOW_3D_VISCAH) || defined (ALLOW_3D_VISCA4) |
|
defined (ALLOW_3D_VISCAH) || \ |
|
|
defined (ALLOW_3D_VISCA4)) |
|
35 |
INTEGER k |
INTEGER k |
36 |
#endif |
#endif |
37 |
|
|
|
#ifdef NONLIN_FRSURF |
|
|
C- used for side-drag: |
|
|
DO bj=myByLo(myThid), myByHi(myThid) |
|
|
DO bi=myBxLo(myThid), myBxHi(myThid) |
|
|
DO k=1,Nr |
|
|
DO j=1-Oly,sNy+Oly |
|
|
DO i=1-Olx,sNx+Olx |
|
|
h0FacC(i,j,k,bi,bj) = _hFacC(i,j,k,bi,bj) |
|
|
h0FacW(i,j,k,bi,bj) = _hFacW(i,j,k,bi,bj) |
|
|
h0FacS(i,j,k,bi,bj) = _hFacS(i,j,k,bi,bj) |
|
|
ENDDO |
|
|
ENDDO |
|
|
ENDDO |
|
|
ENDDO |
|
|
ENDDO |
|
|
#endif /* NONLIN_FRSURF */ |
|
|
|
|
38 |
#if defined (ALLOW_3D_VISCAH) || defined (ALLOW_3D_VISCA4) |
#if defined (ALLOW_3D_VISCAH) || defined (ALLOW_3D_VISCA4) |
39 |
DO bj=myByLo(myThid), myByHi(myThid) |
DO bj=myByLo(myThid), myByHi(myThid) |
40 |
DO bi=myBxLo(myThid), myBxHi(myThid) |
DO bi=myBxLo(myThid), myBxHi(myThid) |
45 |
viscAhDfld(i,j,k,bi,bj) = 0. _d 0 |
viscAhDfld(i,j,k,bi,bj) = 0. _d 0 |
46 |
viscAhZfld(i,j,k,bi,bj) = 0. _d 0 |
viscAhZfld(i,j,k,bi,bj) = 0. _d 0 |
47 |
#endif |
#endif |
48 |
#ifdef ALLOW_3D_VISCA4 |
#ifdef ALLOW_3D_VISCA4 |
49 |
viscA4Dfld(i,j,k,bi,bj) = 0. _d 0 |
viscA4Dfld(i,j,k,bi,bj) = 0. _d 0 |
50 |
viscA4Zfld(i,j,k,bi,bj) = 0. _d 0 |
viscA4Zfld(i,j,k,bi,bj) = 0. _d 0 |
51 |
#endif |
#endif |
52 |
ENDDO |
ENDDO |
53 |
ENDDO |
ENDDO |
54 |
ENDDO |
ENDDO |
127 |
CALL READ_FLD_XYZ_RL(viscAhZfile,' ',viscAhZfld,0,myThid) |
CALL READ_FLD_XYZ_RL(viscAhZfile,' ',viscAhZfld,0,myThid) |
128 |
CALL EXCH_Z_3D_RL( viscAhZfld, Nr, myThid ) |
CALL EXCH_Z_3D_RL( viscAhZfld, Nr, myThid ) |
129 |
ENDIF |
ENDIF |
130 |
#endif |
#endif /* ALLOW_3D_VISCAH */ |
131 |
#ifdef ALLOW_3D_VISCA4 |
#ifdef ALLOW_3D_VISCA4 |
132 |
IF ( viscA4Dfile .NE. ' ' ) THEN |
IF ( viscA4Dfile .NE. ' ' ) THEN |
133 |
CALL READ_FLD_XYZ_RL(viscA4Dfile,' ',viscA4Dfld,0,myThid) |
CALL READ_FLD_XYZ_RL(viscA4Dfile,' ',viscA4Dfld,0,myThid) |
137 |
CALL READ_FLD_XYZ_RL(viscA4Zfile,' ',viscA4Zfld,0,myThid) |
CALL READ_FLD_XYZ_RL(viscA4Zfile,' ',viscA4Zfld,0,myThid) |
138 |
CALL EXCH_Z_3D_RL( viscA4Zfld, Nr, myThid ) |
CALL EXCH_Z_3D_RL( viscA4Zfld, Nr, myThid ) |
139 |
ENDIF |
ENDIF |
140 |
#endif |
#endif /* ALLOW_3D_VISCA4 */ |
141 |
|
|
142 |
#ifdef ALLOW_DIAGNOSTICS |
#ifdef ALLOW_DIAGNOSTICS |
143 |
IF ( useDiagnostics ) THEN |
IF ( useDiagnostics ) THEN |