Ignore:
Timestamp:
2018-11-15T17:27:18+01:00 (23 months ago)
Author:
smasson
Message:

dev_r10164_HPC09_ESIWACE_PREP_MERGE: action 2: add generic glob_min/max/sum and locmin/max, complete timing and report (including bdy and icb), see #2133

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2018/dev_r10164_HPC09_ESIWACE_PREP_MERGE/src/OCE/LBC/lbclnk.F90

    r10068 r10314  
    9090   ! 
    9191   INTERFACE lbc_bdy_lnk 
    92       MODULE PROCEDURE lbc_bdy_lnk_2d, lbc_bdy_lnk_3d 
     92      MODULE PROCEDURE lbc_bdy_lnk_2d, lbc_bdy_lnk_3d, lbc_bdy_lnk_4d 
    9393   END INTERFACE 
    9494   ! 
     
    179179   !!---------------------------------------------------------------------- 
    180180    
    181    SUBROUTINE lbc_bdy_lnk_3d( pt3d, cd_type, psgn, ib_bdy ) 
    182       !!---------------------------------------------------------------------- 
     181   SUBROUTINE lbc_bdy_lnk_4d( cdname, pt4d, cd_type, psgn, ib_bdy ) 
     182      !!---------------------------------------------------------------------- 
     183      CHARACTER(len=*)          , INTENT(in   ) ::   cdname      ! name of the calling subroutine 
     184      REAL(wp), DIMENSION(:,:,:,:), INTENT(inout) ::   pt4d      ! 3D array on which the lbc is applied 
     185      CHARACTER(len=1)          , INTENT(in   ) ::   cd_type   ! nature of pt3d grid-points 
     186      REAL(wp)                  , INTENT(in   ) ::   psgn      ! sign used across north fold  
     187      INTEGER                   , INTENT(in   ) ::   ib_bdy    ! BDY boundary set 
     188      !!---------------------------------------------------------------------- 
     189      CALL lbc_lnk_4d( cdname, pt4d, cd_type, psgn) 
     190   END SUBROUTINE lbc_bdy_lnk_4d 
     191 
     192   SUBROUTINE lbc_bdy_lnk_3d( cdname, pt3d, cd_type, psgn, ib_bdy ) 
     193      !!---------------------------------------------------------------------- 
     194      CHARACTER(len=*)          , INTENT(in   ) ::   cdname      ! name of the calling subroutine 
    183195      REAL(wp), DIMENSION(:,:,:), INTENT(inout) ::   pt3d      ! 3D array on which the lbc is applied 
    184196      CHARACTER(len=1)          , INTENT(in   ) ::   cd_type   ! nature of pt3d grid-points 
     
    186198      INTEGER                   , INTENT(in   ) ::   ib_bdy    ! BDY boundary set 
    187199      !!---------------------------------------------------------------------- 
    188       CALL lbc_lnk_3d( pt3d, cd_type, psgn) 
     200      CALL lbc_lnk_3d( cdname, pt3d, cd_type, psgn) 
    189201   END SUBROUTINE lbc_bdy_lnk_3d 
    190202 
    191203 
    192    SUBROUTINE lbc_bdy_lnk_2d( pt2d, cd_type, psgn, ib_bdy ) 
    193       !!---------------------------------------------------------------------- 
     204   SUBROUTINE lbc_bdy_lnk_2d( cdname, pt2d, cd_type, psgn, ib_bdy ) 
     205      !!---------------------------------------------------------------------- 
     206      CHARACTER(len=*)        , INTENT(in   ) ::   cdname      ! name of the calling subroutine 
    194207      REAL(wp), DIMENSION(:,:), INTENT(inout) ::   pt2d      ! 3D array on which the lbc is applied 
    195208      CHARACTER(len=1)        , INTENT(in   ) ::   cd_type   ! nature of pt3d grid-points 
     
    197210      INTEGER                 , INTENT(in   ) ::   ib_bdy    ! BDY boundary set 
    198211      !!---------------------------------------------------------------------- 
    199       CALL lbc_lnk_2d( pt2d, cd_type, psgn) 
     212      CALL lbc_lnk_2d( cdname, pt2d, cd_type, psgn) 
    200213   END SUBROUTINE lbc_bdy_lnk_2d 
    201214 
     
    203216!!gm  This routine should be removed with an optional halos size added in argument of generic routines 
    204217 
    205    SUBROUTINE lbc_lnk_2d_icb( pt2d, cd_type, psgn, ki, kj ) 
    206       !!---------------------------------------------------------------------- 
     218   SUBROUTINE lbc_lnk_2d_icb( cdname, pt2d, cd_type, psgn, ki, kj ) 
     219      !!---------------------------------------------------------------------- 
     220      CHARACTER(len=*)        , INTENT(in   ) ::   cdname      ! name of the calling subroutine 
    207221      REAL(wp), DIMENSION(:,:), INTENT(inout) ::   pt2d      ! 2D array on which the lbc is applied 
    208222      CHARACTER(len=1)        , INTENT(in   ) ::   cd_type   ! nature of pt3d grid-points 
     
    210224      INTEGER                 , INTENT(in   ) ::   ki, kj    ! sizes of extra halo (not needed in non-mpp) 
    211225      !!---------------------------------------------------------------------- 
    212       CALL lbc_lnk_2d( pt2d, cd_type, psgn ) 
     226      CALL lbc_lnk_2d( cdname, pt2d, cd_type, psgn ) 
    213227   END SUBROUTINE lbc_lnk_2d_icb 
    214228!!gm end 
Note: See TracChangeset for help on using the changeset viewer.