Dear all,
sorry, I have a bit complicated matter.
A few years ago the non-conservative PSI advection scheme for velocities was the only really attractive one when (a) applying larger time steps in (b) the wave equation option for the free surface and (c) computing in parallel. However, in the institution I work for, it was noticed that if one is not willing do decrease the time step (ehm), it is enough to increase the number of internal iterations in the routine bief::vgfpsi above the hard-coded limit of 100 in order to pass through some parts of the simulations without an emergency stop in vgfpsi. (Yes it is true.) In our case this appears usually at the very beginning (river flows), when the usually awkward boundary conditions cause overshooting velocities in some places, especially when drying/wetting is involved.
Anyway, the number of internal iterations in vgfpsi is steered by a stability criterion being directly the Courant number Cr (computed in cflpsi). The number of iterations is simply the maximum value found in the whole computational domain rounded up to an integer. Well, having Cr>100 should force people to re-think their model setting, but even when at least the time step is reduced and BCs made less awkward, there is quite a lot of iterations in vgfpsi.
The reason for this is the fact that we apply for Telemac meshes with very variable space resolution and - note well - the same mesh for very various water levels. The fine elements tend to appear at the bathymetry slopes - just in order to get the volume correctly - where also the variable shoreline appears. Fine elements are sometimes always dry, sometimes overflown (with flood speeds!) causing the Courant numbers to vary strongly in the computational domain. This causes internal advection iterations also in places, where the stability criterion is well fulfilled, i.e. where these iterations are not necessary. I may imagine this increases the numerical diffusion of the scheme, although for most upwind schemes the less Cr, the more accurate the results are, so that dividing the time step might be not so bad as it seems.
My questions are:
(1) Are there any investigations about the accuracy of this PSI scheme as the function of the Courant number Cr?
(2) Are there any investigations how the scheme accuracy behaves with increasing number of internal iterations for a given constant time step?
(3) Is it theoretically and practically possible to iterate using the LOCAL value of the Courant number instead of the MAXIMUM value in the whole domain?
(The literature of the subject by numerous authors, most recommended by Roe, Deconinck, Hubbard, Struijs, etc. is too large - I ask only for the specific Telemac solutions.)
Best regards,
jaj
PS. Yes, I know there are other beautiful advection schemes one should try when applying larger time steps... ,^) jaj