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 3211 for branches/2011/DEV_r2739_STFC_dCSE/NEMOGCM/NEMO/OPA_SRC/DYN/dynkeg.F90 – NEMO

Ignore:
Timestamp:
2011-12-11T16:00:26+01:00 (13 years ago)
Author:
spickles2
Message:

Stephen Pickles, 11 Dec 2011

Commit to bring the rest of the DCSE NEMO development branch
in line with the latest development version. This includes
array index re-ordering of all OPA_SRC/.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2011/DEV_r2739_STFC_dCSE/NEMOGCM/NEMO/OPA_SRC/DYN/dynkeg.F90

    r2715 r3211  
    2424 
    2525   PUBLIC   dyn_keg    ! routine called by step module 
     26 
     27   !! * Control permutation of array indices 
     28#  include "oce_ftrans.h90" 
     29#  include "dom_oce_ftrans.h90" 
    2630    
    2731   !! * Substitutions 
     
    5559      USE oce     , ONLY:   ztrdu => ta       , ztrdv => sa   ! (ta,sa) used as 3D workspace    
    5660      USE wrk_nemo, ONLY:   zhke  => wrk_3d_1                 ! 3D workspace 
     61      !! DCSE_NEMO: need additional directives for renamed module variables 
     62!FTRANS ztrdu ztrdv zhke :I :I :z 
     63 
    5764      !! 
    5865      INTEGER, INTENT( in ) ::   kt   ! ocean time-step index 
     
    7784      ENDIF 
    7885       
     86#if defined key_z_first 
     87      DO jj = 2, jpj            ! Horizontal kinetic energy at T-point 
     88         DO ji = 2, jpi 
     89            DO jk = 1, jpkm1 
     90               zhke(ji,jj,jk) = 0.25 * (   un(ji-1,jj  ,jk) * un(ji-1,jj  ,jk)   & 
     91                  &                      + un(ji  ,jj  ,jk) * un(ji  ,jj  ,jk)   & 
     92                                         + vn(ji  ,jj-1,jk) * vn(ji  ,jj-1,jk)   & 
     93                  &                      + vn(ji  ,jj  ,jk) * vn(ji  ,jj  ,jk)   ) 
     94            END DO   
     95         END DO   
     96      END DO 
     97      DO jj = 2, jpjm1          ! add the gradient of kinetic energy to the general momentum trends 
     98         DO ji = 2, jpim1 
     99            DO jk = 1, jpkm1 
     100               ua(ji,jj,jk) = ua(ji,jj,jk) - ( zhke(ji+1,jj  ,jk) - zhke(ji,jj,jk) ) / e1u(ji,jj) 
     101               va(ji,jj,jk) = va(ji,jj,jk) - ( zhke(ji  ,jj+1,jk) - zhke(ji,jj,jk) ) / e2v(ji,jj) 
     102            END DO  
     103         END DO 
     104      END DO 
     105#else 
    79106      !                                                ! =============== 
    80107      DO jk = 1, jpkm1                                 ! Horizontal slab 
     
    126153      END DO                                           !   End of slab 
    127154      !                                                ! =============== 
     155#endif 
    128156 
    129157      IF( l_trddyn ) THEN      ! save the Kinetic Energy trends for diagnostic 
Note: See TracChangeset for help on using the changeset viewer.