Assertion fail: femlib/GQuadTree.cpp

Dear all,

I am sure the displacement is very small, however when I do
Ths=movemesh(Ths0, [x+dispx,y+dispy,z+dispz]); // Ths0 is an initial mesh
it always has the following error after several time stesp:

Does any one have an idea what’s wrong?


The same error occurred in my codes this week. If you have any solution, could you please share with me? Thank you in advance!

After move too mush points are at the same place, so the quadtree not solve this problem.

=> your is mesh is too bad …

Thank you Prof. Hecht.
My cylinder just slightly bend after 9 time steps, and all the tetrahedrons are visually good as shown the following figure (an oscillating cylinder in a channel). In addition, I simulated this problem before using my Fortran code which just updates the coordinates of the mesh vertices, and it worked fine as shown in this animation: at master · yongxingwang/ · GitHub. Is there other possible reason for this error: Assertion fail: …/femlib/GQuadTree.cpp ?

Can you send the mesh Ths and [dipx,dispy,dispz] Finite element array.
to see where is the problem exactly.

Thank you very much! This is a piece of parallel code…

Please find attached the background mesh Th, the solid mesh Ths, together with the code.

I just found that the problem disappeared if only using one processor. However, it is still strange why the first 9 steps are OK for two or more processors, but then suddenly breaks down.

By the way, the method is similar to Prof. Daniele Boffi’s FSI method (two meshes plus Lagrangian multiplier) you implemented. However, I uses FEM interpolation rather than Lagrangian Multiplier. Prof. Olivier Pironneau is familiar with my work, who was my PhD thesis examiner. Of course, I am quite familiar with your monolithic FSI paper (2017) with Olivier. Olivier shared most of his FSI code, and I have implement your monolithic FSI method in parallel these days – but I came across stability issues, will ask you about that later.

Th_cylinder.mesh (639.7 KB)
Ths_cylinder.mesh (373.3 KB)
fsi_3d.edp (5.8 KB)

Your code seems to work well in my Mac (macOS 11.4 & FreeFEM-v4.9), and the ParaView result looks like ok.

when your code runs to 36th step, the FreeFEM result are as follow (solid, dx):

I don’t know much about FSI, just to provide some clues.

Thank you very much. That’s interesting, I will try it on a different machine. BTW, How many processors did you use?

-np = 4,I also try to 2 processes and it works fine in my machine.