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 14822 for NEMO/branches/2021/dev_r14122_HPC-08_Mueller_OSMOSIS_streamlining/src/OCE/DIA/diawri.F90 – NEMO

Ignore:
Timestamp:
2021-05-10T13:32:16+02:00 (3 years ago)
Author:
smueller
Message:

Synchronizing with /NEMO/trunk@14820 (ticket #2353)

Location:
NEMO/branches/2021/dev_r14122_HPC-08_Mueller_OSMOSIS_streamlining
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2021/dev_r14122_HPC-08_Mueller_OSMOSIS_streamlining

    • Property svn:externals
      •  

        old new  
        1 ^/utils/build/arch@14122      arch 
        2 ^/utils/build/makenemo@14122  makenemo 
        3 ^/utils/build/mk@14122        mk 
        4 ^/utils/tools@14122           tools 
        5 ^/vendors/AGRIF/dev@14122     ext/AGRIF 
        6 ^/vendors/FCM@14122           ext/FCM 
        7 ^/vendors/IOIPSL@14122        ext/IOIPSL 
        8 ^/vendors/PPR@14122           ext/PPR 
         1^/utils/build/arch@HEAD       arch 
         2^/utils/build/makenemo@HEAD   makenemo 
         3^/utils/build/mk@HEAD         mk 
         4^/utils/tools@HEAD            tools 
         5^/vendors/AGRIF/dev@HEAD      ext/AGRIF 
         6^/vendors/FCM@HEAD            ext/FCM 
         7^/vendors/IOIPSL@HEAD         ext/IOIPSL 
         8^/vendors/PPR@HEAD            ext/PPR 
        99 
        1010# SETTE 
        11 ^/utils/CI/sette_wave@13990         sette 
         11^/utils/CI/sette@14244        sette 
  • NEMO/branches/2021/dev_r14122_HPC-08_Mueller_OSMOSIS_streamlining/src/OCE/DIA/diawri.F90

    r14086 r14822  
    7070   PUBLIC   dia_wri_state 
    7171   PUBLIC   dia_wri_alloc           ! Called by nemogcm module 
    72 #if ! defined key_iomput    
     72#if ! defined key_xios    
    7373   PUBLIC   dia_wri_alloc_abl       ! Called by sbcabl  module (if ln_abl = .true.) 
    7474#endif 
     
    9595CONTAINS 
    9696 
    97 #if defined key_iomput 
     97#if defined key_xios 
    9898   !!---------------------------------------------------------------------- 
    99    !!   'key_iomput'                                        use IOM library 
     99   !!   'key_xios'                                        use IOM library 
    100100   !!---------------------------------------------------------------------- 
    101101   INTEGER FUNCTION dia_wri_alloc() 
     
    215215      ENDIF 
    216216 
    217 #if ! defined key_qco 
    218       CALL iom_put( "rhop", rhop(:,:,:) )          ! 3D potential density (sigma0) 
    219 #endif 
     217      IF( .NOT.lk_SWE )   CALL iom_put( "rhop", rhop(:,:,:) )          ! 3D potential density (sigma0) 
    220218 
    221219      IF ( iom_use("taubot") ) THEN                ! bottom stress 
     
    253251      ENDIF 
    254252 
    255       IF( ln_zad_Aimp ) ww = ww + wi               ! Recombine explicit and implicit parts of vertical velocity for diagnostic output 
    256       CALL iom_put( "woce", ww )                   ! vertical velocity 
     253      !                                            ! vertical velocity 
     254      IF( ln_zad_Aimp ) THEN   ;   CALL iom_put( "woce", ww + wi )   ! explicit plus implicit parts 
     255      ELSE                     ;   CALL iom_put( "woce", ww ) 
     256      ENDIF 
    257257 
    258258      IF( iom_use('w_masstr') .OR. iom_use('w_masstr2') ) THEN   ! vertical mass transport & its square value 
    259          ! Caution: in the VVL case, it only correponds to the baroclinic mass transport. 
    260          z2d(:,:) = rho0 * e1e2t(:,:) 
     259         !                     ! Caution: in the VVL case, it only correponds to the baroclinic mass transport. 
    261260         DO jk = 1, jpk 
    262             z3d(:,:,jk) = ww(:,:,jk) * z2d(:,:) 
     261            IF( ln_zad_Aimp ) THEN 
     262               z3d(:,:,jk) = rho0 * e1e2t(:,:) * ( ww(:,:,jk) + wi(:,:,jk) ) 
     263            ELSE 
     264               z3d(:,:,jk) = rho0 * e1e2t(:,:) * ww(:,:,jk) 
     265            ENDIF 
    263266         END DO 
    264267         CALL iom_put( "w_masstr" , z3d )   
    265          IF( iom_use('w_masstr2') )   CALL iom_put( "w_masstr2", z3d(:,:,:) * z3d(:,:,:) ) 
    266       ENDIF 
    267       ! 
    268       IF( ln_zad_Aimp ) ww = ww - wi               ! Remove implicit part of vertical velocity that was added for diagnostic output 
     268         IF( iom_use('w_masstr2') )   CALL iom_put( "w_masstr2", z3d * z3d ) 
     269      ENDIF 
    269270 
    270271      CALL iom_put( "avt" , avt )                  ! T vert. eddy diff. coef. 
     
    360361      ENDIF 
    361362      !     
    362       IF ( iom_use("sKEf") ) THEN                        ! surface kinetic energy at F point 
     363      IF ( iom_use("ssKEf") ) THEN                        ! surface kinetic energy at F point 
    363364         z2d(:,:) = 0._wp                                ! CAUTION : only valid in SWE, not with bathymetry 
    364365         DO_2D( 0, 0, 0, 0 ) 
     
    370371         END_2D 
    371372         CALL lbc_lnk( 'diawri', z2d, 'F', 1. ) 
    372          CALL iom_put( "sKEf", z2d )                      
     373         CALL iom_put( "ssKEf", z2d )                      
    373374      ENDIF 
    374375      ! 
     
    473474      IF (ln_dia25h)   CALL dia_25h( kt, Kmm )        ! 25h averaging 
    474475       
    475       ! Output of vorticity terms 
    476       IF ( iom_use("relvor")    .OR. iom_use("plavor")    .OR.   & 
    477          & iom_use("relpotvor") .OR. iom_use("abspotvor") .OR.   & 
    478          & iom_use("Ens")                                        ) THEN 
     476      ! Output of surface vorticity terms 
     477      IF ( iom_use("ssrelvor")    .OR. iom_use("ssplavor")    .OR.   & 
     478         & iom_use("ssrelpotvor") .OR. iom_use("ssabspotvor") .OR.   & 
     479         & iom_use("ssEns")                                        ) THEN 
    479480         ! 
    480481         z2d(:,:) = 0._wp  
     
    485486         END_2D 
    486487         CALL lbc_lnk( 'diawri', z2d, 'F', 1. ) 
    487          CALL iom_put( "relvor", z2d )                  ! relative vorticity ( zeta )  
    488          ! 
    489          CALL iom_put( "plavor", ff_f )                 ! planetary vorticity ( f ) 
     488         CALL iom_put( "ssrelvor", z2d )                  ! relative vorticity ( zeta )  
     489         ! 
     490         CALL iom_put( "ssplavor", ff_f )                 ! planetary vorticity ( f ) 
    490491         ! 
    491492         DO_2D( 1, 0, 1, 0 )   
     
    498499         END_2D 
    499500         CALL lbc_lnk( 'diawri', z2d, 'F', 1. ) 
    500          CALL iom_put( "relpotvor", z2d )                  ! relative potential vorticity (zeta/h) 
     501         CALL iom_put( "ssrelpotvor", z2d )                  ! relative potential vorticity (zeta/h) 
    501502         ! 
    502503         DO_2D( 1, 0, 1, 0 ) 
     
    509510         END_2D 
    510511         CALL lbc_lnk( 'diawri', z2d, 'F', 1. ) 
    511          CALL iom_put( "abspotvor", z2d )                  ! absolute potential vorticity ( q ) 
     512         CALL iom_put( "ssabspotvor", z2d )                  ! absolute potential vorticity ( q ) 
    512513         ! 
    513514         DO_2D( 1, 0, 1, 0 )   
     
    515516         END_2D 
    516517         CALL lbc_lnk( 'diawri', z2d, 'F', 1. ) 
    517          CALL iom_put( "Ens", z2d )                        ! potential enstrophy ( 1/2*q2 ) 
     518         CALL iom_put( "ssEns", z2d )                        ! potential enstrophy ( 1/2*q2 ) 
    518519         ! 
    519520      ENDIF 
Note: See TracChangeset for help on using the changeset viewer.