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 7350 for branches/2016/dev_INGV_UKMO_2016/NEMOGCM/NEMO/OPA_SRC/TRA – NEMO

Ignore:
Timestamp:
2016-11-28T13:08:46+01:00 (7 years ago)
Author:
emanuelaclementi
Message:

ticket #1805 step 2: Add in changes from the 2015/dev_r5936_INGV1_WAVE branch

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2016/dev_INGV_UKMO_2016/NEMOGCM/NEMO/OPA_SRC/TRA/traadv.F90

    r5930 r7350  
    99   !!            3.7  !  2014-05  (G. Madec)  Add 2nd/4th order cases for CEN and FCT schemes  
    1010   !!             -   !  2014-12  (G. Madec) suppression of cross land advection option 
     11   !!            3.6  !  2015-06  (E. Clementi) Addition of Stokes drift in case of wave coupling 
    1112   !!---------------------------------------------------------------------- 
    1213 
     
    3435   USE wrk_nemo       ! Memory Allocation 
    3536   USE timing         ! Timing 
    36  
    37    USE diaptr          ! Poleward heat transport  
     37   USE sbcwave        ! wave module 
     38   USE sbc_oce        ! surface boundary condition: ocean 
     39   USE diaptr         ! Poleward heat transport  
    3840 
    3941   IMPLICIT NONE 
     
    9597      ! 
    9698      !                                          ! set time step 
     99      zun(:,:,:) = 0.0 
     100      zvn(:,:,:) = 0.0 
     101      zwn(:,:,:) = 0.0 
     102      !     
    97103      IF( neuler == 0 .AND. kt == nit000 ) THEN     ! at nit000 
    98104         r2dtra(:) =  rdttra(:)                          ! = rdtra (restarting with Euler time stepping) 
     
    102108      ! 
    103109      !                                         !==  effective transport  ==! 
    104       DO jk = 1, jpkm1 
    105          zun(:,:,jk) = e2u  (:,:) * fse3u(:,:,jk) * un(:,:,jk)                  ! eulerian transport only 
    106          zvn(:,:,jk) = e1v  (:,:) * fse3v(:,:,jk) * vn(:,:,jk) 
    107          zwn(:,:,jk) = e1e2t(:,:)                 * wn(:,:,jk) 
    108       END DO 
     110      IF( ln_wave .AND. ln_sdw )  THEN 
     111         DO jk = 1, jpkm1 
     112            zun(:,:,jk) = e2u(:,:) * fse3u(:,:,jk) *      & 
     113                        &  ( un(:,:,jk) + usd3d(:,:,jk) )                       ! eulerian transport + Stokes Drift 
     114            zvn(:,:,jk) = e1v(:,:) * fse3v(:,:,jk) *      & 
     115                        &  ( vn(:,:,jk) + vsd3d(:,:,jk) ) 
     116            zwn(:,:,jk) = e1e2t(:,:) *                    & 
     117                        &  ( wn(:,:,jk) + wsd3d(:,:,jk) ) 
     118         END DO 
     119      ELSE 
     120         DO jk = 1, jpkm1 
     121            zun(:,:,jk) = e2u  (:,:) * fse3u(:,:,jk) * un(:,:,jk)               ! eulerian transport only 
     122            zvn(:,:,jk) = e1v  (:,:) * fse3v(:,:,jk) * vn(:,:,jk) 
     123            zwn(:,:,jk) = e1e2t(:,:)                 * wn(:,:,jk) 
     124         END DO 
     125      ENDIF 
    109126      ! 
    110127      IF( ln_vvl_ztilde .OR. ln_vvl_layer ) THEN                                ! add z-tilde and/or vvl corrections 
Note: See TracChangeset for help on using the changeset viewer.