Changeset 14983


Ignore:
Timestamp:
2021-06-11T17:11:20+02:00 (6 months ago)
Author:
clem
Message:

trunk: small sneaky enhancement related to ticket #2661 (adding dissipation outputs)

Location:
NEMO/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • NEMO/trunk/cfgs/SHARED/field_def_nemo-oce.xml

    r14964 r14983  
    755755    <field id="bn2"          long_name="squared Brunt-Vaisala frequency"                unit="s-2" /> 
    756756 
     757    <!-- dissipation diagnostics (note: ediss_k is only available with tke scheme) -->    
     758    <field id="avt_k"        long_name="vertical eddy diffusivity from closure schemes" standard_name="ocean_vertical_eddy_diffusivity"       unit="m2/s" /> 
     759    <field id="avm_k"        long_name="vertical eddy viscosity from closure schemes"   standard_name="ocean_vertical_eddy_viscosity"         unit="m2/s" /> 
     760    <field id="ediss_k"      long_name="Kolmogorov energy dissipation (tke scheme)"     standard_name="Kolmogorov_energy_dissipation"         unit="W/kg" /> 
     761    <field id="eshear_k"     long_name="energy source from vertical shear"              standard_name="energy_source_from_shear"              unit="W/kg" /> 
     762    <field id="estrat_k"     long_name="energy sink from stratification"                standard_name="energy_sink_from_stratification"       unit="W/kg" /> 
     763     
    757764  </field_group> 
    758765 
  • NEMO/trunk/src/OCE/ZDF/zdfphy.F90

    r14967 r14983  
    375375      ENDIF 
    376376      ! 
     377      ! diagnostics of energy dissipation 
     378      IF( iom_use('avt_k') .OR. iom_use('avm_k') .OR. iom_use('eshear_k') .OR. iom_use('estrat_k') ) THEN 
     379         IF( l_zdfsh2 ) THEN 
     380            zsh2(:,:,1  ) = 0._wp 
     381            zsh2(:,:,jpk) = 0._wp 
     382            CALL lbc_lnk( 'zdfphy', zsh2, 'W', 1._wp ) 
     383            CALL iom_put( 'avt_k'   ,   avt_k       * wmask ) 
     384            CALL iom_put( 'avm_k'   ,   avm_k       * wmask ) 
     385            CALL iom_put( 'eshear_k',   zsh2        * wmask ) 
     386            CALL iom_put( 'estrat_k', - avt_k * rn2 * wmask ) 
     387         ENDIF 
     388      ENDIF 
     389      ! 
    377390      IF( ln_timing )   CALL timing_stop('zdf_phy') 
    378391      ! 
  • NEMO/trunk/src/OCE/ZDF/zdftke.F90

    r14834 r14983  
    219219      REAL(wp), DIMENSION(A2D(nn_hls))     ::   zice_fra, zhlc, zus3, zWlc2 
    220220      REAL(wp), DIMENSION(A2D(nn_hls),jpk) ::   zpelc, zdiag, zd_up, zd_lw 
     221      REAL(wp), DIMENSION(:,:,:), ALLOCATABLE ::   ztmp ! for diags 
    221222      !!-------------------------------------------------------------------- 
    222223      ! 
     
    446447         en(ji,jj,jk) = MAX( en(ji,jj,jk), rn_emin ) * wmask(ji,jj,jk) 
    447448      END_3D 
     449      ! 
     450      ! Kolmogorov energy of dissipation (W/kg) 
     451      !    ediss = Ce*sqrt(en)/L*en 
     452      !    dissl = sqrt(en)/L 
     453      IF( iom_use('ediss_k') ) THEN 
     454         ALLOCATE( ztmp(A2D(nn_hls),jpk) ) 
     455         ztmp(:,:,:) = zfact3 * dissl * en * wmask 
     456         CALL lbc_lnk( 'zdftke', ztmp, 'W', 1._wp ) 
     457         CALL iom_put( 'ediss_k', ztmp ) 
     458         DEALLOCATE( ztmp ) 
     459      ENDIF 
    448460      ! 
    449461      !                            !<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< 
Note: See TracChangeset for help on using the changeset viewer.