CFD Online Discussion Forums

CFD Online Discussion Forums (
-   OpenFOAM (
-   -   Cavitating model in OF (

zhaowg May 26, 2009 22:30

Cavitating model in OF
I am studying the cavitating code, does anyone knows the cavitating model in foam?

Anneg May 28, 2009 10:31

Hi all,

Same question here: is it based on the model by Kubota/Singhal as in Fluent or CFD Ace?

Thanks for your help.

schmidt_d May 28, 2009 11:50


No, the Kubota model is quite different from what is in OpenFOAM. The Kubota model is a Rayleigh-Plesset based model, where you model bubble growth or collapse. OpenFOAM's cavitation models belong to a class of Homogenous Equilibrium Models. The details of the implementation change from solver to solver and with sequential releases of OF.

The basic idea is that the liquid and vapor are homogenously mixed within a cell (no interface tracking), which is appropriate for very high Weber numbers where the interface is so convoluted, VOF reconstruction would be pointless. Because of the large surface area and the large liquid-to-vapor density ratio, there is also no reason to solve a separate momentum equation for the vapor, which is transporting a trivial amount of momentum. Finally, we assume that the two-phases are in thermodynamic equilibrium, with inertia limiting phase change and heat transfer being relatively fast. This last assumption is only valid for certain cavitating regimes, with low temperatures and small length scales.

If you make these assumptions, you can work up a rule for the compressibility of the mixture. This closes the problem, though numerically, handling the very rapid changes in compressibility takes some care.

I used this HEM approach successfully for modeling cavitation in diesel fuel injectors. I have been very happy with it. My implementation, numerically, was built like a high-Mach number solver. It was simple, but very efficient for the kinds of high velocities, 400 m/s, you see in modern diesel injector nozzles. I give out the F77 code for those curious, hardy souls. For low speed flows, you would never want to construct your code the way that I made mine.

The OpenFOAM'ers have generalized the numerical approach to permit calculations more efficiently at lower velocities. That is great and of course you get all the beautiful flexibility of OF: parallelism, polyhedral meshes. The downside is that OF is collocated, which makes pressure/velocity coupling more difficult. As a consequence, you may run into stability problems and noise. I'd be interested in seeing papers from people who have applied the OF cavitation codes.

I also have some papers to share; I've written a bit about HEM modeling of cavitation, including a new paper to appear next month at ICLASS that explores the assumption of thermodynamic equilibrium. I'd be happy to send that out.

-David Schmidt

zhaowg May 29, 2009 03:20

Thanks Mr Schmitt;
Cavitation model in Fluent is Singhal's model based on Mixture model;
In OF, was your theroy used?

Anneg May 29, 2009 04:45

Thanks for the explanations.
My intention is to test this cavitation model in OF on hydrofoils and propellers in the close future. Hopefully, papers will follow.

zhaowg May 29, 2009 08:13

Same to me

schmidt_d May 29, 2009 10:00


Originally Posted by zhaowg (Post 217517)
Thanks Mr Schmitt;
Cavitation model in Fluent is Singhal's model based on Mixture model;
In OF, was your theroy used?

Similar physics, very different numerics. I'm pretty confident about the applicability of physics to small, high-speed nozzles, and not so confident about the applicability to hydrofoils/props. Some modelers from Singapor published papers (JCP? Computers & Fluids? ) where they modified my model and applied it to large-scale underwater explosions. That was a surprise.


m2montazari April 16, 2010 02:47

I want to model the cavitation bubbles and more specifically the collapse of bubbles. as fluent uses mixture model for cavitation, we have no bubbles but just a region with continues change in phases and no boundaries. so the collapse cant be model in this matter.
I dont know if openfoam can help me; for example maybe the interphasechangefoam can help, but I dont know the equations it uses.
I think the famous Reighly-plesset equation can be more helpful than the model in fluent,for example.
if anyone can help, I'll be so thankful .


Marta May 3, 2010 17:12

We are also trying to apply the cavitatingFoam solver to analyse the behaviour of small injector holes used for N2O in hybrid rockets.

At the moment we are just verifying its stability and flexibility for this kind of problems, then we would like to compare our results with an experiment we are creating...

If anyone has tried it with this kind of applications I would be glad to exchange some information about it!

As concerns interPhaseChangeFoam, as far as I know it doesn't include the Plesset modelling of bubble growth.


Zowie May 6, 2010 03:39

There are actually two cavitation models in OF
Well, I have been doing some simulations of cavitation in a nozzle with cavitatingFoam (RAS) and interPhaseChangeFoam (Schnerr Model, only available in OF1.6.x). Works quite good until now.

Marta May 6, 2010 06:15

Ok, i'll have a try with the other solver and see.

Thank you very much for your quick reply = ) !


zhaowg May 6, 2010 07:25

yea, 1.6.x have an example in the tutorial.

majid_esi January 17, 2012 04:17

about ACE+ cavitation model... It uses the full cavitation model by Singhal and Athavale ...

It allows multi-dimensional simulations of cavitating flows with phase changes in low pressure regions. The model accounts for important effects such as bubble dynamics, turbulence, and the presence and expansion of non-condensable gases in liquid.

saeedrakhsha January 17, 2012 09:37

courant number
i do on the cavitation modelling in OF by interPhaseChangeFoam
the geometry is hydrofoil with rectangular domain
i don't know which courant number is appropriate for this processing,

beforehand thanks for help.

ehsan March 3, 2012 10:43

Merkle model and cavitation
Dear All

1- Courant No of 0.5 is fine

2- In OF, we tried Sauer model fine, but once we used Merkle model code needs a very small time step. Any comment?


vahid.najafi June 6, 2012 23:47

Hello dear foames,
I have an easy question, i wanna add the kinetic Turbulence energy (k) in model <<Sauer>> for solver <<interPhaseChangeFoam>>. For this purpose, after adding turbulence library in the option file, for introducing k in the Sauer model, this parameter is added as the follow

// * * * * * * * * * * * * * * Member Functions * * * * * * * * * * * * * * //

Foam::phaseChangeTwoPhaseMixtures::SchnerrSauer::r Rb
const volScalarField& limitedAlpha1
) const
return pow
*limitedAlpha1/(1.0 + alphaNuc() - limitedAlpha1),

when I execute wmake in terminal ,this error is appeared.

phaseChangeTwoPhaseMixtures/SchnerrSauer/SchnerrSauer.C:79: error: k_ was not declared in this scope
make: *** [Make/linux64GccDPOpt/SchnerrSauer.o] Error 1

could everyone to tell me the steps of how to add the kinetic energy in the Sauer model so that after any iteration, new updated value is entered to this model ?


88481101 July 14, 2013 19:08

i want to simulate cavitation in gear pump with foam.can you help me to solve my problem?

kind regArds,


All times are GMT -4. The time now is 17:18.