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 13727 for NEMO/branches/2020/dev_12905_xios_restart/src/OCE/BDY/bdyini.F90 – NEMO

Ignore:
Timestamp:
2020-11-05T15:18:53+01:00 (4 years ago)
Author:
andmirek
Message:

Ticket #2462: Upate to trunk rev 13688

Location:
NEMO/branches/2020/dev_12905_xios_restart
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_12905_xios_restart

    • Property svn:externals
      •  

        old new  
        33^/utils/build/mk@HEAD         mk 
        44^/utils/tools@HEAD            tools 
        5 ^/vendors/AGRIF/dev@HEAD      ext/AGRIF 
         5^/vendors/AGRIF/dev_r12970_AGRIF_CMEMS      ext/AGRIF 
        66^/vendors/FCM@HEAD            ext/FCM 
        77^/vendors/IOIPSL@HEAD         ext/IOIPSL 
        88 
        99# SETTE 
        10 ^/utils/CI/sette@HEAD         sette 
         10^/utils/CI/sette@13559        sette 
  • NEMO/branches/2020/dev_12905_xios_restart/src/OCE/BDY/bdyini.F90

    r12377 r13727  
    1919   USE oce            ! ocean dynamics and tracers variables 
    2020   USE dom_oce        ! ocean space and time domain 
     21   USE sbc_oce , ONLY: nn_ice 
    2122   USE bdy_oce        ! unstructured open boundary conditions 
    2223   USE bdydta         ! open boundary cond. setting   (bdy_dta_init routine) 
    2324   USE bdytides       ! open boundary cond. setting   (bdytide_init routine) 
    2425   USE tide_mod, ONLY: ln_tide ! tidal forcing 
    25    USE phycst   , ONLY: rday 
     26   USE phycst  , ONLY: rday 
    2627   ! 
    2728   USE in_out_manager ! I/O units 
     
    316317         dta_bdy(ib_bdy)%lneed_ice = cn_ice(ib_bdy) /= 'none' 
    317318 
     319         IF( dta_bdy(ib_bdy)%lneed_ice .AND. nn_ice /= 2 ) THEN 
     320            WRITE(ctmp1,*) 'bdy number ', ib_bdy,', needs ice model but nn_ice = ', nn_ice 
     321            CALL ctl_stop( ctmp1 ) 
     322         ENDIF 
     323 
    318324         IF( lwp .AND. dta_bdy(ib_bdy)%lneed_ice ) THEN  
    319325            SELECT CASE( nn_ice_dta(ib_bdy) )                   !  
     
    410416               CALL iom_get( inum, jpdom_unknown, 'nbi'//cgrid(igrd), zz_read(1:nblendta(igrd,ib_bdy),:) ) 
    411417               DO ii = 1,nblendta(igrd,ib_bdy) 
    412                   nbidta(ii,igrd,ib_bdy) = NINT( zz_read(ii,1) ) 
     418                  nbidta(ii,igrd,ib_bdy) = NINT( zz_read(ii,1) ) + nn_hls 
    413419               END DO 
    414420               CALL iom_get( inum, jpdom_unknown, 'nbj'//cgrid(igrd), zz_read(1:nblendta(igrd,ib_bdy),:) ) 
    415421               DO ii = 1,nblendta(igrd,ib_bdy) 
    416                   nbjdta(ii,igrd,ib_bdy) = NINT( zz_read(ii,1) ) 
     422                  nbjdta(ii,igrd,ib_bdy) = NINT( zz_read(ii,1) ) + nn_hls 
    417423               END DO 
    418424               CALL iom_get( inum, jpdom_unknown, 'nbr'//cgrid(igrd), zz_read(1:nblendta(igrd,ib_bdy),:) ) 
     
    632638         END DO 
    633639      END DO 
    634       CALL lbc_lnk( 'bdyini', zfmask, 'F', 1. ) 
     640      CALL lbc_lnk( 'bdyini', zfmask, 'F', 1.0_wp ) 
    635641 
    636642      ! Read global 2D mask at T-points: bdytmask 
     
    648654         END DO 
    649655      END DO 
    650       CALL lbc_lnk_multi( 'bdyini', bdyumask, 'U', 1., bdyvmask, 'V', 1. )   ! Lateral boundary cond. 
     656      CALL lbc_lnk_multi( 'bdyini', bdyumask, 'U', 1.0_wp , bdyvmask, 'V', 1.0_wp )   ! Lateral boundary cond.  
    651657 
    652658      ! bdy masks are now set to zero on rim 0 points: 
     
    689695         END DO 
    690696      END DO 
    691       CALL lbc_lnk( 'bdyini', zfmask, 'F', 1. ) 
     697      CALL lbc_lnk( 'bdyini', zfmask, 'F', 1.0_wp ) 
    692698 
    693699      ! bdy masks are now set to zero on rim1 points: 
     
    780786                  ii = idx_bdy(ib_bdy)%nbi(ib,igrd) 
    781787                  ij = idx_bdy(ib_bdy)%nbj(ib,igrd) 
    782                   IF(  mig(ii) > 2 .AND. mig(ii) < jpiglo-2 .AND. mjg(ij) > 2 .AND. mjg(ij) < jpjglo-2  ) THEN 
     788                  IF(  mig0(ii) > 2 .AND. mig0(ii) < Ni0glo-2 .AND. mjg0(ij) > 2 .AND. mjg0(ij) < Nj0glo-2  ) THEN 
    783789                     WRITE(ctmp1,*) ' Orlanski is not safe when the open boundaries are on the interior of the computational domain' 
    784790                     CALL ctl_stop( ctmp1 ) 
     
    865871            ENDIF  
    866872            SELECT CASE( igrd ) 
    867                CASE( 1 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'T', 1. )  
    868                CASE( 2 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'U', 1. )  
    869                CASE( 3 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'V', 1. )  
     873               CASE( 1 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'T', 1.0_wp ) 
     874               CASE( 2 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'U', 1.0_wp ) 
     875               CASE( 3 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'V', 1.0_wp ) 
    870876            END SELECT  
    871877            DO ib = ibeg, iend 
     
    913919            ENDIF 
    914920            SELECT CASE( igrd ) 
    915                CASE( 1 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'T', 1. )  
    916                CASE( 2 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'U', 1. )  
    917                CASE( 3 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'V', 1. )  
     921               CASE( 1 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'T', 1.0_wp ) 
     922               CASE( 2 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'U', 1.0_wp ) 
     923               CASE( 3 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'V', 1.0_wp ) 
    918924            END SELECT  
    919925            DO ib = ibeg, iend 
     
    10011007            END DO 
    10021008            SELECT CASE( igrd ) 
    1003                CASE( 1 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'T', 1. )  
    1004                CASE( 2 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'U', 1. )  
    1005                CASE( 3 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'V', 1. )  
     1009               CASE( 1 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'T', 1.0_wp ) 
     1010               CASE( 2 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'U', 1.0_wp ) 
     1011               CASE( 3 )   ;   CALL lbc_lnk( 'bdyini', ztmp, 'V', 1.0_wp ) 
    10061012            END SELECT  
    10071013            DO ib = ibeg, iend 
     
    10651071   SUBROUTINE bdy_read_seg( kb_bdy, knblendta )  
    10661072      !!---------------------------------------------------------------------- 
    1067       !!                 ***  ROUTINE bdy_coords_seg  *** 
     1073      !!                 ***  ROUTINE bdy_read_seg  *** 
    10681074      !! 
    10691075      !! ** Purpose :  build bdy coordinates with segments defined in namelist 
     
    11051111      CASE( 'N' ) 
    11061112         IF( nbdyind == -1 ) THEN  ! Automatic boundary definition: if nbdysegX = -1 
    1107             nbdyind  = jpjglo - 2  ! set boundary to whole side of model domain. 
     1113            nbdyind  = Nj0glo - 2  ! set boundary to whole side of model domain. 
    11081114            nbdybeg  = 2 
    1109             nbdyend  = jpiglo - 1 
     1115            nbdyend  = Ni0glo - 1 
    11101116         ENDIF 
    11111117         nbdysegn = nbdysegn + 1 
    11121118         npckgn(nbdysegn) = kb_bdy ! Save bdy package number 
    1113          jpjnob(nbdysegn) = nbdyind 
     1119         jpjnob(nbdysegn) = nbdyind  
    11141120         jpindt(nbdysegn) = nbdybeg 
    11151121         jpinft(nbdysegn) = nbdyend 
     
    11191125            nbdyind  = 2           ! set boundary to whole side of model domain. 
    11201126            nbdybeg  = 2 
    1121             nbdyend  = jpiglo - 1 
     1127            nbdyend  = Ni0glo - 1 
    11221128         ENDIF 
    11231129         nbdysegs = nbdysegs + 1 
     
    11291135      CASE( 'E' ) 
    11301136         IF( nbdyind == -1 ) THEN  ! Automatic boundary definition: if nbdysegX = -1 
    1131             nbdyind  = jpiglo - 2  ! set boundary to whole side of model domain. 
     1137            nbdyind  = Ni0glo - 2  ! set boundary to whole side of model domain. 
    11321138            nbdybeg  = 2 
    1133             nbdyend  = jpjglo - 1 
     1139            nbdyend  = Nj0glo - 1 
    11341140         ENDIF 
    11351141         nbdysege = nbdysege + 1  
     
    11431149            nbdyind  = 2           ! set boundary to whole side of model domain. 
    11441150            nbdybeg  = 2 
    1145             nbdyend  = jpjglo - 1 
     1151            nbdyend  = Nj0glo - 1 
    11461152         ENDIF 
    11471153         nbdysegw = nbdysegw + 1 
     
    11861192      IF(lwp) WRITE(numout,*) 'Number of north segments     : ', nbdysegn 
    11871193      IF(lwp) WRITE(numout,*) 'Number of south segments     : ', nbdysegs 
     1194      ! 
    11881195      ! 1. Check bounds 
    11891196      !---------------- 
    11901197      DO ib = 1, nbdysegn 
    11911198         IF (lwp) WRITE(numout,*) '**check north seg bounds pckg: ', npckgn(ib) 
    1192          IF ((jpjnob(ib).ge.jpjglo-1).or.&  
     1199         IF ((jpjnob(ib).ge.Nj0glo-1).or.&  
    11931200            &(jpjnob(ib).le.1))        CALL ctl_stop( 'nbdyind out of domain' ) 
    11941201         IF (jpindt(ib).ge.jpinft(ib)) CALL ctl_stop( 'Bdy start index is greater than end index' ) 
    11951202         IF (jpindt(ib).lt.1     )     CALL ctl_stop( 'Start index out of domain' ) 
    1196          IF (jpinft(ib).gt.jpiglo)     CALL ctl_stop( 'End index out of domain' ) 
     1203         IF (jpinft(ib).gt.Ni0glo)     CALL ctl_stop( 'End index out of domain' ) 
    11971204      END DO 
    11981205      ! 
    11991206      DO ib = 1, nbdysegs 
    12001207         IF (lwp) WRITE(numout,*) '**check south seg bounds pckg: ', npckgs(ib) 
    1201          IF ((jpjsob(ib).ge.jpjglo-1).or.&  
     1208         IF ((jpjsob(ib).ge.Nj0glo-1).or.&  
    12021209            &(jpjsob(ib).le.1))        CALL ctl_stop( 'nbdyind out of domain' ) 
    12031210         IF (jpisdt(ib).ge.jpisft(ib)) CALL ctl_stop( 'Bdy start index is greater than end index' ) 
    12041211         IF (jpisdt(ib).lt.1     )     CALL ctl_stop( 'Start index out of domain' ) 
    1205          IF (jpisft(ib).gt.jpiglo)     CALL ctl_stop( 'End index out of domain' ) 
     1212         IF (jpisft(ib).gt.Ni0glo)     CALL ctl_stop( 'End index out of domain' ) 
    12061213      END DO 
    12071214      ! 
    12081215      DO ib = 1, nbdysege 
    12091216         IF (lwp) WRITE(numout,*) '**check east  seg bounds pckg: ', npckge(ib) 
    1210          IF ((jpieob(ib).ge.jpiglo-1).or.&  
     1217         IF ((jpieob(ib).ge.Ni0glo-1).or.&  
    12111218            &(jpieob(ib).le.1))        CALL ctl_stop( 'nbdyind out of domain' ) 
    12121219         IF (jpjedt(ib).ge.jpjeft(ib)) CALL ctl_stop( 'Bdy start index is greater than end index' ) 
    12131220         IF (jpjedt(ib).lt.1     )     CALL ctl_stop( 'Start index out of domain' ) 
    1214          IF (jpjeft(ib).gt.jpjglo)     CALL ctl_stop( 'End index out of domain' ) 
     1221         IF (jpjeft(ib).gt.Nj0glo)     CALL ctl_stop( 'End index out of domain' ) 
    12151222      END DO 
    12161223      ! 
    12171224      DO ib = 1, nbdysegw 
    12181225         IF (lwp) WRITE(numout,*) '**check west  seg bounds pckg: ', npckgw(ib) 
    1219          IF ((jpiwob(ib).ge.jpiglo-1).or.&  
     1226         IF ((jpiwob(ib).ge.Ni0glo-1).or.&  
    12201227            &(jpiwob(ib).le.1))        CALL ctl_stop( 'nbdyind out of domain' ) 
    12211228         IF (jpjwdt(ib).ge.jpjwft(ib)) CALL ctl_stop( 'Bdy start index is greater than end index' ) 
    12221229         IF (jpjwdt(ib).lt.1     )     CALL ctl_stop( 'Start index out of domain' ) 
    1223          IF (jpjwft(ib).gt.jpjglo)     CALL ctl_stop( 'End index out of domain' ) 
     1230         IF (jpjwft(ib).gt.Nj0glo)     CALL ctl_stop( 'End index out of domain' ) 
    12241231      ENDDO 
    1225       ! 
    12261232      !       
    12271233      ! 2. Look for segment crossings 
     
    13721378         DO ji = 1, jpi 
    13731379            DO jj = 1, jpj              
    1374               IF (((ji + nimpp - 1) == jpiwob(ib)).AND. &  
    1375                &  ((jj + njmpp - 1) == jpjwdt(ib))) ztestmask(1)=tmask(ji,jj,1) 
    1376               IF (((ji + nimpp - 1) == jpiwob(ib)).AND. &  
    1377                &  ((jj + njmpp - 1) == jpjwft(ib))) ztestmask(2)=tmask(ji,jj,1)   
     1380              IF( mig0(ji) == jpiwob(ib) .AND. mjg0(jj) == jpjwdt(ib) )   ztestmask(1) = tmask(ji,jj,1) 
     1381              IF( mig0(ji) == jpiwob(ib) .AND. mjg0(jj) == jpjwft(ib) )   ztestmask(2) = tmask(ji,jj,1)   
    13781382            END DO 
    13791383         END DO 
     
    14101414         DO ji = 1, jpi 
    14111415            DO jj = 1, jpj              
    1412               IF (((ji + nimpp - 1) == jpieob(ib)+1).AND. &  
    1413                &  ((jj + njmpp - 1) == jpjedt(ib))) ztestmask(1)=tmask(ji,jj,1) 
    1414               IF (((ji + nimpp - 1) == jpieob(ib)+1).AND. &  
    1415                &  ((jj + njmpp - 1) == jpjeft(ib))) ztestmask(2)=tmask(ji,jj,1)   
     1416              IF( mig0(ji) == jpieob(ib)+1 .AND. mjg0(jj) == jpjedt(ib) )   ztestmask(1) = tmask(ji,jj,1) 
     1417              IF( mig0(ji) == jpieob(ib)+1 .AND. mjg0(jj) == jpjeft(ib) )   ztestmask(2) = tmask(ji,jj,1)   
    14161418            END DO 
    14171419         END DO 
     
    14481450         DO ji = 1, jpi 
    14491451            DO jj = 1, jpj              
    1450               IF (((jj + njmpp - 1) == jpjsob(ib)).AND. &  
    1451                &  ((ji + nimpp - 1) == jpisdt(ib))) ztestmask(1)=tmask(ji,jj,1) 
    1452               IF (((jj + njmpp - 1) == jpjsob(ib)).AND. &  
    1453                &  ((ji + nimpp - 1) == jpisft(ib))) ztestmask(2)=tmask(ji,jj,1)   
     1452              IF( mjg0(jj) == jpjsob(ib) .AND. mig0(ji) == jpisdt(ib) )   ztestmask(1) = tmask(ji,jj,1) 
     1453              IF( mjg0(jj) == jpjsob(ib) .AND. mig0(ji) == jpisft(ib) )   ztestmask(2) = tmask(ji,jj,1)   
    14541454            END DO 
    14551455         END DO 
     
    14721472         DO ji = 1, jpi 
    14731473            DO jj = 1, jpj              
    1474               IF (((jj + njmpp - 1) == jpjnob(ib)+1).AND. &  
    1475                &  ((ji + nimpp - 1) == jpindt(ib))) ztestmask(1)=tmask(ji,jj,1) 
    1476               IF (((jj + njmpp - 1) == jpjnob(ib)+1).AND. &  
    1477                &  ((ji + nimpp - 1) == jpinft(ib))) ztestmask(2)=tmask(ji,jj,1)   
     1474               IF( mjg0(jj) == jpjnob(ib)+1 .AND. mig0(ji) == jpindt(ib) )   ztestmask(1) = tmask(ji,jj,1) 
     1475               IF( mjg0(jj) == jpjnob(ib)+1 .AND. mig0(ji) == jpinft(ib) )   ztestmask(2) = tmask(ji,jj,1)   
    14781476            END DO 
    14791477         END DO 
     
    15281526            DO ij = jpjedt(iseg), jpjeft(iseg) 
    15291527               icount = icount + 1 
    1530                nbidta(icount, igrd, ib_bdy) = jpieob(iseg) + 2 - ir 
    1531                nbjdta(icount, igrd, ib_bdy) = ij 
     1528               nbidta(icount, igrd, ib_bdy) = jpieob(iseg) + 2 - ir + nn_hls 
     1529               nbjdta(icount, igrd, ib_bdy) = ij + nn_hls 
    15321530               nbrdta(icount, igrd, ib_bdy) = ir 
    15331531            ENDDO 
     
    15401538            DO ij = jpjedt(iseg), jpjeft(iseg) 
    15411539               icount = icount + 1 
    1542                nbidta(icount, igrd, ib_bdy) = jpieob(iseg) + 1 - ir 
    1543                nbjdta(icount, igrd, ib_bdy) = ij 
     1540               nbidta(icount, igrd, ib_bdy) = jpieob(iseg) + 1 - ir + nn_hls 
     1541               nbjdta(icount, igrd, ib_bdy) = ij + nn_hls 
    15441542               nbrdta(icount, igrd, ib_bdy) = ir 
    15451543            ENDDO 
     
    15531551            DO ij = jpjedt(iseg), jpjeft(iseg) 
    15541552               icount = icount + 1 
    1555                nbidta(icount, igrd, ib_bdy) = jpieob(iseg) + 2 - ir 
    1556                nbjdta(icount, igrd, ib_bdy) = ij 
     1553               nbidta(icount, igrd, ib_bdy) = jpieob(iseg) + 2 - ir + nn_hls 
     1554               nbjdta(icount, igrd, ib_bdy) = ij + nn_hls 
    15571555               nbrdta(icount, igrd, ib_bdy) = ir 
    15581556            ENDDO 
     
    15731571            DO ij = jpjwdt(iseg), jpjwft(iseg) 
    15741572               icount = icount + 1 
    1575                nbidta(icount, igrd, ib_bdy) = jpiwob(iseg) + ir - 1 
    1576                nbjdta(icount, igrd, ib_bdy) = ij 
     1573               nbidta(icount, igrd, ib_bdy) = jpiwob(iseg) + ir - 1 + nn_hls 
     1574               nbjdta(icount, igrd, ib_bdy) = ij + nn_hls 
    15771575               nbrdta(icount, igrd, ib_bdy) = ir 
    15781576            ENDDO 
     
    15851583            DO ij = jpjwdt(iseg), jpjwft(iseg) 
    15861584               icount = icount + 1 
    1587                nbidta(icount, igrd, ib_bdy) = jpiwob(iseg) + ir - 1 
    1588                nbjdta(icount, igrd, ib_bdy) = ij 
     1585               nbidta(icount, igrd, ib_bdy) = jpiwob(iseg) + ir - 1 + nn_hls 
     1586               nbjdta(icount, igrd, ib_bdy) = ij + nn_hls 
    15891587               nbrdta(icount, igrd, ib_bdy) = ir 
    15901588            ENDDO 
     
    15981596            DO ij = jpjwdt(iseg), jpjwft(iseg) 
    15991597               icount = icount + 1 
    1600                nbidta(icount, igrd, ib_bdy) = jpiwob(iseg) + ir - 1 
    1601                nbjdta(icount, igrd, ib_bdy) = ij 
     1598               nbidta(icount, igrd, ib_bdy) = jpiwob(iseg) + ir - 1 + nn_hls 
     1599               nbjdta(icount, igrd, ib_bdy) = ij + nn_hls 
    16021600               nbrdta(icount, igrd, ib_bdy) = ir 
    16031601            ENDDO 
     
    16181616            DO ii = jpindt(iseg), jpinft(iseg) 
    16191617               icount = icount + 1 
    1620                nbidta(icount, igrd, ib_bdy) = ii 
    1621                nbjdta(icount, igrd, ib_bdy) = jpjnob(iseg) + 2 - ir  
     1618               nbidta(icount, igrd, ib_bdy) = ii + nn_hls 
     1619               nbjdta(icount, igrd, ib_bdy) = jpjnob(iseg) + 2 - ir + nn_hls  
    16221620               nbrdta(icount, igrd, ib_bdy) = ir 
    16231621            ENDDO 
     
    16311629            DO ii = jpindt(iseg), jpinft(iseg) 
    16321630               icount = icount + 1 
    1633                nbidta(icount, igrd, ib_bdy) = ii 
    1634                nbjdta(icount, igrd, ib_bdy) = jpjnob(iseg) + 2 - ir 
     1631               nbidta(icount, igrd, ib_bdy) = ii + nn_hls 
     1632               nbjdta(icount, igrd, ib_bdy) = jpjnob(iseg) + 2 - ir + nn_hls 
    16351633               nbrdta(icount, igrd, ib_bdy) = ir 
    16361634            ENDDO 
     
    16451643            DO ii = jpindt(iseg), jpinft(iseg) 
    16461644               icount = icount + 1 
    1647                nbidta(icount, igrd, ib_bdy) = ii 
    1648                nbjdta(icount, igrd, ib_bdy) = jpjnob(iseg) + 1 - ir 
     1645               nbidta(icount, igrd, ib_bdy) = ii + nn_hls 
     1646               nbjdta(icount, igrd, ib_bdy) = jpjnob(iseg) + 1 - ir + nn_hls 
    16491647               nbrdta(icount, igrd, ib_bdy) = ir 
    16501648            ENDDO 
     
    16631661            DO ii = jpisdt(iseg), jpisft(iseg) 
    16641662               icount = icount + 1 
    1665                nbidta(icount, igrd, ib_bdy) = ii 
    1666                nbjdta(icount, igrd, ib_bdy) = jpjsob(iseg) + ir - 1 
     1663               nbidta(icount, igrd, ib_bdy) = ii + nn_hls 
     1664               nbjdta(icount, igrd, ib_bdy) = jpjsob(iseg) + ir - 1 + nn_hls 
    16671665               nbrdta(icount, igrd, ib_bdy) = ir 
    16681666            ENDDO 
     
    16761674            DO ii = jpisdt(iseg), jpisft(iseg) 
    16771675               icount = icount + 1 
    1678                nbidta(icount, igrd, ib_bdy) = ii 
    1679                nbjdta(icount, igrd, ib_bdy) = jpjsob(iseg) + ir - 1 
     1676               nbidta(icount, igrd, ib_bdy) = ii + nn_hls 
     1677               nbjdta(icount, igrd, ib_bdy) = jpjsob(iseg) + ir - 1 + nn_hls 
    16801678               nbrdta(icount, igrd, ib_bdy) = ir 
    16811679            ENDDO 
     
    16901688            DO ii = jpisdt(iseg), jpisft(iseg) 
    16911689               icount = icount + 1 
    1692                nbidta(icount, igrd, ib_bdy) = ii 
    1693                nbjdta(icount, igrd, ib_bdy) = jpjsob(iseg) + ir - 1 
     1690               nbidta(icount, igrd, ib_bdy) = ii + nn_hls 
     1691               nbjdta(icount, igrd, ib_bdy) = jpjsob(iseg) + ir - 1 + nn_hls 
    16941692               nbrdta(icount, igrd, ib_bdy) = ir 
    16951693            ENDDO 
Note: See TracChangeset for help on using the changeset viewer.