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.
2020WP/AGRIF-05_rblod_CMEMS – NEMO

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


Name and subject of the action

Last edition: Wikinfo(changed_ts)? by Wikinfo(changed_by)?

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 AgrifFixedGrid?.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 AgrifFixed?.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

Error: Failed to load processor box
No macro or processor named 'box' found



Error: Failed to load processor box
No macro or processor named 'box' found



Error: Failed to load processor box
No macro or processor named 'box' found



Error: Failed to load processor box
No macro or processor named 'box' found