About FSI Examples and Adapter Release

Precice provides great convenience for the development of fluid-structure coupling solvers. I have a solid solver, and I developed an interface using Precice to achieve fluid-structure coupling with openfoam. At present, it has been verified using the example of Perpendicular flap, and the results are basically consistent. But I have two problems at present.

  1. I also want to do a fluid-structure coupling example similar to a small ball entering water, so as to reflect the performance of my solver in simulating discrete body motion. I checked the official examples of Precice, and it seems that there is no similar example. I don’t know if you have a similar coupling example, and I can directly modify the solid solver file to run it. Or, I currently have an openfoam example of a small ball entering water, but I am not very good at openfoam, so there are some problems in the process of realizing coupling. I don’t know how to modify the openfoam input file to achieve coupling, because it does not define Precice related content itself, and gives the small ball mass and boundary conditions.
    [Ball.zip (2.5 MB)](Thien Phan - Floating Sphere)

  2. When I get effective results from the test, I hope to make my solver public. I don’t know whether it can become part of the official adapter of Precice, or what else needs to be done. I need your advice.

The solver is interFoam. I try to simulate, but there is an error:
FOAM Warning :
From void adapterInfo(std::string, std::string)
in file Utilities.C at line 50
Error (deferred - will exit later) in the preCICE adapter:

failed lookup of cellDisplacement (objectRegistry region0)
available objects of type volVectorField:

2(Force U)

Hi,

Have a look at the breaking-dam-2d tutorial. The fluid solver uses interFoam with mesh motion, so very similar to the setup you are trying to achieve.

Best
Frédéric

@Chambernan this typically means that your solver does not define a cellDisplacement field. You could try using pointDisplacement, instead, but I guess the particular solver does not support mesh motion at all.