CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > OpenFOAM

Vof method in interFoam

Register Blogs Members List Search Today's Posts Mark Forums Read

Like Tree2Likes
  • 2 Post By kathrin_kissling

Reply
 
LinkBack Thread Tools Display Modes
Old   February 16, 2011, 07:54
Default Vof method in interFoam
  #1
Senior Member
 
Andrea Ferrari
Join Date: Dec 2010
Posts: 275
Rep Power: 7
Andrea_85 is on a distinguished road
Hi all,

I am a fairly new user of openfoam 1.7. I am working with interFoam to simulate multiphase flow and i would like some explanation on how VOF method is implemented in openfoam.
Which is the equation that OF solves for alpha?

Is something like that d(alpha)/dt+div(alpha U)==0 ?
or is there an additional term to ensure the compression of the interface?

I had a look at alphaEqn.H but I did not understand that equation is solved

Is there extensive documentation on how the VOF is implemented in OF 1.7?

Thanks
andrea
Andrea_85 is offline   Reply With Quote

Old   February 16, 2011, 08:55
Default
  #2
Senior Member
 
Bernhard
Join Date: Sep 2009
Location: Delft
Posts: 790
Rep Power: 12
Bernhard is on a distinguished road
You can have a look here for example, some useful information and references are given:
VOF method
Bernhard is offline   Reply With Quote

Old   February 16, 2011, 08:56
Default
  #3
Senior Member
 
akidess's Avatar
 
Anton Kidess
Join Date: May 2009
Location: Delft, Netherlands
Posts: 919
Rep Power: 17
akidess will become famous soon enough
Have a look at the thesis by Henrik Rusche, it contains all the basics.
akidess is offline   Reply With Quote

Old   February 16, 2011, 09:09
Default
  #4
Senior Member
 
Andrea Ferrari
Join Date: Dec 2010
Posts: 275
Rep Power: 7
Andrea_85 is on a distinguished road
Thanks for the answers,

I have already read the previous posts and a little bit the thesis of Henrik Rusche. All these things are related to earlier versions of OF and I would like to know how OF is implemented now, in 1.7 version (i do not know if is the last one but i guess). It is the same?
I do not think so because I read that the VOF implemented now is different from previous versions.

Is there any documentation (paper, manual stuff like that), maybe written by who has implemented the VOF in openfoam 1.7?

thanks
andrea
Andrea_85 is offline   Reply With Quote

Old   February 16, 2011, 11:29
Default
  #5
Senior Member
 
Andrea Ferrari
Join Date: Dec 2010
Posts: 275
Rep Power: 7
Andrea_85 is on a distinguished road
I think, if I understand correctly, that the equation that OF solves is:

d(alpha)/dt +div(alpha*U)+div(Ur*alpha*(1-alpha))=0

Is correct?
where i can find the definition of Ur in the code and and how is it calculated?

andrea
Andrea_85 is offline   Reply With Quote

Old   February 17, 2011, 03:30
Default
  #6
Senior Member
 
Kathrin Kissling
Join Date: Mar 2009
Location: Besigheim, Germany
Posts: 134
Rep Power: 8
kathrin_kissling is on a distinguished road
The definition is inside alphaEqn.H. Notice that we do not work on velocities but on fluxes. Tis operation is performed on the faces.

surfaceScalarField phic = mag(phi/mesh.magSf());
phic = min(interface.cAlpha()*phic, max(phic));
surfaceScalarField phir = phic*interface.nHatf();

The formula is below in the attachment.

Hope this helps.

Best

Kathrin
Attached Images
File Type: png formel.png (7.7 KB, 163 views)
zhernadi and smraniaki like this.
kathrin_kissling is offline   Reply With Quote

Old   February 17, 2011, 04:42
Default
  #7
Senior Member
 
Andrea Ferrari
Join Date: Dec 2010
Posts: 275
Rep Power: 7
Andrea_85 is on a distinguished road
Thanks Kathrin,

I copy and paste from interfacePropierties.H (not all the file):

Code:
/*---------------------------------------------------------------------------*\
00052                            Class interfaceProperties Declaration
00053 \*---------------------------------------------------------------------------*/
00054 
00055 class interfaceProperties
00056 {
00057     // Private data
00058 
00059         //- Keep a reference to the transportProperties dictionary
00060         const dictionary& transportPropertiesDict_;
00061 
00062         //- Compression coefficient
00063         scalar cAlpha_;
00064 
00065         //- Surface tension
00066         dimensionedScalar sigma_;
00067 
00068         //- Stabilisation for normalisation of the interface normal
00069         const dimensionedScalar deltaN_;
00070 
00071         const volScalarField& alpha1_;
00072         const volVectorField& U_;
00073         surfaceScalarField nHatf_;
00074         volScalarField K_;
00075
cAlpha is the compression coefficient but i really do not understand where is defined and which value is used in the calculations. Is a constant? (even if you do not define any cAlpha in constan/transportProperties.)

Thank a lot
andrea
Andrea_85 is offline   Reply With Quote

Old   February 17, 2011, 04:50
Default
  #8
Senior Member
 
Kathrin Kissling
Join Date: Mar 2009
Location: Besigheim, Germany
Posts: 134
Rep Power: 8
kathrin_kissling is on a distinguished road
Hi andrea,

it is constant and defined in the fvSolution dictionary.
The read in is in interfaceProperties.C

00146 transportPropertiesDict_(dict),
00147 cAlpha_
00148 (
00149 readScalar
00150 (
00151 alpha1.mesh().solutionDict().subDict("PISO").lookup("cAlpha")
00152 )
00153 ),

Best

Kathrin
kathrin_kissling is offline   Reply With Quote

Old   February 17, 2011, 05:14
Default
  #9
Senior Member
 
Andrea Ferrari
Join Date: Dec 2010
Posts: 275
Rep Power: 7
Andrea_85 is on a distinguished road
Thank you very much, very helpful!

I want to ask one last thing. In the alphaEqn.H what is scalar(1)?

for (int aCorr=0; aCorr<nAlphaCorr; aCorr++)
{
surfaceScalarField phiAlpha =
fvc::flux
(
phi,
alpha1,
alphaScheme
)
+ fvc::flux

(
-fvc::flux(-phir, scalar(1) - alpha1, alpharScheme),
alpha1,
alpharScheme
);


Thanks a lot

andrea
Andrea_85 is offline   Reply With Quote

Old   February 17, 2011, 05:20
Default
  #10
Senior Member
 
akidess's Avatar
 
Anton Kidess
Join Date: May 2009
Location: Delft, Netherlands
Posts: 919
Rep Power: 17
akidess will become famous soon enough
Exactly what it says - a scalar with the value 1. OpenFoam is smart enough to do the arithmetic operation for the entire volField even if one of the operands is a scalar value.
akidess is offline   Reply With Quote

Old   February 17, 2011, 05:41
Default
  #11
Senior Member
 
Andrea Ferrari
Join Date: Dec 2010
Posts: 275
Rep Power: 7
Andrea_85 is on a distinguished road
Very simple!

Thanks again

andrea
Andrea_85 is offline   Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
VOF Interfacial Area - 2D/3D Reconstruction Method Greg Perkins Main CFD Forum 2 September 10, 2012 04:05
How to apply VOF method? yeeking86 CFX 7 August 23, 2010 18:24
slop in Hirt's VOF method GCM Main CFD Forum 0 July 28, 2009 15:44
Are the VOF results of interFoam grid independent asaha OpenFOAM Running, Solving & CFD 1 June 26, 2009 04:27
VOF method on inter-tank transfer Louis FLUENT 0 March 14, 2006 10:28


All times are GMT -4. The time now is 05:00.