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 7351 for branches/2016/dev_INGV_UKMO_2016/NEMOGCM/NEMO/OPA_SRC/TRD/trdvor.F90 – NEMO

Ignore:
Timestamp:
2016-11-28T17:04:10+01:00 (7 years ago)
Author:
emanuelaclementi
Message:

ticket #1805 step 3: /2016/dev_INGV_UKMO_2016 aligned to the trunk at revision 7161

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2016/dev_INGV_UKMO_2016/NEMOGCM/NEMO/OPA_SRC/TRD/trdvor.F90

    r5836 r7351  
    5757 
    5858   !! * Substitutions 
    59 #  include "domzgr_substitute.h90" 
    6059#  include "vectopt_loop_substitute.h90" 
    6160   !!---------------------------------------------------------------------- 
     
    8584      !!  
    8685      !! ** Purpose :  computation of cumulated trends over analysis period 
    87       !!               and make outputs (NetCDF or DIMG format) 
     86      !!               and make outputs (NetCDF format) 
    8887      !!---------------------------------------------------------------------- 
    8988      REAL(wp), DIMENSION(:,:,:), INTENT(inout) ::   putrd, pvtrd   ! U and V trends  
     
    109108         DO jj = 2, jpjm1                                                             ! wind stress trends 
    110109            DO ji = fs_2, fs_jpim1   ! vector opt. 
    111                ztswu(ji,jj) = 0.5 * ( utau_b(ji,jj) + utau(ji,jj) ) / ( fse3u(ji,jj,1) * rau0 ) 
    112                ztswv(ji,jj) = 0.5 * ( vtau_b(ji,jj) + vtau(ji,jj) ) / ( fse3v(ji,jj,1) * rau0 ) 
     110               ztswu(ji,jj) = 0.5 * ( utau_b(ji,jj) + utau(ji,jj) ) / ( e3u_n(ji,jj,1) * rau0 ) 
     111               ztswv(ji,jj) = 0.5 * ( vtau_b(ji,jj) + vtau(ji,jj) ) / ( e3v_n(ji,jj,1) * rau0 ) 
    113112            END DO 
    114113         END DO 
     
    183182               ikbu = mbkv(ji,jj) 
    184183               ikbv = mbkv(ji,jj)             
    185                zudpvor(ji,jj) = putrdvor(ji,jj) * fse3u(ji,jj,ikbu) * e1u(ji,jj) * umask(ji,jj,ikbu) 
    186                zvdpvor(ji,jj) = pvtrdvor(ji,jj) * fse3v(ji,jj,ikbv) * e2v(ji,jj) * vmask(ji,jj,ikbv) 
     184               zudpvor(ji,jj) = putrdvor(ji,jj) * e3u_n(ji,jj,ikbu) * e1u(ji,jj) * umask(ji,jj,ikbu) 
     185               zvdpvor(ji,jj) = pvtrdvor(ji,jj) * e3v_n(ji,jj,ikbv) * e2v(ji,jj) * vmask(ji,jj,ikbv) 
    187186            END DO 
    188187         END DO 
    189188         ! 
    190189      CASE( jpvor_swf )        ! wind stress 
    191          zudpvor(:,:) = putrdvor(:,:) * fse3u(:,:,1) * e1u(:,:) * umask(:,:,1) 
    192          zvdpvor(:,:) = pvtrdvor(:,:) * fse3v(:,:,1) * e2v(:,:) * vmask(:,:,1) 
     190         zudpvor(:,:) = putrdvor(:,:) * e3u_n(:,:,1) * e1u(:,:) * umask(:,:,1) 
     191         zvdpvor(:,:) = pvtrdvor(:,:) * e3v_n(:,:,1) * e2v(:,:) * vmask(:,:,1) 
    193192         ! 
    194193      END SELECT 
    195194 
    196195      ! Average except for Beta.V 
    197       zudpvor(:,:) = zudpvor(:,:) * hur(:,:) 
    198       zvdpvor(:,:) = zvdpvor(:,:) * hvr(:,:) 
     196      zudpvor(:,:) = zudpvor(:,:) * r1_hu_n(:,:) 
     197      zvdpvor(:,:) = zvdpvor(:,:) * r1_hv_n(:,:) 
    199198    
    200199      ! Curl 
     
    270269      ! putrdvor and pvtrdvor terms 
    271270      DO jk = 1,jpk 
    272         zudpvor(:,:) = zudpvor(:,:) + putrdvor(:,:,jk) * fse3u(:,:,jk) * e1u(:,:) * umask(:,:,jk) 
    273         zvdpvor(:,:) = zvdpvor(:,:) + pvtrdvor(:,:,jk) * fse3v(:,:,jk) * e2v(:,:) * vmask(:,:,jk) 
     271        zudpvor(:,:) = zudpvor(:,:) + putrdvor(:,:,jk) * e3u_n(:,:,jk) * e1u(:,:) * umask(:,:,jk) 
     272        zvdpvor(:,:) = zvdpvor(:,:) + pvtrdvor(:,:,jk) * e3v_n(:,:,jk) * e2v(:,:) * vmask(:,:,jk) 
    274273      END DO 
    275274 
     
    286285         END DO 
    287286         ! Average of the Curl and Surface mask 
    288          vortrd(:,:,jpvor_bev) = vortrd(:,:,jpvor_bev) * hur(:,:) * fmask(:,:,1) 
     287         vortrd(:,:,jpvor_bev) = vortrd(:,:,jpvor_bev) * r1_hu_n(:,:) * fmask(:,:,1) 
    289288      ENDIF 
    290289      ! 
    291290      ! Average  
    292       zudpvor(:,:) = zudpvor(:,:) * hur(:,:) 
    293       zvdpvor(:,:) = zvdpvor(:,:) * hvr(:,:) 
     291      zudpvor(:,:) = zudpvor(:,:) * r1_hu_n(:,:) 
     292      zvdpvor(:,:) = zvdpvor(:,:) * r1_hv_n(:,:) 
    294293      ! 
    295294      ! Curl 
     
    318317      !!  
    319318      !! ** Purpose :  computation of cumulated trends over analysis period 
    320       !!               and make outputs (NetCDF or DIMG format) 
     319      !!               and make outputs (NetCDF format) 
    321320      !!---------------------------------------------------------------------- 
    322321      INTEGER                   , INTENT(in   ) ::   kt             ! time step 
     
    351350      ! Vertically averaged velocity 
    352351      DO jk = 1, jpk - 1 
    353          zun(:,:) = zun(:,:) + e1u(:,:) * un(:,:,jk) * fse3u(:,:,jk) 
    354          zvn(:,:) = zvn(:,:) + e2v(:,:) * vn(:,:,jk) * fse3v(:,:,jk) 
     352         zun(:,:) = zun(:,:) + e1u(:,:) * un(:,:,jk) * e3u_n(:,:,jk) 
     353         zvn(:,:) = zvn(:,:) + e2v(:,:) * vn(:,:,jk) * e3v_n(:,:,jk) 
    355354      END DO 
    356355  
    357       zun(:,:) = zun(:,:) * hur(:,:) 
    358       zvn(:,:) = zvn(:,:) * hvr(:,:) 
     356      zun(:,:) = zun(:,:) * r1_hu_n(:,:) 
     357      zvn(:,:) = zvn(:,:) * r1_hv_n(:,:) 
    359358 
    360359      ! Curl 
Note: See TracChangeset for help on using the changeset viewer.