Dear all,

I am trying to couple a simulation with two codes, say code A and code B (different discretizations). For code A we solve simply the conduction equation (solid), while in B we solve the NS + temperature convection/diffusion (fluid).

The coupling is explicit, while the time scheme for each code is implicit.

at each iteration, code A gives code B the heat flux to impose at the boundary of domain B, while code B gives code A the temperature to impose at the boundary of domain A. So in short, the coupling is done via a Neumann/Dirichlet BCs.

I am facing stability issues that don't allow me to finish correctly the transient solution.

Let us focus only on domain A (code A). When code A receives the temperature values from code B to apply a Dirichlet BC, the values are stocked in a layer of cells; so called the ghost cells. We denote these values as T_wall.

Now, we need to compute the heat flux at the boundary to give to code B. There are two possibilities to compute such a flux :

1- use T_wall and one inner temperature value

2- use 2 or 3 inner temperature values to calculate the flux, and then extrapolate it to the boundary.

I am getting serious instabilities if I calculate the flux via the first approach (T_wall and 1 inner temperature value). Otherwise, with the second approach (only inner temperature values), the simulation is stable and a steady-state is reached.

Can I have please your opinion on this subject. Have you ever faced such kind of problems ?

Is it really that computing the flux with the second approach leads to a stable solution, but to a non-consevative scheme ?

Best regards

Elie Saikali

More Élie Saikali's questions See All
Similar questions and discussions