Version 10 (modified by jamesharle, 12 months ago) (diff)

Name and subject of the action

Last edition: 09/26/19 19:31:43 by jamesharle

  1. Summary
  2. Development plan
  3. Preview
  4. Tests
  5. Review


Action AGRIF-05_jchanut_vert_coord_interp
PI(S) Jérôme Chanut, James Harle


Developments to nesting (IMMERSE T3.2: Lead Mercator-Ocean , Participants: NERC ) The two-way nesting AGRIF capability will be developed in year 1 to allow each inner nest to use a different vertical coordinate from the model in which it is nested.

Trac Ticket #2222
SVN branch NEMO/branches/2019/dev_r11233_AGRIF-05_jchanut_vert_coord_interp
Previewer(s) Rachid Benshila
Reviewer(s) TBD

'.' => '/nemo/wiki/2019WP/AGRIF-05_jchanut_vert_coord_interp'

Development plan

  1. Simplify existing AGRIF code (open boundary routines only - update part unchanged):
    • Remove any non purely local update near boundaries, e.g. 3 points velocity filtering near boundaries / upstream advection for tracers for outflows. Target is "specified" open boundaries (this does change the results).
    • Ensure that NEMO-AGRIF handles small (~3x3 points) local mpp sub-domains (the preceding task should enable that more easily - current status is local sub-domains greater than ~10x10 points, e.g. greater than sponge layer width).
  2. Check current interpolation of vertical nesting (key_vertical).
    • Ensure that with identical vertical grids, results are bit-for-bit identical (VORTEX).
    • Optimization ? Consider existing PPM interpolation at this stage.
  3. Volume connection with different coordinate systems.
    • Existing code supports only nesting a z-coord model into a z-coord model. Should be more general.
    • Nesting tools have to be updated to allow this. Grenoble's version of Nesting tools (available on NEMO trac) should be the starting point.
  4. Design test cases (beside VORTEX)
    • One should check how boundary layers react at the domains boundaries (top and bottom): extrapolation methods will matter here.
    • Overflow test case (3D). Internal Wave packet crossing the boundary. 2D upwelling. Others ?
  5. Implement other remapping methods.
    • Could be borrowed from D. Engwirda (MOM6) library.
    • Should be coordinated with Mike Bell who plans to use the package for pressure gradient scheme.
  6. Set up a realistic test case (Denmark strait +Med overflows in ORCA12) in col. with WP6 (TBD).
    • How far in the validation should we go ? Not sure this is really part of the WP3.


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.


Reproducibility tests (VORTEX, 60 cores, 100 parent steps - diff run.stat 1_run.stat):

revision: 11573

2 way mode (ln_agrif_2way = .true.)

jpni x jpnj jpimax x jpjmax (child) status
10 x 6 9 x 13 ref
5 x 12 15 x 8 ok
12 x 5 8 x 15 ok
15 x 4 7 x 18 ok
4 x 15 18 x 7 NOK
30 x 2 5 x 34 memory corruption !

1 way mode (ln_agrif_2way = .false.)

jpni x jpnj jpimax x jpjmax (child) status
10 x 6 9 x 13 ref
30 x 2 5 x 34 ok
1 x 60 65 x 4 ok
60 x 1 4 x 65 ok

1 way mode is reproducible down to subdomains lower or equal to 4. It means that changes made in #2199 and included in this revision do work as expected. There is still an issue with small mpp subdomains in the update stage that may come from the AGRIF library.

key_vertical tests

When using the AGRIF_DEMO config with only the Pacific nest results are not comparable between 80 time step runs with and without key_vertical. Differences of O 10-5m in the ssh field are observed @11599