96 |
INTEGER I,J,K,bi,bj |
INTEGER I,J,K,bi,bj |
97 |
CEOP |
CEOP |
98 |
|
|
99 |
|
_BARRIER |
100 |
|
|
101 |
theSimulationMode = simulationMode |
theSimulationMode = simulationMode |
102 |
theCornerMode = cornerMode |
theCornerMode = cornerMode |
103 |
|
|
195 |
I exchWidthX, exchWidthY, |
I exchWidthX, exchWidthY, |
196 |
I theSimulationMode, theCornerMode, myThid ) |
I theSimulationMode, theCornerMode, myThid ) |
197 |
ENDIF |
ENDIF |
198 |
C Special case for zonal average model i.e. case where sNx == 1 |
C Special case for zonal average model i.e. case where Nx == 1 |
199 |
C In this case a forward mode exchange simply sets array to |
C In this case a forward mode exchange simply sets array to |
200 |
C the i=1 value for all i. |
C the i=1 value for all i. |
201 |
IF ( sNx .EQ. 1 ) THEN |
IF ( Nx .EQ. 1 ) THEN |
202 |
|
DO bj=myByLo(myThid),myByHi(myThid) |
203 |
|
DO bi=myBxLo(myThid),myBxHi(myThid) |
204 |
|
DO K = 1,myNz |
205 |
|
DO J = 1-myOLs,sNy+myOLn |
206 |
|
DO I = 1-myOLw,sNx+myOLe |
207 |
|
array(I,J,K,bi,bj) = array(1,J,K,bi,bj) |
208 |
|
ENDDO |
209 |
|
ENDDO |
210 |
|
ENDDO |
211 |
|
ENDDO |
212 |
|
ENDDO |
213 |
|
ENDIF |
214 |
|
C Special case for X-slice domain i.e. case where Ny == 1 |
215 |
|
C In this case a forward mode exchange simply sets array to |
216 |
|
C the j=1 value for all j. |
217 |
|
IF ( Ny .EQ. 1 ) THEN |
218 |
DO bj=myByLo(myThid),myByHi(myThid) |
DO bj=myByLo(myThid),myByHi(myThid) |
219 |
DO bi=myBxLo(myThid),myBxHi(myThid) |
DO bi=myBxLo(myThid),myBxHi(myThid) |
220 |
DO K = 1,myNz |
DO K = 1,myNz |
221 |
DO J = 1-myOLs,sNy+myOLn |
DO J = 1-myOLs,sNy+myOLn |
222 |
DO I = 1-myOLw,sNx+myOLe |
DO I = 1-myOLw,sNx+myOLe |
223 |
array(I,J,K,bi,bj) = array(sNx,J,K,bi,bj) |
array(I,J,K,bi,bj) = array(I,1,K,bi,bj) |
224 |
ENDDO |
ENDDO |
225 |
ENDDO |
ENDDO |
226 |
ENDDO |
ENDDO |