New URL for NEMO forge!

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.
#1832 (TKE source for vertical mixing must be reduced under the sea-ice (TKE turbulent closure scheme)) – NEMO

Opened 7 years ago

Closed 6 years ago

Last modified 6 years ago

#1832 closed Defect (fixed)

TKE source for vertical mixing must be reduced under the sea-ice (TKE turbulent closure scheme)

Reported by: ctlod Owned by: gm
Priority: normal Milestone:
Component: OCE Version: v3.6
Severity: minor Keywords:
Cc: gm

Description (last modified by nemo)


2 options in zdftke.F90 module are concerned:

  • TKE due to surface and internal wave breaking (namzdf_tke: nn_etau = 1 in the ocean namelist)
  • TKE source term due to Langmuir circulation (namzdf_tke: ln_lc = True in the ocean namelist)


When using these 2 TKE sources or one of them, by default each of them is weighted by ( 1. - fr_i(:,:) );
so as soon as the sea-ice fraction is strictly below 1, which is the case almost everywhere under the
sea-ice, the vertical mixing will be slightly increased leading to a seasonal cycle on both temperature
and salinity under sea-ice; this should not occur since:

  • for a Langmuir circulation to develop, the surface ocean should be directly or partially in contact with the wind,
  • mixing induced by waves could occur under sea-ice but "relatively close" to the MIZ, while the "relatively close" term is still not clear and is an ongoing research topic.


Reduce the threshold so these 2 TKE sources will be active only when sea-ice fraction will be lower than 25%.
This is an ad hoc choice which does not rely on either observations nor a specific study.
So it has to be adjusted more precisely later.

Proposed modification in zdftke.F90 module:

Use '''( MAX(0.,1._wp - 4.*fr_i(ji,jj) ) )''' instead ( 1._wp - fr_i(ji,jj) ) weight.

For the surface and internal wave breaking:

 IF( nn_etau == 1 ) THEN           !* penetration below the mixed layer (rn_efr fraction)
   en(ji,jj,jk) = en(ji,jj,jk) + rn_efr * en(ji,jj,1) * EXP( -fsdepw(ji,jj,jk) / htau(ji,jj) ) '''* ( MAX(0.,1._wp - 4.*fr_i(ji,jj) ) )'''  * wmask(ji,jj,jk) * tmask(ji,jj,1)

For the Langmuir circulation parameterization:

en(ji,jj,jk) = en(ji,jj,jk) + rdt * '''( MAX(0.,1._wp - 4.*fr_i(ji,jj) ) )''' * ( zwlc * zwlc * zwlc ) /   zhlc(ji,jj) * wmask(ji,jj,jk) * tmask(ji,jj,1)

Commit History (1)


Bugfix on TKE vertical mixing under sea-ice, see ticket #1832

Change History (7)

comment:1 Changed 7 years ago by jchanut

one more thing:
one has to revert to a constant surface roughness below ice if ln_mxl0=T (in place of Charnock formula).

comment:2 Changed 7 years ago by ctlod

Just to make things clear: the effect of the bug is more obvious in the seasonal cycle it creates for the vertical mixing than T or S. The problem is that it creates a seasonal cycle of the vertical heat flux (Kz *dT/dz) that results in an artificial dominant timescale (seasonal) for the interaction between the ocean and the sea ice.

comment:3 Changed 7 years ago by clevy

  • Owner changed from nemo to rbourdal

comment:4 Changed 7 years ago by gm

  • Owner changed from rbourdal to gm
  • Type changed from Bug to Defect

comment:5 Changed 7 years ago by clevy

  • Cc gm added
  • Status changed from new to assigned

comment:6 Changed 6 years ago by gm

  • Resolution set to fixed
  • Severity set to minor
  • Status changed from assigned to closed

This ad hoc fix has been add to the 2017 merged version (branch: dev_merge_2017), and so will be available in the forthcoming versions.

In the v3.6_stable, a less restrictive factor is used : MAX(0.,1._wp - 2.*fr_i(ji,jj) ) is used (see revision 7785).

comment:7 Changed 6 years ago by nemo

  • Description modified (diff)
Note: See TracTickets for help on using tickets.