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 12989 – NEMO

Changeset 12989


Ignore:
Timestamp:
2020-05-29T11:31:16+02:00 (4 years ago)
Author:
francesca
Message:

Extra_Halo: developments for running BENCH test case with halo 2 - ticket #2366

Location:
NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/src/OCE/DYN/dynspg_ts.F90

    r12738 r12989  
    972972      END_2D 
    973973      ! 
    974       zcmax = MAXVAL( zcu(:,:) ) 
     974      zcmax = MAXVAL( zcu(Nis1:Nie1,Njs1:Nje1) ) 
    975975      CALL mpp_max( 'dynspg_ts', zcmax ) 
    976976 
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/src/OCE/LBC/lbc_nfd_nogather_generic.h90

    r12807 r12989  
    9999                       ijj = jpj -jj +1 
    100100                     DO ji = startloop, jpi 
    101                      ijt = jpiglo - (ji + nimpp-nn_hls+1 ) - nfiimpp(isendto(1),jpnj) + 4 
     101                     ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    102102                        ARRAY_IN(ji,ijj,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(ijt,jj,jk,jl,jf) 
    103103                     END DO 
     
    116116               ! 
    117117               IF ( .NOT. l_fast_exchanges ) THEN 
    118                   IF( nimpp >= jpiglo/2+1 ) THEN 
     118                  IF( nimpp >= Ni0glo/2+1+1 ) THEN 
    119119                     startloop = 1 
    120                   ELSEIF( nimpp+jpi-2*nn_hls+1 >= jpiglo/2+1 .AND. nimpp < jpiglo/2+1 ) THEN 
    121                      startloop = jpiglo/2+1 - nimpp + nn_hls 
     120                  ELSEIF( nimpp+jpi-1 >= Ni0glo/2+1+1 .AND. nimpp < Ni0glo/2+1+1 ) THEN 
     121                     startloop = Ni0glo/2+1+1 - nimpp + nn_hls 
    122122                  ELSE 
    123123                     startloop = jpi + 1 
     
    126126                     DO jl = 1, ipl; DO jk = 1, ipk 
    127127                        DO ji = startloop, jpi 
    128                            ijt  = jpiglo - (ji + nimpp -nn_hls+1)- nfiimpp(isendto(1),jpnj) + 4 
    129                            jia  = ji + nimpp -nn_hls 
     128                           ijt  = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
     129                           jia  = ji + nimpp - 1 
    130130                           ijta = jpiglo - jia + 2 
    131131                           IF( ijta >= startloop+nimpp-1 .AND. ijta < jia ) THEN 
     
    139139               ENDIF 
    140140            CASE ( 'U' )                                     ! U-point 
    141                IF( nimpp + jpi - 2*nn_hls+1 /= jpiglo ) THEN 
     141               IF( nimpp + jpi - 1 /= jpiglo ) THEN 
    142142                  endloop = jpi 
    143143               ELSE 
     
    148148              ijj = jpj -jj +1 
    149149                     DO ji = 1, endloop 
    150                         iju = jpiglo - (ji + nimpp -nn_hls+1)- nfiimpp(isendto(1),jpnj) + 3 
     150                        iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    151151                        ARRAY_IN(ji,ijj,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(iju,jj,jk,jl,jf) 
    152152                     END DO 
     
    161161                  END DO 
    162162               ENDIF 
    163                IF((nimpp + jpi - 2*nn_hls+1) .eq. jpiglo) THEN 
     163               IF((nimpp + jpi - 1) .eq. jpiglo) THEN 
    164164                  DO jj = 1, nn_hls 
    165165                       ijj = jpj -jj +1 
     
    171171               ! 
    172172               IF ( .NOT. l_fast_exchanges ) THEN 
    173                   IF( nimpp + jpi - 2*nn_hls+1 /= jpiglo ) THEN 
     173                  IF( nimpp + jpi - 1 /= jpiglo ) THEN 
    174174                     endloop = jpi 
    175175                  ELSE 
    176176                     endloop = jpi - nn_hls 
    177177                  ENDIF 
    178                   IF( nimpp >= jpiglo/2 ) THEN 
    179                      startloop = 1 
    180                   ELSEIF( ( nimpp + jpi - 2*nn_hls+1 >= jpiglo/2 ) .AND. ( nimpp < jpiglo/2 ) ) THEN 
    181                      startloop = jpiglo/2 - (nimpp -nn_hls+1) +1 
     178                  IF( nimpp >= Ni0glo/2+1 ) THEN 
     179                     startloop = nn_hls 
     180                  ELSEIF( ( nimpp + jpi - 1 >= Ni0glo/2+1 ) .AND. ( nimpp < Ni0glo/2+1 ) ) THEN 
     181                     startloop = Ni0glo/2+1 - nimpp + nn_hls  
    182182                  ELSE 
    183183                     startloop = endloop + 1 
     
    186186                  DO jl = 1, ipl; DO jk = 1, ipk 
    187187                     DO ji = startloop, endloop 
    188                         iju = jpiglo - (ji + nimpp -nn_hls+1) - nfiimpp(isendto(1),jpnj) + 3 
    189                         jia = ji + nimpp -nn_hls 
    190                         ijua = jpiglo - jia + 1 
     188                        iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
     189                        jia = ji + nimpp - 1  
     190                        ijua = jpiglo - jia + 1  
    191191                        IF( ijua >= startloop+nimpp-1 .AND. ijua < jia ) THEN 
    192                            ARRAY_IN(ji,jpj-nn_hls,jk,jl,jf) = SGN_IN(jf) * ARRAY_IN(ijua-nimpp+nn_hls,jpj-nn_hls,jk,jl,jf) 
     192                           ARRAY_IN(ji,jpj-nn_hls,jk,jl,jf) = SGN_IN(jf) * ARRAY_IN(ijua-nimpp+1,jpj-nn_hls,jk,jl,jf) 
    193193                        ELSE 
    194194                           ARRAY_IN(ji,jpj-nn_hls,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(iju,nn_hls+1,jk,jl,jf) 
     
    210210                     ijj = jpj -jj +1 
    211211                        DO ji = startloop, jpi 
    212                            ijt=jpiglo - (ji +nimpp -nn_hls+1)- nfiimpp(isendto(1),jpnj) + 4 
     212                           ijt=jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    213213                           ARRAY_IN(ji,ijj,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(ijt,jj,jk,jl,jf) 
    214214                        END DO 
     
    218218               DO jl = 1, ipl; DO jk = 1, ipk 
    219219                  DO ji = startloop, jpi 
    220                      ijt=jpiglo - (ji + nimpp -nn_hls+1)- nfiimpp(isendto(1),jpnj) + 4 
     220                     ijt=jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 4 
    221221                     ARRAY_IN(ji,jpj,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(ijt,1,jk,jl,jf) 
    222222                  END DO 
     
    231231               ENDIF 
    232232            CASE ( 'F' )                                     ! F-point 
    233                IF( nimpp + jpi - 2*nn_hls+1 /= jpiglo ) THEN 
     233               IF( nimpp + jpi - 1 /= jpiglo ) THEN 
    234234                  endloop = jpi 
    235235               ELSE 
     
    241241                     ijj = jpj -jj +1 
    242242                        DO ji = 1, endloop 
    243                            iju = jpiglo - (ji + nimpp -nn_hls+1) - nfiimpp(isendto(1),jpnj) + 3 
     243                           iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    244244                           ARRAY_IN(ji,ijj,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(iju,jj,jk,jl,jf) 
    245245                        END DO 
     
    249249               DO jl = 1, ipl; DO jk = 1, ipk 
    250250                  DO ji = 1, endloop 
    251                      iju = jpiglo - (ji + nimpp -nn_hls+1) - nfiimpp(isendto(1),jpnj) + 3 
     251                     iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    252252                     ARRAY_IN(ji,jpj,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(iju,1,jk,jl,jf) 
    253253                  END DO 
     
    255255      IF (nimpp .eq. 1) THEN                
    256256         DO ii = 1, nn_hls 
    257                  ARRAY_IN(ii+1,jpj,:,:,jf) = SGN_IN(jf) * ARRAY_IN(2*nn_hls-ii,jpj-2*nn_hls-1,:,:,jf) 
     257                 ARRAY_IN(ii,jpj,:,:,jf) = SGN_IN(jf) * ARRAY_IN(2*nn_hls-ii,jpj-2*nn_hls-1,:,:,jf) 
    258258         END DO 
    259259         IF ( .NOT. l_fast_exchanges ) THEN 
    260260            DO jj = 1, nn_hls 
    261261                      ijj = jpj -jj 
    262                       DO ii = 1, nn_hls 
    263                          ARRAY_IN(2-ii,ijj,:,:,jf) = SGN_IN(jf) * ARRAY_IN(2*nn_hls-ii,jpj-2*nn_hls+jj-1,:,:,jf) 
     262                      DO ii = 0, nn_hls-1 
     263                         ARRAY_IN(ii+1,ijj,:,:,jf) = SGN_IN(jf) * ARRAY_IN(2*nn_hls-ii,jpj-2*nn_hls+jj-1,:,:,jf) 
    264264                   END DO 
    265265                      END DO 
    266266                     ENDIF 
    267267      ENDIF 
    268       IF((nimpp + jpi - 2*nn_hls+1 ) .eq. jpiglo) THEN 
     268      IF((nimpp + jpi - 1 ) .eq. jpiglo) THEN 
    269269                   DO ii = 1, nn_hls 
    270270                 ARRAY_IN(jpi-ii+1,jpj,:,:,jf) = SGN_IN(jf) * ARRAY_IN(jpi-2*nn_hls+ii,jpj-2*nn_hls-1,:,:,jf) 
     
    290290           ijj = jpj-jj+1 
    291291           DO ji = 1, jpi 
    292                         ijt = jpiglo - ( ji + nimpp -nn_hls+1) - nfiimpp(isendto(1),jpnj) + 3 
     292                        ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    293293                        ARRAY_IN(ji,ijj,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(ijt,jj,jk,jl,jf) 
    294294                     END DO 
     
    297297               ! 
    298298            CASE ( 'U' )                                     ! U-point 
    299                IF( nimpp + jpi - 2*nn_hls+1 /= jpiglo ) THEN 
     299               IF( nimpp + jpi - 1 /= jpiglo ) THEN 
    300300                  endloop = jpi 
    301301               ELSE 
     
    306306           ijj = jpj-jj+1 
    307307                     DO ji = 1, endloop 
    308                         iju = jpiglo- (ji + nimpp -nn_hls+1) - nfiimpp(isendto(1),jpnj) + 2 
     308                        iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 2 
    309309                        ARRAY_IN(ji,ijj,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(iju,jj,jk,jl,jf) 
    310310                     END DO 
    311311                  END DO 
    312312               END DO; END DO 
    313                IF(nimpp + jpi - 2*nn_hls+1 .eq. jpiglo) THEN 
     313               IF(nimpp + jpi - 1 .eq. jpiglo) THEN 
    314314                  DO jl = 1, ipl; DO jk = 1, ipk 
    315315                     DO jj = 1, nn_hls 
     
    328328           ijj = jpj -jj +1 
    329329                     DO ji = 1, jpi 
    330                         ijt = jpiglo - (ji + nimpp -nn_hls+1) - nfiimpp(isendto(1),jpnj) + 3 
     330                        ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    331331                        ARRAY_IN(ji,ijj,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(ijt,jj,jk,jl,jf) 
    332332                     END DO 
     
    335335 
    336336               IF ( .NOT. l_fast_exchanges ) THEN 
    337                   IF( nimpp >= jpiglo/2+1 ) THEN 
     337                  IF( nimpp >= (Ni0glo/2+1)+1 ) THEN 
    338338                     startloop = 1 
    339                   ELSEIF( nimpp+jpi-2*nn_hls+1 >= jpiglo/2+1 .AND. nimpp < jpiglo/2+1 ) THEN 
    340                      startloop = jpiglo/2+1 - nimpp + nn_hls 
     339                  ELSEIF( nimpp+jpi-1 >= (Ni0glo/2+1)+1 .AND. nimpp < (Ni0glo/2+1)+1 ) THEN 
     340                     startloop = (Ni0glo/2+1)+1 - nimpp + nn_hls 
    341341                  ELSE 
    342342                     startloop = jpi + 1 
     
    345345                  DO jl = 1, ipl; DO jk = 1, ipk 
    346346                        DO ji = startloop, jpi 
    347                         ijt = jpiglo - (ji + nimpp -nn_hls+1) - nfiimpp(isendto(1),jpnj) + 3 
     347                        ijt = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 3 
    348348                           ARRAY_IN(ji,jpj-nn_hls,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(ijt,nn_hls+1,jk,jl,jf) 
    349349                        END DO 
     
    353353               ! 
    354354            CASE ( 'F' )                               ! F-point 
    355                IF( nimpp + jpi - 2*nn_hls+1 /= jpiglo ) THEN 
     355               IF( nimpp + jpi - 1 /= jpiglo ) THEN 
    356356                  endloop = jpi 
    357357               ELSE 
     
    362362          ijj = jpj -jj +1 
    363363                    DO ji = 1, endloop 
    364                        iju = jpiglo - (ji + nimpp -nn_hls+1) - nfiimpp(isendto(1),jpnj) + 2 
     364                       iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 2 
    365365                       ARRAY_IN(ji,ijj ,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(iju,jj,jk,jl,jf) 
    366366                     END DO 
    367367                  END DO 
    368368               END DO; END DO 
    369                IF((nimpp + jpi - 2*nn_hls+1) .eq. jpiglo) THEN 
     369               IF((nimpp + jpi - 1) .eq. jpiglo) THEN 
    370370                  DO jl = 1, ipl; DO jk = 1, ipk 
    371371                     DO jj = 1, nn_hls 
     
    380380               ! 
    381381               IF ( .NOT. l_fast_exchanges ) THEN 
    382                   IF( nimpp + jpi - 2*nn_hls+1 /= jpiglo ) THEN 
     382                  IF( nimpp + jpi - 1 /= jpiglo ) THEN 
    383383                     endloop = jpi 
    384384                  ELSE 
    385385                     endloop = jpi - nn_hls 
    386386                  ENDIF 
    387                   IF( nimpp >= jpiglo/2+1 ) THEN 
     387                  IF( nimpp >= (Ni0glo/2+1)+1 ) THEN 
    388388                     startloop = 1  
    389                   ELSEIF( nimpp+jpi-2*nn_hls+1 >= jpiglo/2+1 .AND. nimpp < jpiglo/2+1 ) THEN 
    390                      startloop = jpiglo/2+1 - nimpp + nn_hls 
     389                  ELSEIF( nimpp+jpi-1 >= (Ni0glo/2+1)+1 .AND. nimpp < (Ni0glo/2+1)+1 ) THEN 
     390                     startloop = (Ni0glo/2+1)+1 - nimpp + nn_hls 
    391391                  ELSE 
    392392                     startloop = endloop + 1 
     
    395395                     DO jl = 1, ipl; DO jk = 1, ipk 
    396396                        DO ji = startloop, endloop 
    397                            iju = jpiglo - (ji + nimpp -nn_hls+1) - nfiimpp(isendto(1),jpnj) + 2 
     397                           iju = jpiglo - ji - nimpp - nfiimpp(isendto(1),jpnj) + 2 
    398398                           ARRAY_IN(ji,jpj-nn_hls,jk,jl,jf) = SGN_IN(jf) * ARRAY2_IN(iju,nn_hls+1,jk,jl,jf) 
    399399                        END DO 
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/src/OCE/LBC/mpp_nfd_generic.h90

    r12807 r12989  
    177177               iilb =  nimppt(iproc+1) 
    178178               ijpi =  jpiall(iproc+1) 
    179                iis0 = nis0all(iproc+1) + nn_hls-1 
    180                iie0 = nie0all(iproc+1) + nn_hls-1 
     179               iis0 = nis0all(iproc+1)  
     180               iie0 = nie0all(iproc+1) 
    181181               IF( iilb            ==      1 )   iis0 = nn_hls   ! e-w boundary already done -> force to take 1st column 
    182182               IF( iilb + ijpi - 1 == jpiglo )   iie0 = Nie0+1   ! e-w boundary already done -> force to take last column 
     
    191191                     DO jk = 1, ipk 
    192192                        DO ji = iis0, iie0 
    193                            ztabr(iilb-nn_hls+1+ji,jj,jk,jl,jf) = zfoldwk(ji,js,jk,jl,1) 
     193                           ztabr(iilb+ji,jj,jk,jl,jf) = zfoldwk(ji,js,jk,jl,1) 
    194194                        END DO 
    195195                     END DO 
     
    201201                     DO jk = 1, ipk 
    202202                        DO ji = iis0, iie0 
    203                            ztabr(iilb-nn_hls+1+ji,jj,jk,jl,jf) = ARRAY_IN(ji,jj_s(jf,jj),jk,jl,jf) 
     203                           ztabr(iilb+ji,jj,jk,jl,jf) = ARRAY_IN(ji,jj_s(jf,jj),jk,jl,jf) 
    204204                        END DO 
    205205                     END DO 
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/src/OCE/USR/usrdef_nam.F90

    r12939 r12989  
    3636CONTAINS 
    3737 
    38    SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 
     38   SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio, khls ) 
    3939      !!---------------------------------------------------------------------- 
    4040      !!                     ***  ROUTINE dom_nam  *** 
     
    5252      INTEGER         , INTENT(out) ::   kpi, kpj, kpk   ! global domain sizes  
    5353      INTEGER         , INTENT(out) ::   kperio          ! lateral global domain b.c.  
     54      INTEGER,OPTIONAL, INTENT(out) ::   khls            ! halo dimension 
    5455      ! 
    5556      INTEGER ::   ios   ! Local integer 
     
    8081      !                             ! Set the lateral boundary condition of the global domain 
    8182      kperio = 0                    ! GYRE configuration : closed domain 
     83      IF (PRESENT(khls)) khls = 1 
    8284      ! 
    8385      !                             ! control print 
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/src/OCE/nemogcm.F90

    r12939 r12989  
    278278      ! 
    279279      cxios_context = 'nemo' 
    280       nn_hls = 1 
    281280      ! 
    282281      !                             !-------------------------------------------------! 
     
    386385         CALL domain_cfg ( cn_cfg, nn_cfg, Ni0glo, Nj0glo, jpkglo, jperio ) 
    387386      ELSE                              ! user-defined namelist 
    388          CALL usr_def_nam( cn_cfg, nn_cfg, Ni0glo, Nj0glo, jpkglo, jperio ) 
    389       ENDIF 
     387         CALL usr_def_nam( cn_cfg, nn_cfg, Ni0glo, Nj0glo, jpkglo, jperio, nn_hls ) 
     388      ENDIF 
     389      IF (cn_cfg.NE."BENCH") nn_hls = 1  
    390390      ! 
    391391      IF(lwm)   WRITE( numond, namcfg ) 
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/tests/BENCH/EXPREF/namelist_cfg_orca025_like

    r12807 r12989  
    1919   nn_ksize   =   75       ! total number of point in k-direction 
    2020   nn_perio   =   4        ! periodicity 
     21   nn_hls     =   2        ! halo dimension 
    2122/ 
    2223!----------------------------------------------------------------------- 
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/tests/BENCH/EXPREF/namelist_cfg_orca12_like

    r12807 r12989  
    1919   nn_ksize   =   75       ! total number of point in k-direction 
    2020   nn_perio   =   4        ! periodicity 
     21   nn_hls     =   2        ! halo dimension 
    2122/ 
    2223!----------------------------------------------------------------------- 
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/tests/BENCH/EXPREF/namelist_cfg_orca1_like

    r12807 r12989  
    1919   nn_ksize   =   75       ! total number of point in k-direction 
    2020   nn_perio   =   6        ! periodicity 
     21   nn_hls     =   2        ! halo dimension 
    2122/ 
    2223!----------------------------------------------------------------------- 
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/tests/BENCH/MY_SRC/usrdef_istate.F90

    r12960 r12989  
    9090         pu(:,:,jk) = z2d(:,:) *  0.1_wp * umask(:,:,jk)                  ! +/- 0.005  m/s 
    9191         pv(:,:,jk) = z2d(:,:) * 0.01_wp * vmask(:,:,jk)                  ! +/- 0.0005 m/s 
    92       ENDDO 
     92      END_3D 
    9393      pts(:,:,jpk,:) = 0._wp 
    9494      pu( :,:,jpk  ) = 0._wp 
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/tests/BENCH/MY_SRC/usrdef_nam.F90

    r12939 r12989  
    2929CONTAINS 
    3030 
    31    SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio ) 
     31   SUBROUTINE usr_def_nam( cd_cfg, kk_cfg, kpi, kpj, kpk, kperio, khls ) 
    3232      !!---------------------------------------------------------------------- 
    3333      !!                     ***  ROUTINE dom_nam  *** 
     
    4545      INTEGER                       , INTENT(out) ::   kpi, kpj, kpk   ! global domain sizes  
    4646      INTEGER                       , INTENT(out) ::   kperio          ! lateral global domain b.c.  
     47      INTEGER                       , INTENT(out) ::   khls            ! halo dimension  
    4748      ! 
    4849      ! 
     
    5758      LOGICAL          ::   ln_nnogather, ln_listonly 
    5859      !! 
    59       NAMELIST/namusr_def/ nn_isize, nn_jsize, nn_ksize, nn_perio 
     60      NAMELIST/namusr_def/ nn_isize, nn_jsize, nn_ksize, nn_perio, nn_hls 
    6061      NAMELIST/nammpp/ jpni, jpnj, ln_nnogather, ln_listonly 
    6162      !!----------------------------------------------------------------------      
     
    8687      kpk = nn_ksize 
    8788      kperio = nn_perio 
     89      khls = nn_hls  
    8890      !                             ! control print 
    8991      IF(lwp) THEN 
  • NEMO/branches/2020/dev_r12558_HPC-08_epico_Extra_Halo/tests/BENCH/MY_SRC/usrdef_zgr.F90

    r12866 r12989  
    197197      ! 
    198198      IF( jperio == 3 .OR. jperio ==4 ) THEN   ! add a small island in the upper corners to avoid model instabilities... 
    199          z2d(mi0(       1):mi1(     3),mj0(jpjglo-2):mj1(jpjglo)) = 0. 
    200          z2d(mi0(jpiglo-2):mi1(jpiglo),mj0(jpjglo-2):mj1(jpjglo)) = 0. 
     199         z2d(mi0(              1):mi1(Nis0+1),mj0(jpjglo-nn_hls-1):mj1(jpjglo)) = 0. 
     200         z2d(mi0(jpiglo-nn_hls-1):mi1(jpiglo),mj0(jpjglo-nn_hls-1):mj1(jpjglo)) = 0. 
    201201      ENDIF 
    202202      ! 
Note: See TracChangeset for help on using the changeset viewer.