OpenFOAM-OpenFOAM coupling, overlapped domains

As shown in the attached picture, the meshes to be solved by the two coupling OF solvers are overlapping with each other and the grids are generated seperatedly. To start with, Solver-1 will write data on Patch-1 of mesh-2 and Solver-2 will then solve for one time step. Next, Solver-2 will write data to those mesh-1 cells that are closest to Patch-2,3,4 of mesh-2. Finally, Solver-1 will advance for one time step once receiving the data. My question is, is it possible to do this with the existing capabilities of Precice 2.5 and OpenFOAM adapter? Thanks a lot!

Hi @Ya_Squall,

I am not sure if you are looking really for overlapping domains (volume) coupling, or just for surface coupling.

Regarding volume coupling, people have done something similar in the past (see Marta Camps Santasmasa’s dissertation), and we will soon release such a feature in the OpenFOAM adapter, where you will be able to couple fields over an overlapping domain region. This will probably come with the rest of the preCICE v3-related releases later this year.

If you are asking about surface coupling (where Mesh-1 would have a hole in the middle, which Mesh-2 fills, and they interact over the corresponding patches), this is already possible:

  • To start with, Solver-1 will write data on Patch-1 of mesh-2 and Solver-2 will then solve for one time step.
  • Next, Solver-2 will write data to those mesh-1 cells that are closest to Patch-2,3,4 of mesh-2.
  • Finally, Solver-1 will advance for one time step once receiving the data.

Sounds like you need a serial coupling scheme with first="Solver-1" second="Solver-2". You could start with an explicit scheme (no iterations, as you describe here), but you will soon need implicit coupling to get sufficient results.

Read more in Markus Mühlhäußer’s thesis. The respective features of the adapter are already in the ff-develop branch, and will be released also in the context of the preCICE v3 release.

Gerasimos Chourdakis via preCICE Forum on Discourse Friday, 21 July, 21:36
If you are asking about surface coupling (where Mesh-1 would have a hole in the middle, which Mesh-2 fills, and they interact over the corresponding patches)

In my case, mesh-1 has no hole and that’s why I call the two meshes are overlapping.

But then I would expect that you couple the complete region, not only the patches.

Could you describe the problem in more detail?

Coupling the complete region would be the best option but require the volume coupling which to my knowledge is not available in v2.5. Coupling on the patches is the next best thing I’d like to try if it’s readily available.

Hi Makis,

Do you have an agenda for the V3 releasing date? Thanks.

We don’t have a concrete agenda for v3, but we do want to finish most of the work before the end of October.