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 11286 for branches/UKMO/AMM15_v3_6_STABLE_package_collate_xeps/NEMOGCM/NEMO/OPA_SRC/TRA/traadv.F90 – NEMO

Ignore:
Timestamp:
2019-07-18T11:54:22+02:00 (5 years ago)
Author:
dford
Message:

Merge in latest version of AMM15_v3_6_STABLE_package_collate.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/AMM15_v3_6_STABLE_package_collate_xeps/NEMOGCM/NEMO/OPA_SRC/TRA/traadv.F90

    r8058 r11286  
    66   !! History :  2.0  !  2005-11  (G. Madec)  Original code 
    77   !!            3.3  !  2010-09  (C. Ethe, G. Madec)  merge TRC-TRA + switch from velocity to transport 
     8   !!            3.6  !  2015-06  (E. Clementi) Addition of Stokes drift in case of wave coupling 
    89   !!            4.0  !  2011-06  (G. Madec)  Addition of Mixed Layer Eddy parameterisation 
    910   !!---------------------------------------------------------------------- 
     
    3435   USE timing          ! Timing 
    3536   USE sbc_oce 
    36    USE diaptr          ! Poleward heat transport  
    37  
     37   USE sbcwave        ! wave module   
     38   USE sbc_oce        ! surface boundary condition: ocean   
     39   USE diaptr         ! Poleward heat transport 
    3840 
    3941   IMPLICIT NONE 
     
    8587      CALL wrk_alloc( jpi, jpj, jpk, zun, zvn, zwn ) 
    8688      !                                          ! set time step 
     89      zun(:,:,:) = 0.0   
     90      zvn(:,:,:) = 0.0   
     91      zwn(:,:,:) = 0.0   
     92      ! 
    8793      IF( neuler == 0 .AND. kt == nit000 ) THEN     ! at nit000 
    8894         r2dtra(:) =  rdttra(:)                          ! = rdtra (restarting with Euler time stepping) 
     
    94100      ! 
    95101      !                                               !==  effective transport  ==! 
    96       DO jk = 1, jpkm1 
    97          zun(:,:,jk) = e2u(:,:) * fse3u(:,:,jk) * un(:,:,jk)                  ! eulerian transport only 
    98          zvn(:,:,jk) = e1v(:,:) * fse3v(:,:,jk) * vn(:,:,jk) 
    99          zwn(:,:,jk) = e1t(:,:) * e2t(:,:)      * wn(:,:,jk) 
    100       END DO 
     102      IF(ln_wave .AND. ln_sdw) THEN   
     103         DO jk = 1, jpkm1                                                                      ! eulerian transport + Stokes Drift   
     104            zun(:,:,jk) = e2u(:,:) * fse3u(:,:,jk) * ( un(:,:,jk) + usd(:,:,jk) )  
     105            zvn(:,:,jk) = e1v(:,:) * fse3v(:,:,jk) * ( vn(:,:,jk) + vsd(:,:,jk) )   
     106            zwn(:,:,jk) = e1e2t(:,:)               * ( wn(:,:,jk) + wsd(:,:,jk) )   
     107         END DO   
     108      ELSE   
     109         DO jk = 1, jpkm1   
     110            zun(:,:,jk) = e2u  (:,:) * fse3u(:,:,jk) * un(:,:,jk)             ! eulerian transport only   
     111            zvn(:,:,jk) = e1v  (:,:) * fse3v(:,:,jk) * vn(:,:,jk)   
     112            zwn(:,:,jk) = e1e2t(:,:)                 * wn(:,:,jk)   
     113         END DO   
     114      ENDIF 
    101115      ! 
    102116      IF( ln_vvl_ztilde .OR. ln_vvl_layer ) THEN 
Note: See TracChangeset for help on using the changeset viewer.