- Timestamp:
- 2021-01-07T13:13:16+01:00 (4 years ago)
- Location:
- NEMO/trunk/src/OCE
- Files:
-
- 13 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/src/OCE/CRS/crsdom.F90
r13286 r14275 1960 1960 ENDDO 1961 1961 ENDDO 1962 Nje0_crs = nje0all_crs(n proc + 1)1963 jpj_crs = jpjall_crs (n proc + 1)1964 Njs0_crs = njs0all_crs(n proc + 1)1965 njmpp_crs = njmppt_crs (n proc + 1)1962 Nje0_crs = nje0all_crs(narea) 1963 jpj_crs = jpjall_crs (narea) 1964 Njs0_crs = njs0all_crs(narea) 1965 njmpp_crs = njmppt_crs (narea) 1966 1966 1967 1967 ! Calcul suivant un decoupage en i … … 2004 2004 ENDDO 2005 2005 2006 Nie0_crs = nie0all_crs(n proc + 1)2007 jpi_crs = jpiall_crs (n proc + 1)2008 Nis0_crs = nis0all_crs(n proc + 1)2009 nimpp_crs = nimppt_crs (n proc + 1)2006 Nie0_crs = nie0all_crs(narea) 2007 jpi_crs = jpiall_crs (narea) 2008 Nis0_crs = nis0all_crs(narea) 2009 nimpp_crs = nimppt_crs (narea) 2010 2010 2011 2011 DO ji = 1, jpi_crs … … 2068 2068 WRITE(numout,*) '~~~~~~~ coarse domain local j-dimension jpj = ', jpj 2069 2069 WRITE(numout,*) 2070 WRITE(numout,*) ' n proc = ' , nproc2070 WRITE(numout,*) ' narea = ' , narea 2071 2071 WRITE(numout,*) ' jpi = ' , jpi 2072 2072 WRITE(numout,*) ' jpj = ' , jpj -
NEMO/trunk/src/OCE/DOM/dom_oce.F90
r14223 r14275 86 86 ! !: domain MPP decomposition parameters 87 87 INTEGER , PUBLIC :: nimpp, njmpp !: i- & j-indexes for mpp-subdomain left bottom 88 INTEGER , PUBLIC :: nproc !: number for local processor 89 INTEGER , PUBLIC :: narea !: number for local area 88 INTEGER , PUBLIC :: narea !: number for local area = MPI rank + 1 90 89 INTEGER , PUBLIC :: nbondi, nbondj !: mark of i- and j-direction local boundaries 91 90 INTEGER, ALLOCATABLE, PUBLIC :: nbondi_bdy(:) !: mark i-direction local boundaries for BDY open boundaries -
NEMO/trunk/src/OCE/LBC/lib_mpp.F90
r14229 r14275 122 122 #endif 123 123 124 INTEGER, PARAMETER :: nprocmax = 2**10 ! maximun dimension (required to be a power of 2)125 126 124 INTEGER, PUBLIC :: mppsize ! number of process 127 125 INTEGER, PUBLIC :: mpprank ! process number [ 0 - size-1 ] … … 1002 1000 !!---------------------------------------------------------------------- 1003 1001 #if ! defined key_mpi_off 1004 !-$$ WRITE (numout,*) 'mpp_ini_znl ', nproc, ' - ngrp_world : ', ngrp_world1005 !-$$ WRITE (numout,*) 'mpp_ini_znl ', nproc, ' - mpi_comm_world : ', mpi_comm_world1006 !-$$ WRITE (numout,*) 'mpp_ini_znl ', nproc, ' - mpi_comm_oce : ', mpi_comm_oce1002 !-$$ WRITE (numout,*) 'mpp_ini_znl ', mpprank, ' - ngrp_world : ', ngrp_world 1003 !-$$ WRITE (numout,*) 'mpp_ini_znl ', mpprank, ' - mpi_comm_world : ', mpi_comm_world 1004 !-$$ WRITE (numout,*) 'mpp_ini_znl ', mpprank, ' - mpi_comm_oce : ', mpi_comm_oce 1007 1005 ! 1008 1006 ALLOCATE( kwork(jpnij), STAT=ierr ) … … 1015 1013 ! 1016 1014 CALL MPI_ALLGATHER ( njmpp, 1, mpi_integer, kwork, 1, mpi_integer, mpi_comm_oce, ierr ) 1017 !-$$ WRITE (numout,*) 'mpp_ini_znl ', nproc, ' - kwork pour njmpp : ', kwork1015 !-$$ WRITE (numout,*) 'mpp_ini_znl ', mpprank, ' - kwork pour njmpp : ', kwork 1018 1016 !-$$ CALL flush(numout) 1019 1017 ! … … 1025 1023 ENDIF 1026 1024 END DO 1027 !-$$ WRITE (numout,*) 'mpp_ini_znl ', nproc, ' - ndim_rank_znl : ', ndim_rank_znl1025 !-$$ WRITE (numout,*) 'mpp_ini_znl ', mpprank, ' - ndim_rank_znl : ', ndim_rank_znl 1028 1026 !-$$ CALL flush(numout) 1029 1027 ! Allocate the right size to nrank_znl … … 1038 1036 ENDIF 1039 1037 END DO 1040 !-$$ WRITE (numout,*) 'mpp_ini_znl ', nproc, ' - nrank_znl : ', nrank_znl1038 !-$$ WRITE (numout,*) 'mpp_ini_znl ', mpprank, ' - nrank_znl : ', nrank_znl 1041 1039 !-$$ CALL flush(numout) 1042 1040 1043 1041 ! Create the opa group 1044 1042 CALL MPI_COMM_GROUP(mpi_comm_oce,ngrp_opa,ierr) 1045 !-$$ WRITE (numout,*) 'mpp_ini_znl ', nproc, ' - ngrp_opa : ', ngrp_opa1043 !-$$ WRITE (numout,*) 'mpp_ini_znl ', mpprank, ' - ngrp_opa : ', ngrp_opa 1046 1044 !-$$ CALL flush(numout) 1047 1045 1048 1046 ! Create the znl group from the opa group 1049 1047 CALL MPI_GROUP_INCL ( ngrp_opa, ndim_rank_znl, nrank_znl, ngrp_znl, ierr ) 1050 !-$$ WRITE (numout,*) 'mpp_ini_znl ', nproc, ' - ngrp_znl ', ngrp_znl1048 !-$$ WRITE (numout,*) 'mpp_ini_znl ', mpprank, ' - ngrp_znl ', ngrp_znl 1051 1049 !-$$ CALL flush(numout) 1052 1050 1053 1051 ! Create the znl communicator from the opa communicator, ie the pool of procs in the same row 1054 1052 CALL MPI_COMM_CREATE ( mpi_comm_oce, ngrp_znl, ncomm_znl, ierr ) 1055 !-$$ WRITE (numout,*) 'mpp_ini_znl ', nproc, ' - ncomm_znl ', ncomm_znl1053 !-$$ WRITE (numout,*) 'mpp_ini_znl ', mpprank, ' - ncomm_znl ', ncomm_znl 1056 1054 !-$$ CALL flush(numout) 1057 1055 ! -
NEMO/trunk/src/OCE/LBC/mppini.F90
r14229 r14275 133 133 !! nbondi : mark for "east-west local boundary" 134 134 !! nbondj : mark for "north-south local boundary" 135 !! nproc : number for local processor136 135 !! noea : number for local neighboring processor 137 136 !! nowe : number for local neighboring processor … … 506 505 507 506 ! just to save nono etc for all proc 508 ! warning ii*ij (zone) /= nproc(processors)!507 ! warning ii*ij (zone) /= mpprank (processors)! 509 508 ! ioso = zone number, ii_noso = proc number 510 509 ii_noso(:) = -1 … … 641 640 WRITE(inum,'(6i8,a,3i8,a)') jpnij,jpimax,jpjmax,jpk,jpiglo,jpjglo,& 642 641 & ' ( local: ',narea,jpi,jpj,' )' 643 WRITE(inum,'(a)') 'n procjpi jpj Nis0 Njs0 Nie0 Nje0 nimp njmp nono noso nowe noea nbondi nbondj '642 WRITE(inum,'(a)') 'narea jpi jpj Nis0 Njs0 Nie0 Nje0 nimp njmp nono noso nowe noea nbondi nbondj ' 644 643 645 644 DO jproc = 1, jpnij 646 WRITE(inum,'(13i5,2i7)') jproc-1, jpiall(jproc), jpjall(jproc), &645 WRITE(inum,'(13i5,2i7)') jproc, jpiall(jproc), jpjall(jproc), & 647 646 & nis0all(jproc), njs0all(jproc), & 648 647 & nie0all(jproc), nje0all(jproc), & … … 668 667 ENDIF 669 668 ! 670 nproc = narea-1671 669 IF(lwp) THEN 672 670 WRITE(numout,*) 673 671 WRITE(numout,*) ' resulting internal parameters : ' 674 WRITE(numout,*) ' n proc = ', nproc672 WRITE(numout,*) ' narea = ', narea 675 673 WRITE(numout,*) ' nowe = ', nowe , ' noea = ', noea 676 674 WRITE(numout,*) ' nono = ', nono , ' noso = ', noso … … 1326 1324 ENDIF 1327 1325 ! 1328 CALL flio_dom_set ( jpnij, n proc, idid, iglo, iloc, iabsf, iabsl, ihals, ihale, 'BOX', nidom)1326 CALL flio_dom_set ( jpnij, narea-1, idid, iglo, iloc, iabsf, iabsl, ihals, ihale, 'BOX', nidom) 1329 1327 ! 1330 1328 END SUBROUTINE init_ioipsl -
NEMO/trunk/src/OCE/OBS/obs_averg_h2d.F90
r12377 r14275 21 21 & e1t, e2t, & 22 22 & e1f, e2f, & 23 & glamt, gphit, & 24 & nproc 23 & glamt, gphit 25 24 USE in_out_manager 26 25 USE obs_const, ONLY : & -
NEMO/trunk/src/OCE/OBS/obs_grid.F90
r13286 r14275 130 130 CALL obs_grd_bruteforce( jpi, jpj, jpiglo, jpjglo, & 131 131 & 1, jpi, 1, jpj, & 132 & n proc, jpnij,&132 & narea-1, jpnij, & 133 133 & glamt, gphit, tmask, & 134 134 & kobsin, plam, pphi, & … … 137 137 CALL obs_grd_bruteforce( jpi, jpj, jpiglo, jpjglo, & 138 138 & 1, jpi, 1, jpj, & 139 & n proc, jpnij,&139 & narea-1, jpnij, & 140 140 & glamu, gphiu, umask, & 141 141 & kobsin, plam, pphi, & … … 144 144 CALL obs_grd_bruteforce( jpi, jpj, jpiglo, jpjglo, & 145 145 & 1, jpi, 1, jpj, & 146 & n proc, jpnij,&146 & narea-1, jpnij, & 147 147 & glamv, gphiv, vmask, & 148 148 & kobsin, plam, pphi, & … … 151 151 CALL obs_grd_bruteforce( jpi, jpj, jpiglo, jpjglo, & 152 152 & 1, jpi, 1, jpj, & 153 & n proc, jpnij,&153 & narea-1, jpnij, & 154 154 & glamf, gphif, fmask, & 155 155 & kobsin, plam, pphi, & … … 176 176 !! 177 177 !! ** Action : Return kproc holding the observation and kiobsi,kobsj 178 !! valid on kproc=n procprocessor only.178 !! valid on kproc=narea-1 processor only. 179 179 !! 180 180 !! History : … … 248 248 jlon = jpiglo 249 249 jlat = jpjglo 250 joffset = n proc250 joffset = narea-1 251 251 jostride = jpnij 252 252 ELSE … … 513 513 IF ( ABS( zlam - zplam(jo) ) < 1e-6 ) THEN 514 514 IF ( llinvalidcell(ji,jj) ) THEN 515 kproc(jo) = n proc+ 1000000515 kproc(jo) = narea-1 + 1000000 516 516 kobsi(jo) = ji + 1 517 517 kobsj(jo) = jj + 1 518 518 CYCLE 519 519 ELSE 520 kproc(jo) = n proc520 kproc(jo) = narea-1 521 521 kobsi(jo) = ji + 1 522 522 kobsj(jo) = jj + 1 … … 552 552 & zlamtm(:,ji,jj), zphitm(:,ji,jj) ) ) THEN 553 553 IF ( llinvalidcell(ji,jj) ) THEN 554 kproc(jo) = n proc+ 1000000554 kproc(jo) = narea-1 + 1000000 555 555 kobsi(jo) = ji + 1 556 556 kobsj(jo) = jj + 1 557 557 CYCLE 558 558 ELSE 559 kproc(jo) = n proc559 kproc(jo) = narea-1 560 560 kobsi(jo) = ji + 1 561 561 kobsj(jo) = jj + 1 … … 584 584 & zlamtm(:,ji,jj), zphitm(:,ji,jj) ) ) THEN 585 585 IF ( llinvalidcell(ji,jj) ) THEN 586 kproc(jo) = n proc+ 1000000586 kproc(jo) = narea-1 + 1000000 587 587 kobsi(jo) = ji + 1 588 588 kobsj(jo) = jj + 1 589 589 CYCLE 590 590 ELSE 591 kproc(jo) = n proc591 kproc(jo) = narea-1 592 592 kobsi(jo) = ji + 1 593 593 kobsj(jo) = jj + 1 … … 716 716 ! define the following format: "(a,a,ix.x,a,ix.x,a,ix.x,a)" 717 717 WRITE(clfmt, "('(a,a,i', i1, '.', i1',a,i', i1, '.', i1',a,i', i1, '.', i1',a)')") idg, idg, idg, idg, idg, idg 718 WRITE(cfname, clfmt ) TRIM(cn_gridsearchfile),'_', n proc,'of', jpni,'by', jpnj,'.nc'718 WRITE(cfname, clfmt ) TRIM(cn_gridsearchfile),'_', narea-1,'of', jpni,'by', jpnj,'.nc' 719 719 ENDIF 720 720 … … 820 820 CALL obs_grd_bruteforce( jpi, jpj, jpiglo, jpjglo, & 821 821 & 1, jpi, 1, jpj, & 822 & n proc, jpnij,&822 & narea-1, jpnij, & 823 823 & glamt, gphit, tmask, & 824 824 & nlons*nlats, lonsi, latsi, & … … 1070 1070 1071 1071 IF ( ( .NOT. ln_grid_global ) .OR. & 1072 & ( ( ln_grid_global ) .AND. ( n proc==0 ) ) ) THEN1072 & ( ( ln_grid_global ) .AND. ( narea-1==0 ) ) ) THEN 1073 1073 1074 1074 CALL chkerr( nf90_create (TRIM(cfname), nf90_clobber, idfile), & -
NEMO/trunk/src/OCE/OBS/obs_mpp.F90
r14229 r14275 18 18 !! obs_mpp_sum_integer : Sum an integer from all processors 19 19 !!---------------------------------------------------------------------- 20 USE dom_oce, ONLY : nproc, mig, mjg ! Ocean space and time domain variables21 20 USE mpp_map, ONLY : mppmap 22 21 USE in_out_manager -
NEMO/trunk/src/OCE/OBS/obs_prep.F90
r14056 r14275 62 62 !! * Modules used 63 63 USE par_oce ! Ocean parameters 64 USE dom_oce, ONLY : glamt, gphit, tmask , nproc! Geographical information64 USE dom_oce, ONLY : glamt, gphit, tmask ! Geographical information 65 65 !! * Arguments 66 66 TYPE(obs_surf), INTENT(INOUT) :: surfdata ! Full set of surface data … … 263 263 USE par_oce ! Ocean parameters 264 264 USE dom_oce, ONLY : & ! Geographical information 265 & gdept_1d, & 266 & nproc 265 & gdept_1d 267 266 268 267 !! * Arguments -
NEMO/trunk/src/OCE/OBS/obs_read_prof.F90
r14056 r14275 404 404 IF ( ( inpfiles(jj)%ptim(ji) > djulini(jj) ) .AND. & 405 405 & ( inpfiles(jj)%ptim(ji) <= djulend(jj) ) ) THEN 406 IF ( n proc == 0) THEN407 IF ( inpfiles(jj)%iproc(ji,1) > n proc) CYCLE406 IF ( narea == 1 ) THEN 407 IF ( inpfiles(jj)%iproc(ji,1) > narea-1 ) CYCLE 408 408 ELSE 409 IF ( inpfiles(jj)%iproc(ji,1) /= n proc) CYCLE409 IF ( inpfiles(jj)%iproc(ji,1) /= narea-1 ) CYCLE 410 410 ENDIF 411 411 llvalprof = .FALSE. … … 538 538 & ( inpfiles(jj)%ptim(ji) <= djulend(jj) ) ) THEN 539 539 540 IF ( n proc == 0) THEN541 IF ( inpfiles(jj)%iproc(ji,1) > n proc) CYCLE540 IF ( narea == 1 ) THEN 541 IF ( inpfiles(jj)%iproc(ji,1) > narea-1 ) CYCLE 542 542 ELSE 543 IF ( inpfiles(jj)%iproc(ji,1) /= n proc) CYCLE543 IF ( inpfiles(jj)%iproc(ji,1) /= narea-1 ) CYCLE 544 544 ENDIF 545 545 -
NEMO/trunk/src/OCE/OBS/obs_read_surf.F90
r14056 r14275 300 300 IF ( ( inpfiles(jj)%ptim(ji) > djulini(jj) ) .AND. & 301 301 & ( inpfiles(jj)%ptim(ji) <= djulend(jj) ) ) THEN 302 IF ( n proc == 0) THEN303 IF ( inpfiles(jj)%iproc(ji,1) > n proc) CYCLE302 IF ( narea == 1 ) THEN 303 IF ( inpfiles(jj)%iproc(ji,1) > narea-1 ) CYCLE 304 304 ELSE 305 IF ( inpfiles(jj)%iproc(ji,1) /= n proc) CYCLE305 IF ( inpfiles(jj)%iproc(ji,1) /= narea-1 ) CYCLE 306 306 ENDIF 307 307 llvalprof = .FALSE. … … 371 371 & ( inpfiles(jj)%ptim(ji) <= djulend(jj) ) ) THEN 372 372 373 IF ( n proc == 0) THEN374 IF ( inpfiles(jj)%iproc(ji,1) > n proc) CYCLE373 IF ( narea == 1 ) THEN 374 IF ( inpfiles(jj)%iproc(ji,1) > narea-1 ) CYCLE 375 375 ELSE 376 IF ( inpfiles(jj)%iproc(ji,1) /= n proc) CYCLE376 IF ( inpfiles(jj)%iproc(ji,1) /= narea-1 ) CYCLE 377 377 ENDIF 378 378 -
NEMO/trunk/src/OCE/OBS/obs_utils.F90
r10068 r14275 66 66 !! * Modules used 67 67 USE netcdf ! NetCDF library 68 USE dom_oce, ONLY : & ! Ocean space and time domain variables69 & nproc70 68 71 69 !! * Arguments … … 102 100 !! * Modules used 103 101 USE netcdf ! NetCDF library 104 USE dom_oce, ONLY : & ! Ocean space and time domain variables105 & nproc106 102 107 103 !! * Arguments -
NEMO/trunk/src/OCE/OBS/obs_write.F90
r14056 r14275 210 210 idg = MAX( INT(LOG10(REAL(jpnij,wp))) + 1, 4 ) ! how many digits to we need to write? min=4, max=9 211 211 WRITE(clfmt, "('(a,a,i', i1, '.', i1, ',a)')") idg, idg ! '(a,a,ix.x,a)' 212 WRITE(clfname,clfmt) TRIM(clfiletype), '_fdbk_', n proc, '.nc'212 WRITE(clfname,clfmt) TRIM(clfiletype), '_fdbk_', narea-1, '.nc' 213 213 214 214 IF(lwp) THEN … … 475 475 idg = MAX( INT(LOG10(REAL(jpnij,wp))) + 1, 4 ) ! how many digits to we need to write? min=4, max=9 476 476 WRITE(clfmt, "('(a,a,i', i1, '.', i1, ',a)')") idg, idg ! '(a,a,ix.x,a)' 477 WRITE(clfname,clfmt) TRIM(clfiletype), '_fdbk_', n proc, '.nc'477 WRITE(clfname,clfmt) TRIM(clfiletype), '_fdbk_', narea-1, '.nc' 478 478 479 479 IF(lwp) THEN -
NEMO/trunk/src/OCE/SBC/sbcice_cice.F90
r14215 r14275 877 877 ! (may be OK but not 100% sure) 878 878 879 IF(n proc==0) THEN879 IF(narea==1) THEN 880 880 ! pcg(:,:)=0.0 881 881 DO jn=1,jpnij … … 998 998 ! the lbclnk call on pn will replace these with sensible values 999 999 1000 IF(n proc==0) THEN1000 IF(narea==1) THEN 1001 1001 png(:,:,:)=0.0 1002 1002 DO jn=1,jpnij
Note: See TracChangeset
for help on using the changeset viewer.