Home >> Forums >> Vertical migration and CFL criterion

Vertical migration and CFL criterion

I was wondering if enabling vertical migration simulation with big amplitude between day and night location in the water column (400 to 100 m depth) could result in breaking CFL criterion,
I am using NEMO3D model with a resolution of 0.083 degree, and still break occasionally CFL crierion on W with number consistently between 1 and 1.1 while I set dt to 180s...
if I set dt to 1800 s, then I got a lot these warnings with values mainly between 1 and 3, only on W again,
should I just ignore these warnings?
I am using the ichtyop version shared in a recent post (Coupling Copernicus Ocean data products (OPA-NEMO)),

Ichthyop version: 
Ichthyop 3.3alpha
Hydrodynamic dataset: 

Also, is vertical migration working when backtracking particles? it's not obvious when I look at the ouputs,

I would say that CFL between 1 and 1.1 is not a big deal. If you are concerned about it, however, then decrease the timestep a bit more and it should be OK.

Hi Christophe,
I am a bit concerned because I have seen in a previous post that Philippe said that it was a bug in th program in computing the vertical velocity, and I wonder if something similar is happening here, I don't see why vertical velocity would be so important that particle skip a layer over 180 s, another problem that I guess is related is that a lot of particles get beached in the ground (at 500 m depth),
I am going to run several simulations and I would to be sure everything is working that I don't need to rerun them and also I would prefer to set dt to something like 1800 s (which is consistent considering the horizontal resolution of the model that I use) to reduce computing time,

Hi Boris.

I can have a look at that. However, the problem for the vertical is that although W values are small, the layer thickness is also small compared to the horizontal spacing (a hundred meters compared to a hundred kilometers). Which could explain the CFL issue with W.


Hi Nicolas,
I sent you by email a link to access the file,
I am now doing backtracking simulations to estimate sources, then I will do forward tracking including vertical nmigration behaviour, if I keep the coastline behavior parameter on 'beaching' a lot of particles beach in the sea bottom, which is odd, so I set it on 'bouncing' but then I usually get error message at varying time during the simulation,
you will see that the simulation produces continously CFL broken errors,

Hi Boris

I have looked at your issue. I was able to get rid of CFL errors by reducing the time step (360 instead of 3600). However, I would not trust the outputs since there is a problem in your input files.

Since you have no vertical speed, it is recomputed by Ichthyop from U and V, assuming a non diverging flow (no volume change from within a cell). Practically, W(z=k) is computed from the value of W(z=k-1) (assuming that the surface is at k=0). Since W(z=bottom) = 0, we have W(z=bottom-1), W(z=bottom-2) and so on up to the surface.

However, in the files that you sent, not all the vertical levels are provided. As a consequence, the computation of W is erroneous. Which could be a reason why the vertical migration does not work. In the figure, you see that the computed values of W may be overestimated.

So my suggestions are:

i) either download (if it is possible) the vertical component of the velocity field (should be something like wo).

ii) if it is not possible, you will need to download the dataset over the entire water column, in order to be sure that W is properly computed.