OpenFOAM itself then uses a mesh motion solver (defined in the dynamicMeshDict) that applies the displacement on the mesh. The topology (how the points are connected) remains the same, but the computations based on the mesh change.
I’m very sorry to have to go ahead and clarify this because I still didn’t get what I wanted:
1 I’ve used fluent’s moving mesh udf to implement mesh movement
2 This is the most important thing, since I use the moving mesh, I need to update the mesh mapping matrix in real time during the coupling process, but precice only calculates the mesh mapping matrix once during the initialization.
3 There are three solutions on the official website, but none of them seems to solve the problem of dynamically updating the mesh mapping matrix.
Question:
In the case of FSI, the fluid solver passes the forces that are imposed on the solid to precice and then passes those to the structural solver. The structural solver then solves for the displacement field. If we stop here that’s one way coupling. But then precice takes the displacements and passes them to the fluid solver. What does the fluid solver do with this if the mesh/geometry isn’t changed/updated?
If the fluid mesh is not updated, the fluid solver will continue to be solved. And, the fluid solver continues to solve regardless of whether the fluid mesh is updated or not.
The OF-adapter will apply a displacement Dirichlet boundary condition to the fluid-structure coupling interface, if the transmitted displacement is 0, then the applied displacement is 0.