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 9097 for branches/2017/dev_merge_2017 – NEMO

Ignore:
Timestamp:
2017-12-15T18:36:32+01:00 (6 years ago)
Author:
cetlod
Message:

Use of lbclnk_multi in subdir USR & TRD

Location:
branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRD/trddyn.F90

    r9019 r9097  
    121121                              z3dx(:,:,:) = 0._wp                  ! U.dxU & V.dyV (approximation) 
    122122                              z3dy(:,:,:) = 0._wp 
    123                               DO jk = 1, jpkm1                 ! no mask as un,vn are masked 
     123                              DO jk = 1, jpkm1   ! no mask as un,vn are masked 
    124124                                 DO jj = 2, jpjm1 
    125125                                    DO ji = 2, jpim1 
     
    129129                                 END DO 
    130130                              END DO 
    131                               CALL lbc_lnk( z3dx, 'U', -1. ) 
    132                               CALL lbc_lnk( z3dy, 'V', -1. ) 
     131                              CALL lbc_lnk_multi( z3dx, 'U', -1., z3dy, 'V', -1. ) 
    133132                              CALL iom_put( "utrd_udx", z3dx  ) 
    134133                              CALL iom_put( "vtrd_vdy", z3dy  ) 
     
    151150                              IF( ln_drgimp ) THEN 
    152151                                 ALLOCATE( z3dx(jpi,jpj,jpk) , z3dy(jpi,jpj,jpk) ) 
    153                                  z3dx(:,:,:) = 0._wp   ;   z3dy(:,:,:) = 0._wp  ! after velocity known (now filed at this stage) 
    154                                  DO jk = 1, jpkm1 
     152                             z3dx(:,:,:) = 0._wp   ;   z3dy(:,:,:) = 0._wp  ! after velocity known (now filed at this stage) 
     153                            DO jk = 1, jpkm1 
    155154                                    DO jj = 2, jpjm1 
    156155                                       DO ji = 2, jpim1 
    157                                           ikbu = mbku(ji,jj)          ! deepest ocean u- & v-levels 
     156                                      ikbu = mbku(ji,jj)          ! deepest ocean u- & v-levels 
    158157                                          ikbv = mbkv(ji,jj) 
    159158                                          z3dx(ji,jj,jk) = 0.5*( rCdU_bot(ji+1,jj)+rCdU_bot(ji,jj) )*un(ji,jj,ikbu)/e3u_n(ji,jj,ikbu) 
    160159                                          z3dy(ji,jj,jk) = 0.5*( rCdU_bot(ji,jj+1)+rCdU_bot(ji,jj) )*vn(ji,jj,ikbv)/e3v_n(ji,jj,ikbv) 
    161                                        END DO 
    162                                     END DO 
    163                                  END DO 
    164                                  CALL lbc_lnk( z3dx, 'U', -1. )   ;   CALL lbc_lnk( z3dy, 'V', -1. ) 
    165                                  CALL iom_put( "utrd_bfr", z3dx ) 
    166                                  CALL iom_put( "vtrd_bfr", z3dy ) 
     160                                    END DO 
     161                                 END DO 
     162                              END DO 
     163                              CALL lbc_lnk_multi( z3dx, 'U', -1., z3dy, 'V', -1. ) 
     164                              CALL iom_put( "utrd_bfr", z3dx ) 
     165                              CALL iom_put( "vtrd_bfr", z3dy ) 
    167166                                 DEALLOCATE( z3dx , z3dy ) 
    168167                              ENDIF 
  • branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRD/trdken.F90

    r9019 r9097  
    8888      !!---------------------------------------------------------------------- 
    8989      ! 
    90       CALL lbc_lnk( putrd, 'U', -1. )   ;   CALL lbc_lnk( pvtrd, 'V', -1. )      ! lateral boundary conditions 
     90      CALL lbc_lnk_multi( putrd, 'U', -1. , pvtrd, 'V', -1. )      ! lateral boundary conditions 
    9191      ! 
    9292      nkstp = kt 
  • branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRD/trdmxl.F90

    r9019 r9097  
    153153!!gm to be put juste before the output ! 
    154154!      ! Lateral boundary conditions 
    155 !      CALL lbc_lnk( tmltrd(:,:,jl), 'T', 1. ) 
    156 !      CALL lbc_lnk( smltrd(:,:,jl), 'T', 1. ) 
     155!      CALL lbc_lnk_multi( tmltrd(:,:,jl), 'T', 1. , smltrd(:,:,jl), 'T', 1. ) 
    157156!!gm end 
    158157 
     
    480479         !-- Lateral boundary conditions 
    481480         !         ... temperature ...                    ... salinity ... 
    482          CALL lbc_lnk( ztmltot , 'T', 1. )  ;   CALL lbc_lnk( zsmltot , 'T', 1. ) 
    483          CALL lbc_lnk( ztmlres , 'T', 1. )  ;   CALL lbc_lnk( zsmlres , 'T', 1. ) 
    484          CALL lbc_lnk( ztmlatf , 'T', 1. )  ;   CALL lbc_lnk( zsmlatf , 'T', 1. ) 
     481         CALL lbc_lnk_multi( ztmltot , 'T', 1., zsmltot , 'T', 1., & 
     482                  &          ztmlres , 'T', 1., zsmlres , 'T', 1., & 
     483                  &          ztmlatf , 'T', 1., zsmlatf , 'T', 1. ) 
    485484 
    486485 
     
    531530         !-- Lateral boundary conditions 
    532531         !         ... temperature ...                    ... salinity ... 
    533          CALL lbc_lnk( ztmltot2, 'T', 1. )  ;   CALL lbc_lnk( zsmltot2, 'T', 1. ) 
    534          CALL lbc_lnk( ztmlres2, 'T', 1. )  ;   CALL lbc_lnk( zsmlres2, 'T', 1. ) 
    535          DO jl = 1, jpltrd 
    536             CALL lbc_lnk( ztmltrd2(:,:,jl), 'T', 1. ) ! \  these will be output 
    537             CALL lbc_lnk( zsmltrd2(:,:,jl), 'T', 1. ) ! /  in the NetCDF trends file 
    538          END DO 
     532         CALL lbc_lnk_multi( ztmltot2, 'T', 1., zsmltot2, 'T', 1., & 
     533                  &          ztmlres2, 'T', 1., zsmlres2, 'T', 1. ) 
     534         CALL lbc_lnk_multi( ztmltrd2(:,:,:), 'T', zsmltrd2(:,:,:), 'T', 1. ) ! /  in the NetCDF trends file 
    539535          
    540536         ! III.3 Time evolution array swap 
  • branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/TRD/trdvor.F90

    r6140 r9097  
    168168 
    169169      zudpvor(:,:) = 0._wp                 ;   zvdpvor(:,:) = 0._wp                    ! Initialisation 
    170       CALL lbc_lnk( putrdvor, 'U', -1. )   ;   CALL lbc_lnk( pvtrdvor, 'V', -1. )      ! lateral boundary condition 
     170      CALL lbc_lnk_multi( putrdvor, 'U', -1. , pvtrdvor, 'V', -1. )      ! lateral boundary condition 
    171171       
    172172 
     
    260260      zudpvor(:,:) = 0._wp 
    261261      zvdpvor(:,:) = 0._wp 
    262       ! 
    263       CALL lbc_lnk( putrdvor, 'U', -1. )         ! lateral boundary condition on input momentum trends 
    264       CALL lbc_lnk( pvtrdvor, 'V', -1. ) 
     262      !                            ! lateral boundary condition on input momentum trends 
     263      CALL lbc_lnk_multi( putrdvor, 'U', -1. , pvtrdvor, 'V', -1. ) 
    265264 
    266265      !  ===================================== 
     
    411410 
    412411         ! Boundary conditions 
    413          CALL lbc_lnk( vor_avrtot, 'F', 1. ) 
    414          CALL lbc_lnk( vor_avrres, 'F', 1. ) 
     412         CALL lbc_lnk_multi( vor_avrtot, 'F', 1. , vor_avrres, 'F', 1. ) 
    415413 
    416414 
  • branches/2017/dev_merge_2017/NEMOGCM/NEMO/OPA_SRC/USR/usrdef_sbc.F90

    r9019 r9097  
    186186         END DO 
    187187      END DO 
    188       CALL lbc_lnk( taum(:,:), 'T', 1. )   ;   CALL lbc_lnk( wndm(:,:), 'T', 1. ) 
     188      CALL lbc_lnk_multi( taum(:,:), 'T', 1. , wndm(:,:), 'T', 1. ) 
    189189 
    190190      ! ---------------------------------- ! 
Note: See TracChangeset for help on using the changeset viewer.