This tutorial describes how to run a conjugate heat transfer simulation with three participants, with CalculiX as solid solver and Dirichlet-Neumann coupling.


This tutorial extends the flow over heated plate: Two meshes tutorial, adding another channel flow below the plate. The plate is not heated in this scenario, but is acting as a conducting material for the two fluids, serving as a simplified heat exchanger example.

Contrary to the heat exchanger tutorial, which defines Robin-Robin coupling, this case defines a Dirichlet-Neumann coupling, exchanging temperature (from the fluids to the solid) and heat flux (from the solid to the fluids). Additionally, instead of composing two explicit coupling schemes, this tutorial uses a fully-implicit multi-coupling scheme and is transient.


preCICE configuration (image generated using the precice-config-visualizer):

preCICE configuration visualization

Available solvers

Fluid participants:

Solid participant:

Running the Simulation

Open two separate terminals and start the desired fluid and solid participant by calling the respective run script located in the participant directory. For example:

cd fluid-top-openfoam


cd fluid-bottom-openfoam

to run the fluid participants, as well as

cd solid-calculix

to run the solid participant (which is also controlling the coupling).


Similarly to the flow over heated plate: Two meshes tutorial.

Results of the simplified heat exchanger tutorial

Animation of the simplified heat exchanger tutorial