- Timestamp:
- 2013-02-21T11:31:10+01:00 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2012/dev_v3_4_STABLE_2012/NEMOGCM/NEMO/OPA_SRC/LBC/mppini_2.h90
r2442 r3819 44 44 INTEGER :: ji, jj, jn, jproc, jarea ! dummy loop indices 45 45 INTEGER :: inum ! temporary logical unit 46 INTEGER :: idir ! temporary integers 46 47 INTEGER :: & 47 48 ii, ij, ifreq, il1, il2, & ! temporary integers … … 267 268 IF( jarea > ijm1 ) ipolj(ii,ij) = 3 268 269 IF( MOD(jpni,2) == 1 .AND. jarea == imil ) ipolj(ii,ij) = 4 269 IF( ipolj(ii,ij) == 3 ) iono(ii,ij) = jpni*jpnj-jarea+ijm1 270 IF( ipolj(ii,ij) == 3 ) iono(ii,ij) = jpni*jpnj-jarea+ijm1 - 1 ! MPI rank of northern neighbour 270 271 ENDIF 271 272 IF( jperio == 5 .OR. jperio == 6 ) THEN … … 274 275 IF( jarea > ijm1) ipolj(ii,ij) = 5 275 276 IF( MOD(jpni,2) == 1 .AND. jarea == imil ) ipolj(ii,ij) = 6 276 IF( ipolj(ii,ij) == 5) iono(ii,ij) = jpni*jpnj-jarea+ijm1 277 IF( ipolj(ii,ij) == 5) iono(ii,ij) = jpni*jpnj-jarea+ijm1 - 1 ! MPI rank of northern neighbour 277 278 ENDIF 278 279 … … 338 339 iino = 1 + MOD(iono(ii,ij),jpni) 339 340 ijno = 1 + (iono(ii,ij))/jpni 340 IF( ibondj(iino,ijno) == 1 ) ibondj(iino,ijno)=2 341 IF( ibondj(iino,ijno) == 0 ) ibondj(iino,ijno) = -1 341 ! Need to reverse the logical direction of communication 342 ! for northern neighbours of northern row processors (north-fold) 343 ! i.e. need to check that the northern neighbour only communicates 344 ! to the SOUTH (or not at all) if this area is land-only (#1057) 345 idir = 1 346 IF( ij .eq. jpnj .AND. ijno .eq. jpnj ) idir = -1 347 IF( ibondj(iino,ijno) == idir ) ibondj(iino,ijno)=2 348 IF( ibondj(iino,ijno) == 0 ) ibondj(iino,ijno) = -idir 342 349 ENDIF 343 350 IF( ipproc(ii,ij) == -1 .AND. ioso(ii,ij) >= 0 &
Note: See TracChangeset
for help on using the changeset viewer.