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 13630 for NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/OCE/SBC/sbccpl.F90 – NEMO

Ignore:
Timestamp:
2020-10-19T10:48:19+02:00 (4 years ago)
Author:
mocavero
Message:

Add neighborhood collectives calls in the NEMO src - ticket #2496

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r13296_HPC-07_mocavero_mpi3/src/OCE/SBC/sbccpl.F90

    r13571 r13630  
    11991199                  frcv(jpr_oty1)%z3(ji,jj,1) = 0.5 * ( frcv(jpr_oty1)%z3(ji  ,jj+1,1) + frcv(jpr_oty1)%z3(ji,jj,1) ) 
    12001200               END_2D 
     1201#if defined key_mpi3 
     1202               CALL lbc_lnk_nc_multi( 'sbccpl', frcv(jpr_otx1)%z3(:,:,1), 'U',  -1.0_wp, frcv(jpr_oty1)%z3(:,:,1), 'V',  -1.0_wp ) 
     1203#else 
    12011204               CALL lbc_lnk_multi( 'sbccpl', frcv(jpr_otx1)%z3(:,:,1), 'U',  -1.0_wp, frcv(jpr_oty1)%z3(:,:,1), 'V',  -1.0_wp ) 
     1205#endif 
    12021206            ENDIF 
    12031207            llnewtx = .TRUE. 
     
    12241228               frcv(jpr_taum)%z3(ji,jj,1) = 0.5 * SQRT( zzx * zzx + zzy * zzy ) 
    12251229            END_2D 
     1230#if defined key_mpi3 
     1231            CALL lbc_lnk_nc_multi( 'sbccpl', frcv(jpr_taum)%z3(:,:,1), 'T', 1.0_wp ) 
     1232#else 
    12261233            CALL lbc_lnk( 'sbccpl', frcv(jpr_taum)%z3(:,:,1), 'T', 1.0_wp ) 
     1234#endif 
    12271235            llnewtau = .TRUE. 
    12281236         ELSE 
     
    15931601               p_tauj(ji,jj) = zztmp2 * ( frcv(jpr_ity1)%z3(ji  ,jj+1,1) + frcv(jpr_ity1)%z3(ji,jj,1) ) 
    15941602            END_2D 
     1603#if defined key_mpi3 
     1604            CALL lbc_lnk_nc_multi( 'sbccpl', p_taui, 'U',  -1., p_tauj, 'V',  -1. ) 
     1605#else 
    15951606            CALL lbc_lnk_multi( 'sbccpl', p_taui, 'U',  -1., p_tauj, 'V',  -1. ) 
     1607#endif 
    15961608         END SELECT 
    15971609          
     
    24832495                  zity1(ji,jj) = 0.5 * ( v_ice(ji,jj  )     + v_ice(ji  ,jj-1  )     ) *  fr_i(ji,jj) 
    24842496               END_2D 
     2497#if defined key_mpi3 
     2498               CALL lbc_lnk_nc_multi( 'sbccpl', zitx1, 'T', -1.0_wp, zity1, 'T', -1.0_wp ) 
     2499#else 
    24852500               CALL lbc_lnk_multi( 'sbccpl', zitx1, 'T', -1.0_wp, zity1, 'T', -1.0_wp ) 
     2501#endif 
    24862502            CASE( 'mixed oce-ice'        )      ! Ocean and Ice on C-grid ==> T 
    24872503               DO_2D( 0, 0, 0, 0 ) 
     
    24922508               END_2D 
    24932509            END SELECT 
     2510#if defined key_mpi3 
     2511            CALL lbc_lnk_nc_multi( 'sbccpl', zotx1, ssnd(jps_ocx1)%clgrid, -1.0_wp,  zoty1, ssnd(jps_ocy1)%clgrid, -1.0_wp ) 
     2512#else 
    24942513            CALL lbc_lnk_multi( 'sbccpl', zotx1, ssnd(jps_ocx1)%clgrid, -1.0_wp,  zoty1, ssnd(jps_ocy1)%clgrid, -1.0_wp ) 
     2514#endif 
    24952515            ! 
    24962516         ENDIF 
     
    25602580                zity1(ji,jj) = 0.5 * ( v_ice(ji,jj  ) + v_ice(ji  ,jj-1  ) ) *  fr_i(ji,jj)  
    25612581             END_2D 
     2582#if defined key_mpi3 
     2583             CALL lbc_lnk_nc_multi( 'sbccpl', zitx1, 'T', -1.0_wp,  zity1, 'T', -1.0_wp )  
     2584#else 
    25622585             CALL lbc_lnk_multi( 'sbccpl', zitx1, 'T', -1.0_wp,  zity1, 'T', -1.0_wp )  
     2586#endif 
    25632587          CASE( 'mixed oce-ice'        )      ! Ocean and Ice on C-grid ==> T   
    25642588             DO_2D( 0, 0, 0, 0 ) 
     
    25692593             END_2D 
    25702594          END SELECT 
     2595#if defined key_mpi3 
     2596         CALL lbc_lnk_nc_multi( 'sbccpl', zotx1, ssnd(jps_ocxw)%clgrid, -1.0_wp, zoty1, ssnd(jps_ocyw)%clgrid, -1.0_wp )  
     2597#else 
    25712598         CALL lbc_lnk_multi( 'sbccpl', zotx1, ssnd(jps_ocxw)%clgrid, -1.0_wp, zoty1, ssnd(jps_ocyw)%clgrid, -1.0_wp )  
     2599#endif 
    25722600         !  
    25732601         !  
Note: See TracChangeset for help on using the changeset viewer.