Hello,
we have now a number of morphodynamic river models applying lower resolution meshes, computing in parallel. Unfortunately the errors with which Telemac users learned to live with in the past, have started to affect us again. The results obtained in serial and with different number of mesh partitions differ. The errors accumulate with the time of simulation. Reproducibility of the results (especially after restarts) is haphazard.
A closer look reveals that the cause is one of the still unresolved problems in Telemac, the parallel "tidal flats" or "wetting & drying" algorithms. These algorithms (three versions) require that a treated element on the shoreline has full information about the state ("wet/dry", waterlevels) in all neighbouring elements. This is not the case in parallel runs.
If the element in question lies not only on the shoreline, but also on the boundary between partitioned meshes, it does not become the full information on the elements behind the partition boundary ("interface"), because only the nodal values are exchanged via communication between processors. In the result the "wet/dry" state in elements where the shoreline and the partition interface can differ compared to the case when the interface is not there.
Additionally, the wet/dry states are steered by threshold values (minimum depth). How these thresholds are reached can differ depending on the number of partitions, because although the iterative slovers for the waterlevel have the same accuracy, this accuracy is reached in a different way and the values on the interface nodes can differ slightly anyway.
The result are isolated areas with differences between waterlevels and currents nearby the shoreline depending on the number of processors one uses (and which processors as well). If you compute stationary flows, these errors remain the same and you might mentally ignore them if you are rather interested in an overall, global sight of the waterlevels and not in the current details.
HOWEVER, if you compute the bed load transport, the errors accumulate during the computation. Then, if larger erosion or sedimentation appears, the wetting and drying algorithms are asked to adjust the shoreline again -- and the artificial errors in parallel grow, grow, grow. And we have another factor influencing the error: the simulation length in time.
This inconsistency has been reported -- so far as I remember -- more than ten years ago, there were some cosmetic improvements, but rather concerning treatment of some specific exceptional cases in wetting & drying algorithms than the parallel problems. The users have learned to live with it, refining the meshes in the problematic areas, making the meshes more regular there, computing with increased accuracy, manipulating the minimum depth threshold, cutting forelands off and switching all these tidal flats algorithms off.
I assume the problem can affect also other (newer?) algorithms depending on the correct or consistent treatment of the shoreline, like the "positive depths"...
The problem has been thoroughly discussed in the past. Modifying of the existing algorithms for parallelism has been excluded as too bothersome and awkward. The solution applying non-linear Newton iterations with the solver for the free surface has been excluded as well, because in case of Telemac-2D it would be inefficient (V. Casulli, "A high-resolution wetting and drying algorithm for free-surface hydrodynamics", Int. J. Numer. Meth. Fluids 2009; 60:391–408). The resigned users have stopped complaining, anyway.
QUESTION: Are there presently any ideas, how to improve the wetting and drying algorithms in Telemac? Especially coupled with Sisyphe (the errors accumulate!)
Best regards,
jaj