Version 5 (modified by rblod, 4 months ago) (diff)

Name and subject of the action

Last edition: 06/04/20 10:53:10 by rblod

The PI is responsible to closely follow the progress of the action, and especially to contact NEMO project manager if the delay on preview (or review) are longer than the 2 weeks expected.

  1. Summary
  2. Preview
  3. Tests
  4. Review


Action AGRIF-05_rblod_CMEMS
PI(S) Rachid Benshila
Digest Import developments from CMEMS AGRIF project
Dependencies #2222
Branch source:/NEMO/branches/2020/dev_r12973_AGRIF_CMEMS
Previewer(s) J. Chanut
Reviewer(s) Names
Ticket #2129


This corresponds to the code produced during CMEMS AGRIF project (which ends in late 2020).
Expected outcomes. They correspond to a CMEMS call to improve Agrif capabilities for global configurations. Details will be found in corresponding project reports.

  • New nesting tools base on domaincfg :

the idea there is to modify domaincfg package to use it as nesting tools. The routines will be "Agrifed", and when compiled with key_agrif, the code will read an Agrif Fixed Grid?.in file and use Agrif Library to go through the grid hierarchy and interpolate the meshes. Bathymetry interpolation when an external database is provided will use the same interpolations than in the former nesting tools. When not provided, interpolating the parent bathymetry is possible. Yhe bathymetry connection is also handled recursively. Creating grid and bathymetry is the only functionality which is provided. The new nesting tools support the additional capabilities below.

  • Allow zooms with cyclic and North Fold conditions
    • make a zoom at north fold
    • make a zoom through the east-west grid separation
    • make an east-west zoom totally periodic
  • Improve parallelisation and load balancing (phase II)
  • Those three items imply to provide a new AGRIF library


For know (June the 4th), we list here what is underway, tricky and the potential issues, details will be in project reports. The first version of the branch adresses points 1,2 and 4 in the list above

  • domaincfg
    • to use it as nesting tools, it is compiled with key_agrif. To do so, a makefile is provided for know. Maketools has still to be modified to use NEMO logic.
    • it has now an Agrif-like structure (agrif_user routine and so)
    • some new flags in the namelist :

   nn_bathy    =    1      !  compute analyticaly (=0) or read (=1) the bathymetry file
                                    !  or compute (2) from external bathymetry
                                    ! with agrif, if 1 for the child grids, interpolate from parent
   nn_interp   =    1                          ! type of interpolation (nn_bathy =2). With external source : 0 :average, 1 median, 2 bilinear
   cn_topo     =  ''  ! external topo file (nn_bathy =2)
   cn_bath     =  'Bathymetry'                 ! topo name in file  (nn_bathy =2)
   cn_lon        =  'nav_lon'                    ! lon  name in file  (nn_bathy =2)
   cn_lat         =  'nav_lat'                      ! lat  name in file  (nn_bathy =2)
   rn_scale     = 1                                 ! scale facto for input bathymetry data

&namagrif      !  AGRIF zoom                                            ("key_agrif")
ln_bry_south = .TRUE.    ! F : no south boudary antarctic)
  • we provide an Agrif Fixed?.in_cmems file with 3 examples for new capabilities.
  • without Agrif, it should provide the result as before but this has to be checked
  • still cleaning and cosmetics to do
  • it should be able (with or without agrif) to work in MPI but not tested yet

Documentation updates

Using previous parts, define the main changes to be done in the NEMO literature (manuals, guide, web pages, …).


Since the preview step must be completed before the PI starts the coding, the previewer(s) answers are expected to be completed within the two weeks after the PI has sent the request to the previewer(s).
Then an iterative process should take place between PI and previewer(s) in order to find a consensus

Possible bottlenecks:

  • the methodology
  • the flowchart and list of routines to be changed
  • the new list of variables wrt coding rules
  • the summary of updates in literature

Once an agreement has been reached, preview is ended and the PI can start the development into his branch.


Once the development is done, the PI should complete the tests section below and after ask the reviewers to start their review.

This part should contain the detailed results of SETTE tests (restartability and reproducibility for each of the reference configuration) and detailed results of restartability and reproducibility when the option is activated on specified configurations used for this test

Regular checks:

  • Can this change be shown to produce expected impact (option activated)?
  • Can this change be shown to have a null impact (option not activated)?
  • Results of the required bit comparability tests been run: are there no differences when activating the development?
  • If some differences appear, is reason for the change valid/understood?
  • If some differences appear, is the impact as expected on model configurations?
  • Is this change expected to preserve all diagnostics?
  • If no, is reason for the change valid/understood?
  • Are there significant changes in run time/memory?


A successful review is needed to schedule the merge of this development into the future NEMO release during next Merge Party (usually in November).


  • Is the proposed methodology now implemented?
  • Are the code changes in agreement with the flowchart defined at preview step?
  • Are the code changes in agreement with list of routines and variables as proposed at preview step?
    If, not, are the discrepancies acceptable?
  • Is the in-line documentation accurate and sufficient?
  • Do the code changes comply with NEMO coding standards?
  • Is the development documented with sufficient details for others to understand the impact of the change?
  • Is the project literature (manual, guide, web, …) now updated or completed following the proposed summary in preview section?


Is the review fully successful? If not, please indicate what is still missing

Once review is successful, the development must be scheduled for merge during next Merge Party Meeting.