CFD Online Discussion Forums

CFD Online Discussion Forums (http://www.cfd-online.com/Forums/)
-   OpenFOAM Running, Solving & CFD (http://www.cfd-online.com/Forums/openfoam-solving/)
-   -   VOF method (http://www.cfd-online.com/Forums/openfoam-solving/58063-vof-method.html)

Vinay Ramohalli Gopala (Gopala) March 7, 2005 13:41

Hello, I am working on mod
 
Hello,

I am working on modeling of mass-transfer between two immiscible liquids. Recently I started using OpenFoam.

I have tried some simple simulations by manipulating the dambreak problem,(for example a denser liquid drop falling in a less denser liquid and also the rayleigh-taylor instability problem).

I intend to use VOF for my project and it would be very helpful to know more about the method implemented in the present version of OpenFoam, i.e. is it CICSAM or a different one ?

Also I would like to know if the option in interFoam - movingMesh is the same as Adaptive grid refinement around the interFace ?

Thanks in advance.

Henry Weller (Henry) March 7, 2005 13:49

> i.e. is it CICSAM or a diff
 
> i.e. is it CICSAM or a different one

It's a new technique I developed a few years ago to resolve some of the fundamental problems of CICSAM and other traditional VOF interface compression methods. The differences have already been debated at length, have a look through previous threads on the subject.

> Also I would like to know if the option in interFoam -
movingMesh is the same as Adaptive grid refinement around
the interFace ?

No.

Ali (Ali) March 7, 2005 21:24

I was wondering what's the ac
 
I was wondering what's the actual and preferred expression for the compressive term in gamma equation and a very brief explanation of how it is derived. The formula for 'phir' in the code differs from what Henrik has mentioned in (Eq. (4.15)). In the code:

phir=cGamma()*mag(phi/mesh.magSf())*interface.nHatf()

while Henrik's suggests (if I have formulated it correctly):

phir=cGamma*nhatf*max(nhat * phi / mesh.magSf()**2 )

Are they really different (am I missing something) and if yes, which one is better?


2) where is the smoothing function for 'gamma' in interFoam? Does it have a significant effect on VOF performance or just affects surface tension prediction?

thanks

Henry Weller (Henry) March 8, 2005 03:58

I have tried various options
 
I have tried various options for the compression term in the gamma equation and the one I recommend is the one that is currently in interFoam. It is not derived, it is selected and there are other choices. If you would like to find out which option is best for you try them out on your case.

There is no "smoothing" function for gamma in interFoam, it was found to be detrimental to the overall performance of the interface capturing.

gopala March 9, 2005 15:49

Hi Henry, Can I get any ref
 
Hi Henry,

Can I get any references for the VOF method you have implemented ?

Thanks

henry March 9, 2005 15:56

Sorry, I haven't written many
 
Sorry, I haven't written many papers; it's too time consuming and stops me doing the interesting work.

hjasak March 9, 2005 16:55

There is a decent description
 
There is a decent description of the implemented Interface-Capturing Methodology (probably a bit out of date now) in a PhD Thesis by dr. Henrik Rusche:

Computational Fluid Dynamics of Dispersed Two-Phase Flows at High Phase Fractions, Henrik Rusche, Imperial College of Science, Technology & Medicine, December 2002.

Hrv

henry March 9, 2005 17:00

That describes an old version
 
That describes an old version of my method, not the one currently in interFoam.

sega December 15, 2008 09:44

I'm currently having a look in
 
I'm currently having a look into the gammaEqn.H from OF 1.4.1

Well, some parts look like the equation (4.15) from Rusches PhD thesis.

But still I'm not sure about some issues:

- Where is the time derivative of gamma?
- What is interface.nHatf()? Is it the normal vector to the cell face?
- What doese MULES::explicitSolve01(gamma, phi, phiGamma) mean?

Thanks so far!

caw December 15, 2008 10:30

Dear Sebastian, the time de
 
Dear Sebastian,

the time derivative is not there because of the usage of MULES. Look at OpenFOAM-1.5.x\src\finiteVolume\fvMatrices\solvers\MULES\MU LES.H for details:

" MULES: Multidimensional universal limiter with explicit solution.
Solve a convective-only transport equation using an explicit universal
multi-dimensional limiter.
Parameters are the variable to solve, the normal convective flux and the
actual explicit flux of the variable which is also used to return limited
flux used in the bounded-solution. "

Best regards
Christian

eberberovic December 15, 2008 12:19

The time derivative is account
 
The time derivative is accounted for within the MULES solver. In the gammaEqn.H only explicit fluxes are calculated, which are needed in MULES.

The interface.nHatf() represents a cell face unit interface normal flux. It is evaluated from the dot product of the cell face surface vector and the interface unit normal calculated at the cell face:

nHatf_ = nHatfv & Sf,

where

nHatfv = gradGammaf/(mag(gradGammaf) + deltaN_).

and deltaN is a stabilization factor for the case of gradGammaf = 0.

For the full implementation look in src/transportModels/interfaceProperties/interfaceProperties.C

Regards.

mer December 16, 2008 05:15

Hi, I have two questions rela
 
Hi,
I have two questions related to the interFoam solver:

1) I used the utility "barycenter" posted by Sebastian. It works fine with axisymmetric cases. In 2D or 3D cases and using the utility, it doesn't work (the position of the bubble is in decrease when time increase). Is there a signification for that?
I find also that the position of the bubble increase when the value of Min(gamma) is negative. Is there a relation with Min(gamma) and the barycenter of the bubble?!

MULES: Solving for gamma
Liquid phase volume fraction = 0.99921 Min(gamma) = -2.20718e-11 Max(gamma) = 1

2) I want to switch to OF-1.5. In the file interFoam.C there is an additional line comparing to OF-1.4.1:

p = pd + rho*gh;

Is it a construction of the pressure p field or what? if yes, how can I get values of this field for different times.

Best regards

mer December 16, 2008 05:47

Hi, I have two questions rela
 
Hi,
I have two questions related to the interFoam solver:

1) I used the utility "barycenter" posted by Sebastian. It works fine with axisymmetric cases. In 2D or 3D cases and using the utility, it doesn't work (the position of the bubble is in decrease when time increase). Is there a signification for that?
I find also that the position of the bubble increase when the value of Min(gamma) is negative. Is there a relation with Min(gamma) and the barycenter of the bubble?!

MULES: Solving for gamma
Liquid phase volume fraction = 0.99921 Min(gamma) = -2.20718e-11 Max(gamma) = 1

2) I want to switch to OF-1.5. In the file interFoam.C there is an additional line comparing to OF-1.4.1:

p = pd + rho*gh;

Is it a construction of the pressure p field or what? if yes, how can I get values of this field for different times.

Best regards

sega December 16, 2008 12:54

Thanks so far for your respons
 
Thanks so far for your responses.
I will try to get them step by step (and respond if there are any questions).

First of all:
Is there a reference for MULES in some kind of citable form?

sega December 16, 2008 14:57

Dear Edin. Thanks for your
 
Dear Edin.

Thanks for your response.
I have read your answer carefully and looked the code up.

But I still have some questions related to the code.
Is this the correct analytical representation of the code?
http://www.cfd-online.com/OpenFOAM_D...es/1/10363.png

I'm not sure what to do with the deltaN.
In the code it's calculated like this:
1e-8/average(gamma.mesh().V()), 1/3)

What does gamma.mesh().V() mean?

See you (maybe at SLA ...)

eberberovic December 17, 2008 06:19

Sebastian, I will come up t
 
Sebastian,

I will come up to you. The coefficient cGamma is not in the analytical transport equation, but it is used in modeling the relative velocity.

gamma.mesh().V(), for a non-moving mesh simply takes the volumes of control cells throughout the domain, so the average of it to the power of 1/3 gives a representative cell dimension (lenght).

Regards.

sega December 17, 2008 10:38

Dear Edin. Thanks for your
 
Dear Edin.

Thanks for your answere.
So, the equation will take this form?

http://www.cfd-online.com/OpenFOAM_D...es/1/10372.png

bobatpurdue December 18, 2008 23:28

On a side comment, I plan on u
 
On a side comment, I plan on using interFoam to do 2-D flows. Does anyone know how to implement proper BC?

markc December 24, 2008 04:59

Hello All, One new question
 
Hello All,

One new question related to VOF solvers (interFoam).
I modelled a ship sailing in a basin with water and air. The watersurface at the Inlet and internal has been set at Z=4 m. After a few seconds of physical time (so not CPU time) the solver crashes on very low deltaT. Looking the results in paraview one can see what happens:
http://www.cfd-online.com/OpenFOAM_D...es/1/10436.jpg

The picture shows the outlet of the domain. It looks like the watersurface is attracted towards Z=0 at the outlet patch. Maybe it might eventually go down further, provided that the solver should not crash.
However, after that I translated the geometry such that the initial waterlevel is at Z=0 and kept the rest unchanged. Than the solution runs smooth as expected.
BC's on the outlet:
gamma and U: zeroGradient
pd: fixedValue uniform 0

My questions:
- is there any mechanism that forces a surface towards Z=0?
- Has the problem described here something to do with continuity and/or mass conservation?
- I set BC's on the top of the domain at fixedValue (vesselspeed) for U and zeroGradient for pd, this to reduce strong air vortices which influence solution stability. Should I better set the BC's on the top at atmosphere?

Hope someone can shine his/hers light, not because I got stuck (I found a work around) but out of curiousity,

Brgds,

Mark

Mark

sega December 24, 2008 06:22

If this is an outlet than mayb
 
If this is an outlet than maybe the water is simply "leaking" out of it.
Maybe you can try fixedValue 0 for U at the out- and inlet?


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