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:
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: yongxingwang.github.io/oscillating_cylinder.gif at master · yongxingwang/yongxingwang.github.io · GitHub. Is there other possible reason for this error: Assertion fail: …/femlib/GQuadTree.cpp ?
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.