CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM Running, Solving & CFD (
-   -   Nonphysical volume fractions at multiphase inlet (

sylvester April 17, 2008 05:28

I have a problem with a multip
I have a problem with a multiphase (oil, water and air) inlet of a model of an oil/water separator.

At the inlet (on the left) enters a mix of, for example, 80% oil, 19% water and 1% air. After a couple of timesteps of running multiphaseInterFoam the volume fractions get non-physical (i.e. smaller than 0 and larger than 1), see figures, and after a while the solution explodes.

CheckMesh reports no errors or warnings.

I have perceived little difference between bounded or unbounded schemes, or first or second order schemes that I have tried. For example, one of the fvSchemes settings I have tried is:

default Euler;

default cellLimited Gauss linear 1.0;

div(rho*phi,U) Gauss linearUpwind cellLimited Gauss linear 1.0;
div(phi,alpha) Gauss limitedLinear01 1.0;
div(phic,alpha) Gauss limitedLinear01 1.0;

default Gauss linear limited 0.7;

default linear;

default corrected;

default yes;

The inlet is specified as fixedValue for U, alphaair, alphaoil and alphawater and zeroGradient for p.

Does anyone know what is going wrong and how to fix it?

Any help on this is highly appreciated!!


hjasak April 17, 2008 05:35

Heya, There have been bugs

There have been bugs in the multi-phase interFoam solver, so please make sure you've picked up all bug fixes. Secondly, the error you describe is related to consistency between multiple alpha equations. I would recommend using upwind on div(phi,alpha) and div(phic,alpha) until you sort out the problem. Once everything is running, you can go back to better schemes.

I would guess your problem is with the inlet boundary condition on alphas. Make sure they are all consistent at the inlet and they sum up to 1.

Please keep me posted,


hjasak April 17, 2008 05:36

Woops, looking at your void fr
Woops, looking at your void fraction in the first picture, it says max(alpha) is 1.5!!! In fact, the SUM of alphas as any point must be 1 - you've got a problem with boundary conditions.


sylvester April 18, 2008 08:57

Hi Hrvoje, Thanks for your
Hi Hrvoje,

Thanks for your help.

At the start of the run the sum of alphas is 1 everywhere. Actually, the sum always remains 1. But close to the inlet one alpha becomes larger than 1, while the other two become less than 0.

Changing the two div schemes to upwind did help, but not sufficiently. It now just takes a bit longer before alphaoil > 1.

The patches described in this thread ( were already applied.

I'm clueless at this point.


kwardle July 1, 2009 10:52

I realize this is a stale thread, but was wondering if there is any update on this? Were you able to resolve this issue?

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