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 2236 for branches/DEV_r2106_LOCEAN2010/NEMO/OPA_SRC/DYN/dynzdf_imp.F90 – NEMO

Ignore:
Timestamp:
2010-10-12T20:49:32+02:00 (14 years ago)
Author:
cetlod
Message:

First guess of NEMO_v3.3

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/DEV_r2106_LOCEAN2010/NEMO/OPA_SRC/DYN/dynzdf_imp.F90

    r2148 r2236  
    2020   USE phycst          ! physical constants 
    2121   USE in_out_manager  ! I/O manager 
     22#if defined key_zdfgls 
     23   USE zdfbfr, ONLY : bfrua, bfrva, wbotu, wbotv ! bottom stresses 
     24   USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
     25#endif 
    2226 
    2327   IMPLICIT NONE 
     
    6569      REAL(wp) ::   zzwi, zzws, zrhs       ! temporary scalars 
    6670      REAL(wp), DIMENSION(jpi,jpj,jpk) ::   zwi        ! 3D workspace 
     71#if defined key_zdfgls 
     72      INTEGER :: ikbu, ikbv, ikbum1, ikbvm1 
     73      REAL(wp) :: zcbcu, zcbcv 
     74#endif 
    6775      !!---------------------------------------------------------------------- 
    6876 
     
    155163         END DO 
    156164      END DO 
    157       ! 
    158       DO jk = 1, jpkm1        !==  Normalization to obtain the general momentum trend ua  == 
     165 
     166#if defined key_zdfgls 
     167      ! Save bottom stress for next time step 
     168      DO jj = 2, jpjm1 
     169         DO ji = fs_2, fs_jpim1   ! vector opt. 
     170            ikbu   = MIN( mbathy(ji+1,jj  ), mbathy(ji,jj) ) 
     171            ikbum1 = MAX( ikbu-1, 1 ) 
     172            wbotu(ji,jj) = bfrua(ji,jj) * ua(ji,jj,ikbum1) * umask(ji,jj,ikbum1) 
     173         END DO 
     174      END DO 
     175      CALL lbc_lnk( wbotu(:,:), 'U', -1. ) 
     176#endif 
     177 
     178      ! Normalization to obtain the general momentum trend ua 
     179      DO jk = 1, jpkm1 
    159180         DO jj = 2, jpjm1    
    160181            DO ji = fs_2, fs_jpim1   ! vector opt. 
     
    243264         END DO 
    244265      END DO 
    245       ! 
    246       DO jk = 1, jpkm1     !==  Normalization to obtain the general momentum trend va  == 
     266 
     267#if defined key_zdfgls 
     268      ! Save bottom stress for next time step 
     269      DO jj = 2, jpjm1 
     270         DO ji = fs_2, fs_jpim1   ! vector opt. 
     271            ikbv   = MIN( mbathy(ji,jj+1), mbathy(ji,jj) ) 
     272            ikbvm1 = MAX( ikbv-1, 1 ) 
     273            wbotv(ji,jj) = bfrva(ji,jj) * va(ji,jj,ikbvm1) * vmask(ji,jj,ikbvm1) 
     274         END DO 
     275      END DO 
     276      CALL lbc_lnk( wbotv(:,:), 'V', -1. ) 
     277#endif 
     278 
     279      ! Normalization to obtain the general momentum trend va 
     280      DO jk = 1, jpkm1 
    247281         DO jj = 2, jpjm1    
    248282            DO ji = fs_2, fs_jpim1   ! vector opt. 
Note: See TracChangeset for help on using the changeset viewer.