CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Running, Solving & CFD (
-   -   Coupled domains with two different fluids (

General_Gee October 7, 2010 06:10

Coupled domains with two different fluids
Morning all,

I am currently trying to bring an idea over from FLUENT into OF. I am essentially simulating water flow over air, where I know the interface can be idealised as fixed and flat. So my approach is to define two separate domains, one for water and one for air, and then couple the domains using groovyBC at the interface. I am just using icoFoam at the moment.

I have physically separated the domains so that there is space between them as there appears to be no double sided wall option in OF. I thought I had done the hard part and managed to sort out the BCs to couple the domain but have now got well and truly stuck.

In FLUENT you can easily define the properties of fluid1 in domain1 and fluid2 in domain2, but I cannot see how to do this in openfoam.

So my question is essentially, can I have two different domains with icofoam and have a different fluid in each?

Hope that someone can help :)


akidess October 7, 2010 07:10

Wouldn't chtMultiRegionFoam be exactly what you are looking for?

Edit: Sorry, disregard that. You might be able to build something on top of chtMultiRegionFoam to couple the velocity vector fields though.

General_Gee October 7, 2010 07:37

Thanks very much for the quick response. That looks like the way I should be heading... I hadn't thought that I would need a separate solver for multiple regions.

I will post back when I have something

General_Gee October 11, 2010 12:51

Hi all,

For future reference, I solved my problem by adding in a passive scalar transport equation to icoFoam. This equation was for the viscosity, but I set

d_nu/dt() = 0

and used setFields to define different values of viscosity for each domain. The value for nu in the Ueqn is then taken as the local value of this scalar field. This nullifies the reading of nu in transportProperties, and two values of nu are set in setFields.


All times are GMT -4. The time now is 16:59.