New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 5260 for branches/2014/dev_r4650_UKMO10_Tidally_Meaned_Diagnostics/NEMOGCM/NEMO/OFF_SRC/nemogcm.F90 – NEMO

Ignore:
Timestamp:
2015-05-12T12:37:15+02:00 (9 years ago)
Author:
deazer
Message:

Merged branch with Trunk at revision 5253.
Checked with SETTE, passes modified iodef.xml for AMM12 experiment

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2014/dev_r4650_UKMO10_Tidally_Meaned_Diagnostics/NEMOGCM/NEMO/OFF_SRC/nemogcm.F90

    • Property svn:keywords set to Id
    r4640 r5260  
    4646   USE timing          ! Timing 
    4747   USE lib_fortran     ! Fortran utilities (allows no signed zero when 'key_nosignedzero' defined) 
    48    USE lbcnfd, ONLY: isendto, nsndto 
     48   USE lbcnfd, ONLY: isendto, nsndto, nfsloop, nfeloop ! Setup of north fold exchanges 
    4949 
    5050   USE trc 
    5151   USE trcnam 
    5252   USE trcrst 
     53   USE diaptr         ! Need to initialise this as some variables are used in if statements later 
    5354 
    5455   IMPLICIT NONE 
     
    6162   !!---------------------------------------------------------------------- 
    6263   !! NEMO/OFF 3.3 , NEMO Consortium (2010) 
    63    !! $Id: nemogcm.F90 2528 2010-12-27 17:33:53Z rblod $ 
     64   !! $Id$ 
    6465   !! Software governed by the CeCILL licence     (NEMOGCM/NEMO_CeCILL.txt) 
    6566   !!---------------------------------------------------------------------- 
     
    148149         &             nn_bench, nn_timing 
    149150      NAMELIST/namcfg/ cp_cfg, cp_cfz, jp_cfg, jpidta, jpjdta, jpkdta, jpiglo, jpjglo, & 
    150          &             jpizoom, jpjzoom, jperio 
     151         &             jpizoom, jpjzoom, jperio, ln_use_jattr 
    151152      !!---------------------------------------------------------------------- 
    152153      cltxt = '' 
     
    232233         WRITE(numout,*) '                       NEMO team' 
    233234         WRITE(numout,*) '            Ocean General Circulation Model' 
    234          WRITE(numout,*) '                  version 3.5  (2012) ' 
     235         WRITE(numout,*) '                  version 3.6  (2015) ' 
    235236         WRITE(numout,*) 
    236237         WRITE(numout,*) 
     
    298299      !                                     ! Passive tracers 
    299300                            CALL     trc_init   ! Passive tracers initialization 
    300  
     301      ! 
     302      ! Initialise diaptr as some variables are used in if statements later (in 
     303      ! various advection and diffusion routines. 
     304                            CALL dia_ptr_init 
     305      ! 
    301306      IF(lwp) WRITE(numout,cform_aaa)       ! Flag AAAAAAA 
    302307      ! 
     
    354359         WRITE(numout,*) '      left bottom j index of the zoom (in data domain) jpizoom = ', jpjzoom 
    355360         WRITE(numout,*) '      lateral cond. type (between 0 and 6) jperio = ', jperio    
     361         WRITE(numout,*) '      use file attribute if exists as i/p j-start ln_use_jattr = ', ln_use_jattr 
    356362      ENDIF 
    357363      !                             ! Parameter control 
     
    589595      !!---------------------------------------------------------------------- 
    590596      !!    1.0  ! 2011-10  (A. C. Coward, NOCS & J. Donners, PRACE) 
    591       !!    2.0  ! 2013-06 Setup avoiding MPI communication (I. Epicoco, S. Mocavero, CMCC)  
     597      !!    2.0  ! 2013-06 Setup avoiding MPI communication (I. Epicoco, S. 
     598      !Mocavero, CMCC)  
    592599      !!---------------------------------------------------------------------- 
    593600 
     
    612619          !loop over the other north-fold processes to find the processes 
    613620          !managing the points belonging to the sxT-dxT range 
    614           DO jn = jpnij - jpni +1, jpnij 
    615              IF ( njmppt(jn) == njmppmax ) THEN 
     621 
     622          DO jn = 1, jpni 
    616623                !sxT is the first point (in the global domain) of the jn 
    617624                !process 
    618                 sxT = nimppt(jn) 
     625                sxT = nfiimpp(jn, jpnj) 
    619626                !dxT is the last point (in the global domain) of the jn 
    620627                !process 
    621                 dxT = nimppt(jn) + nlcit(jn) - 1 
     628                dxT = nfiimpp(jn, jpnj) + nfilcit(jn, jpnj) - 1 
    622629                IF ((sxM .gt. sxT) .AND. (sxM .lt. dxT)) THEN 
    623630                   nsndto = nsndto + 1 
    624                    isendto(nsndto) = jn 
    625                 ELSEIF ((sxM .le. sxT) .AND. (dxM .gt. dxT)) THEN 
     631                     isendto(nsndto) = jn 
     632                ELSEIF ((sxM .le. sxT) .AND. (dxM .ge. dxT)) THEN 
    626633                   nsndto = nsndto + 1 
    627                    isendto(nsndto) = jn 
     634                     isendto(nsndto) = jn 
    628635                ELSEIF ((dxM .lt. dxT) .AND. (sxT .lt. dxM)) THEN 
    629636                   nsndto = nsndto + 1 
    630                    isendto(nsndto) = jn 
     637                     isendto(nsndto) = jn 
    631638                END IF 
    632              END IF 
    633639          END DO 
     640          nfsloop = 1 
     641          nfeloop = nlci 
     642          DO jn = 2,jpni-1 
     643           IF(nfipproc(jn,jpnj) .eq. (narea - 1)) THEN 
     644              IF (nfipproc(jn - 1 ,jpnj) .eq. -1) THEN 
     645                 nfsloop = nldi 
     646              ENDIF 
     647              IF (nfipproc(jn + 1,jpnj) .eq. -1) THEN 
     648                 nfeloop = nlei 
     649              ENDIF 
     650           ENDIF 
     651        END DO 
     652 
    634653      ENDIF 
    635654      l_north_nogather = .TRUE. 
    636  
    637655   END SUBROUTINE nemo_northcomms 
    638656#else 
Note: See TracChangeset for help on using the changeset viewer.