An OpenFOAM function object for CHT, FSI, and fluid-fluid coupled simulations using preCICE.

What is this?

This preCICE adapter is a plug-in (function object) for OpenFOAM, which can work with any recent version of OpenFOAM (.com / .org, see supported OpenFOAM versions). It supports fluid-structure interaction (fluid part), conjugate heat transfer (fluid and solid parts), and fluid-fluid simulations, while it is also easily extensible. Besides surface coupling, the adapter also supports volume coupling (overlapping domains).

What can it do?

This adapter can read/write the following fields in a surface coupling setup:

  • Temperature (read + write)
  • Temperature gradient (read + write)
  • Heat flux (read + write)
  • Sink temperature (read + write)
  • Heat transfer coefficient (read + write)
  • Force (read + write)
  • Stress (write)
  • Displacement (read + write)
  • Displacement delta (read)
  • Pressure (read + write)
  • Pressure gradient (read + write)
  • Velocity (read + write)
  • Velocity gradient (read + write)
  • Phase fraction (alpha) (read + write)
  • Phase fraction (alpha) gradient (read + write)
  • Phase flux (phi) (read + write)

In addition, the adapter supports the following fields in a volume coupling setup:

  • Temperature (write)
  • Pressure (write)
  • Velocity (read + write)

All features of preCICE are supported, including implicit coupling and nearest-projection mapping. Even though OpenFOAM is 3D, this adapter can also work in the 2D mode of preCICE, defining only one layer of interface nodes (automatically).


Here you will find how to get the adapter, how to configure a case, how to extend the adapter to cover additional features, as well as a few notes on supported OpenFOAM versions.


Apart from following the documentation here, you will also often find us in OpenFOAM-related conferences. Before diving into preCICE and the OpenFOAM adapter for the first time, you may want to watch the recording of our training session from the 15th OpenFOAM Workshop:


Please cite this adapter using our reference paper in the OpenFOAM Journal [1]. See the preCICE literature guide for more details.


This project is actively maintained on precice/openfoam-adapter. Current maintainers: @MakisH and @DavidSCN.

This adapter was developed as part of Gerasimos Chourdakis’ master’s thesis [2]. It is based on previous work by Lucia Cheung (master’s thesis [3], in cooperation with SimScale).

The fluid-structure interaction module was developed in close collaboration between Gerasimos Chourdakis and Derek Risseeuw (TU Delft), in the context of the master’s thesis of the latter [4]. We would also like to thank David Schneider (Univ. Siegen / TUM) and Maximilian Müller (TU Braunschweig) for sharing the code and experience of their similar previous work.

The fluid-fluid coupling module was added by Gerasimos Chourdakis, in the context of his dissertation. #67

The adapter is easily extensible.

[1] Chourdakis, G., Schneider, D., & Uekermann, B. (2023). OpenFOAM-preCICE: Coupling OpenFOAM with External Solvers for Multi-Physics Simulations. OpenFOAM® Journal, 3, 1–25. DOI: 10.51560/ofj.v3.88

[2] Gerasimos Chourdakis. A general OpenFOAM adapter for the coupling library preCICE. Master’s thesis, Department of Informatics, Technical University of Munich, 2017.

[3] Lucia Cheung Yau. Conjugate heat transfer with the multiphysics coupling library preCICE. Master’s thesis, Department of Informatics, Technical University of Munich, 2016.

[4] Derek Risseeuw. Fluid Structure Interaction Modelling of Flapping Wings. Master’s thesis, Faculty of Aerospace Engineering, Delft University of Technology, 2019.