Changeset 14986 for NEMO/branches/2021/dev_r14116_HPC-10_mcastril_Mixed_Precision_implementation/src/NST/agrif_oce_interp.F90
- Timestamp:
- 2021-06-14T13:34:08+02:00 (3 years ago)
- 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 44 44 PUBLIC interptsn, interpsshn, interpavm 45 45 PUBLIC interpunb, interpvnb , interpub2b, interpvb2b 46 PUBLIC interp e3t, interpglamt, interpgphit46 PUBLIC interpglamt, interpgphit 47 47 PUBLIC interpht0, interpmbkt, interpe3t0_vremap 48 48 PUBLIC agrif_istate_oce, agrif_istate_ssh ! called by icestate.F90 and domvvl.F90 … … 216 216 IF( lk_west ) THEN 217 217 ibdy1 = nn_hls + 2 ! halo + land + 1 218 ibdy2 = nn_hls + 1 +nbghostcells + nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells218 ibdy2 = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells 219 219 ! 220 220 IF( .NOT.ln_dynspg_ts ) THEN ! Store transport … … 265 265 ! --- East --- ! 266 266 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() 268 268 ibdy2 = jpiglo - ( nn_hls + 2 ) 269 269 ! … … 293 293 END DO 294 294 ! 295 ibdy1 = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox()295 ibdy1 = jpiglo - ( nn_hls + nbghostcells - 1 ) - nn_shift_bar*Agrif_Rhox() 296 296 ibdy2 = jpiglo - ( nn_hls + 1 ) 297 297 ! … … 326 326 IF( lk_south ) THEN 327 327 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() 329 329 ! 330 330 IF( .NOT.ln_dynspg_ts ) THEN … … 375 375 ! --- North --- ! 376 376 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() 378 378 jbdy2 = jpjglo - ( nn_hls + 2 ) 379 379 ! … … 403 403 END DO 404 404 ! 405 jbdy1 = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy()405 jbdy1 = jpjglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhoy() 406 406 jbdy2 = jpjglo - ( nn_hls + 1 ) 407 407 ! … … 451 451 IF( lk_west ) THEN 452 452 istart = nn_hls + 2 ! halo + land + 1 453 iend = nn_hls + 1 +nbghostcells + nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells453 iend = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells 454 454 DO ji = mi0(istart), mi1(iend) 455 455 DO jj=1,jpj … … 462 462 !--- East ---! 463 463 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() 465 465 iend = jpiglo - ( nn_hls + 1 ) 466 466 DO ji = mi0(istart), mi1(iend) … … 470 470 END DO 471 471 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() 473 473 iend = jpiglo - ( nn_hls + 2 ) 474 474 DO ji = mi0(istart), mi1(iend) … … 482 482 IF( lk_south ) THEN 483 483 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() 485 485 DO jj = mj0(jstart), mj1(jend) 486 486 … … 494 494 !--- North ---! 495 495 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() 497 497 jend = jpjglo - ( nn_hls + 1 ) 498 498 DO jj = mj0(jstart), mj1(jend) … … 501 501 END DO 502 502 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() 504 504 jend = jpjglo - ( nn_hls + 2 ) 505 505 DO jj = mj0(jstart), mj1(jend) … … 529 529 IF( lk_west ) THEN 530 530 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() 532 532 DO ji = mi0(istart), mi1(iend) 533 533 DO jj=1,jpj … … 540 540 !--- East ---! 541 541 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() 543 543 iend = jpiglo - ( nn_hls + 1 ) 544 544 DO ji = mi0(istart), mi1(iend) … … 547 547 END DO 548 548 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() 550 550 iend = jpiglo - ( nn_hls + 2 ) 551 551 DO ji = mi0(istart), mi1(iend) … … 559 559 IF( lk_south ) THEN 560 560 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() 562 562 DO jj = mj0(jstart), mj1(jend) 563 563 DO ji=1,jpi … … 570 570 !--- North ---! 571 571 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() 573 573 jend = jpjglo - ( nn_hls + 1 ) 574 574 DO jj = mj0(jstart), mj1(jend) … … 577 577 END DO 578 578 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() 580 580 jend = jpjglo - ( nn_hls + 2 ) 581 581 DO jj = mj0(jstart), mj1(jend) … … 672 672 IF(lk_west) THEN 673 673 istart = nn_hls + 2 ! halo + land + 1 674 iend = nn_hls + 1 +nbghostcells + nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells674 iend = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells 675 675 DO ji = mi0(istart), mi1(iend) 676 676 DO jj = 1, jpj … … 682 682 ! --- East --- ! 683 683 IF(lk_east) THEN 684 istart = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells - 1684 istart = jpiglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells - 1 685 685 iend = jpiglo - ( nn_hls + 1 ) ! halo + land + 1 - 1 686 686 DO ji = mi0(istart), mi1(iend) … … 694 694 IF(lk_south) THEN 695 695 jstart = nn_hls + 2 ! halo + land + 1 696 jend = nn_hls + 1 +nbghostcells + nn_shift_bar*Agrif_Rhoy() ! halo + land + nbghostcells696 jend = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhoy() ! halo + land + nbghostcells 697 697 DO jj = mj0(jstart), mj1(jend) 698 698 DO ji = 1, jpi … … 704 704 ! --- North --- ! 705 705 IF(lk_north) THEN 706 jstart = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy() ! halo + land + nbghostcells - 1706 jstart = jpjglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhoy() ! halo + land + nbghostcells - 1 707 707 jend = jpjglo - ( nn_hls + 1 ) ! halo + land + 1 - 1 708 708 DO jj = mj0(jstart), mj1(jend) … … 731 731 IF(lk_west) THEN 732 732 istart = nn_hls + 2 ! halo + land + 1 733 iend = nn_hls + 1 +nbghostcells + nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells733 iend = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells 734 734 DO ji = mi0(istart), mi1(iend) 735 735 DO jj = 1, jpj … … 741 741 ! --- East --- ! 742 742 IF(lk_east) THEN 743 istart = jpiglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells - 1743 istart = jpiglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhox() ! halo + land + nbghostcells - 1 744 744 iend = jpiglo - ( nn_hls + 1 ) ! halo + land + 1 - 1 745 745 DO ji = mi0(istart), mi1(iend) … … 753 753 IF(lk_south) THEN 754 754 jstart = nn_hls + 2 ! halo + land + 1 755 jend = nn_hls + 1 +nbghostcells + nn_shift_bar*Agrif_Rhoy() ! halo + land + nbghostcells755 jend = nn_hls + nbghostcells + nn_shift_bar*Agrif_Rhoy() ! halo + land + nbghostcells 756 756 DO jj = mj0(jstart), mj1(jend) 757 757 DO ji = 1, jpi … … 763 763 ! --- North --- ! 764 764 IF(lk_north) THEN 765 jstart = jpjglo - ( nn_hls + nbghostcells ) - nn_shift_bar*Agrif_Rhoy() ! halo + land + nbghostcells - 1765 jstart = jpjglo - ( nn_hls + nbghostcells -1 ) - nn_shift_bar*Agrif_Rhoy() ! halo + land + nbghostcells - 1 766 766 jend = jpjglo - ( nn_hls + 1 ) ! halo + land + 1 - 1 767 767 DO jj = mj0(jstart), mj1(jend) … … 1418 1418 DO jj=j1,j2 1419 1419 IF (utint_stage(ji,jj)==0) THEN 1420 zx = 2._wp*MOD(ABS(mig0(ji)-nbghostcells -1), INT(Agrif_Rhox()))/zrhox - 1._wp1420 zx = 2._wp*MOD(ABS(mig0(ji)-nbghostcells), INT(Agrif_Rhox()))/zrhox - 1._wp 1421 1421 ubdy(ji,jj) = ubdy(ji,jj) + 0.25_wp*(1._wp-zx*zx) * ptab(ji,jj) & 1422 1422 & / zrhoy *r1_e2u(ji,jj) * umask(ji,jj,1) … … 1522 1522 DO jj=j1,j2 1523 1523 IF (vtint_stage(ji,jj)==0) THEN 1524 zy = 2._wp*MOD(ABS(mjg0(jj)-nbghostcells -1), INT(Agrif_Rhoy()))/zrhoy - 1._wp1524 zy = 2._wp*MOD(ABS(mjg0(jj)-nbghostcells), INT(Agrif_Rhoy()))/zrhoy - 1._wp 1525 1525 vbdy(ji,jj) = vbdy(ji,jj) + 0.25_wp*(1._wp-zy*zy) * ptab(ji,jj) & 1526 1526 & / zrhox * r1_e1v(ji,jj) * vmask(ji,jj,1) … … 1533 1533 ! 1534 1534 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, k21542 REAL(wp),DIMENSION(i1:i2,j1:j2,k1:k2), INTENT(inout) :: ptab1543 LOGICAL , INTENT(in ) :: before1544 !1545 INTEGER :: ji, jj, jk1546 !!----------------------------------------------------------------------1547 !1548 IF( before ) THEN1549 ptab(i1:i2,j1:j2,k1:k2) = tmask(i1:i2,j1:j2,k1:k2) * e3t_0(i1:i2,j1:j2,k1:k2)1550 ELSE1551 !1552 DO jk = k1, k21553 DO jj = j1, j21554 DO ji = i1, i21555 IF( ABS( ptab(ji,jj,jk) - tmask(ji,jj,jk) * e3t_0(ji,jj,jk) ) > 1.D-2) THEN1556 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), jk1559 kindic_agr = kindic_agr + 11560 ENDIF1561 END DO1562 END DO1563 END DO1564 !1565 ENDIF1566 !1567 END SUBROUTINE interpe3t1568 1535 1569 1536 … … 1793 1760 INTEGER, INTENT(inout) :: iindic 1794 1761 !! 1795 INTEGER :: ji, jj 1762 INTEGER :: ji, jj, jk 1796 1763 INTEGER :: istart, iend, jstart, jend, ispon 1797 1764 !!---------------------------------------------------------------------- … … 1802 1769 ispon = nn_sponge_len * Agrif_irhox() 1803 1770 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 1806 1810 jend = jpjglo - nn_hls - 1 1807 1811 DO ji = mi0(istart), mi1(iend) 1808 1812 DO jj = mj0(jstart), mj1(jend) 1809 1813 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 1810 1819 END DO 1811 1820 DO jj = mj0(jstart), mj1(jend-1) 1812 1821 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 1813 1827 END DO 1814 1828 END DO … … 1816 1830 DO jj = mj0(jstart), mj1(jend) 1817 1831 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 1840 1837 END DO 1841 1838 END DO … … 1844 1841 ! --- South --- ! 1845 1842 IF(lk_south) THEN 1846 ispon = nn_sponge_len * Agrif_irhoy() 1843 ispon = nn_sponge_len * Agrif_irhoy() 1847 1844 jstart = nn_hls + 2 ! halo + land + 1 1848 jend = nn_hls + 1 +nbghostcells + ispon ! halo + land + nbghostcells + sponge1849 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 1851 1848 DO jj = mj0(jstart), mj1(jend) 1852 1849 DO ji = mi0(istart), mi1(iend) 1853 1850 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 1854 1856 END DO 1855 1857 DO ji = mi0(istart), mi1(iend-1) 1856 1858 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 1857 1864 END DO 1858 1865 END DO … … 1860 1867 DO ji = mi0(istart), mi1(iend) 1861 1868 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 1862 1874 END DO 1863 1875 END DO … … 1867 1879 IF(lk_north) THEN 1868 1880 ispon = nn_sponge_len * Agrif_irhoy() 1869 jstart = jpjglo - ( nn_hls + nbghostcells + ispon ) ! halo + land + nbghostcells +sponge - 11870 jend = jpjglo - ( nn_hls + 1 )! halo + land + 1 - 11871 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 1873 1885 DO jj = mj0(jstart), mj1(jend) 1874 1886 DO ji = mi0(istart), mi1(iend) 1875 1887 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 1876 1893 END DO 1877 1894 DO ji = mi0(istart), mi1(iend-1) 1878 1895 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) 1882 1904 DO ji = mi0(istart), mi1(iend) 1883 1905 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 1884 1911 END DO 1885 1912 END DO
Note: See TracChangeset
for help on using the changeset viewer.