Inconsistent zeta and w in two-way nesting - bug or irrelevant?

When I activate 2-way nesting, erroneous horizontal circulation (appearing in the time-mean) appears at certain parts of the boundary of my child domain as reported by Vincent, as well greatly (100x) amplified surface-intensified vertical velocities across the area the child domain occupies within the parent grid and a serious SSH discontinuity across the parent-child interface. The vertical velocities and SSH anomalies do not appear within the child grid itself (i.e. croco_his.nc.1), only within the area occupied by the child domain in the parent grid. This issue appears to be entirely related to 2-way nesting being activated - it is not affected by bottom-friction, timestep, resolution, boundary sponging, or initial conditions, and is not present when 1-way nesting is active. What perplexes me is that such a significant SSH discontinuity, if actually in the model, should generate geostrophic currents - but if you ignore the child domain within the parent grid, the solution looks perfect and continuous.

The fix suggested in the other thread (defining AGRIF_UPDATE_DECAL) removes the erroneous horizontal currents at the boundary, but it does not solve the vertical velocities/SSH. So my two questions are as follows:

  1. Is it possible that there’s a bug dumping incorrect SSH/w fields for the area occupied by the child domain in the parent grid?

  2. Or, are perturbations within the child domain in the parent grid unable to propagate across the child-parent domain interface (and if so, why?)

Figures:

Zeta:

image description

W: (scale goes up to 1E-4 m/s, actual vertical velocities in the child-domain can exceed 1E-2m/s - despite this, the model is stable and returns sensible solutions for other parameters)

image description

Hi

Is it possible that there’s a bug dumping incorrect SSH/w fields for the area occupied by the child domain in the parent grid?

possibly but since the simulation appears stable, it probably only concerns values at interior points not used by the interface stencil. What version are you using?

Patrick

I think you’re right about it only concerning the interior points. However I am confused about why perturbations in these interior points are unable to propagate outwards though, since model is integrated across the entire coarse grid is it not (even if updating only concerns the interface).

I am using Croco V1.0 (I downloaded it about a month ago).

only the interface solution will be used by the parent grid and the interface solution relies on a stencil with 2 inside points. If these points are correct then the rest of interior points is mostly updated for cosmetic reason.

Note that we are about to upgrade to CROCO version to 1.1 that comes with recent cleaning on the update procedure in 2-way nesting (some parameters may have been corrupted during previous development). I am not sure if that will fix your problem but we will see …

Ah, I see. That’s good to hear, thank you for your help!