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 13906 for NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE – NEMO

Ignore:
Timestamp:
2020-11-28T19:03:50+01:00 (4 years ago)
Author:
mocavero
Message:

Merge with dev_r13296_HPC-07_mocavero_mpi3

Location:
NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE
Files:
11 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/icecor.F90

    r13741 r13906  
    116116            ENDIF 
    117117         END_2D 
     118#if defined key_mpi3 
     119         CALL lbc_lnk_nc_multi( 'icecor', u_ice, 'U', -1.0_wp, v_ice, 'V', -1.0_wp ) 
     120#else 
    118121         CALL lbc_lnk_multi( 'icecor', u_ice, 'U', -1.0_wp, v_ice, 'V', -1.0_wp ) 
     122#endif 
    119123      ENDIF 
    120124      ! 
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/icedyn.F90

    r13553 r13906  
    161161                  &             + e1v(ji,jj) * v_ice(ji,jj) - e1v(ji,jj-1) * v_ice(ji,jj-1) ) * r1_e1e2t(ji,jj) 
    162162            END_2D 
     163#if defined key_mpi3 
     164            CALL lbc_lnk_nc_multi( 'icedyn', zdivu_i, 'T', 1.0_wp ) 
     165#else 
    163166            CALL lbc_lnk( 'icedyn', zdivu_i, 'T', 1.0_wp ) 
     167#endif 
    164168            ! output 
    165169            CALL iom_put( 'icediv' , zdivu_i ) 
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/icedyn_adv_pra.F90

    r13741 r13906  
    115115      CALL icemax3D( ph_ip, zhip_max) 
    116116      CALL icemax3D( zs_i , zsi_max ) 
     117#if defined key_mpi3 
     118      CALL lbc_lnk_nc_multi( 'icedyn_adv_pra', zhi_max, 'T', 1._wp, zhs_max, 'T', 1._wp, zhip_max, 'T', 1._wp, zsi_max, 'T', 1._wp ) 
     119#else 
    117120      CALL lbc_lnk_multi( 'icedyn_adv_pra', zhi_max, 'T', 1._wp, zhs_max, 'T', 1._wp, zhip_max, 'T', 1._wp, zsi_max, 'T', 1._wp ) 
     121#endif 
    118122      ! 
    119123      ! enthalpies 
     
    130134      CALL icemax4D( ze_i , zei_max ) 
    131135      CALL icemax4D( ze_s , zes_max ) 
     136#if defined key_mpi3 
     137      CALL lbc_lnk_nc_multi( 'icedyn_adv_pra', zei_max, 'T', 1._wp ) 
     138      CALL lbc_lnk_nc_multi( 'icedyn_adv_pra', zes_max, 'T', 1._wp ) 
     139#else 
    132140      CALL lbc_lnk( 'icedyn_adv_pra', zei_max, 'T', 1._wp ) 
    133141      CALL lbc_lnk( 'icedyn_adv_pra', zes_max, 'T', 1._wp ) 
     142#endif 
    134143      ! 
    135144      ! 
     
    317326               &                          - ( zudy(ji,jj) - zudy(ji-1,jj) + zvdx(ji,jj) - zvdx(ji,jj-1) ) * r1_e1e2t(ji,jj) * zdt 
    318327         END_2D 
     328#if defined key_mpi3 
     329         CALL lbc_lnk_nc_multi( 'icedyn_adv_pra', pato_i, 'T',  1.0_wp ) 
     330#else 
    319331         CALL lbc_lnk( 'icedyn_adv_pra', pato_i, 'T',  1.0_wp ) 
     332#endif 
    320333         ! 
    321334         ! --- diagnostics --- ! 
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/icedyn_adv_umx.F90

    r13741 r13906  
    119119      CALL icemax3D( ph_ip, zhip_max) 
    120120      CALL icemax3D( zs_i , zsi_max ) 
     121#if defined key_mpi3 
     122      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zhi_max, 'T', 1._wp, zhs_max, 'T', 1._wp, zhip_max, 'T', 1._wp, zsi_max, 'T', 1._wp ) 
     123#else 
    121124      CALL lbc_lnk_multi( 'icedyn_adv_umx', zhi_max, 'T', 1._wp, zhs_max, 'T', 1._wp, zhip_max, 'T', 1._wp, zsi_max, 'T', 1._wp ) 
     125#endif 
    122126      ! 
    123127      ! enthalpies 
     
    134138      CALL icemax4D( ze_i , zei_max ) 
    135139      CALL icemax4D( ze_s , zes_max ) 
     140#if defined key_mpi3 
     141      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zei_max, 'T', 1._wp ) 
     142      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zes_max, 'T', 1._wp ) 
     143#else 
    136144      CALL lbc_lnk( 'icedyn_adv_umx', zei_max, 'T', 1._wp ) 
    137145      CALL lbc_lnk( 'icedyn_adv_umx', zes_max, 'T', 1._wp ) 
     146#endif 
    138147      ! 
    139148      ! 
     
    376385               &                          - ( zudy(ji,jj) - zudy(ji-1,jj) + zvdx(ji,jj) - zvdx(ji,jj-1) ) * r1_e1e2t(ji,jj) * zdt 
    377386         END_2D 
     387#if defined key_mpi3 
     388         CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', pato_i, 'T',  1._wp ) 
     389#else 
    378390         CALL lbc_lnk( 'icedyn_adv_umx', pato_i, 'T',  1._wp ) 
     391#endif 
    379392         ! 
    380393         ! --- diagnostics --- ! 
     
    519532            END_2D 
    520533         END DO 
     534#if defined key_mpi3 
     535         CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zt_ups, 'T',  1.0_wp ) 
     536#else 
    521537         CALL lbc_lnk( 'icedyn_adv_umx', zt_ups, 'T',  1.0_wp ) 
     538#endif 
    522539         ! 
    523540         IF    ( np_limiter == 1 ) THEN 
     
    649666         END_2D 
    650667      END DO 
     668#if defined key_mpi3 
     669      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', pt_ups, 'T', 1.0_wp ) 
     670#else 
    651671      CALL lbc_lnk( 'icedyn_adv_umx', pt_ups, 'T', 1.0_wp ) 
     672#endif 
    652673 
    653674   END SUBROUTINE upstream 
     
    795816            END_2D 
    796817         END DO 
     818#if defined key_mpi3 
     819         CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 
     820#else 
    797821         CALL lbc_lnk( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 
     822#endif 
    798823         ! 
    799824         !                                                        !--  ultimate interpolation of pt at v-point  --! 
     
    822847            END_2D 
    823848         END DO 
     849#if defined key_mpi3 
     850         CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 
     851#else 
    824852         CALL lbc_lnk( 'icedyn_adv_umx', zpt, 'T', 1.0_wp ) 
     853#endif 
    825854         ! 
    826855         !                                                        !--  ultimate interpolation of pt at u-point  --! 
     
    875904         END DO 
    876905      END DO 
     906#if defined key_mpi3 
     907      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', ztu2, 'T', 1.0_wp ) 
     908#else 
    877909      CALL lbc_lnk( 'icedyn_adv_umx', ztu2, 'T', 1.0_wp ) 
     910#endif 
    878911      ! 
    879912      !                                                     !--  BiLaplacian in i-direction  --! 
     
    889922         END DO 
    890923      END DO 
     924#if defined key_mpi3 
     925      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', ztu4, 'T', 1.0_wp ) 
     926#else 
    891927      CALL lbc_lnk( 'icedyn_adv_umx', ztu4, 'T', 1.0_wp ) 
     928#endif 
    892929      ! 
    893930      ! 
     
    10151052         END_2D 
    10161053      END DO 
     1054#if defined key_mpi3 
     1055      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', ztv2, 'T', 1.0_wp ) 
     1056#else 
    10171057      CALL lbc_lnk( 'icedyn_adv_umx', ztv2, 'T', 1.0_wp ) 
     1058#endif 
    10181059      ! 
    10191060      !                                                     !--  BiLaplacian in j-direction  --! 
     
    10261067         END_2D 
    10271068      END DO 
     1069#if defined key_mpi3 
     1070      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', ztv4, 'T', 1.0_wp ) 
     1071#else 
    10281072      CALL lbc_lnk( 'icedyn_adv_umx', ztv4, 'T', 1.0_wp ) 
     1073#endif 
    10291074      ! 
    10301075      ! 
     
    11671212            END_2D 
    11681213         END DO 
     1214#if defined key_mpi3 
     1215         CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zti_ups, 'T', 1.0_wp, ztj_ups, 'T', 1.0_wp ) 
     1216#else 
    11691217         CALL lbc_lnk_multi( 'icedyn_adv_umx', zti_ups, 'T', 1.0_wp, ztj_ups, 'T', 1.0_wp ) 
     1218#endif 
    11701219 
    11711220         DO jl = 1, jpl 
     
    11891238            END_2D 
    11901239         END DO 
     1240#if defined key_mpi3 
     1241         CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', pfu_ho, 'U', -1.0_wp, pfv_ho, 'V', -1.0_wp )   ! lateral boundary cond. 
     1242#else 
    11911243         CALL lbc_lnk_multi( 'icedyn_adv_umx', pfu_ho, 'U', -1.0_wp, pfv_ho, 'V', -1.0_wp )   ! lateral boundary cond. 
     1244#endif 
    11921245 
    11931246      ENDIF 
     
    12461299         END_2D 
    12471300      END DO 
     1301#if defined key_mpi3 
     1302      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zbetup, 'T', 1.0_wp, zbetdo, 'T', 1.0_wp )   ! lateral boundary cond. (unchanged sign) 
     1303#else 
    12481304      CALL lbc_lnk_multi( 'icedyn_adv_umx', zbetup, 'T', 1.0_wp, zbetdo, 'T', 1.0_wp )   ! lateral boundary cond. (unchanged sign) 
     1305#endif 
    12491306 
    12501307       
     
    13011358         END_2D 
    13021359      END DO 
     1360#if defined key_mpi3 
     1361      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zslpx, 'U', -1.0_wp)   ! lateral boundary cond. 
     1362#else 
    13031363      CALL lbc_lnk( 'icedyn_adv_umx', zslpx, 'U', -1.0_wp)   ! lateral boundary cond. 
     1364#endif 
    13041365       
    13051366      DO jl = 1, jpl 
     
    13651426         END_2D 
    13661427      END DO 
     1428#if defined key_mpi3 
     1429      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', pfu_ho, 'U', -1.0_wp)   ! lateral boundary cond. 
     1430#else 
    13671431      CALL lbc_lnk( 'icedyn_adv_umx', pfu_ho, 'U', -1.0_wp)   ! lateral boundary cond. 
     1432#endif 
    13681433      ! 
    13691434   END SUBROUTINE limiter_x 
     
    13921457         END_2D 
    13931458      END DO 
     1459#if defined key_mpi3 
     1460      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', zslpy, 'V', -1.0_wp)   ! lateral boundary cond. 
     1461#else 
    13941462      CALL lbc_lnk( 'icedyn_adv_umx', zslpy, 'V', -1.0_wp)   ! lateral boundary cond. 
     1463#endif 
    13951464 
    13961465      DO jl = 1, jpl 
     
    14571526         END_2D 
    14581527      END DO 
     1528#if defined key_mpi3 
     1529      CALL lbc_lnk_nc_multi( 'icedyn_adv_umx', pfv_ho, 'V', -1.0_wp)   ! lateral boundary cond. 
     1530#else 
    14591531      CALL lbc_lnk( 'icedyn_adv_umx', pfv_ho, 'V', -1.0_wp)   ! lateral boundary cond. 
     1532#endif 
    14601533      ! 
    14611534   END SUBROUTINE limiter_y 
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/icedyn_rdgrft.F90

    r13741 r13906  
    801801            strength(ji,jj) = zworka(ji,jj) 
    802802         END_2D 
     803#if defined key_mpi3 
     804         CALL lbc_lnk_nc_multi( 'icedyn_rdgrft', strength, 'T', 1.0_wp ) 
     805#else 
    803806         CALL lbc_lnk( 'icedyn_rdgrft', strength, 'T', 1.0_wp ) 
     807#endif 
    804808         ! 
    805809      CASE( 2 )               !--- Temporal smoothing 
     
    820824            ENDIF 
    821825         END_2D 
     826#if defined key_mpi3 
     827         CALL lbc_lnk_nc_multi( 'icedyn_rdgrft', strength, 'T', 1.0_wp ) 
     828#else 
    822829         CALL lbc_lnk( 'icedyn_rdgrft', strength, 'T', 1.0_wp ) 
     830#endif 
    823831         ! 
    824832      END SELECT 
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/icedyn_rhg_evp.F90

    r13741 r13906  
    199199         zfmask(ji,jj) = tmask(ji,jj,1) * tmask(ji+1,jj,1) * tmask(ji,jj+1,1) * tmask(ji+1,jj+1,1) 
    200200      END_2D 
    201       CALL lbc_lnk( 'icedyn_rhg_evp', zfmask, 'F', 1._wp ) 
     201#if defined key_mpi3 
     202      CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zfmask, 'F', 1._wp) 
     203#else 
     204      CALL lbc_lnk( 'icedyn_rhg_evp', zfmask, 'F', 1._wp) 
     205#endif 
    202206 
    203207      ! Lateral boundary conditions on velocity (modify zfmask) 
     
    224228         ENDIF 
    225229      END DO 
     230#if defined key_mpi3 
     231      CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zfmask, 'F', 1._wp ) 
     232#else 
    226233      CALL lbc_lnk( 'icedyn_rhg_evp', zfmask, 'F', 1._wp ) 
     234#endif 
    227235 
    228236      !------------------------------------------------------------------------------! 
     
    316324 
    317325      END_2D 
     326#if defined key_mpi3 
     327      CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zmf, 'T', 1.0_wp, zdt_m, 'T', 1.0_wp ) 
     328#else 
    318329      CALL lbc_lnk_multi( 'icedyn_rhg_evp', zmf, 'T', 1.0_wp, zdt_m, 'T', 1.0_wp ) 
     330#endif 
    319331      ! 
    320332      !                                  !== Landfast ice parameterization ==! 
     
    335347            tau_icebfr(ji,jj) = - rn_lf_bfr * MAX( 0._wp, vt_i(ji,jj) - zvCr ) * EXP( -rn_crhg * ( 1._wp - at_i(ji,jj) ) ) 
    336348         END_2D 
     349#if defined key_mpi3 
     350         CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', tau_icebfr(:,:), 'T', 1.0_wp ) 
     351#else 
    337352         CALL lbc_lnk( 'icedyn_rhg_evp', tau_icebfr(:,:), 'T', 1.0_wp ) 
     353#endif 
    338354         ! 
    339355      ELSE                               !-- no landfast 
     
    394410 
    395411         END_2D 
     412#if defined key_mpi3 
     413         CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zdelta, 'T', 1.0_wp ) 
     414#else 
    396415         CALL lbc_lnk( 'icedyn_rhg_evp', zdelta, 'T', 1.0_wp ) 
     416#endif 
    397417 
    398418         ! P/delta at T points 
     
    533553               ENDIF 
    534554            END_2D 
     555#if defined key_mpi3 
     556            CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', v_ice, 'V', -1.0_wp ) 
     557#else 
    535558            CALL lbc_lnk( 'icedyn_rhg_evp', v_ice, 'V', -1.0_wp ) 
     559#endif 
    536560            ! 
    537561#if defined key_agrif 
     
    585609               ENDIF 
    586610            END_2D 
     611#if defined key_mpi3 
     612            CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', u_ice, 'U', -1.0_wp ) 
     613#else 
    587614            CALL lbc_lnk( 'icedyn_rhg_evp', u_ice, 'U', -1.0_wp ) 
     615#endif 
    588616            ! 
    589617#if defined key_agrif 
     
    639667               ENDIF 
    640668            END_2D 
     669#if defined key_mpi3 
     670            CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', u_ice, 'U', -1.0_wp ) 
     671#else 
    641672            CALL lbc_lnk( 'icedyn_rhg_evp', u_ice, 'U', -1.0_wp ) 
     673#endif 
    642674            ! 
    643675#if defined key_agrif 
     
    691723               ENDIF 
    692724            END_2D 
     725#if defined key_mpi3 
     726            CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', v_ice, 'V', -1.0_wp ) 
     727#else 
    693728            CALL lbc_lnk( 'icedyn_rhg_evp', v_ice, 'V', -1.0_wp ) 
     729#endif 
    694730            ! 
    695731#if defined key_agrif 
     
    750786 
    751787      END_2D 
     788#if defined key_mpi3 
     789      CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', pshear_i, 'T', 1._wp, pdivu_i, 'T', 1._wp, pdelta_i, 'T', 1._wp, zten_i, 'T', 1._wp, & 
     790         &                                  zs1     , 'T', 1._wp, zs2    , 'T', 1._wp, zs12    , 'F', 1._wp ) 
     791#else 
    752792      CALL lbc_lnk_multi( 'icedyn_rhg_evp', pshear_i, 'T', 1._wp, pdivu_i, 'T', 1._wp, pdelta_i, 'T', 1._wp, zten_i, 'T', 1._wp, & 
    753793         &                                  zs1     , 'T', 1._wp, zs2    , 'T', 1._wp, zs12    , 'F', 1._wp ) 
     794#endif 
    754795       
    755796      ! --- Store the stress tensor for the next time step --- ! 
     
    766807         & iom_use('utau_bi') .OR. iom_use('vtau_bi') ) THEN 
    767808         ! 
     809#if defined key_mpi3 
     810         CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', ztaux_oi, 'U', -1.0_wp, ztauy_oi, 'V', -1.0_wp, ztaux_ai, 'U', -1.0_wp, ztauy_ai, 'V', -1.0_wp, & 
     811            &                                  ztaux_bi, 'U', -1.0_wp, ztauy_bi, 'V', -1.0_wp ) 
     812#else 
    768813         CALL lbc_lnk_multi( 'icedyn_rhg_evp', ztaux_oi, 'U', -1.0_wp, ztauy_oi, 'V', -1.0_wp, ztaux_ai, 'U', -1.0_wp, ztauy_ai, 'V', -1.0_wp, & 
    769814            &                                  ztaux_bi, 'U', -1.0_wp, ztauy_bi, 'V', -1.0_wp ) 
     815#endif 
    770816         ! 
    771817         CALL iom_put( 'utau_oi' , ztaux_oi * zmsk00 ) 
     
    851897         & iom_use('corstrx') .OR. iom_use('corstry') .OR. iom_use('intstrx') .OR. iom_use('intstry') ) THEN 
    852898         ! 
     899#if defined key_mpi3 
     900         CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zspgU, 'U', -1.0_wp, zspgV, 'V', -1.0_wp, & 
     901            &                                  zCorU, 'U', -1.0_wp, zCorV, 'V', -1.0_wp, zfU, 'U', -1.0_wp, zfV, 'V', -1.0_wp ) 
     902#else 
    853903         CALL lbc_lnk_multi( 'icedyn_rhg_evp', zspgU, 'U', -1.0_wp, zspgV, 'V', -1.0_wp, & 
    854904            &                                  zCorU, 'U', -1.0_wp, zCorV, 'V', -1.0_wp, zfU, 'U', -1.0_wp, zfV, 'V', -1.0_wp ) 
     905#endif 
    855906 
    856907         CALL iom_put( 'dssh_dx' , zspgU * zmsk00 )   ! Sea-surface tilt term in force balance (x) 
     
    884935         END_2D 
    885936 
     937#if defined key_mpi3 
     938         CALL lbc_lnk_nc_multi( 'icedyn_rhg_evp', zdiag_xmtrp_ice, 'U', -1.0_wp, zdiag_ymtrp_ice, 'V', -1.0_wp, & 
     939            &                                  zdiag_xmtrp_snw, 'U', -1.0_wp, zdiag_ymtrp_snw, 'V', -1.0_wp, & 
     940            &                                  zdiag_xatrp    , 'U', -1.0_wp, zdiag_yatrp    , 'V', -1.0_wp ) 
     941#else 
    886942         CALL lbc_lnk_multi( 'icedyn_rhg_evp', zdiag_xmtrp_ice, 'U', -1.0_wp, zdiag_ymtrp_ice, 'V', -1.0_wp, & 
    887943            &                                  zdiag_xmtrp_snw, 'U', -1.0_wp, zdiag_ymtrp_snw, 'V', -1.0_wp, & 
    888944            &                                  zdiag_xatrp    , 'U', -1.0_wp, zdiag_yatrp    , 'V', -1.0_wp ) 
     945#endif 
    889946 
    890947         CALL iom_put( 'xmtrpice' , zdiag_xmtrp_ice )   ! X-component of sea-ice mass transport (kg/s) 
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/icesbc.F90

    r13553 r13906  
    8686            vtau_ice(ji,jj) = vtau_ice(ji,jj) * xcplmask(ji,jj,0) + zvtau_ice(ji,jj) * ( 1. - xcplmask(ji,jj,0) ) 
    8787         END_2D 
     88#if defined key_mpi3 
     89         CALL lbc_lnk_nc_multi( 'icesbc', utau_ice, 'U', -1.0_wp, vtau_ice, 'V', -1.0_wp ) 
     90#else 
    8891         CALL lbc_lnk_multi( 'icesbc', utau_ice, 'U', -1.0_wp, vtau_ice, 'V', -1.0_wp ) 
     92#endif 
    8993      ENDIF 
    9094      ! 
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/icethd.F90

    r13741 r13906  
    136136         END_2D 
    137137      ENDIF 
     138#if defined key_mpi3 
     139      CALL lbc_lnk_nc_multi( 'icethd', zfric, 'T',  1.0_wp, zvel, 'T', 1.0_wp ) 
     140#else 
    138141      CALL lbc_lnk_multi( 'icethd', zfric, 'T',  1.0_wp, zvel, 'T', 1.0_wp ) 
     142#endif 
    139143      ! 
    140144      !--------------------------------------------------------------------! 
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/icethd_do.F90

    r13741 r13906  
    193193         END_2D 
    194194         !  
     195#if defined key_mpi3 
     196         CALL lbc_lnk_nc_multi( 'icethd_do', zvrel, 'T', 1.0_wp, ht_i_new, 'T', 1.0_wp  ) 
     197#else 
    195198         CALL lbc_lnk_multi( 'icethd_do', zvrel, 'T', 1.0_wp, ht_i_new, 'T', 1.0_wp  ) 
     199#endif 
    196200 
    197201      ENDIF 
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/iceupdate.F90

    r13741 r13906  
    345345            tmod_io(ji,jj) = zrhoco * SQRT( zmodt )          ! rhoco * |U_ice-U_oce| at T-point 
    346346         END_2D 
     347#if defined key_mpi3 
     348         CALL lbc_lnk_nc_multi( 'iceupdate', taum, 'T', 1.0_wp, tmod_io, 'T', 1.0_wp ) 
     349#else 
    347350         CALL lbc_lnk_multi( 'iceupdate', taum, 'T', 1.0_wp, tmod_io, 'T', 1.0_wp ) 
     351#endif 
    348352         ! 
    349353         utau_oce(:,:) = utau(:,:)                    !* save the air-ocean stresses at ice time-step 
     
    374378         vtau(ji,jj) = ( 1._wp - zat_v ) * vtau_oce(ji,jj) + zat_v * zvtau_ice 
    375379      END_2D 
     380#if defined key_mpi3 
     381      CALL lbc_lnk_nc_multi( 'iceupdate', utau, 'U', -1.0_wp, vtau, 'V', -1.0_wp )   ! lateral boundary condition 
     382#else 
    376383      CALL lbc_lnk_multi( 'iceupdate', utau, 'U', -1.0_wp, vtau, 'V', -1.0_wp )   ! lateral boundary condition 
     384#endif 
    377385      ! 
    378386      IF( ln_timing )   CALL timing_stop('ice_update_tau') 
  • NEMO/branches/2020/dev_r13898_Tiling_Cleanup_MPI3/src/ICE/icewri.F90

    r13553 r13906  
    137137            z2d(ji,jj) = 0.5_wp * SQRT( z2da * z2da + z2db * z2db ) 
    138138         END_2D 
     139#if defined key_mpi3 
     140         CALL lbc_lnk_nc_multi( 'icewri', z2d, 'T', 1.0_wp ) 
     141#else 
    139142         CALL lbc_lnk( 'icewri', z2d, 'T', 1.0_wp ) 
     143#endif 
    140144         CALL iom_put( 'icevel', z2d ) 
    141145 
Note: See TracChangeset for help on using the changeset viewer.