Changeset 8138 for branches/2017/dev_r8126_UKMO_AGRIF_vert_interp/NEMOGCM/EXTERNAL/AGRIF/AGRIF_FILES/modinterp.F90
- Timestamp:
- 2017-06-05T12:01:03+02:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_r8126_UKMO_AGRIF_vert_interp/NEMOGCM/EXTERNAL/AGRIF/AGRIF_FILES/modinterp.F90
r7752 r8138 132 132 #if defined AGRIF_MPI 133 133 INTEGER, DIMENSION(nbdim) :: indminglob2,indmaxglob2 134 INTEGER, DIMENSION(nbdim) :: indminglob3,indmaxglob3 134 135 #endif 135 136 LOGICAL, DIMENSION(nbdim) :: noraftab … … 148 149 INTEGER, DIMENSION(nbdim,4,0:Agrif_Nbprocs-1) :: tab4 149 150 INTEGER, DIMENSION(nbdim,0:Agrif_Nbprocs-1,8) :: tab4t 151 INTEGER,DIMENSION(nbdim,2) :: tab5 152 INTEGER,DIMENSION(nbdim,2,0:Agrif_Nbprocs-1) :: tab6 153 INTEGER,DIMENSION(nbdim,0:Agrif_Nbprocs-1,2) :: tab5t 150 154 LOGICAL, DIMENSION(0:Agrif_Nbprocs-1) :: memberinall 151 155 LOGICAL, DIMENSION(0:Agrif_Nbprocs-1) :: sendtoproc1, recvfromproc1 … … 205 209 call Agrif_Childbounds(nbdim,lowerbound,upperbound, & 206 210 indminglob,indmaxglob, local_proc, coords, & 207 indminglob2,indmaxglob2,member) 211 indminglob2,indmaxglob2,member, & 212 indminglob3,indmaxglob3) 208 213 ! 209 214 if (member) then … … 224 229 member = .TRUE. 225 230 #endif 231 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 232 ! Correct for non refined directions 233 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 234 do i=1,nbdim 235 if (coords(i) == 0) then 236 indmin(i) = indminglob(i) 237 indmax(i) = indmaxglob(i) 238 pttruetab(i) = indminglob(i) 239 cetruetab(i) = indmaxglob(i) 240 endif 241 enddo 226 242 227 243 else … … 298 314 tab3(:,3) = indmin(:) 299 315 tab3(:,4) = indmax(:) 316 tab5(:,1) = indminglob3(:) 317 tab5(:,2) = indmaxglob3(:) 300 318 ! 301 319 call MPI_ALLGATHER(tab3,4*nbdim,MPI_INTEGER,tab4,4*nbdim,MPI_INTEGER,Agrif_mpi_comm,code) 302 320 call MPI_ALLGATHER(tab5,2*nbdim,MPI_INTEGER,tab6,2*nbdim,MPI_INTEGER,Agrif_mpi_comm,code) 303 321 if (.not.associated(tempPextend)) allocate(tempPextend) 304 322 … … 311 329 enddo 312 330 331 do k=0,Agrif_Nbprocs-1 332 do j=1,2 333 do i=1,nbdim 334 tab5t(i,k,j) = tab6(i,j,k) 335 enddo 336 enddo 337 enddo 338 313 339 memberin1(1) = memberin 314 340 call MPI_ALLGATHER(memberin1,1,MPI_LOGICAL,memberinall,1,MPI_LOGICAL,Agrif_mpi_comm,code) … … 319 345 sendtoproc1,recvfromproc1, & 320 346 tab4t(:,:,5),tab4t(:,:,6), & 321 tab4t(:,:,7),tab4t(:,:,8) ) 347 tab4t(:,:,7),tab4t(:,:,8), & 348 tab5t(:,:,1),tab5t(:,:,2)) 322 349 endif 323 350
Note: See TracChangeset
for help on using the changeset viewer.