Building FEniCS-FEniCS FSI problem using preCICE

Hello all,

I hope this question finds you well. I would like to solve FSI problem with both Solid and Fluid Solvers in FEniCS. However, I am not sure how to build FEniCS-FEniCS FSI. Is that possible? Why is it common to use OpenFOAM-FEniCS for FSI? My plan is to transform this pipeflow code (https://github.com/hplgit/fenics-tutorial/blob/master/pub/python/vol1/ft07_navier_stokes_channel.py) into a fluid solver but the code is producing results in terms of displacements but not forces. Any suggestion would help. Thanks again.

Hi @ptl1411,

Is that possible?

There is at least already a working FEniCS-FEniCS example for heat transport. Therefore, I would assume doing FSI in this kind of fashion should also work. You “only” need a FEniCS CFD solver and you can use the Solid solver provided in our FSI tutorial, if you want.

Why is it common to use OpenFOAM-FEniCS for FSI?

We are currently also trying to get a SU2-FEniCS case working (so OpenFOAM is not the only option). Performing a FEniCS-FEniCS coupling is still a bit uncommon (not impossible), since there are also good monolithic alternatives, such as turtleFSI. However, there might also be good reasons for using a partitioned approach, even if you are using the same solver for both participants.

My plan is to transform this pipeflow code (https://github.com/hplgit/fenics-tutorial/blob/master/pub/python/vol1/ft07_navier_stokes_channel.py) into a fluid solver but the code is producing results in terms of displacements but not forces. Any suggestion would help. Thanks again.

Do you mean displacements or velocities?

As far as I understand this solver, you will either have to extent it or use a different solver. For FSI usually an ALE solver (= Arbitrary-Lagrangean-Eulerian) is used to be able to handle moving meshes - similar to the OpenFOAM ALE solver that we use in our FSI tutorial.

I hope that this gives you some ideas for starting.

Best regards,
Benjamin

1 Like