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 14986 for NEMO/branches/2021/dev_r14116_HPC-10_mcastril_Mixed_Precision_implementation/src/NST/agrif_oce_interp.F90 – NEMO

Ignore:
Timestamp:
2021-06-14T13:34:08+02:00 (3 years ago)
Author:
sparonuz
Message:

Merge trunk -r14984:HEAD

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2021/dev_r14116_HPC-10_mcastril_Mixed_Precision_implementation/src/NST/agrif_oce_interp.F90

    r14644 r14986  
    4444   PUBLIC   interptsn, interpsshn, interpavm 
    4545   PUBLIC   interpunb, interpvnb , interpub2b, interpvb2b 
    46    PUBLIC   interpe3t, interpglamt, interpgphit 
     46   PUBLIC   interpglamt, interpgphit 
    4747   PUBLIC   interpht0, interpmbkt, interpe3t0_vremap 
    4848   PUBLIC   agrif_istate_oce, agrif_istate_ssh   ! called by icestate.F90 and domvvl.F90 
     
    216216      IF( lk_west ) THEN 
    217217         ibdy1 = nn_hls + 2                  ! halo + land + 1 
    218          ibdy2 = nn_hls + 1 + nbghostcells + nn_shift_bar*Agrif_Rhox()   ! halo + land + nbghostcells 
     218         ibdy2 = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhox()   ! halo + land + nbghostcells 
    219219         ! 
    220220         IF( .NOT.ln_dynspg_ts ) THEN  ! Store transport 
     
    265265      ! --- East --- ! 
    266266      IF( lk_east) THEN 
    267          ibdy1 = jpiglo - ( nn_hls + nbghostcells + 1) - nn_shift_bar*Agrif_Rhox()     
     267         ibdy1 = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox()     
    268268         ibdy2 = jpiglo - ( nn_hls + 2 )                  
    269269         ! 
     
    293293         END DO 
    294294         ! 
    295          ibdy1 = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox()  
     295         ibdy1 = jpiglo - ( nn_hls + nbghostcells - 1 ) - nn_shift_bar*Agrif_Rhox()  
    296296         ibdy2 = jpiglo - ( nn_hls + 1 )      
    297297         ! 
     
    326326      IF( lk_south ) THEN 
    327327         jbdy1 = nn_hls + 2                  
    328          jbdy2 = nn_hls + 1 + nbghostcells + nn_shift_bar*Agrif_Rhoy()    
     328         jbdy2 = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhoy()    
    329329         ! 
    330330         IF( .NOT.ln_dynspg_ts ) THEN 
     
    375375      ! --- North --- ! 
    376376      IF( lk_north ) THEN 
    377          jbdy1 = jpjglo - ( nn_hls + nbghostcells + 1) - nn_shift_bar*Agrif_Rhoy()  
     377         jbdy1 = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy()  
    378378         jbdy2 = jpjglo - ( nn_hls + 2 ) 
    379379         ! 
     
    403403         END DO 
    404404         ! 
    405          jbdy1 = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy()   
     405         jbdy1 = jpjglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhoy()   
    406406         jbdy2 = jpjglo - ( nn_hls + 1 ) 
    407407         ! 
     
    451451      IF( lk_west ) THEN 
    452452         istart = nn_hls + 2                              ! halo + land + 1 
    453          iend   = nn_hls + 1 + nbghostcells  + nn_shift_bar*Agrif_Rhox()              ! halo + land + nbghostcells 
     453         iend   = nn_hls + nbghostcells  + nn_shift_bar*Agrif_Rhox()              ! halo + land + nbghostcells 
    454454         DO ji = mi0(istart), mi1(iend) 
    455455            DO jj=1,jpj 
     
    462462      !--- East ---! 
    463463      IF( lk_east ) THEN 
    464          istart = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox()  
     464         istart = jpiglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhox()  
    465465         iend   = jpiglo - ( nn_hls + 1 )                 
    466466         DO ji = mi0(istart), mi1(iend) 
     
    470470            END DO 
    471471         END DO 
    472          istart = jpiglo - ( nn_hls + nbghostcells + 1) - nn_shift_bar*Agrif_Rhox()  
     472         istart = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox()  
    473473         iend   = jpiglo - ( nn_hls + 2 )                 
    474474         DO ji = mi0(istart), mi1(iend) 
     
    482482      IF( lk_south ) THEN 
    483483         jstart = nn_hls + 2                               
    484          jend   = nn_hls + 1 + nbghostcells + nn_shift_bar*Agrif_Rhoy()            
     484         jend   = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhoy()            
    485485         DO jj = mj0(jstart), mj1(jend) 
    486486 
     
    494494      !--- North ---! 
    495495      IF( lk_north ) THEN 
    496          jstart = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy()      
     496         jstart = jpjglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhoy()      
    497497         jend   = jpjglo - ( nn_hls + 1 )                 
    498498         DO jj = mj0(jstart), mj1(jend) 
     
    501501            END DO 
    502502         END DO 
    503          jstart = jpjglo - ( nn_hls + nbghostcells + 1) - nn_shift_bar*Agrif_Rhoy()  
     503         jstart = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy()  
    504504         jend   = jpjglo - ( nn_hls + 2 )                 
    505505         DO jj = mj0(jstart), mj1(jend) 
     
    529529      IF( lk_west ) THEN 
    530530         istart = nn_hls + 2                               
    531          iend   = nn_hls + 1 + nbghostcells + nn_shift_bar*Agrif_Rhox()  
     531         iend   = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhox()  
    532532         DO ji = mi0(istart), mi1(iend) 
    533533            DO jj=1,jpj 
     
    540540      !--- East ---! 
    541541      IF( lk_east ) THEN 
    542          istart = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox() 
     542         istart = jpiglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhox() 
    543543         iend   = jpiglo - ( nn_hls + 1 )                  
    544544         DO ji = mi0(istart), mi1(iend) 
     
    547547            END DO 
    548548         END DO 
    549          istart = jpiglo - ( nn_hls + nbghostcells + 1) - nn_shift_bar*Agrif_Rhox()  
     549         istart = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox()  
    550550         iend   = jpiglo - ( nn_hls + 2 )                  
    551551         DO ji = mi0(istart), mi1(iend) 
     
    559559      IF( lk_south ) THEN 
    560560         jstart = nn_hls + 2                               
    561          jend   = nn_hls + 1 + nbghostcells + nn_shift_bar*Agrif_Rhoy()  
     561         jend   = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhoy()  
    562562         DO jj = mj0(jstart), mj1(jend) 
    563563            DO ji=1,jpi 
     
    570570      !--- North ---! 
    571571      IF( lk_north ) THEN 
    572          jstart = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy()  
     572         jstart = jpjglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhoy()  
    573573         jend   = jpjglo - ( nn_hls + 1 )                 
    574574         DO jj = mj0(jstart), mj1(jend) 
     
    577577            END DO 
    578578         END DO 
    579          jstart = jpjglo - ( nn_hls + nbghostcells + 1) - nn_shift_bar*Agrif_Rhoy()  
     579         jstart = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy()  
    580580         jend   = jpjglo - ( nn_hls + 2 )                
    581581         DO jj = mj0(jstart), mj1(jend) 
     
    672672      IF(lk_west) THEN 
    673673         istart = nn_hls + 2                                                          ! halo + land + 1 
    674          iend   = nn_hls + 1 + nbghostcells + nn_shift_bar*Agrif_Rhox()               ! halo + land + nbghostcells 
     674         iend   = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhox()               ! halo + land + nbghostcells 
    675675         DO ji = mi0(istart), mi1(iend) 
    676676            DO jj = 1, jpj 
     
    682682      ! --- East --- ! 
    683683      IF(lk_east) THEN 
    684          istart = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox()       ! halo + land + nbghostcells - 1 
     684         istart = jpiglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhox()       ! halo + land + nbghostcells - 1 
    685685         iend   = jpiglo - ( nn_hls + 1 )                                              ! halo + land + 1            - 1 
    686686         DO ji = mi0(istart), mi1(iend) 
     
    694694      IF(lk_south) THEN 
    695695         jstart = nn_hls + 2                                                          ! halo + land + 1 
    696          jend   = nn_hls + 1 + nbghostcells + nn_shift_bar*Agrif_Rhoy()               ! halo + land + nbghostcells 
     696         jend   = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhoy()               ! halo + land + nbghostcells 
    697697         DO jj = mj0(jstart), mj1(jend) 
    698698            DO ji = 1, jpi 
     
    704704      ! --- North --- ! 
    705705      IF(lk_north) THEN 
    706          jstart = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy()     ! halo + land + nbghostcells - 1 
     706         jstart = jpjglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhoy()     ! halo + land + nbghostcells - 1 
    707707         jend   = jpjglo - ( nn_hls + 1 )                                            ! halo + land + 1            - 1 
    708708         DO jj = mj0(jstart), mj1(jend) 
     
    731731      IF(lk_west) THEN 
    732732         istart = nn_hls + 2                                                        ! halo + land + 1 
    733          iend   = nn_hls + 1 + nbghostcells + nn_shift_bar*Agrif_Rhox()             ! halo + land + nbghostcells 
     733         iend   = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhox()             ! halo + land + nbghostcells 
    734734         DO ji = mi0(istart), mi1(iend) 
    735735            DO jj = 1, jpj 
     
    741741      ! --- East --- ! 
    742742      IF(lk_east) THEN 
    743          istart = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox()    ! halo + land + nbghostcells - 1 
     743         istart = jpiglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhox()    ! halo + land + nbghostcells - 1 
    744744         iend   = jpiglo - ( nn_hls + 1 )                                           ! halo + land + 1            - 1 
    745745         DO ji = mi0(istart), mi1(iend) 
     
    753753      IF(lk_south) THEN 
    754754         jstart = nn_hls + 2                                                        ! halo + land + 1 
    755          jend   = nn_hls + 1 + nbghostcells + nn_shift_bar*Agrif_Rhoy()             ! halo + land + nbghostcells 
     755         jend   = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhoy()             ! halo + land + nbghostcells 
    756756         DO jj = mj0(jstart), mj1(jend) 
    757757            DO ji = 1, jpi 
     
    763763      ! --- North --- ! 
    764764      IF(lk_north) THEN 
    765          jstart = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy()    ! halo + land + nbghostcells - 1 
     765         jstart = jpjglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhoy()    ! halo + land + nbghostcells - 1 
    766766         jend   = jpjglo - ( nn_hls + 1 )                                           ! halo + land + 1            - 1 
    767767         DO jj = mj0(jstart), mj1(jend) 
     
    14181418            DO jj=j1,j2 
    14191419               IF (utint_stage(ji,jj)==0) THEN  
    1420                   zx = 2._wp*MOD(ABS(mig0(ji)-nbghostcells-1), INT(Agrif_Rhox()))/zrhox - 1._wp   
     1420                  zx = 2._wp*MOD(ABS(mig0(ji)-nbghostcells), INT(Agrif_Rhox()))/zrhox - 1._wp   
    14211421                  ubdy(ji,jj) = ubdy(ji,jj) + 0.25_wp*(1._wp-zx*zx) * ptab(ji,jj) &  
    14221422                              &         / zrhoy *r1_e2u(ji,jj) * umask(ji,jj,1)  
     
    15221522            DO jj=j1,j2 
    15231523               IF (vtint_stage(ji,jj)==0) THEN  
    1524                   zy = 2._wp*MOD(ABS(mjg0(jj)-nbghostcells-1), INT(Agrif_Rhoy()))/zrhoy - 1._wp   
     1524                  zy = 2._wp*MOD(ABS(mjg0(jj)-nbghostcells), INT(Agrif_Rhoy()))/zrhoy - 1._wp   
    15251525                  vbdy(ji,jj) = vbdy(ji,jj) + 0.25_wp*(1._wp-zy*zy) * ptab(ji,jj) &  
    15261526                              &         / zrhox * r1_e1v(ji,jj) * vmask(ji,jj,1)  
     
    15331533      !  
    15341534   END SUBROUTINE vb2b_cor 
    1535  
    1536  
    1537    SUBROUTINE interpe3t( ptab, i1, i2, j1, j2, k1, k2, before ) 
    1538       !!---------------------------------------------------------------------- 
    1539       !!                  ***  ROUTINE interpe3t  *** 
    1540       !!----------------------------------------------------------------------   
    1541       INTEGER                              , INTENT(in   ) :: i1, i2, j1, j2, k1, k2 
    1542       REAL(wp),DIMENSION(i1:i2,j1:j2,k1:k2), INTENT(inout) :: ptab 
    1543       LOGICAL                              , INTENT(in   ) :: before 
    1544       ! 
    1545       INTEGER :: ji, jj, jk 
    1546       !!----------------------------------------------------------------------   
    1547       !     
    1548       IF( before ) THEN 
    1549          ptab(i1:i2,j1:j2,k1:k2) = tmask(i1:i2,j1:j2,k1:k2) * e3t_0(i1:i2,j1:j2,k1:k2) 
    1550       ELSE 
    1551          ! 
    1552          DO jk = k1, k2 
    1553             DO jj = j1, j2 
    1554                DO ji = i1, i2 
    1555                   IF( ABS( ptab(ji,jj,jk) - tmask(ji,jj,jk) * e3t_0(ji,jj,jk) ) > 1.D-2) THEN 
    1556                      WRITE(numout,*) ' Agrif error for e3t_0: parent , child, i, j, k ',  &  
    1557                      &                 ptab(ji,jj,jk), tmask(ji,jj,jk) * e3t_0(ji,jj,jk), & 
    1558                      &                 mig0(ji), mjg0(jj), jk 
    1559                      kindic_agr = kindic_agr + 1 
    1560                   ENDIF 
    1561                END DO 
    1562             END DO 
    1563          END DO 
    1564          ! 
    1565       ENDIF 
    1566       !  
    1567    END SUBROUTINE interpe3t 
    15681535 
    15691536 
     
    17931760      INTEGER, INTENT(inout) ::   iindic 
    17941761      !! 
    1795       INTEGER :: ji, jj 
     1762      INTEGER :: ji, jj, jk 
    17961763      INTEGER  :: istart, iend, jstart, jend, ispon 
    17971764      !!----------------------------------------------------------------------   
     
    18021769         ispon  = nn_sponge_len * Agrif_irhox() 
    18031770         istart = nn_hls + 2                                  ! halo + land + 1 
    1804          iend   = nn_hls + 1 + nbghostcells + ispon           ! halo + land + nbghostcells + sponge 
    1805          jstart = nn_hls + 2 
     1771         iend   = nn_hls + nbghostcells + ispon           ! halo + land + nbghostcells + sponge 
     1772         jstart = nn_hls + 2  
     1773         jend   = jpjglo - nn_hls - 1  
     1774         DO ji = mi0(istart), mi1(iend) 
     1775            DO jj = mj0(jstart), mj1(jend) 
     1776               IF ( ABS(ht0_parent(ji,jj)-ht_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1777               IF ( .NOT.ln_vert_remap) THEN 
     1778                  DO jk = 1, jpkm1 
     1779                     IF ( ABS(e3t0_parent(ji,jj,jk)-e3t_0(ji,jj,jk))*tmask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1780                  END DO  
     1781               ENDIF 
     1782            END DO 
     1783            DO jj = mj0(jstart), mj1(jend-1) 
     1784               IF ( ABS(hv0_parent(ji,jj)-hv_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1785               IF ( .NOT.ln_vert_remap) THEN 
     1786                  DO jk = 1, jpkm1 
     1787                     IF ( ABS(e3v0_parent(ji,jj,jk)-e3v_0(ji,jj,jk))*vmask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1788                  END DO  
     1789               ENDIF 
     1790            END DO 
     1791         END DO 
     1792         DO ji = mi0(istart), mi1(iend-1) 
     1793            DO jj = mj0(jstart), mj1(jend) 
     1794               IF ( ABS(hu0_parent(ji,jj)-hu_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1795               IF ( .NOT.ln_vert_remap) THEN 
     1796                  DO jk = 1, jpkm1 
     1797                     IF ( ABS(e3u0_parent(ji,jj,jk)-e3u_0(ji,jj,jk))*umask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1798                  END DO  
     1799               ENDIF 
     1800            END DO 
     1801         END DO 
     1802      ENDIF 
     1803      ! 
     1804      ! --- East --- ! 
     1805      IF(lk_east) THEN 
     1806         ispon  = nn_sponge_len * Agrif_irhox()  
     1807         istart = jpiglo - ( nn_hls + nbghostcells + ispon -1 )  ! halo + land + nbghostcells + sponge - 1 
     1808         iend   = jpiglo - nn_hls - 1                            ! halo + land + 1                     - 1 
     1809         jstart = nn_hls + 2  
    18061810         jend   = jpjglo - nn_hls - 1 
    18071811         DO ji = mi0(istart), mi1(iend) 
    18081812            DO jj = mj0(jstart), mj1(jend) 
    18091813               IF ( ABS(ht0_parent(ji,jj)-ht_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1814               IF ( .NOT.ln_vert_remap) THEN 
     1815                  DO jk = 1, jpkm1 
     1816                     IF ( ABS(e3t0_parent(ji,jj,jk)-e3t_0(ji,jj,jk))*tmask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1817                  END DO  
     1818               ENDIF 
    18101819            END DO 
    18111820            DO jj = mj0(jstart), mj1(jend-1) 
    18121821               IF ( ABS(hv0_parent(ji,jj)-hv_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1822               IF ( .NOT.ln_vert_remap) THEN 
     1823                  DO jk = 1, jpkm1 
     1824                     IF ( ABS(e3v0_parent(ji,jj,jk)-e3v_0(ji,jj,jk))*vmask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1825                  END DO  
     1826               ENDIF 
    18131827            END DO 
    18141828         END DO 
     
    18161830            DO jj = mj0(jstart), mj1(jend) 
    18171831               IF ( ABS(hu0_parent(ji,jj)-hu_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
    1818             END DO 
    1819          END DO 
    1820       ENDIF 
    1821       ! 
    1822       ! --- East --- ! 
    1823       IF(lk_east) THEN 
    1824          ispon  = nn_sponge_len * Agrif_irhox()  
    1825          istart = jpiglo - ( nn_hls + nbghostcells + ispon )  ! halo + land + nbghostcells + sponge - 1 
    1826          iend   = jpiglo - ( nn_hls + 1 )                     ! halo + land + 1                     - 1 
    1827          jstart = nn_hls + 2 
    1828          jend   = jpjglo - nn_hls - 1  
    1829          DO ji = mi0(istart), mi1(iend) 
    1830             DO jj = mj0(jstart), mj1(jend) 
    1831                IF ( ABS(ht0_parent(ji,jj)-ht_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
    1832             END DO 
    1833             DO jj = mj0(jstart), mj1(jend-1) 
    1834                IF ( ABS(hv0_parent(ji,jj)-hv_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
    1835             END DO 
    1836          END DO 
    1837          DO ji = mi0(istart+1), mi1(iend-1) 
    1838             DO jj = mj0(jstart), mj1(jend) 
    1839                IF ( ABS(hu0_parent(ji,jj)-hu_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1832               IF ( .NOT.ln_vert_remap) THEN 
     1833                  DO jk = 1, jpkm1 
     1834                     IF ( ABS(e3u0_parent(ji,jj,jk)-e3u_0(ji,jj,jk))*umask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1835                  END DO  
     1836               ENDIF 
    18401837            END DO 
    18411838         END DO 
     
    18441841      ! --- South --- ! 
    18451842      IF(lk_south) THEN 
    1846          ispon  = nn_sponge_len * Agrif_irhoy()  
     1843         ispon  = nn_sponge_len * Agrif_irhoy()   
    18471844         jstart = nn_hls + 2                                 ! halo + land + 1 
    1848          jend   = nn_hls + 1 + nbghostcells + ispon          ! halo + land + nbghostcells + sponge 
    1849          istart = nn_hls + 2 
    1850          iend   = jpiglo - nn_hls - 1 
     1845         jend   = nn_hls + nbghostcells + ispon          ! halo + land + nbghostcells + sponge 
     1846         istart = nn_hls + 2  
     1847         iend   = jpiglo - nn_hls - 1  
    18511848         DO jj = mj0(jstart), mj1(jend) 
    18521849            DO ji = mi0(istart), mi1(iend) 
    18531850               IF ( ABS(ht0_parent(ji,jj)-ht_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1851               IF ( .NOT.ln_vert_remap) THEN 
     1852                  DO jk = 1, jpkm1 
     1853                     IF ( ABS(e3t0_parent(ji,jj,jk)-e3t_0(ji,jj,jk))*tmask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1854                  END DO  
     1855               ENDIF 
    18541856            END DO 
    18551857            DO ji = mi0(istart), mi1(iend-1) 
    18561858               IF ( ABS(hu0_parent(ji,jj)-hu_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1859               IF ( .NOT.ln_vert_remap) THEN 
     1860                  DO jk = 1, jpkm1 
     1861                     IF ( ABS(e3u0_parent(ji,jj,jk)-e3u_0(ji,jj,jk))*umask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1862                  END DO  
     1863               ENDIF 
    18571864            END DO 
    18581865         END DO 
     
    18601867            DO ji = mi0(istart), mi1(iend) 
    18611868               IF ( ABS(hv0_parent(ji,jj)-hv_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1869               IF ( .NOT.ln_vert_remap) THEN 
     1870                  DO jk = 1, jpkm1 
     1871                     IF ( ABS(e3v0_parent(ji,jj,jk)-e3v_0(ji,jj,jk))*vmask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1872                  END DO  
     1873               ENDIF 
    18621874            END DO 
    18631875         END DO 
     
    18671879      IF(lk_north) THEN 
    18681880         ispon  = nn_sponge_len * Agrif_irhoy()  
    1869          jstart = jpjglo - ( nn_hls + nbghostcells + ispon)  ! halo + land + nbghostcells +sponge - 1 
    1870          jend   = jpjglo - ( nn_hls + 1 )                    ! halo + land + 1            - 1 
    1871          istart = nn_hls + 2 
    1872          iend   = jpiglo - nn_hls - 1 
     1881         jstart = jpjglo - ( nn_hls + nbghostcells + ispon - 1)  ! halo + land + nbghostcells +sponge - 1 
     1882         jend   = jpjglo - nn_hls - 1                            ! halo + land + 1            - 1 
     1883         istart = nn_hls + 2  
     1884         iend   = jpiglo - nn_hls - 1  
    18731885         DO jj = mj0(jstart), mj1(jend) 
    18741886            DO ji = mi0(istart), mi1(iend) 
    18751887               IF ( ABS(ht0_parent(ji,jj)-ht_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1888               IF ( .NOT.ln_vert_remap) THEN 
     1889                  DO jk = 1, jpkm1 
     1890                     IF ( ABS(e3t0_parent(ji,jj,jk)-e3t_0(ji,jj,jk))*tmask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1891                  END DO  
     1892               ENDIF 
    18761893            END DO 
    18771894            DO ji = mi0(istart), mi1(iend-1) 
    18781895               IF ( ABS(hu0_parent(ji,jj)-hu_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
    1879             END DO 
    1880          END DO 
    1881          DO jj = mj0(jstart+1), mj1(jend-1) 
     1896               IF ( .NOT.ln_vert_remap) THEN 
     1897                  DO jk = 1, jpkm1 
     1898                     IF ( ABS(e3u0_parent(ji,jj,jk)-e3u_0(ji,jj,jk))*umask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1899                  END DO  
     1900               ENDIF 
     1901            END DO 
     1902         END DO 
     1903         DO jj = mj0(jstart), mj1(jend-1) 
    18821904            DO ji = mi0(istart), mi1(iend) 
    18831905               IF ( ABS(hv0_parent(ji,jj)-hv_0(ji,jj)) > 1.e-3 ) iindic = iindic + 1 
     1906               IF ( .NOT.ln_vert_remap) THEN 
     1907                  DO jk = 1, jpkm1 
     1908                     IF ( ABS(e3v0_parent(ji,jj,jk)-e3v_0(ji,jj,jk))*vmask(ji,jj,jk) > 1.e-3 ) iindic = iindic + 1 
     1909                  END DO  
     1910               ENDIF 
    18841911            END DO 
    18851912         END DO 
Note: See TracChangeset for help on using the changeset viewer.