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 7649 for branches/UKMO/GO6_dyn_vrt_diag/NEMOGCM/NEMO/OPA_SRC/DYN/dynzad.F90 – NEMO

Ignore:
Timestamp:
2017-02-06T16:21:14+01:00 (7 years ago)
Author:
glong
Message:

dyn_vrt_dia subroutine added and calls added for most processes - spg, zdf, and bfr not yet done

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/GO6_dyn_vrt_diag/NEMOGCM/NEMO/OPA_SRC/DYN/dynzad.F90

    r6486 r7649  
    1818   USE trd_oce        ! trends: ocean variables 
    1919   USE trddyn         ! trend manager: dynamics 
     20   USE divcur         ! for dyn_vrt_dia 
    2021   ! 
    2122   USE in_out_manager ! I/O manager 
     
    5960      INTEGER, INTENT(in) ::   kt   ! ocean time-step inedx 
    6061      ! 
    61       INTEGER  ::   ji, jj, jk      ! dummy loop indices 
    62       REAL(wp) ::   zua, zva        ! temporary scalars 
     62      INTEGER  ::   id_dia_vrt_zad_int  = 1  ! TODO remove once flags set properly 
     63      INTEGER  ::   id_dia_vrt_zad_mean = 1  ! TODO remove once flags set properly 
     64      INTEGER  ::   ji, jj, jk               ! dummy loop indices 
    6365      REAL(wp), POINTER, DIMENSION(:,:,:) ::  zwuw , zwvw 
    6466      REAL(wp), POINTER, DIMENSION(:,:  ) ::  zww 
    6567      REAL(wp), POINTER, DIMENSION(:,:,:) ::  ztrdu, ztrdv 
     68      REAL(wp), POINTER, DIMENSION(:,:,:) ::  zua, zva 
    6669      !!---------------------------------------------------------------------- 
    6770      ! 
     
    6972      ! 
    7073      CALL wrk_alloc( jpi,jpj, zww )  
    71       CALL wrk_alloc( jpi,jpj,jpk, zwuw , zwvw )  
     74      CALL wrk_alloc( jpi,jpj,jpk, zwuw , zwvw, zua, zva )  
    7275      ! 
    7376      IF( kt == nit000 ) THEN 
     
    121124            DO ji = fs_2, fs_jpim1       ! vector opt. 
    122125               !                         ! vertical momentum advective trends 
    123                zua = - ( zwuw(ji,jj,jk) + zwuw(ji,jj,jk+1) ) / ( e1u(ji,jj) * e2u(ji,jj) * fse3u(ji,jj,jk) ) 
    124                zva = - ( zwvw(ji,jj,jk) + zwvw(ji,jj,jk+1) ) / ( e1v(ji,jj) * e2v(ji,jj) * fse3v(ji,jj,jk) ) 
     126               zua(ji,jj,jk) = - ( zwuw(ji,jj,jk) + zwuw(ji,jj,jk+1) ) /            & 
     127                   &                ( e1u(ji,jj) * e2u(ji,jj) * fse3u(ji,jj,jk) ) 
     128               zva(ji,jj,jk) = - ( zwvw(ji,jj,jk) + zwvw(ji,jj,jk+1) ) /            & 
     129                   &                ( e1v(ji,jj) * e2v(ji,jj) * fse3v(ji,jj,jk) ) 
    125130               !                         ! add the trends to the general momentum trends 
    126                ua(ji,jj,jk) = ua(ji,jj,jk) + zua 
    127                va(ji,jj,jk) = va(ji,jj,jk) + zva 
     131               ua(ji,jj,jk) = ua(ji,jj,jk) + zua(ji,jj,jk) 
     132               va(ji,jj,jk) = va(ji,jj,jk) + zva(ji,jj,jk) 
    128133            END DO   
    129134         END DO   
     
    140145         &                       tab3d_2=va, clinfo2=       ' Va: ', mask2=vmask, clinfo3='dyn' ) 
    141146      ! 
     147      IF ( ( id_dia_vrt_zad_int == 1 ) .or. ( id_dia_vrt_zad_mean == 1 ) ) THEN 
     148          CALL dyn_vrt_dia(zua, zva, id_dia_vrt_zad_int, id_dia_vrt_zad_mean) 
     149      END IF 
     150      ! 
    142151      CALL wrk_dealloc( jpi,jpj, zww )  
    143       CALL wrk_dealloc( jpi,jpj,jpk, zwuw , zwvw )  
     152      CALL wrk_dealloc( jpi,jpj,jpk, zwuw , zwvw, zua, zva )  
    144153      ! 
    145154      IF( nn_timing == 1 )  CALL timing_stop('dyn_zad') 
Note: See TracChangeset for help on using the changeset viewer.