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.
ticket/1495_UKMO_ISF – NEMO
wiki:ticket/1495_UKMO_ISF

Last edited Timestamp?


Author : Pierre Mathiot

ticket : #1495

Branch : dev_r5151_UKMO_ISF

Review : wiki:ticket/1495/Review


Description

All the fixes beneath concern only the ice shelf code and do not impact result and performance of non ice shelf configuration

  • Bug fixes in zgr_isf : one block change coastline every where
  • Performance fixes in sbc_isf : CALL statement out of a 2d loop + cleaning
  • Performance fixes in zpshde_isf: too much variables computed. I reduce the number used for isf to the same number used for noisf (bottom case)
  • Performance fixes in hpg_isf : Simplification of the pressure gradient scheme to be as simple as for the bottom (hpg_sco)
  • Bug fixes in zdfbfr : top friction initialisation missing (already reported in the trunk)
  • Change definition of mixed layer depth beneath ice shelf in order to simplify ldfslp and traldf_iso
  • Bug fixes in ldfslp + change according to previous point
  • umask_i is not an interior mask, change it to ssumask (same on v, f)=> done
  • Bug fixes in many routine: conservation issue (based on work of Jerome on runoff). Already reported in the trunk
  • Namelist change : remove option rn_divisf (always applied ice shelf melting as a volume flux), define ln_isf in namsbc as ln_rnf. Move nn_isf to namsbc_isf.

At this stage:

  • no change in result without ice shelf.
  • result of ISOMIP configuration changed due to bug correction. ISOMIP result similar to the previous one and to Losch 2008 (after 28 years of simulation)

Testing

Testing could consider (where appropriate) other configurations in addition to NVTK]. All the validation test are done with the version 3.6_STABLE at revision r5554.

NVTK TestedYES
Other model configurationsYES (ePERIANT025)
Processor configurations tested37/35/836
If adding new functionality please confirm that the
New code doesn't change results when it is switched off
and works when switched on
YES

(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 (except for ISOMIP)
Does this change bit compare across various processor configurations. (1xM, Nx1 and MxN are recommended)YES
Is this change expected to preserve answers in all possible model configurations?YES (for untested possible configuration a flag is set up to false to stop the model)
Is this change expected to preserve all diagnostics?
,,''Preserving answers in model runs does not necessarily imply preserved diagnostics. ''
YES

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
Does your change require a change in compiler options?NO

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

!-----------------------------------------------------------------------
&namsbc        !   Surface Boundary Condition (surface module)
!-----------------------------------------------------------------------
   ...
   ln_rnf      = .true.    !  runoffs                                   (T   => fill namsbc_rnf)
   ln_isf      = .false.   !  ice shelf                                 (T   => fill namsbc_isf)
   ...
!-----------------------------------------------------------------------
&namsbc_isf    !  Top boundary layer (ISF)
!-----------------------------------------------------------------------
...
! for all case
   nn_isf      = 1         !  ice shelf melting/freezing
                           !  1 = presence of ISF    2 = bg03 parametrisation
                           !  3 = rnf file for isf   4 = ISF fwf specified
                           !  option 1 and 4 need ln_isfcav = .true. (domzgr)
...

and in namsbc_isf ln_divisf was removed and in namsbc nn_isf was moved to namsbc_isf.


Resources

Please summarize any changes in runtime or memory use caused by this change...... Runtime diagnostic: Test with ORCA2LIM3 (SETTE configuration) 600 timesteps (error between 2 similar simulations ~30s):

  • Total CPU time in branch = 2584s (METO cluster)
  • Total CPU time in reference = 2588s (METO cluster)

Test with ISOMIP (SETTE configuration):

  • Total CPU time in branch = 135s (288 steps, BAS cluster) | 468s (2400 steps, METO cluster)
  • Total CPU time in reference = 143s (288 steps, BAS cluster) | 506s (2400 steps, METO cluster)

=> difference of -5.6% (BAS cluster) | -7.6% (METO cluster) Memory diagnostic: Test in ORCA2LIM3 configuration (RSS memory):

  • 207644 in branch
  • 207580 in reference

Test in ISOMIP configuration (RSS memory):

  • 98928 in branch
  • 99396 in reference

IPR issues

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

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..........

SVN command (merge)

merge at revision 5554 svn merge svn+ssh://mathiot@forge.ipsl.jussieu.fr/ipsl/forge/projets/nemo/svn/branches/2015/nemo_v3_6_STABLE

Last modified 9 years ago Last modified on 2015-10-27T18:25:41+01:00