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.
ticket/1260_CNRS0_NOC1_LDF – NEMO

Last edited Timestamp?

Author : Gurvan Madec, Florian Lemarié, George Nurser

ticket : #1260

Branch : 2014/dev_CNRS0_NOC1_LDF

WP2014 Action : CNRS-0 & NOC-1


simplify and improve the lateral diffusion and dissipation in NEMO/OPA 

change the way the eddy diffusivity and viscosity are specified and controlled by the user.

 (1) introduce Beckers et al. (2000) compact stencil in the cross-isoneutral direction in triads formalism ;
 (2) introduce in both iso-neutral operator the Method of Stabilizing Correction (Lemarié et al. (2012) ;
 (3) implement bilaplacian iso-neutral operator (Lemarié et al. (2012)


revision 4615 contains the following changes (validated with GYRE only):

  • all targeted improvements on OPA, i.e. (1) to (3)
  • simplification: (a) LDF entirely re-design. This includes numerous changes: new namelist ; bilaplacian operator written as re-entrant laplacian and bilaplacian eddy coefficient defined as sqrt(bhm) at u and v-points ; rotb and rotn arrays suppressed (even from the restart file) ; hdivn and hdivb removed from restart too ; divcur.F90 becomes divhor and only computes the horizontal divergence ; rename traldf_iso_grif.F90 into traldf_iso_triad.F90 ; redesign the management of eddy induced velocity and its associated diagnostics ; suppress CPP keys associated with slopes and eiv... (b) remove the possibility to compute the lateral diffusion from T-S anomalies (key_traldf_ano)

revision 4616 contains the following changes (validated with GYRE only):

  • improvements : correct the omission of traldf_iso_triad.F90 in OPA_SRC/TRA
  • simplification 1 : introduce e1e2t,u,v and f , r1_e1e2t,u,v and f , r1_e1t,u,v and f, and r1_e2t,u,v and f and use them in all the codes
  • simplification 2 : remove key_vectopt_loop from all the code except in domzgr_substitute.h90 (it is an obsolescent feature only adapted to vector computers)
  • simplification 3 : remove all "!CDIR " lines = NEC vector compiler instructions

revision 4617 & 4618 & 4620 contains the following changes (validated with GYRE_PISCES only):

  • all targeted improvements on TOP
  • simplifications of revision 4616 performed also on tracers
  • correct a bug in trcldf.F90
  • correct a bug in ldfdyn.F90

remaining to do :

  • management of no-slip boundary condition as fmask no more used in dynvor.F90 ....
  • create the 2D ahtu and ahtv file for ORCA_R2 (and also for ORCA_R1)
  • In case of variation of the 2D clef as a function of the grid size, use a reference to a 1 degree grid size for ah on both tracers and momentum
  • suppress Smagorinsky option which does not work any more. Can be re-introduce in a consistent way with the re-design LDF if decided...
  • test with SETE (especially restartability and reproducibility )


Testing could consider (where appropriate) other configurations in addition to NVTK].

NVTK Tested '''YES/NO'''
Other model configurations '''YES/NO'''
Processor configurations tested [ Enter processor configs tested here ]
If adding new functionality please confirm that the
New code doesn't change results when it is switched off
and ''works'' when switched on

(Answering UNSURE is likely to generate further questions from reviewers.)

'Please add further summary details here'

  • Processor configurations tested
  • etc----

Bit Comparability

Does this change preserve answers in your tested standard configurations (to the last bit) ? '''YES/NO '''
Does this change bit compare across various processor configurations. (1xM, Nx1 and MxN are recommended) '''YES/NO'''
Is this change expected to preserve answers in all possible model configurations? '''YES/NO'''
Is this change expected to preserve all diagnostics?
,,''Preserving answers in model runs does not necessarily imply preserved diagnostics. ''

If you answered '''NO''' to any of the above, please provide further details:

  • Which routine(s) are causing the difference?
  • Why the changes are not protected by a logical switch or new section-version
  • What is needed to achieve regression with the previous model release (e.g. a regression branch, hand-edits etc). If this is not possible, explain why not.
  • What do you expect to see occur in the test harness jobs?
  • Which diagnostics have you altered and why have they changed?Please add details here........

System Changes

Does your change alter namelists? '''YES/NO '''
Does your change require a change in compiler options? '''YES/NO '''

If any of these apply, please document the changes required here.......


''Please ''summarize'' any changes in runtime or memory use caused by this change......''

IPR issues

Has the code been wholly (100%) produced by NEMO developers staff working exclusively on NEMO? '''YES/ NO '''

If No:

  • Identify the collaboration agreement details
  • Ensure the code routine header is in accordance with the agreement, (Copyright/Redistribution? etc).Add further details here if required..........
Last modified 10 years ago Last modified on 2014-04-08T16:57:04+02:00