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 6808 for branches/NERC/dev_r5549_BDY_ZEROGRAD/NEMOGCM/NEMO/OPA_SRC/TRD/trdvor.F90 – NEMO

Ignore:
Timestamp:
2016-07-19T10:38:35+02:00 (8 years ago)
Author:
jamesharle
Message:

merge with trunk@6232 for consistency with SSB code

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/NERC/dev_r5549_BDY_ZEROGRAD/NEMOGCM/NEMO/OPA_SRC/TRD/trdvor.F90

    r4990 r6808  
    2020   USE sbc_oce         ! surface boundary condition: ocean 
    2121   USE phycst          ! Define parameters for the routines 
    22    USE ldfdyn_oce      ! ocean active tracers: lateral physics 
     22   USE ldfdyn          ! ocean active tracers: lateral physics 
    2323   USE dianam          ! build the name of file (routine) 
    2424   USE zdfmxl          ! mixed layer depth 
    25    USE lbclnk          ! ocean lateral boundary conditions (or mpp link) 
     25   ! 
    2626   USE in_out_manager  ! I/O manager 
    2727   USE ioipsl          ! NetCDF library 
     28   USE lbclnk          ! ocean lateral boundary conditions (or mpp link) 
    2829   USE lib_mpp         ! MPP library 
    2930   USE wrk_nemo        ! Memory allocation 
     
    5657 
    5758   !! * Substitutions 
    58 #  include "domzgr_substitute.h90" 
    59 #  include "ldfdyn_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.