- Timestamp:
- 2018-07-20T10:24:45+02:00 (6 years ago)
- Location:
- NEMO/branches/UKMO/dev_r9888_proto_GO8_package/src/OCE/LBC
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/UKMO/dev_r9888_proto_GO8_package/src/OCE/LBC/lbclnk.F90
r9892 r9977 38 38 ! 39 39 INTERFACE lbc_bdy_lnk 40 MODULE PROCEDURE mpp_lnk_bdy_2d, mpp_lnk_bdy_3d 40 MODULE PROCEDURE mpp_lnk_bdy_2d, mpp_lnk_bdy_3d, mpp_lnk_bdy_4d 41 41 END INTERFACE 42 42 ! -
NEMO/branches/UKMO/dev_r9888_proto_GO8_package/src/OCE/LBC/lib_mpp.F90
r9892 r9977 88 88 PUBLIC mppsize 89 89 PUBLIC mppsend, mpprecv ! needed by TAM and ICB routines 90 PUBLIC mpp_lnk_bdy_2d, mpp_lnk_bdy_3d 90 PUBLIC mpp_lnk_bdy_2d, mpp_lnk_bdy_3d, mpp_lnk_bdy_4d 91 91 PUBLIC mpprank 92 92 … … 456 456 ! !== 4D array and array of 4D pointer ==! 457 457 ! 458 !!# define DIM_4d459 !!# define ROUTINE_BDY mpp_lnk_bdy_4d460 !!# include "mpp_bdy_generic.h90"461 !!# undef ROUTINE_BDY462 !!# undef DIM_4d458 # define DIM_4d 459 # define ROUTINE_BDY mpp_lnk_bdy_4d 460 # include "mpp_bdy_generic.h90" 461 # undef ROUTINE_BDY 462 # undef DIM_4d 463 463 464 464 !!---------------------------------------------------------------------- -
NEMO/branches/UKMO/dev_r9888_proto_GO8_package/src/OCE/LBC/mpp_nfd_generic.h90
r9805 r9977 56 56 INTEGER :: ipi, ipj, ipk, ipl, ipf ! dimension of the input array 57 57 INTEGER :: imigr, iihom, ijhom ! local integers 58 INTEGER :: ierr, itaille, il di, ilei, iilb58 INTEGER :: ierr, itaille, ilci, ildi, ilei, iilb 59 59 INTEGER :: ij, iproc 60 60 INTEGER, DIMENSION (jpmaxngh) :: ml_req_nf ! for mpi_isend when avoiding mpi_allgather … … 117 117 IF(iproc /= -1) THEN 118 118 iilb = nimppt(iproc+1) 119 ilci = nlcit (iproc+1) 119 120 ildi = nldit (iproc+1) 120 121 ilei = nleit (iproc+1) 121 IF( iilb == 1 ) ildi = 1! e-w boundary already done -> force to take 1st column122 IF( iilb + jpi - 1 == jpiglo ) ilei = jpi ! e-w boundary already done -> force to take last column122 IF( iilb == 1 ) ildi = 1 ! e-w boundary already done -> force to take 1st column 123 IF( iilb + ilci - 1 == jpiglo ) ilei = ilci ! e-w boundary already done -> force to take last column 123 124 iilb = nfiimpp(isendto(jr),jpnj) - nfiimpp(isendto(1),jpnj) 124 125 ENDIF … … 185 186 iproc = nrank_north(jr) + 1 186 187 iilb = nimppt(iproc) 188 ilci = nlcit (iproc) 187 189 ildi = nldit (iproc) 188 190 ilei = nleit (iproc) 189 IF( iilb == 1 ) ildi = 1! e-w boundary already done -> force to take 1st column190 IF( iilb + jpi - 1 == jpiglo ) ilei = jpi ! e-w boundary already done -> force to take last column191 IF( iilb == 1 ) ildi = 1 ! e-w boundary already done -> force to take 1st column 192 IF( iilb + ilci - 1 == jpiglo ) ilei = ilci ! e-w boundary already done -> force to take last column 191 193 DO jf = 1, ipf 192 194 DO jl = 1, ipl -
NEMO/branches/UKMO/dev_r9888_proto_GO8_package/src/OCE/LBC/mppini.F90
r9892 r9977 536 536 & ibonit (jproc), ibonjt (jproc) 537 537 END DO 538 CLOSE(inum)539 538 END IF 540 539 … … 577 576 IF( jperio >= 3 .AND. jperio <= 6 .AND. jpni > 1 ) THEN 578 577 CALL mpp_ini_north 579 IF(lwp) WRITE(numout,*) 580 IF(lwp) WRITE(numout,*) ' ==>>> North fold boundary prepared for jpni >1' 578 IF (lwp) THEN 579 WRITE(numout,*) 580 WRITE(numout,*) ' ==>>> North fold boundary prepared for jpni >1' 581 ! additional prints in layout.dat 582 WRITE(inum,*) 583 WRITE(inum,*) 584 WRITE(inum,*) 'number of subdomains located along the north fold : ', ndim_rank_north 585 WRITE(inum,*) 'Rank of the subdomains located along the north fold : ', ndim_rank_north 586 DO jproc = 1, ndim_rank_north, 5 587 WRITE(inum,*) nrank_north( jproc:MINVAL( (/jproc+4,ndim_rank_north/) ) ) 588 END DO 589 ENDIF 581 590 ENDIF 582 591 ! 583 592 CALL mpp_init_ioipsl ! Prepare NetCDF output file (if necessary) 584 593 ! 585 IF( ln_nnogather ) CALL mpp_init_nfdcom ! northfold neighbour lists 594 IF( ln_nnogather ) THEN 595 CALL mpp_init_nfdcom ! northfold neighbour lists 596 IF (lwp) THEN 597 WRITE(inum,*) 598 WRITE(inum,*) 599 WRITE(inum,*) 'north fold exchanges with explicit point-to-point messaging :' 600 WRITE(inum,*) 'nfsloop : ', nfsloop 601 WRITE(inum,*) 'nfeloop : ', nfeloop 602 WRITE(inum,*) 'nsndto : ', nsndto 603 WRITE(inum,*) 'isendto : ', isendto 604 ENDIF 605 ENDIF 606 ! 607 IF (lwp) CLOSE(inum) 586 608 ! 587 609 DEALLOCATE(iin, ijn, ii_nono, ii_noea, ii_noso, ii_nowe, &
Note: See TracChangeset
for help on using the changeset viewer.