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 15020 for NEMO/branches/2021/ticket2680_C1D_PAPA/src/OCE/DOM/dommsk.F90 – NEMO

Ignore:
Timestamp:
2021-06-18T15:21:42+02:00 (3 years ago)
Author:
gsamson
Message:

merge trunk into branch (#2680)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2021/ticket2680_C1D_PAPA/src/OCE/DOM/dommsk.F90

    r14433 r15020  
    182182      ssfmask(:,:) = MAXVAL( fmask(:,:,:), DIM=3 ) 
    183183      IF( lk_SWE ) THEN      ! Shallow Water Eq. case : redefine ssfmask 
    184          DO_2D( 0,0, 0,0 ) 
     184         DO_2D( 0, 0, 0, 0 ) 
    185185            ssfmask(ji,jj) = MAX(  ssmask(ji,jj+1), ssmask(ji+1,jj+1),  &  
    186186               &                   ssmask(ji,jj  ), ssmask(ji+1,jj  )   ) 
     
    202202      ! Lateral boundary conditions on velocity (modify fmask) 
    203203      ! ---------------------------------------   
    204       IF( rn_shlat /= 0 ) THEN      ! Not free-slip lateral boundary condition 
     204      IF( rn_shlat /= 0._wp ) THEN      ! Not free-slip lateral boundary condition 
    205205         ! 
    206          DO jk = 1, jpk 
    207             DO_2D( 0, 0, 0, 0 ) 
    208                IF( fmask(ji,jj,jk) == 0._wp ) THEN 
    209                   fmask(ji,jj,jk) = rn_shlat * MIN( 1._wp , MAX( umask(ji,jj,jk), umask(ji,jj+1,jk), & 
    210                      &                                           vmask(ji,jj,jk), vmask(ji+1,jj,jk) ) ) 
    211                ENDIF 
    212             END_2D 
    213             DO jj = 2, jpjm1 
    214                IF( fmask(1,jj,jk) == 0._wp ) THEN 
    215                   fmask(1  ,jj,jk) = rn_shlat * MIN( 1._wp , MAX( vmask(2,jj,jk), umask(1,jj+1,jk), umask(1,jj,jk) ) ) 
    216                ENDIF 
    217                IF( fmask(jpi,jj,jk) == 0._wp ) THEN 
    218                   fmask(jpi,jj,jk) = rn_shlat * MIN( 1._wp , MAX( umask(jpi,jj+1,jk), vmask(jpim1,jj,jk), umask(jpi,jj-1,jk) ) ) 
    219                ENDIF 
    220             END DO          
    221             DO ji = 2, jpim1 
    222                IF( fmask(ji,1,jk) == 0._wp ) THEN 
    223                   fmask(ji, 1 ,jk) = rn_shlat * MIN( 1._wp , MAX( vmask(ji+1,1,jk), umask(ji,2,jk), vmask(ji,1,jk) ) ) 
    224                ENDIF 
    225                IF( fmask(ji,jpj,jk) == 0._wp ) THEN 
    226                   fmask(ji,jpj,jk) = rn_shlat * MIN( 1._wp , MAX( vmask(ji+1,jpj,jk), vmask(ji-1,jpj,jk), umask(ji,jpjm1,jk) ) ) 
    227                ENDIF 
    228             END DO 
    229          END DO 
    230          ! 
     206         DO_3D( 0, 0, 0, 0, 1, jpk ) 
     207            IF( fmask(ji,jj,jk) == 0._wp ) THEN 
     208               fmask(ji,jj,jk) = rn_shlat * MIN( 1._wp , MAX( umask(ji,jj,jk), umask(ji,jj+1,jk), & 
     209                  &                                           vmask(ji,jj,jk), vmask(ji+1,jj,jk) ) ) 
     210            ENDIF 
     211         END_3D 
    231212         CALL lbc_lnk( 'dommsk', fmask, 'F', 1._wp )      ! Lateral boundary conditions on fmask 
    232213         ! 
Note: See TracChangeset for help on using the changeset viewer.